Je travaille sur un projet où j'ai besoin de rendre un corps humain en 3D sur un appareil iOS. L'objet 3D a été construit dans Adobe LightWave et est de 7,4 Mo. Je l'ai ouvert dans Blender et l'ai exporté en tant que paire OBJ/MTL qui sont respectivement de 5,5 Mo et 4 Ko. En utilisant Wavefront Loader de Jeff LaMarche (ci-dessous) comme point de départ pour comprendre OpenGL ES et obtenir des performances de vérification et autres joyeusetés, j'ai collé l'objet (à la place d'une paire OBJ/MTL qu'il utilisait) et l'ai exécuté dans le simulateur. Bien sûr, planter au démarrage, j'ai donc décidé de le faire dans SélectorInBackground. Une demi-heure plus tard, ça continue à charger. Je devine juste que le fichier est trop détaillé pour dessiner avec n'importe quel type d'attente de performance sur un appareil avec un processeur de 600 MHz. Yat-il un moyen de réduire la qualité de ces fichiers un peu facilement? Ou, si des problèmes de performance ont surgi avec ce chargeur particulier, quelqu'un pourrait-il m'éclairer?WaveFront OBJ converti à partir de LightWave prenant pour toujours pour rendre sur l'iPhone
Merci, Will
http://iphonedevelopment.blogspot.com/2009/03/wavefront-obj-loader-open-sourced-to.html
Combien de sommets cherchez-vous ici? –
69150 sommets, 67764 faces. Oui, je pense que cela doit être réduit. PS: Bonjour Brad. – wjl
En fait, ce n'est pas si fou. J'ai chargé et affiché des modèles avec plus de 90 000 vertices (120 000 triangles) sur les iPhones de première génération. Ils ont pris quelques secondes pour charger et rendre, mais rien de ce que vous voyez. Je suspecte que si vous avez exécuté des instruments sur ceci, vous verriez que le goulot d'étranglement est quelque part dans le code d'analyseur d'OBJ. –