Scop est un projet simple dans le principe, mais bien plus complexe en réalité. Le but: afficher un objet en 3D via une API Graphique type OpenGL.
images provenant de mon programme
Pour expliquer globalement, API signifie "application programming interface", ou interface de programmation d'application. Dans le cas d'OpenGL, que j'ai utilisé pour ce projet, cela me permet de lui déclarer des formes géométriques via des sommets, puis d'appliquer une rotation si je le souhaite, et OpenGL se charge de faire les calculs et d'afficher à l'écran ce que je lui ai demandé.
images provenant de mon programme
OpenGL peut se charger de dessiner différentes formes, mais la plus avantageuse est le triangle, car chaque forme géométrique peut être découpé en triangle, ce qui permet de faire un seul programme. Ainsi, bien que ce que l'on voit ici ou dans les jeux vidéo n'aient pas une forme de triangle, ils en sont composés.
le même objet mais où l'on voit tous les triangles
Ce programme est développé en C++, et prend en paramètre un .obj qui est souvent accompagné d'un .mtl. Un .obj peut contenir énormément d'informations mais voici les principales:
symbole | signification | définition |
---|---|---|
v | vertice | un point, un sommet |
f | face | une face formée de multiples sommets |
o | object | ce qui permet de donner un nom à l'objet |
vt | vertice texture | un point, un sommet de la texture |
mtllib | material librarie | lien vers un fichier .mtl pour utiliser ce qu'il contient |
usemtl | use material | définit qu'un objet utilise un material |
bien sûr il en existe énormément d'autres, mais c'est celles que j'ai utilisé dans mon programme.
exemple d'un fichier .obj