[83PCE] Virtual3D - la 3D dans ta calculatrice
Posted: 13 Mar 2021, 23:40
Bonsoir à tous !
Je me suis rendu compte que mon moteur 3D n'avait pas thread à proprement parler sur le forum (mais seulement quelques logs sur les différents topics de news...), et bien, voilà, cela est chose faite !
Tout d'abord, des petits screens :
Je vous remets ici un petit aperçu de ce que le moteur peut faire ... c'est à dire beaucoup !
Features
Et bien sûr tout cela avec une priorité en tête : la vitesse !
Que s'est-il passé récemment sur le repo me diriez-vous ? J'ai converti le code pour qu'il soit compilé par fasmg, recommencer à trifouiller dedans pour optimiser plusieurs choses, implémenter enfin du code et des méthodes différentes : j'ai ainsi implementé le backface culling en 3D au lieu du 2D précédent, autorisant le pipeline à retirer des faces plus tôt, et donc faire moins de calcul ; ainsi qu'une nouvelle méthode pour calculer les transformations de matrices étant un peu plus rapide que la précédente et grappillant quelques millisecondes dans les temps de rendu.
A propos de temps de rendu d'ailleurs, j'ai aussi enfin fait un système de timer précis pour savoir où le moteur passe son temps à chaque frame et me permettant de debuger et d'optimiser plus simplement.
Voilà pour aujourd'hui, et à la prochaine !
Lien de la source
https://github.com/TheMachine02/Virtual3D/
Et notamment la branch fasmg bien plus à jour
Développeurs :
TheMachine02
Grosged (merci pour les optimisations !)
Je me suis rendu compte que mon moteur 3D n'avait pas thread à proprement parler sur le forum (mais seulement quelques logs sur les différents topics de news...), et bien, voilà, cela est chose faite !
Tout d'abord, des petits screens :
Je vous remets ici un petit aperçu de ce que le moteur peut faire ... c'est à dire beaucoup !
Features
- Les textures, avec de la lumière, de la transparence, ou simple
- Un remplissage solide
- Du cliping en 3D
- Du backface culling d'optimisation en 3D
- Des animations
- Des bounding box alignées
Et bien sûr tout cela avec une priorité en tête : la vitesse !
Que s'est-il passé récemment sur le repo me diriez-vous ? J'ai converti le code pour qu'il soit compilé par fasmg, recommencer à trifouiller dedans pour optimiser plusieurs choses, implémenter enfin du code et des méthodes différentes : j'ai ainsi implementé le backface culling en 3D au lieu du 2D précédent, autorisant le pipeline à retirer des faces plus tôt, et donc faire moins de calcul ; ainsi qu'une nouvelle méthode pour calculer les transformations de matrices étant un peu plus rapide que la précédente et grappillant quelques millisecondes dans les temps de rendu.
A propos de temps de rendu d'ailleurs, j'ai aussi enfin fait un système de timer précis pour savoir où le moteur passe son temps à chaque frame et me permettant de debuger et d'optimiser plus simplement.
Voilà pour aujourd'hui, et à la prochaine !
Lien de la source
https://github.com/TheMachine02/Virtual3D/
Et notamment la branch fasmg bien plus à jour
Développeurs :
TheMachine02
Grosged (merci pour les optimisations !)