Multi platform process/methodology advice - 3D game (iOS, Droid, Web),
Members - Reputation: 104
Posted 03 December 2012 - 02:17 AM
This question is more focusses on the process of creating a game, ie the order and or sequence of tools to deploy a 3D game on Android, iOS, and via the web. I've spent 3 solid days reading up and taken a few pivots in my thinking. I'm an enterprise Java (portals/mobile) architect/developer.
The game will make significant use of sensors, eg accelerometers, magnetometers, pressure sensors, touch screens, mic, camera, etc. It's a first person tactical fighter. It will have a server for hosting tournaments, scores, analytics, potentially stream audio etc (will be a Java server).
I have looked at Unity, but it doesn't seem to support webservices to a Java server (unless I misread that). It also doesn't use bullet physics which I am keen on. Furthermore, it has limited access to the sensors on the phone (from what I can tell). I have left a sales call with Unity to explore that more.
Assuming I cannot use Unity, my alternative is as follows. There will be steps missing in my process, which is why I am posting and looking for answers.
1. Create models/graphics in graphics program. I am leaning to Blender and exporting to Open GL ES.
2. The Blender export gets imported into my IDE. No idea how to bring this into code, or which IDE given two or three languages are needed.
3. For Android might need to use NDK, alternative is JMonkey/Arbor but I'd rather not create two ports.
4. Not sure if I can use C++ for Android and move that into iOS with ease.
5. On the web front (for Desktops), I plan to use WebGL. Not sure how to get the Blender export into that.
6. Web service/socket integration for Android to the Java server could use TCP sockets. iOS, not sure.
7. From what I can WebGL isn;t supported on Droid or iOS (though Firefox for Droid supports it).
8. Should I bother with Blender? Are there better tools/methods to create graphics and hook them into code.
9. The OpenGL code I assume will be wrapped up by another language, or, can the whole game be in OpenGL (is just a linked between my core app and the graphics that performs manipulations and eventing with the graphics?)
That's how I see it, there's holes. I've spent a while looking around, Unity might do the trick but so far seems there a limitations I cannot live with. There might be a quicker/simpler path. I also don't know enough technical detail, eg what format to export from Blender, what format to input.
If I may request, an answer that could be given in steps, what tools, and detail on what the technical outputs are of each step (eg x3d), that would be most useful. Alternatives ideas welcome