CPC Rulez
https://cpcrulez.fr/forum/

La "genèse" de 3DManiaks
https://cpcrulez.fr/forum/viewtopic.php?f=3&t=6784
Page 1 sur 1

Auteur :  demoniakparadox [ 05 Déc 2022, 19:38 ]
Sujet du message :  La "genèse" de 3DManiaks

Hello,

C'est vrai que j'avais parlé de la "genèse" de TriangulArt, il manquait la "genèse" de 3DManiaks... (https://www.pouet.net/prod.php?which=90237)

La routine de base est la même pour ces 2 démos: une routine de tracé de triangle rapide.

J'avais écrit il y a quelques temps (oulà, ça date de 2011 quand même...) un petit truc sur le sujet : https://demoniak-contrib.forumgaming.fr/t60-la-3d-en-faces-pleines-sur-cpc

L'idée était donc "d'animer" des objets en 3D.
Le point de départ était d'utiliser Make3DFrames, un logiciel que j'avais développé il y a quelques années également, et qui se contentait de "générer" des animations d'objets 3D en effectuant une sorte de "delta packing" (compacter les différences inter-images) de chaque image de l'animation.
Le problème est que pour une simple animation de 30 images, on arrive à de grosses quantités de mémoire si l'objet prends de la place sur l'écran...
Par contre, si on utilise simplement les coordonnées des triangles composant une image, on peut réduire pas mal la place occupée en mémoire.
Make3DFrame permet cette option, sortir une liste de coordonnées de chaque triangles composant une image d'une animation.
J'ai ensuite réalisé sur PC un logiciel permettant de "reprendre" ces listes pour pouvoir éditer triangle par triangle chaque image, puis chaque animations.
Ce logiciel permettait également d'optimiser les images: parfois certains triangles peuvent être simplifiés ou supprimés.
Ensuite, l'idée était de compacter chaque image avec le compateur ZX0 qui permet un très bon taux de compression et une vitesse rapide de décompression.
Je me suis rendu compte que pour une animation d'une 30aine d'images, j'arrivais à seulement quelques kilos-octets.
La mémoire du CPC6128 permettait donc de stocker une bonne quinzaine d'animations, l'idée de la démo était là...

Page 1 sur 1 Le fuseau horaire est UTC+1 heure
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/