Bonjour, j'aurais une simple question, les moteurs 3D comme ogre, irrlicht ou n'importe quoi d'autre utilisent tous open GL pour afficher les objets 3D, non ?
Je veux dire.....quand par exemple je veux créer un cube, irrlicht le fait faire directement à la carte graphique, ou il passe par open GL ?
Merci de bien vouloir me répondre
Dernière modification par mmorpglefilm (23-06-2011 02:08:08)
Hors ligne
et bien irrlicht stock les vertices et les indices en interne et il les fait passer a la cg via une api (opengl, directx)
tout dépend comment c'est intégrer, on peut tout a fait affichier polygone par polygone, ou tout envoyer d'un coup
ex: void glBufferDataARB(GLenum target, GLsizei size, const void* data, GLenum usage);
crée une copy de ton mesh qui ce trouve en ram, dans la vram, après il faut faire un glBindBufferARB(GLEnum, GLuint target) pour dire a opengl que c'est ce mesh que je veut utiliser ....
chercher des tuto sur les vbo en opengl, tu comprendra je pensse
Hors ligne
En règle générale les moteur 3D passe par les API (en gros sur un PC c'est soit DirectX ou alors OpengGL pour ceux qui travaillent avec Windows).
Maintenant, Irrlicht propose aussi un driver software, et qui s’affranchit donc de toute API. La contre partie c'est que dans ce cas tu ne
bénéficie pas de l’accélération matérielle pour tes rendu.
Regarde le code d'Irrlciht dans la partie Drivers, tu verras un petit peu comment les choses sont articulées.
Hors ligne