3D iPhone Development - What do you need?
November 8th, 2009
I had a interesting request recently. Is development for the iPhone/iPod touch a good idea? Is it worth it?
Well, as usual if your idea is not that great, then probably not. On the other hand if you put some effort in it and you realize something interesting, then probably yes! If you see games being developed (or better ported) like this then you will realize that this thing is far from just a telephone. Its a fully fledged hand-held gaming device! Interesting enough, how did Sega manage to release their game so fast? Whats going on? What do I need?
iPhone Business in general
Like all embedded devices the half-life time of an software application in the iPhone world is rather low. Studies so far have found that people tend to use free software (no costs) roughly once or twice and then loose interest.Of course such a generalization is not without exceptions. You can exclude this behavior for everyday utilities (e.g. twitter, mail) and especially games. The Apple iPhone application store is growing rapidly an so are the users. The Sales in this field are sometimes very impressive if you have a "good" idea. (Sales currently roughly ~3000USD/day, app cost 1 unit == 0.99USD)
iPhone Business in Japan
Let me briefly digress for our domestic market in japan. Sales in the past have for the iPhone ranged from roughly 300,000 units per year. This is a lower estimation and will now sharply change as Softbank gives away the devices for free.In the rest of the world the device has a "viral" effect meaning that sales are going very, very, good. As a direct result so are also the sales for top ranked applications in the "app store".
There was a recently a interesting article about "japanese hating the iphone" which turned out to be wrong. Ref. here (In this referece there are also sales numbers.)
Application Sales
Here is an interesting article how to estimate sales from iTunes ranking. Unfortunately apps can't be too expensive, See this. How much monkey can you idealy make? Super Monkey ball is priced at 9.99USD because Sega has a lot of assets to support this low price vs. dev costs.iPhone Application Development in General
Bascially the iPhone is a COCOA based handheld device running XNU (also called, MacOS, stipped version). Building an application which is based on using the iPhone provided API is fairly easy and fast. The API itself provides nearly no capsulation of the OpenGL ES interface (stripped down version of OpenGL for Embedded Devices) which means that you can work with it directly to build an application (XCode).If you write everything from scratch and use no tools like game engines, it will initially take some time to abstract the OpenGL ES interface to your requirements. One full-time developer maybe around 2-3 weeks. Parallel to this the developers can work out UI flow, Gameplay, Program structure (e.g. UML, State diagrams etc. for core concepts). After that you can start with your product desgin implementation. The time here again, depends on the complexity. Monkey Ball was ported not re-implemented which saved a lot of time.
Game Engines
The problem with a complex game is that you need many components like a Physics engine and a 3D Game engine in general, scripting support and so on.You could rely on tools helping you for this process, e.g.
- Unity3D (Mono, JavaScript, C# -(compiled to)-> Native ARM code, XCode)
- Here is for instance a nice writeup on one guy developing a 3D engine for the iPhone
- AC3D Engine + AC3D Lib for the iPhone
Case Study, Monkey Ball
Sega of course has all this already, in the case of Super Monkey ball they just needed to port their code to the iPhone system. (This is the reason initial development was so fast).Monkey Ball from Sega exists already since quite some time.
I think their game engine is C or C++ based and easily convertable to other platforms as they tend to support C. So if you want to write everything from scratch, it will take more time.
OpenSource Example
A sample application using OpenGL ES (OpenSource) and the iPhone API, Molecule (please note that even though the name of the file is .tar.bz2 the file is actually an tar.gz) A description is for instance here..People
I think the most important aspect of the iPhone/iPodTouch are the usage of the accelerometers. See this for instance..Finding iPhone developers (programmers) currently is difficult I think, they are still rather rare. The core competencies here are,..
Programmer:
- Objective C, or C/C++
- OpenGL (preferably, OpenGL ES)
- XCode, InterfaceBuilder experience
- iPhone SDK
- Cocoa Programming
- Mac Development experience (or GNU/Linux)
- For proof of concept development, Ruby or Python knowledge.
- Design Patterns, MVC
- 3D or Game Development experience preferrable
- Texture creation for Sprites and 3D Objects
- 3DSMax, Maya or Blender experience
- Building 3D Models with e.g. 3DSMax (Commercial) or Blender (OpenSource) or Maya
- A 3D Game engine, or we need to write it from scratch
- Loading Maya models http://bill.dudney.net/roller/objc/entry/wave_front_obj_textures_working
- An iPhone or iPod Touch (different Hardware, iPod is scaled down, internet through wlan)
- Either a Mac (e.g. Mac Mini) or we use VMWare ( I have a running Mac VM on my system. This eliminates the requirement of a Mac)
- A iPhone developer licence to publish our product ( http://weblog.infoworld.com/enterprisemac/archives/2008/03/new_iphone_ente.html )
- A Website for the product and support (meaning, somebody has to answer emails)
Rough Estimation
Sega's team used to port a simple working example from their Monkey Ball product to the iPhone 2 Weeks. They had a working engine, professional developers and artists. So what do you probably need for the average 3D game on the iPhone?- 1-2 Engineers Full Time
- 1 Artist (2D/3D, Textures)
- Licenses maybe around 250USD
- Game Engine License 1500USD
- Mac Mini + iPhone or VMWare + MacOS
- XCode Dev. tools
To give a good estimation, it must be pretty clear how complicated the application will be. Then maybe you could make a valid assumption of how many (mythical) man-months you would need.
What do you think? Where am I wrong? What did I forget?
Kindness of a random stranger
April 27th, 2009
This weekend something interesting happend to me. I was sitting in McDonalds (I know its unhealty) and eating a Hamburger.
The thing costs only 100 yen and for that price its a really cheap and quick supper. It was already quite late so I just wanted quickly to eat something. Well I was sitting there and eating while a elder japanese woman was staring at me. She was maybe 70 or so. So, well she stared at me and I got annoyed for a moment and looked back, smiling. She smiled back and left me alone (looked some other way). I didn't think much of it and continued eating my food. I didn't have anything to drink but I thought, hey, just buy yourself later in the late-night supermarket something.
She got up and went to the counter to buy something leaving her things unattended at the seat. I found that not so good but hey, it's japan and here its a bit safer than in other places around the world. Well, she came back and put a coffee cup with extra milk and sugar in-front of me and said I should drink something.
As you can imagine I was totally baffled and kindly refused. I tried talking to her and seemed she just found it too terrible just eating something and the coffee was so cheap too (120 yen) so no problem. I thanked her and tried to talk to her until her husband came who was totally confused why she was talking to not only a stranger but a foreigner here in japan. Very amusing.
This was the first time a random stranger was kind to me here. I'll not forget that.
Anyway I just wanted to share this interesting, friendly and memorable coincidence with you.
Have a good start into the week!
Invasion of the garden gnomes in Japan
January 2nd, 2008
Sometimes on the way I find some funny things as here in Setagaya-Daita. Remembering a funny (,,the invasion'') picture Martin a friend of mine took, I counter with this one. Its outside a barber shop, which makes this even more interesting.
Not quite as good as his, but hey we are here not in Germany right ? ;)
(Sorry for the poor quality but its from my mobile phone).
New Year joke the Japanese way
January 1st, 2008
Between the 29th december and the 3rd january even japanese people tend to have holidays. I know its incredible ;).
Anywho, in Shinjuku some construction workers had some fun with glowing pylons which are normally used to redirect traffic. Have a look what they did :
Nifty smiley ;)
,,Tasty'' food in Japan made Chinese style
June 7th, 2007
Some time ago I had the chance to go to a nice Chinese restaurant here in Japan located near Ikebukuro. After being surprised how huge the menu was (at least 40 double sided pages full with text) and the trouble with actually being able to decide something from that vast input I found these ,,delicious'' and amusing items.
Freshly fried silkworm larvae
Delicious fried scorpion on rice.
I don't know if you would have enjoyed that but I stuck to the ,,normal'' stuff. ^^
Sleep maximizing the insane way
March 29th, 2007
Crazy !
You want to learn how to maximize your sleep ? Sure, about now you think take many short naps, early bedtime, stop
wasting time at work etc. Well, nice and good thoughts but everything has an extreme and today I met one literally while walking here in Tokyo.
I nearly collided with a woman who seemed to try to sleep while walking. I mean really closing her eyes,
walking a couple of meters then opening them again to repeat the cycle.
I have seen a lot, especially the funny japanese who manage to sleep in various postures in the train while holding on to something but this is a sort of improvement the insane way. So much for working culture, eh?
1 comments »