Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

From a 3D modeler to an iPhone app - what are best practices?

I am quite new in 3D programming on iPhone and I would like to ask for hints about organizing a work between designers and programmers on that platform. Most of all: what kind of tools, libraries or plugins cooperate the best on both sides.

Although I consider the question as looking for general best-practices advice I would like to find a solution for my current situation which I describe further, too.

I've already done some research and found following libraries:

  • SIO2
  • Khronos OpenGL ES 1.x SDK for PowerVR MBX
  • Unity3D
  • Oolong Game Engine

I've checked modellers or plugins to them giving output formats readable by those tools:

  • obj2opengl Wavefront OBJ to plain header file converter
  • Blender with SIO2 exporter
  • iphonewavefrontloader
  • Cheetah3D
  • PVRGeoPOD for 3DS / Maya

Unfortunately I still have no clear vision how to combine any of that tools to get a desinger's work in an application. I look for a way of getting it in the most possible complete way: models, lights, scenes, textures, maybe some simple animations (but rather no game-like physics), but I still got nothing.

And here comes my situation: I would like to find right way to present few (but quite complicated) models from a single scene. The designers mostly use 3DS Max 9, sometimes 10 (which partly prevents using PVRGeoPOD) and are rather reluctant to switch to something else but if there's no other choice I suppose it would be possible.

The basic rule I've already found in some places "use Wavefront OBJ" not always works. I haven't got any acceptable results with production files, actually. The only things worked fine were some mere examples. Some of my models did imported incomplete, sometimes exporters hung or generated enormous files not really useful on an iPhone, sometimes enabling textures (with GL_TEXTURE_2D) just crashed an app.

I know it might be a problem with too complicated models or my mistakes coming from inexeperience but I am not able to find any guidelines for that process to have streamlined cooperation with designers.

I am even willing to write some things from scratch in pure OpenGL-ES if it's necessary, but I would like to avoid what might be avoided and get the most from the model files. The best would be the effect I saw on some SIO2 tutorials: export, build & go. But at that moment I've got only "import, wrong", "import, where are textures?", "import, that almost looks fine, export, hang" and so on...

Is it really so much frustrating or I am just missed something obvious? Can anybody share his/her experience in that field and tell what kind of software uses for "making things happen"?

like image 729
Daniel Bauke Avatar asked Apr 09 '10 07:04

Daniel Bauke


People also ask

Can you do 3D modeling on iPhone?

Yes, you can start using a 3D modeling app for iOS, Android or Windows devices. There are plenty of choices depending on your skills.

What app should I use for 3D modeling?

Autodesk Maya will bag the top spot in most artists' ranking of the best 3D modelling software. The industry standard for an array of CG disciplines, Maya offers artists an unrivalled set of features and tools. This powerful app isn't for beginners, however, its toolset is complex and takes time to master.


1 Answers

Well I can't say I know the perfect way to do this but after some experimenting I did get something working doing the following:

created the model(s) in Blender, exported it to wavefront .obj format (TRIANGLE,normals,hq) then used obj2opengl.pl script to convert the model to a header file(.h) then added the header in the project and used it in GLGravity - which is a sample program from Apple and modified the drawView function

maybe that could be a starting point for you too, just to get something up and running?

like image 126
AndersK Avatar answered Sep 28 '22 19:09

AndersK