2010-01-08 9 views
4

J'essaye de développer un jeu 3D en openGL et j'ai besoin de créer de nombreux objets 3D .. Je suis un débutant en openGL .. J'ai essayé avec de nombreux logiciels 3D comme Blender, MODO, Unity 3D et Cheetah.Importer des objets 3D et son animation sur iphone openGL

Je suis facilement capable de créer mes objets avec ceux-ci et d'exporter sous Wavefront .OBJ, et de le convertir en un fichier d'en-tête à l'aide d'un script perl. Ce fichier d'en-tête est ajouté à mon projet openGL.

Les objets 3D sont visibles, mais ce n'est pas parfait. Le script que j'ai utilisé est de convertir le .OBJ en .h en utilisant TRIANGLES .. Et l'objet est vu avec des triangles. Ce n'est pas complet .. Pas moyen quand j'ai utilisé TRIANGLE STRIP, FAN ..? Problèmes avec les sommets ..

Est-ce le problème avec mon script ou est-ce le mauvais chemin que j'ai passé .. ?? Ou existe-t-il d'autres moyens d'importer directement des objets 3D dans OpenGL?

Le lien ci-dessous est le meilleur que vous pouvez obtenir pour les objets 3D openGL .. Je suis les scripts de ces ..

http://www.heikobehrens.net/2009/08/27/obj2opengl/

s'il vous plaît aider ..

Répondre

1

Vous don 't veulent aller de cette façon. Le mode de dessin direct (en utilisant TRIANGLE et ses amis) est extrêmement lent en OpenGL. Au lieu de cela, vous devriez choisir un format décent et écrire un chargeur pour celui-ci (ou en utiliser un trouvé sur le web). Les bons formats seraient 3ds, obj si gzipped, collada.

Voici un example tutorial sur le chargement à partir de fichiers Milkshape. Une fois que vous chargez vos objets par programme, vous pouvez utiliser Vertex Arrays, ou même mieux VBO pour les afficher. C'est waaay plus rapide.

Google pour un mesh loader pour votre format préféré, ou en écrire un vous-même.

+0

Merci pour votre réponse. J'utilise blender pour créer une animation 3D. Je n'ai pas de milkshape 3D. Donc, est-il un peu possible d'importer le fichier animé à opengl.? Collada est un bon format pour ça. Ou pouvez-vous m'aider dans ce .. Merci encore une fois .. – quint

1

J'ai écrit un lecteur/pour AC3D fichiers renderer qui fonctionne bien sur l'iPhone (OpenGL ES)

Ne hésitez pas à jeter un oeil à ce here.

Il existe également un chargeur d'obj par Jeff Lamarche au google code.

AC3D peut réduire le nombre de triangles assez bien et comme alternative j'ai porté QVis au mac. Mon lecteur/moteur de rendu essaie également de construire des tri-bandes.

À propos des VBO. Je n'ai vu aucune performance acquise en les utilisant dans l'iPhone. I'm not the only one.

+0

Merci pour votre réponse .. J'ai déjà essayé avec AC3D encore. Dint obtenir sa version complète pour le moment. Mais j'essaye de faire la création avec Blender, ce qui est beaucoup mieux je suppose. Donc, il n'y a aucun moyen d'importer le formulaire d'animation blender pour ouvrir les codes .. Ou tout autre moyen direct de le faire .. S'il vous plaît aider – quint

Questions connexes