Bonjour,
Je suis actuellement sur un projet où je vais devoir stocker un maillage en mémoire en Java. Je voulais simplement savoir les différentes méthodes qui existent pour stocker un tel maillage. Merci d'avance
Nico.
Bonjour,
Je suis actuellement sur un projet où je vais devoir stocker un maillage en mémoire en Java. Je voulais simplement savoir les différentes méthodes qui existent pour stocker un tel maillage. Merci d'avance
Nico.
Il nous faut des précisions sur le maillage que tu souhaites stocker.
Type heightmap ?
Type mesh ?
Il s'agit juste de stocker un simple mesh. Je précise que le moteur que je créé sera très simpliste et devra juste permettre d'afficher à la fin des objets mappés avec une couleur unique.
Sinon, après avoir cherché sur le net, je suis tombé sur ce genre de structure :
Déjà, j'aimerai avoir votre avis sur cette structure de données pour savoir si elle est en adéquation avec mon besoin.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 public class Face { private int m_Index1, m_Index2, m_Index3; private Vector3D m_NormalVector; ... } public class Mesh { private Vector<Point3D> m_PointsList; private Vector<Face> m_FacesList; ... }
En fait, j'aimerai une structure de données assez généraliste pour éviter d'avoir à la réécrire par la suite si par hasard j'arrive à aller plus loin dans le développement du moteur que prévu (pour info, j'ai jusqu'à début juin).
La question est : as-tu besoin d'exploiter ces données après chargement ? Car si la réponse est non, alors balance les à l'API 3D sous sa forme préférée (genre des vertex buffers si tu utilises OpenGL) et ne cherche pas à organiser ça avec plein de structures.
Si par contre ces données vont être exploitées, alors il faudrait commencer par voir comment pour trouver la meilleure représentation.
Mieux que SDL : découvrez SFML
Mes tutoriels 2D/3D/Jeux/C++, Cours et tutoriels C++, FAQ C++, Forum C++.
Mon projet m'interdit d'utiliser des API 3D.
Tu fais un rendu logiciel à la main ? Il est déjà opérationnel, ou bien tu cherches justement le meilleur moyen de représenter les données pour que le rendu soit efficace ?
Mieux que SDL : découvrez SFML
Mes tutoriels 2D/3D/Jeux/C++, Cours et tutoriels C++, FAQ C++, Forum C++.
Ouais le rendu est à la mano avec des algorithmes de tracé de lignes et de polygones. Pratiquement rien n'est implémenté pour le moment. Je cherche donc une bonne manière pour structurer mes données.
Alors ta structure semble bonne, c'est en tout cas ce qui se fait habituellement (sauf que les APIs 3D stockent la normale par sommet et non par face, pour donner l'effet d'angles un peu plus arrondis).
Mieux que SDL : découvrez SFML
Mes tutoriels 2D/3D/Jeux/C++, Cours et tutoriels C++, FAQ C++, Forum C++.
Ok merci pour le conseil, je modifierai ca après.
Partager