GT Turbo Posted June 2, 2005 Report Share Posted June 2, 2005 J'y penses depuis un moment mais la on va tous y réfléchir en meme temps pour avoir le meilleur. Sur la Jag les sprites sont affichés d'après une liste, qui décrit différents parametres pour chaque sprites, et surtout dans les parametres il y a un adresse qui permet de 'linker' le prochain descripteur de sprite. 95% des jeux Jag ou des sources que j'ai pu voir font de la liste statique. On genere la liste chaque Vbl d'après une sorte de pseudo liste. Mais on pourrait généré une premiere fois la liste en statique et après la géré en dynamique, au lieu de reconstruire la liste, utilisé la possibilité de 'linker' pour effacé ou rajouté un sprite et tout cela pourrait se faire au Gpu, apparement personne ne l'a fait ou y a pensé. Quelqu'un a une meilleur idée ? Ou une autre technique ? GT Curieux !! Link to comment Share on other sites More sharing options...
RaZ Posted June 2, 2005 Report Share Posted June 2, 2005 Je viens de me rendre compte avoir créer deux fois le même forum... Bon, ce topic passe en développement, parce que faut pas déconner et je clos un des deux forums... P.S. : Au fait, c'est pas un débat ça, hein, c'est juste une requète (sur une) technique. Je suis pas Robert (celui qui commence par A, finit par Z et est énorme) mais faut voir à pas prendre les coins pour des coing. Link to comment Share on other sites More sharing options...
SCPCD Posted June 3, 2005 Report Share Posted June 3, 2005 Salut ! En fait, j'y ai déjà pensé ! Pour mon OS, j'ai réservé une zone mémoire suffisante pour faire une liste de 100 sprites et j'ai ensuite fait un system dynamique : je peux rajouter, enlever, activer ou desactiver n'importe quelle objet afficher et tout sa en pouvant changer l'ordre d'affichage très facilement. (j'utilise une liste chainée) Pour pouvoir trouver l'objet souhaitait, j'ai rajouter un champ 'nom' qui me permet de mettre un nom à un objet et ainsi de le retrouver facilement. Ceci me permet de faire : une initialisation de l'affichage au démarrage avec une image de fond et la souris; et ensuite, je peux rajouter les icones, qui sont donc physiquement après l'objet souris mais avec les liens de la liste modifié tel que la souris reste toujours le dernier objet à afficher. Ce code a été fait au GPU. je pourrais te filer le code et une partie des explications supplémentaires ce week-end. voici un début d'explication : [pfs]5-jev2_f_objs.pdf[/pfs] A+ Link to comment Share on other sites More sharing options...
GT Turbo Posted June 3, 2005 Author Report Share Posted June 3, 2005 La tu me laisses sur le c.. GT Epaté !! Link to comment Share on other sites More sharing options...
SCPCD Posted June 5, 2005 Report Share Posted June 5, 2005 Voici comme prevu le code GPU et le code 68000 qui va avec. Mais ne pouvant pas mêtre tout le code (secret oblige ), ce code n'est qu'a titre indicatif. il n'est pas possible d'utiliser directement le code (utilisation de variable systeme, et de fonctions que je garde pour l'instant) Néanmoins, les noms des variables systems sont suffisaments clair pour qu'il soit possible de le faire fonctionner et certaines fonctions utilisé non fourni peuvent être zappées sans problem. Je pense que même si il n'y a pas (du tout) beaucoup de commentaire, le code est suffisament clair pour être compris. Et de toute facon, je suis là !!! Alors pas de panique !! N'hésitez surtout pas à me poser des questions !! SCPCD. [pfs]5-code_opliste.txt[/pfs] Link to comment Share on other sites More sharing options...
GT Turbo Posted June 6, 2005 Author Report Share Posted June 6, 2005 Je vois un trap #13, tu l'as détourné je penses, parce que sauf erreur de ma part, aucun trap n'est dispo a l'origine si ? Est ce qu'il reste un domaine ou tu as pas fais des essais ? Que je puisse quand meme faire quelque chose ? lol !! La compression (D'images et de données) en général, t'y a pas encore mis le nez dedans si ? Sinon j'ouvres un autre sujet pour pouvoir en discuter, et cela me laissera un domaine ou fouiller !! GT Trop épaté par SCPCD P.S. : On a pratiquement tout ce qu'il faut pour dvper des jeux en séries ! lol ! Link to comment Share on other sites More sharing options...
SCPCD Posted June 6, 2005 Report Share Posted June 6, 2005 Ben en fait, sur mon OS, j'ai utilisé des traps pour des fonctions spécials comme l'ajout de sprites(voir precedent), j'ai aussi fait des fonctions pour l'allocation mémoire et la pagination (au passage : trop génial la pagination quasi-hard !!), et bien d'autres.... Mais je ne sais pas trop si je vais garder le principe des traps car ce sont des interruptions et sa augmente le niveau de priorité du 68000...(et donc sa ralentit le DSP et GPU) c'est pratique mais bon..... j'hésite encore a les garder.... Sinon, pour que GT puisse s'occuper : Je n'ai pas du tout touché a la compression de données ni des images. Ni a la musique d'ailleurs.(sa serais bien du MP3 non ?) Au fait, en parlant de compression, il y a une compression video qui semble assez puissante et je voudrais savoir si c'est possible de le faire pour la Jag : c'est la compression XYZ. (elle compresse plus que du MPEG1 et est de meilleur qualité et a besoin que d'un peu plus de puissance) A+ SCPCD. Link to comment Share on other sites More sharing options...
GT Turbo Posted June 6, 2005 Author Report Share Posted June 6, 2005 Tu as un peu de doc sur ta compression XYZ ? Je m'occupes de la partie compression, ayant déjà eu l'occasion de faire 2,3 trois essais avec Azrael. Par contre je vais surement voire pour trois compressions différentes : - graphisme fixe - graphisme animé - son J'ouvre un autre sujet pour eviter de polleur celui la. GT En train de compressé ! Link to comment Share on other sites More sharing options...
GT Turbo Posted June 7, 2005 Author Report Share Posted June 7, 2005 J'ai pas encore eu le temps de regardé en détail ton code, comme j'ai encore celui de Fredifredo a regarder de près. Apparement le processeur objet détruit des parties de phrases de certain objets, c'est vrai ? Et c'est bien ce indiqué dans la doc ? GT Turbo Link to comment Share on other sites More sharing options...
SCPCD Posted June 7, 2005 Report Share Posted June 7, 2005 D'après mes tests et la doc, il semble bien que le processeur d'objets modifie le DATA pour savoir qu'elle est l'adresse du debut de la prochaine ligne de l'image. SCPCD Link to comment Share on other sites More sharing options...
Fredifredo Posted June 7, 2005 Report Share Posted June 7, 2005 C'est ça la cause de mes 2 pixels transparents qui sont noirs ? Link to comment Share on other sites More sharing options...
Fredifredo Posted June 15, 2005 Report Share Posted June 15, 2005 Allo ? GT as-tu jeter un oeil à mon code source ? ( surtout la liste des objets ...) Link to comment Share on other sites More sharing options...
GT Turbo Posted June 15, 2005 Author Report Share Posted June 15, 2005 J'ai enfin rallumé mon Falcon, et commence a m'y remettre. GT Turbo Fredi regarde tes messages privés !! Link to comment Share on other sites More sharing options...
GT Turbo Posted September 6, 2005 Author Report Share Posted September 6, 2005 Je fais remonter ce sujet, car j'ai commencé a écrire un gestionnaire de liste, pour l'instant juste au 68000 (Quoique que vu les décalages et les bricolages sur les champs de bits, le Gpu serait plus de mise). Je réécrirais celui ci après au Gpu, cela pour des histoire d'optimisation et de controle. Le but étant bien sur de tout faire au Gpu, mais absolument tout, cela pour éviter de plomber le bus avec notre 'escargot' de 68000, le maillon faible d'une Jaguar. Au départ j'avais prévu une base de 192 sprites, car c'était divisible par 32, mais après calcul et essais, je m'apercois que le procédé que je voulais utiliser est plus lent que l'actuel et mange de la ram en plus pour rien, donc 'au revoir !'. Je vais allez continuer le code, a plus !! TG orbuT Link to comment Share on other sites More sharing options...
Azrael Posted September 6, 2005 Report Share Posted September 6, 2005 Mouais, si ça continue on va retirer le 68000 car il bouffe du temps d'horloge sur le bus Link to comment Share on other sites More sharing options...
GT Turbo Posted September 6, 2005 Author Report Share Posted September 6, 2005 Azrael : Mouais, si ça continue on va retirer le 68000 car il bouffe du temps d'horloge sur le bus C'est exactement cela, le but du jeu c'est de rentrer le maximun dans le couple Gpu / Dsp et de carrément mettre le 68000 en attente, pour éviter qu'il nous traine ces boulets !!GT En train d'accélerer ! Link to comment Share on other sites More sharing options...
GT Turbo Posted September 8, 2005 Author Report Share Posted September 8, 2005 Je reprends un peu le code ce soir, et a partir de demain soir, je me bloques le weekend sur la gestion de liste, je veux voir des sprites, des sprites a la tonne, mon écran plein de petit spritos tout colorés, désolé pour le délire mais j'ai trop hate. GT Amoureux des sprites Link to comment Share on other sites More sharing options...
GT Turbo Posted September 12, 2005 Author Report Share Posted September 12, 2005 Vu que maintenant je peux debugger les listes de sprites, j'ai pu réparer ma routine, et j'ai commencé a écrire les routines pour modifier les coordonnées, en X cela est passé tout seul en Y j'ai un petit soucis suite au fait de la restauration de la liste vu qu'elle n'est pas réconstruite a chaque Vbl (Power !!! ), mais ce soir j'attaques de plein pied !! GT Parti coder !! Link to comment Share on other sites More sharing options...
GT Turbo Posted September 13, 2005 Author Report Share Posted September 13, 2005 AAAAAAAAAARRRGGGHHH !! Je vais finir interner !! Mon gestionnaire de sprite ne veut pas m'écrire mon objet de fin de liste (Stop objet) en 3 position quand j'ai deux objets !! Avec un objet cela marche parfait, mais avec 3 il s'amuse a me placer un sprite 'objet bitmap' vide a la place et bonjour le plantage !! Je vais me calmer un peu et reprendre plus fort, c'est pas un bout de code qui aura ma peau !! Parce que GT Trop fort (Et surtout très vantard....) GT En train de me calmer !! Link to comment Share on other sites More sharing options...
Azrael Posted September 13, 2005 Report Share Posted September 13, 2005 faut pas une liste paire en nombre de sprites ? Link to comment Share on other sites More sharing options...
GT Turbo Posted September 13, 2005 Author Report Share Posted September 13, 2005 Non, le nombre de sprite peut ètre impaire, je vais vérifier certaines choses, car le plus c.... c'est que la liste doit se trouver sur une adresse multiple de 8 (Cela passe encore), un ojet bitmap standard doit ètre aligné sur 16, un objet bitmap zoomé sur 32, donc faut que je vérifies aussi tous les alignements (Cela fait que la 4 fois que je le fais !) GT Pas sur la limite !! Link to comment Share on other sites More sharing options...
Fredifredo Posted September 13, 2005 Report Share Posted September 13, 2005 As-tu regardé dans le code source que je t'ai envoyé ? ou bien celui de Pong ? Link to comment Share on other sites More sharing options...
GT Turbo Posted September 14, 2005 Author Report Share Posted September 14, 2005 Fredifredo : As-tu regardé dans le code source que je t'ai envoyé ? ou bien celui de Pong ? Mon problème est plus un problème de code meme, pas de principe, et le petit truc c'est que beaucoup de personnes reconstruises la liste a chaque Vbl, c'est plus simple mais moins rapide c'est pour cela que d'autres sources ne sont pas trop a meme de m'aider, mais le truc ultra c.. c'est que je fais les essais d'abord au 68000 pour après recoder le tout au Gpu, je ferais mieux d'attaquer au Gpu direct, j'ai l'impression que je me débrouilles mieux avec lui qu'avec le 68000 Ca va se finir comme cela.....GT Un super pote au Gpu Link to comment Share on other sites More sharing options...
GT Turbo Posted September 15, 2005 Author Report Share Posted September 15, 2005 J'ai règlé mon problème, par contre ce rigolo d'O.P. (Object Pocessor) ne m'affiche pas mon second sprite, faut que je vérifies l'adresse du graffe. Sinon cela a l'air de coller. Merci beaucoup au debugger !!! GT Plus bugger !! Link to comment Share on other sites More sharing options...
GT Turbo Posted September 16, 2005 Author Report Share Posted September 16, 2005 Ca y est est !! Cela fonctionne a merveille, j'ai un paquet de sprites bien joyeux sur mon écran, cela marche, encore une modification et je commences a tout réecrire au Gpu. GT Turbo Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now