Je souhaite afficher et faire pivoter un seul modèle 3D, de préférence texturé, sur l'iPhone. N'a pas à faire un zoom avant ou arrière, ni un arrière-plan, ou quoi que ce soit.
J'ai ce qui suit:
Ma base de connaissances:
Ce que je ne sais pas:
Mon principal problème est que je ne sais pas par où commencer! Tous les livres iPhone que j'ai trouvés semblent concerner la création d'applications GUI, pas d'OpenGL. J'ai trouvé un livre OpenGL mais je ne sais pas combien, le cas échéant, s'applique au développement de l'iPhone. Et je trouve la syntaxe Objective C quelque peu déroutante, avec le nommage bizarre des méthodes imbriquées, des choses comme "id" qui n'ont pas de sens, et la pensée effrayante que je dois faire une gestion manuelle de la mémoire.
Où est le meilleur endroit pour commencer? Je n'ai trouvé aucun tutoriel pour ce genre de chose, mais peut-être que mon Google-Fu est faible. Ou peut-être devrais-je commencer par apprendre l'objectif C? Je connais des livres comme Aaron Hillgrass, mais j'ai également lu qu'ils sont obsolètes et qu'une grande partie de l'exemple de code ne fonctionne pas sur le SDK iPhone, en plus il semble orienté vers le paradigme Model-View-Controller qui ne fonctionne pas semblent adaptés aux applications 3D.
Fondamentalement, je suis confus quant à ce que devraient être mes premiers pas.
Vous devriez probablement commencer avec des applications/tutoriels iphone plus simples, juste pour vous familiariser avec obj-c et xcode, etc.
Pour cela, je recommande le livre iphone du programmeur pragmatique, qui a suffisamment d'informations pour commencer (j'ai commencé sans connaissance de xcode, obj-c, iphone ou mac et suis arrivé à une application qui fonctionne assez rapidement, en utilisant principalement cela). Cependant je dois ajouter que je viens d'un assez bon bagage en C/C++ et Java.
Pour votre projet particulier, jetez un œil à la réponse this qui fait référence à une application 3D open source que vous pouvez consulter et obtenir des conseils.
Encore une fois, si je peux brancher mon propre travail, j'ai écrit un article sur les choses que j'ai apprises en développant une application OpenGL ES sur l'iPhone. Cette application, Molecules (mentionnée par frankodwyer), est open source et j'ai un writeup sur certains des autres problèmes délicats que j'ai rencontrés lors de son développement. L'application génère des modèles 3D et vous permet de les faire pivoter et de les mettre à l'échelle avec vos doigts, ce qui semble proche de vos besoins. Vous pouvez télécharger le code, le compiler et l'exécuter sur votre bureau en quelques minutes. Si vous rejoignez le programme pour développeurs iPhone, vous pouvez l'installer sur votre appareil.
En ce qui concerne le chargement d'objets, Bill Dudney travaille sur un Wavefront OBJ loader pour iPhone qui pourrait être capable de prendre en charge vos fichiers Blender, s'ils devraient être exportables dans ce format. Je n'ai pas encore beaucoup travaillé sur les textures sur l'iPhone, mais il semble que son exemple fonctionne maintenant.
Dans l'ensemble, je trouve que l'apprentissage par l'exemple et le saut dans le développement de petites applications ciblées (que vous ne pourrez peut-être jamais publier) sont ce qui fonctionne pour moi. Essayez de modifier les exemples ci-dessus et voyez ce qui se passe. Vous devriez pouvoir lire le code Objective-C dans ces exemples et commencer à avoir une idée de ce qu'ils font.
Même si le livre de Hillegass (la troisième édition vient de sortir et est à jour) se concentre sur le Mac, les principes fondamentaux de Cocoa qu'il enseigne sont toujours pertinents pour l'iPhone. Le modèle de conception MVC vous sert aussi bien sur iPhone que sur Mac. En fait, je me suis écarté de ce modèle à quelques endroits dans Molecules, et je regrette cette décision parce que ces sections de l'application sont devenues un gâchis. Le livre est facile à lire et vaut bien votre temps.
C'est un fil ancien et je suis terriblement en retard. Mais je vais quand même poster mes 2 pence ici.
Avant d'entrer dans la bête, voici ma configuration.
J'utilise
Donc, si vous n'avez pas l'intention d'utiliser Cocos3D , vous pouvez ignorer cette réponse et courez pour votre argent.
Installer blender .
Je ne vais pas vous embarrasser en entrant dans les détails.
Télécharger Cocos3D. .
Lorsque je tape ceci, la version actuelle est 0.7.2.
Télécharger Cocos2D.
Cocos3D est écrit sur Cocos2D, un framework de jeu 2D populaire. Il est important de noter ici que la version Cocos2D 2.x est déjà là et stable. Mais Cocos3D fonctionne uniquement avec la version Cocos2d 1.x.
Lorsque vous décompressez la source que vous avez téléchargée, vous trouverez un fichier README à l'intérieur et il indique spécifiquement,
VEUILLEZ NOTER QUE cocos3d 0.7.2 IS NON COMPATIBLE AVEC cocos2d 2.x . ASSUREZ-VOUS DE TÉLÉCHARGEZ cocos2d 1.x POUR UNE UTILISATION AVEC cocos3d .
Le fichier README indique clairement la procédure d'installation. Après l'installation, vous obtiendrez un modèle de projet Nice Cocos3D dans XCode.
Ajoutez l'extension PVRGeoPOD à Blender.
Cela nécessite quelques explications. Lorsque vous exécutez le programme d'installation de PVRGeoPOD, un écran affiche les fonctionnalités et les fonctionnalités à installer. J'ai seulement sélectionné
PVRGeoPOD - Pour convertir mes modèles dans mon fichier .blend au format .POD que Cocos3D comprend
PVRShaman - vous pouvez voir le modèle dans .POD en utilisant cet outil.
Vous pouvez installer d'autres outils dans la liste, mais je n'ai utilisé que ces deux-là.
Maintenant, après le processus d'installation (qui peut prendre un certain temps), vous devez ajouter le PVRGeoPOD AddOn au mélangeur. Vous pouvez trouver le fichier PVRGeoPOD.UserManual.PDF dans le dossier qui vient d'être installé, qui contient également les informations ci-dessous.
bpy.utils.script_paths("addons")
pour voir le chemin d'accès à ce dossier.Vous pouvez maintenant créer des modèles dans Blender et exporter ces modèles sous forme de fichiers .POD que Cocos3D comprend.
Si vous utilisez d'autres outils de conception 3D comme Maya, 3D Max, cette extension PVRGeoPOD peut également leur être ajoutée. Il suffit de voir le PDF je l'ai mentionné ci-dessus.
La procédure étape par étape est donnée ci-dessous.
Créez votre modèle dans Blender (.blend) et exportez-le sous forme de fichier .POD. Lorsque vous exportez, je sélectionne normalement les options suivantes
et reste je l'ai laissé par défaut.
Le projet de modèle lui-même contient un fichier HelloWorld.POD, vous pouvez remplacer cette ligne par votre fichier .POD afin que votre modèle soit visible.
[self addContentFromPODFile: @"YourPODFileName.pod"];
Vous avez maintenant votre premier modèle 3D visible sur l'appareil iOS.
Prise sans vergogne
J'ai fait un petit rendu AC3D pour l'iPhone. Lien >>
N'hésitez pas à l'essayer, une bibliothèque de démo pour le simulateur iPhone est disponible. Veuillez noter que les performances d'OpenGLES sur l'iPhone ne sont pas les mêmes que dans le simulateur.
Il utilise une étape d'optimisation et construit des tristrips et construit des vertexarrays finaux pour pouvoir s'exécuter sur l'iPhone.
Regardez un quickstart comment l'utiliser
Ce message est assez ancien et je pense qu'il existe maintenant une meilleure ressource pour faire ce que vous voulez. Je suis également assez débutant, mais après avoir fait quelques recherches, j'ai trouvé ce lien le plus utile:
http://38leinad.wordpress.com/2011/10/10/19/practical-blender-with-glkit-part-1-introducing-glkit/
Il explique glkit qui devrait faciliter la gestion d'OpenGL et comprend également un joli didacticiel sur la façon d'interagir avec Blender.
Je joue avec le développement iPhone pour un peu de plaisir et j'ai acheté Beginning iPhone Development par Dave Mark et Jeff LaMarche (ISBN13: 978-1-4302-1626-1) et j'aime travailler à travers les chapitres. J'ai un arrière-plan Delphi Win32 avec un peu de .NET et donc l'objectif C est très nouveau pour moi.
L'un des chapitres porte sur OpenGL et Quartz qui peuvent vous intéresser. Je ne suis pas encore allé jusque-là, donc je ne peux pas vraiment commenter son utilité, mais le style d'écriture est très accessible et il est bien rythmé (pour moi en tout cas).
Les premiers chapitres expliquent exactement comment démarrer une course à pied avec une bonne introduction à Xcode et InterfaceBuilder.
Pour quoi que ce soit sur iOS 8 ou version ultérieure, la réponse est SceneKit. SceneKit rendra les fichiers Collada (DAE). Tout package de modélisation décent (par exemple Cheetah, Blender) devrait exporter un fichier DAE - c'est un format portable documenté en XML (bien que xCode les compile au format binaire pour économiser de l'espace).
2 bons sdks 3d pour iphone:
sio2interactive et oolong.
Le sio2interactive a d'excellents tutoriels vidéo et src sur leur site. Il vous aidera à exporter et à rendre le mélangeur et le modèle - vous permettra d'accéder au développement du jeu. Le src est tout en c pour sio2 et le code est très bien commenté. C'est un excellent endroit pour commencer à apprendre la 3D et les opengles. L'exportation de Blender vers sio2 est WYSIWYG.
En faisant tout cela à partir de zéro, vous devrez savoir comment exporter et importer les modèles vous-même. Donc, deux excellentes bibliothèques pour quelqu'un qui commence.
Utilisez Emcore3D --- (https://github.com/Things3D/Emcore3D )
Définissez simplement les chemins vers les obj, mt et textures.
T3DModelPathInfo * newModelPath = [T3DModelPathInfo createModelPathInfoWithModelName: @ "model.obj" matériau: @ "model.mtl" path: @ "/ 3DModels /"];
Après cela, vous créez un T3DObject avec le T3DModelPathInfo et l'ajoutez au T3DRenderController.
T3DObject * newObject = [T3DObject initWithModelPathObject: newModelPath]; [renderVC addT3DObject: newObject];
ps: Divulgation que je fais partie de l'équipe Emcore3D