Bonjour,
Mon moteur 3d commencant a fonctionner assez régulierement pour des besoin de projets de M1 il serait sympatique de pouvoir y ajouter un peu plus de vie que des cubes et un terrain et des lightmap spheriques... je me lance donc dans la créations de loaders d'objet de base (basé sur les hierarchie de mesh).
Mais je me retrouve confronté a quelques petits problemes et tout un tas de questions en rapport avec ce sujet que je vais déposer ici en vrac avec l'espooir d'en voir certaine trouver réponse aupres de vous
Question 1 :tout d'abord du point de vue de ma hierarchie de mesh elle fonctionne simplement comme un arbre
une mesh contien donc :
un vertexbuffer, un colorbuffer, un uvbuffer, un indexbuffer
une position, une rotation(quaternion), et une echelle
une liste d'enfants
et au moment de l'affichage de la hierarchie j'effectue en gros le code suivant
Se code est il sufisemment propre ou manque il des choses essentielles ??
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 void Mesh::draw() { glPushMatrix(); translation rotation echelle bind des buffers et affichage appel de draw sur tous les enfants glPopMatrix(); }
Question 2 :
J'ai commencé a intégrer un chargeur 3ds et apres des heures de recherche vaines je n'ai toujours pas trouvé pourquoi mon modele a moi s'affiche comme ca :
alors que dans un renderer classique le modele ressemble a ca :
On vois assez bien les probleme au niveau des bras (et ce n'est pas le seul model a me poser probleme alors que certain marchent tres bien mem avec une hierarchie)
Question 3 :
Toujours dans le format 3ds on trouve unn chunk qui m'est assez misterieu contenant des ushort qu'ils apelle vaguement en anglais des flags de sommets.... et honettement jme demande bien sque ca peut etre ??? (surement mon ignorance encore grande sur ce domaine)
Question 4 :
J'ai aussi débuté un loader pour le format C4DXMl (dont je n'ai trouvé aucune doc et dont je fais le reverse engeniering au feeling) j'arrive donc a charger les modeles avec leur materiau et leur positions (pas regardé encore les probleme de hierarchie pour C4DXML) mais déja dans le tag_uvw je retrouve bien effectivement les coordonnees 3D des textures mais egalement toute une serie de uword (ushort si je dis pas de bétises) et je ne vois egalement pas a quoi ils peuvent bien correspondre ???
Voila sinon aparemment en faisant je viens de voir que effectivement le plus simple serait de créer mon propre format et ensuite de créer des convertisseur :$ je vais donc effectivement procéder ainsi mais je voudrais bien quand mem si possible trouver réponse a mes questions
Merci d'avance
Cordialement
Partager