90

Kevin Kofler
a écrit : Mais ce sera compensé par les abscisses plus rapides.
Ben ouais, mais ça fera des saccades (relativement petites, ok), comme dit TiMad.

Par contre, pour avoir 405 (chiffre donné par TiMad) sprites à la fois, ça risque d'être assez rare. Mais on arrive fréquemment à 120 sprites.

Bon, j'ai écrit tout à l'heure une fonction qui sépare en 2 boucles (non déroulées) pour optimiser au max le shifting, je vais tester ce soir la rapidité.
Les jeux/programmes qui utilisent ExtGraph n'utilisent normalement pas de timers ou d'interruptions pour l'affichage. Quand un frame est prêt, on commence immédiatement à calculer et afficher le prochain. Dans ce cas, c'est bien le cas moyen qui compte le plus.
Si j'ai bien compris ce que tu dis, c'est justement dans ces cas là que ressentira le plus la "saccade". Et personnellement, j'utilise toujours une interruption pour afficher mes frames.

91

Je ne pense vraiment pas que l'effet de "saccade" dérange tellement. Et c'est idiot d'utiliser une interruption pour l'affichage des frames, vous jetez plein de cycles par la fenêtre!
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

92

Ah bon ? Pkoi ?

93

Parce que le processeur est en attente entre les 2 appels de l'interruption.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

94

Oui, mais c'est pour avoir un fps constant que je fais ça.

95

Mais c'est quand-même un gaspillage de cycles.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

96

Bon, j'ai benché la version avec 2 boucles (non déroulées) :
ExtGraph 1.02 : 7179 sprt/s
Futur ExtGraph (48 octets) : 8333 sprt/s (+16cheeky
2Boucles (80 octets) : 8762 sprt/s (+22cheeky

Donc le gain est quand même sympathique, mais la taille double presque. Et oui, j'ai benché les fonctions non clippées, donc elles étaient de petite taille à la base, donc de rajouter une deuxième boucle (et le peu de code qui va avec pour les gérer) a presque doublé la taille de la fonction.
Mais sur une fonction de sprite clippée, la taille n'augmentera que de 20% (150->180 octets) à mon avis.

97

bein faut savoir si vous voulez que votre lib permette de faire de gros jeux
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

98

Kevin Kofler
a écrit : Je ne pense vraiment pas que l'effet de "saccade" dérange tellement. Et c'est idiot d'utiliser une interruption pour l'affichage des frames, vous jetez plein de cycles par la fenêtre!


Mais la saccade est tout bonnement a exclure dans un programme ! Ca fait moche et lorsque l'on fait un jeu, on essaye de soigner les graphismes ... c'est de l'utilisation des niveaux de gris etc.
Donc cette perte de cycles est nécessaire ...

99

Bon, ce matin j'ai eu un peu de temps en cours pour écrire une fonction qui déroule un peu la boucle (j'affiche 2 lignes par itération).
Il faudra que je la recopie ce soir et je la bencherai.

100

Voilà le nouveau bench :
ExtGraph : 7160 sprt/s
Futur ExtGraph (52 octets) : 8198 sprt/s (+14.5cheeky
2 Boucles différentes (80 octets) : 8758 sprt/s (+22.3cheeky
2 Lignes par itération (72 octets) : 8712 sprt/s (+21.7cheeky

Donc la version qui affiche deux lignes par itérations est légèrement plus petite en taille et légèrement plus lente que la version qui utilise deux boucles selon le shifting.

Maintenant je vais voir en combinant les deux.

101

Et bonjour le gaspillage de place. sad

1/8198-1/8758 < 8 * 10-6
On ne gagne même pas 8 microsecondes! Il vaut beaucoup mieux conserver les 28 octets!
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

102

J'ai fini la dernière version qui comprend les deux optimisations que je viens de tester et les résultats sont à la hauteur de mes espérances : 9506 sprt/s (soit une amélioration de 33% !)
Par contre la fonction a plus que doublé de taille (et pourtant j'ai essayé d'optimiser aussi en taille) : elle fait 120 octets sad

103

Kevin Kofler a écrit :
Et bonjour le gaspillage de place. sad

1/8198-1/8758 < 8 * 10-6 On ne gagne même pas 8 microsecondes! Il vaut beaucoup mieux conserver les 28 octets!

eek
nan mais je reve !

Bon 2 versions d'Extgraph c'est envisageable ? Une lente et petite, une moins lente et moins petite ?
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

104

si tu veux je te passerai les versions rapides.
Mais autant utiliser XLib en fait, ça doit être mieux.

105

cf topic d'XLib, si je peux m'en passer à moindre cout je le fais sans hésitation, j'en ai plus qu'assez de cette lib incomplete.
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

106

Ben je croyais que tu n'utilisais que 2-3 fonctions de la lib confus

107

Exactement, 2 fonctions. Et c'est pour ça que j'aimerais me passer de toutes ces fonctions de mise en route de la lib, création de buffer, redirection d'affichage, qui m'encombrent plus qu'autre chose et prennent une place considérable.

[edit pour Kevin] : considérable c'est pas 28 octets.
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

108

Ou alors tu fais chaque fonction en deux exemplaires: par exemple sprite_16 et fast(er)_sprite_16 smile
Puisque c'est du statique on peut se le permettre roll
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

109

> Bon 2 versions d'Extgraph c'est envisageable ? Une lente et petite, une moins lente et moins petite ?
Possible, formellement, oui. Souhaitable, il faut voir. Mais pas sans l'aide d'un plus grand nombre de personnes... Parce qu'une fois que les routines seront finies, il faudra modifier en profondeur la documentation, pour l'intégration dans ExtGraph... Et ça prend du temps, beaucoup de temps.

Pour les routines, je préférerais la routine "2 lignes par itération", insensiblement plus lente que la "2 boucles différentes" mais plus petite.
La routine de 120 octets est trop grosse... On ne va pas faire des trucs XLib-like...
Et merci encore jackiechan de prendre le temps de faire tout ce boulot...
avatar
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-admin de TI-Planet.

110

De rien, j'aime faire ça smile

Sinon, Ximoon ta proposition tient la route, mais déjà qu'on a à peine codé la moitié du total de fonctions à faire pour l'instant, si on rajoute encore des fonctions, ExtGraph ne sortira jamais...

111

Et bien concentrez-vous sur la version principale et faites un add-on plus tard smile
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

112

Ouais, ce serait déjà bien.
Il nous reste pas mal de fonctions clippées à faire et après toutes les fonctions en nvg.

113

Bah c'est du recopiage/adaptation brutal non? J'imagine que les routines de clip seront plus ou moins les mêmes pour toutes les fonctions de sprites au moins.
Pour les nvg ça va pas changer trop non plus... du travail à la chaine quoi.
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

114

Oui, mais ça prend quand même un certain temps. Et je tiens à vérifier le bon fonctionnement de chaque routine.
D'ailleurs en traduisant certaines fonctions de A68k en GNU ASM, j'ai fait parfois des petites modifs, il faudrait que je vérifie si ça ne gêne pas.

115

Tu fais bien smile
Vivement que vous ayiez fini, ça sera une bonne chose de faite!
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

116

MDR.
Kevin, t'as deja vu un jeu sans synchro... ton ignorance me fera de plus en plus rire!

Vertuos: Dsl si Xlib ne correspond pas a tes besoins, mais elle est loin d'etre grosse (faut pas abuser quans meme!).
Et pour ce qui est du nombre de fonction a appeler, il faut pas dire n'importe quoi.. a part XOn et XGPlanc et XNewPlan, le reste reste un jeu d'enfant.. et d'ailleur meme avec Extgraphlib, il faudra allouer tes plan, activer tes niveaux de gris etc... qui est beaucoup plus long qu'avec Xlib!
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

117

jackiechan
a écrit : D'ailleurs en traduisant certaines fonctions de A68k en GNU ASM, j'ai fait parfois des petites modifs, il faudrait que je vérifie si ça ne gêne pas.

La conversion a68k>GNU, je comprends pas vraiment l'interêt...
TIGCC supporte parfaitement a68k, et les fonctionnalités du GNU Asm ne sont pas utilisées, non ?
Des % partout c'est pas vraiment marrant à lire.

118

NB: tu te plaignais de GX car tu la trouvais pas assez rapide, mais bon perso je suis 80% sur que extgraphlib sera pas plus rapide ( et je ne me base pas sur des benchs a la ***)
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

119

ExtendeD a écrit :
La conversion a68k>GNU, je comprends pas vraiment l'interêt...
TIGCC supporte parfaitement a68k, et les fonctionnalités du GNU Asm ne sont pas utilisées, non ? Des % partout c'est pas vraiment marrant à lire.
En fait, c'est simplement parce que XDanger avait commencé à écrire ses fonction en GNU ASM, donc pour avoir un truc plus homogène, il préfère que je mette tout en GNU.

120

lol
l'important c'est que ce soit au moins plus rapide que la version précédente smile
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.