Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is required to develop iPhone games? [closed]

I'm new in iPhone programming but I have a good grounding in Java and I'm starting to understand how Objective-C works.
I'd like to start developing iOs games.

Do I need to study Open-GL?
Even for 2D games (like Angry Birds, Cut The Rope, Doodle Jump or Tiny Wings)?
What do I need to learn to switch from simple UI apps (with buttons, sliders, labels etc.) to real games?

like image 788
Oneiros Avatar asked Aug 28 '11 22:08

Oneiros


3 Answers

First off, you need a developer account with Apple to publish games on the iPhone app store.

Second, you probably aren't going to be using Objective-C all that much for games programming. Its runtime binding just doesn't compare to the speed of C or C++ method calls.

For any cross-platform game development (probably iPhone + Android) you will need OpenGL. OpenGL also happens to be the only way to make hardware-accelerated 3D games on either of these platforms.

My recommendation would be to learn OpenGL for iPhone games development. This has the added advantage of allowing you to write games for most other mobile platforms as well with minimal additional learning. You could of course use Apple's own 2D APIs for game development, but I wouldn't recommend it for the reasons previously stated.

Games programming is an entirely different animal from applications development. I'd suggest starting simple.

Happy games programming! Its my favorite development field.

Edit: I realized I made OpenGL seem as if it is exclusively used for 2D games development, which isn't true at all. OpenGL is well-suited to 2D as well as 3D games development, although the majority of its material is focused on 3D programming. 2D programming with OpenGL is effectively setting the Z coordinate to 0.

like image 184
Prime Avatar answered Oct 30 '22 00:10

Prime


if your interested in making 3D games, check out Unity3D for iOS

http://unity3d.com/support/documentation/Manual/iphone-basic.html

Angry Birds was developed around the Box2D engine

http://www.box2d.org/features.html

.. and anecdotal wise the game developers didn't give the engine makers credit. (so don't make the same mistake when developing your game! :)

like image 31
Chamilyan Avatar answered Oct 29 '22 23:10

Chamilyan


You don't need to know OpenGL at all. There are some really nice engine options, such as my company's BatteryTech Engine which you simply say what you want to draw and where you want to draw it, what sound to play, etc in Lua (which is super easy) and you also deploy on Android and others. There are a bunch of other options too but this is the one I prefer, though I am of course biased :)

The others are right - you need an iOS Developer account and you still need to understand the basic structure of an XCode project and how Apple does things no matter what solution you use. I've published over a dozen games over the past 4 years so Let me know if you have any questions and I'll be happy to answer.

Good luck!

like image 2
rbgrn Avatar answered Oct 30 '22 01:10

rbgrn