website logo
Auteur
avatar
thellier

Forum » » Création-Développement » » Mes expériences sur MiniGL, recompilation, conseils, etc ...


Posté : 01-07-2015 16:01 icone du post

Bonjour

Le mois dernier, je me suis efforcé de recompiler la dernière source de MiniGL pour l'optimiser

J'ai donc un cross compilateur basé sur Cygwin

1) j'ai corrigé tout les warnings "obsolete" concernant les MsgPort, etc .. dans les sources gl & glut

2) j'ai corrigé tout les warnings "obsolete" concernant AllocVec dans les sources gl & glut
Donc plus aucuns avertissements "obsolete" sur les sources sur gl &glut (sauf un allocvec pour la mémoire chip qui ne peut pas être retiré)
Compilation parfaitement propre et conforme à OS41FE désormais de gl & glut
(J'ai pas vérifié les sources de glu parce que glu est pas si important)
Mais ça accélére pas le IoQuake d'Huno

3) J'ai tenté de réécrire la partie ?transform? pour utiliser les registres
==> Mais ça accélére pas le IoQuake d'Huno

4) Appliquer les fonctions transform, codepoints (test du clip), LightVertices, VerticesToScreen à l'ensemble de la primitive et non pas pour chaque triangle
==> Mais ça accélére pas le IoQuake d'Huno

5) réécrit tous les fonctions draw qui tracent des "primitives" pour bufferiser les triangles non clippée (ou les points ou lignes) permettant ainsi de tracer une primitive (clippée) en une seule passe
==> Mais ça accélére pas le IoQuake d'Huno

6) Test si primitive pas clippée du tout (entièrement à l'écran), alors la dessiner immédiatement
==> Mais ça accélére pas le IoQuake d'Huno

7) J'ai aussi essayé d'enlever complètement le "lighting" (cad les sommets sont alors simplement colorée avec du blanc)
==> Mais ça accélére presque pas le IoQuake d'Huno ===> Donc l'éclairage a presque aucune influence sur ce programme

Tout ces changements ont introduit de nouvelles erreurs: alors maintenant Glexcess crashe sur le tracé de lignes : C'est certainement une bug facile, mais je suis trop fatigué pour m'en occuper
Heureusement Ioquake, qui sert de test, fonctionne encore parfaitement, mais presque à la même vitesse (même un peu plus lent)

Bilan:
Sources propres
Nouvelles bogues
Pas plus rapide avec Ioquake et même un peu plus lent
Peut être plus rapide sur d'autres prog mais long à tester...

Maintenant, je suis très fatigué: ceux qui disaient "MiniGL peut être facilement plus rapide? ont tort = j'y ai passé beaucoup de temps pour zéro progrès

Alain Thellier - Wazp3D

Note: Ioquake timedemo sur la Sam440 fait 18.4 fps (vs 18.7 avec l'original) (18.6 sans lighting)
Note2: Ioquake timedemo parfois fait 20.7 fps sans raison apparente

Sam440 - Sam460 - X5000 - PowerBookG4 - WinUAE - MiniMig

Message édité par : thellier / 01-07-2015 16:07

Cet article provient de Le site des utilisateurs francophones actuels et futurs d'AmigaOS 4.x
https://amiga-ng.org/viewtopic.php?topic=2121&forum=14