-
Content count
3,199 -
Joined
-
Last visited
-
Days Won
2
Posts posted by GT Turbo
-
-
cts :
J'espère surtout être là pour partager les quelques trucs que je connais.
Je suis presque pret a parier que tu va refaire un peu code, certaines choses sont très dur a quitter....
GT
-
cts :
Fredifredo, Pocket, et Rayxamber
cela tu n'auras pas a les chercher bien loin, ils sont inscrit ici !!!
GT
-
En clair il pourra plus facilement effacer les bétises que j'écrirais !!
GT

-
SCPCD :
Je ne sais pas ce que tu fais dans les lignes non données mais si tu ne modifi pas le r3, alors ca parait logique qu'il n'est pas necessaire de mettre le load (r6),r3.
R3 est modifié, mais j'ai pas fait apparaitre pour des raisons de confidentialité, et le plus marrant c'est que si tu place un :
< -
cts :
Salut !
Après quelques temps passés loin de ma jaguar, je reviens.
Pas de nouveau projet mais quelques idées (OP poly, ça vous dit ?).
Surtout, GT à besoin d'aide. Ne serait-ce que pour lui indiquer les bonnes pages ou regarder dans la doc
vala...
P.S: Special hi to Sym, Joe, Fredifredo, Pocket, Florian et Rayxamber que j'ai laissé un peu tombé :/
Quand RaZ m'a annoncé la nouvelle j'y croyais pas, donc bienvenue sur Jagware, cela fait sacrément plaisir, comme cela tu pourras m'indiquer les pages !! lol !
Fredifredo ne va pas en croire ses yeux !!
GT Heureux !!
-
Azrael :
ben tu as une instruction qui sert à rien
ou bien si tu vires encore un la ligne
load (r7),r4 ; recharge X1
est ce que ça donne encore la même chose que ton code original ?
Non une ligne de dégagé en plus me tracait des polygones bancales, cela m'arrangerait si je pouvais avoir une dizaine d'instructions qui me servait servait a rien !!
GT Turbo
-
Si tu essaies ce code la :
load (r7),r4 ; Charge le X1
load (r6),r3 ; Pareil mais pour le X2
Boucle :
sub r3,r4
puis une dizaine de ligne et :
addq #4,r7
addq #4,r6
load (r7),r4 ; recharge X1
Puis vint une boucle de synchro et après on reboucle a 'boucle'
Ca donne le meme résultat que celui au dessus (mais la on a une instruction en moins dans la boucle !!)
GT Perdu !!

-
!! La routine de poly grimpe a 40 polygones, pour situer la chose avec 3, allez histoire qu'on voie plus rien, avec 4 polygones on remplit un écran 320*200, cela vous permet de vous situer.Avec la nouvelle routine de ligne a Azrael, j'ai carrement pu degager un morceau de code qui ne servait plus a rien !!
Le clipping gauche et droit est implementé, ce soir je finis celui du bas et Azrael s'occupe de celui du haut.
J'ai aussi profité de 20 minutes pour convertir la routine 3d 68000 en routine Dsp, faut encores que je fasses les essais et le debuggage mais la routine est écrite !!
GT Chaud !!

-
Je viens d'arriver, on en discute de tete a tete pour ma part.
GT Arrivé !!

-
Salut tout le monde, HALLUCINATOIRE !!! Le Gpu est un truc de FOU !!!! On savait que certaines sequences d'instructions sont a eviter car resultats aleatoires, mais alors la, le Gpu a un principe de fonctionnement que je comprends pas !! Premier exemple :
movei #140,r3 ; Met 140 dans le reg r3
moveq #6,r5 ; Met 6 dans le registre r5
movei #$f033f8,r4 ; Met la valeur $f033f8 (Adresse) dans r4
Boucle:
ma boucle principale (15 lignes)
---------
subq #1,r5 ; On soustrait 1 a r5
si R5>0 on reboucle sinon on continue a la suite
et bien vous savez quoi ? Ce code ne fonctionne pas !!! Boucle sans fin, j'ai cherché un moment et en mettant r5 avant movei #140,r3 cela fonctionne !!! Je sais que le Gpu 'pipe line' mais a ce stade !!! On dirait presque un cache !! On a l'impression qu'il recharge R5 avec la valeur 6 d'ou ma boucle sans fin.
La sequence d'instruction suivante est a mettre dans les annales du Gpu, SI SI !!
[code] load (r7),r4 ; Charge le X1
load (r6),r3 ; Pareil mais pour le X2
Boucle :
sub r3,r4
puis une dizaine de ligne et :
addq #4,r7
addq #4,r6
load (r7),r4 ; recharge X1
load (r6),r3 ; recharge X2
Puis vint une boucle de synchro et après on reboucle a 'boucle'
Ce code fonctionne MAIS si vous supprimez un 'load' dans la boucle, le code fonctionne encore !! On a l'impression que le Gpu est hanté et joue avec vous !!
C'est dur a croire mais la j'hallucinais un moment, car je voulais faire un traitement sur r3 et cela ne fonctionnait pas, pour résoudre le problème il faut insérer des Nops après les 'load' avant la boucle !!! Quit dit mieux !! On a l'impression que le Gpu utilisait le 'load' avant la boucle et rechargeait R3, faut que je calcules l'écart necessaire entre les instructions, mais on peut assimilé cela a un cache, mais joueur le cache !!! Sinon une solution, faites de grosses boucles !!
GT Heureux, j'ai pu debbuger !!

-
Fredifredo :
Je peux commander un moteur 3D pour un jeu de mecha ?
Toute commande de ce type est a adresser au gars qui passe son temps a courir après les Schtroumps !! Hihi !!
GT Turbo
-
SCPCD :
J'ai remarqué qu'il y avait un(ou 2) pixel(s) qui restait figé au milieu de l'ecran je sais pas si c'est normal ou pas...
C'est normal, j'avais pas trop l'envie de debugger !!
SCPCD :
Sinon, OUAOU !!! la fluidité !!! en 68000 en plus !!
Oui la routine de calcul des points c'est du 68000, recopie exacte d'une routine Ste / Falcon !! Juste le tracé de ligne, c'est la routine de calculs des points au Gpu, qui affiche les points au lieu de les stocker, c'était juste pour un essais. Par contre au Dsp la précision de la routine 3d sera plus élévéé, on l'avait limité pour des raisons de vitesse, mais avec le Dsp on peut utiliser des précisions deux fois plus elevees sans perdre un cycle !!SCPCD :
Vivement la version face pleine !
Elle risque d'arriver très vite ! Nous (Azrael et moi meme) sommes en plein dedans, hier soir on a debugger et fini la routine, il me reste un peu de rangement dans les registres car 300 lignes de code sans variable c'est terriblement illisible !!
Et un peu d'optimisation, et après on attaque de plein fouet avec faces pleines et routine 3d au Dsp !!
GT Pour la Fast 3D sur Jaguar
-
Et nous revoila (Azrael et moi meme), Azrael m'a passé hier une nouvelle routine de ligne pour le remplissage, on passe a 37 polygones et la routine est deux fois plus courte !!
On essaie de règler un probleme de selection de tableau et après on rebalance un exemple mais face pleine !!
GT Perdu dans mes tableaux !!

Edit : Azrael vient de me faire un joli dessin, je suis plus perdu dans mes tableaux !! L'exemple a venir très prochainement !!

-
Odie_one du Yaronet est inscrit chez nous, je sais qu'il dessine et fait des anims je lui ais posé la question, si il serait prèt a participer a un projet et si il pourrait dessiner des persos de coté, cela irait pour lui. Meme cela ne serait pas un problème !!
GT Turbo

-
Fredifredo :
Mais pour faire autant de sprites faudra engager une armée de graphistes ...
Pourquoi pas ?
GT
-
Voila le premier :
la routine 3d c'est du 68000, c'est une routine devellopé par Azrael.
La routine de ligne c'est une routine de tracé au Gpu.
Option passe du mode auto au mode manuel, en mode manuel (mode par défaut au lancement), fleche et Fire A et B pour jouer sur les 3 axes. diese et etoile pour arreter le code.
Je voulais agrandir encore plus l'objet mais n'ayant pas de clipping cela plante
[pfs]2-disk_7.zip[/pfs]
GT

Edit : P.S. : Azrael vient de ma passer une nouvelle routine de ligne, on va essayer cela !!
-
Azrael m'a encore passé des optims (Pas encore faite !
), par contre avec ces chiffres cela ne parle pas beaucoup donc, essais réel, j'ai une routine 3d (3 minutes de couper coller, c'est sur c'est que du 68000 pour l'instant mais vu la vitesse de devellopement de cette routine, on va pas se plaindre !! Qui a dit que l'assembleur était pas portable ? Je n'ai modifié AUCUNE ligne de la routine Falcon !
)Donc mon premier essais, c'est 3d fil de fer routine Gpu, ensuite peut etre tracé de ligne au blitter puis on va passer sur la routine de polygones, je posterais les essais comme cela on pourra reellement voir ce que cela donne !!
GT Motivé a mort !!

-
Un big THANKS to Azrael pour l'optimisation, on commence a sauver les meubles !! On repasse la barre des 32 !!

Grace a lui, la routine principale est passé de 22 lignes a 11, et je peux encore faire du nettoyage.
GT aidé par Azrael !!

-
Je sais comment optimiser 'en profondeur', par contre j'ai besoin d'un petit coup de pouce de ......
On se revoit quand la routine sera optimisé héhé !!
GT Taillé pour gagné !!

-
Azrael :
26 seulement !?! Glp... pas glop... quelle taille tes polygones ?
Pas Glop comme tu dis, on verra après optimisation. Sinon je suis en train de me demander si j'arriverais pas a utiliser le temps libre d'attente du blitter pour faire certains des calculs. Faut que je regardes tout cela.
GT En train de réfléchir
-
Tous les chiffres tombent a l'eau !!

J'ai lancé mon code et le chiffre est tombé 26 polygones !! Quoi ??? J'ai vérifié plusieurs fois et ben non, c'est le bon chiffre.
J'ai repris mon code 68000 et vérifié, dans le code 68000, les points du polygone étaient calculés qu'une fois et pas a chaque polygone, ce que la routine 100% Gpu fait. Le 68000 dans ce cas de figure tourne a un polygone !!

Donc d'un coté j'ai les boules a moitié (Car la routine Gpu n'est pas encore optimisé ! Ouf !) de l'autre le Gpu est 26 fois plus rapide que le 68000 !! Meme si on divise par deux du fait que le 68000 tourne a la moitié du Gpu, cela fait toujours un rapport de 12 !!
Pour voir reellement ce que cela vaut, faudrait que j'adaptes une routine 3d et faire touner quelques objets car c'est sur que c'est pas visuellement parlant, meme moi je commences a en avoir marre de regarder ces polygones sans vie.
GT Un peu dégouté mais je reparts de plus belle !!

-
L'affaire est dans le sac, je remplis mes polygones gones gones au Gpu u u u u u u !!!
Je ferais des essais pour voir le gain cette nuit, j'ai un petit soucis de ram gpu, plutot d'organisation, car suite a mes tableaux placés avec un lance pierre je n'arrives plus a mettre ma routine de resturation de liste au Gpu, donc les chiffres serait pas comparables, enfin cela marche et je suis heureux !!!
GT En train de ranger ma Gpu - Ram !!

-
J'ai laissé tomber les gatos !! j'attaques au petit suisse !! Etant donné que c'est apparement 'misereland' a debugger, j'ai transformé ma routine de tracé de ligne virtuel en routine de tracé de ligne réel, c'est plus simple a debugger !!

GT En train de voir mes erreurs !!

-
Hier soir j'ai pu installer la gestion des codes conditons dans le dessassembleur Gpu / Dsp, il me reste plus qu'un générateur de label pour les sauts et le déssassemblage Gpu / Dsp sera une broutille.
GT En train de regarder sous la jupe du Gpu !!

Une belle bête incomprise : le blitter
in Development
Posted · Report reply
Exactement ça !
Ça donne une référence pour des benchs, Merci Fred !
Merci pour l'info comme cela je pourrais comparer, mais j'ai juste vite survoler la chose et il y a un point ou on gagne deja dessus, le clipping nous coute rien sur des lignes assez grandes !! On profite d'une boucle de synchro par rapport au blitter pour couper les lignes, et Azrael a du finir sa routine de clipping qui nous autoriserait a faire la meme chose pour des petites lignes, pour quelques cycles seulement !!
GT