Game Development Stack Exchange is a question and answer site for professional and independent game developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I started my journey to learn games programming from the scratch (I'm a software developer but not in gaming field), I'm targeting iOS games development.

Currently I'm ready "O'reilly iPhone Game Development", then I'm considering reading "Apress Learn iPhone and iPad Cocos2D Game Development".

Am I on the right track? Should I read and learn OpenGL ES? If yes, when to start?

What is the Math type do I need for games development? Algebra and 2D Geometry?

Books like "Challenges for Game Designers" and "Game Design Workshop, 2nd Edition" are on my list also.

I really appreciate if you know a better path to follow.

share|improve this question

closed as not a real question by Tetrad Oct 21 '11 at 17:06

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.If this question can be reworded to fit the rules in the help center, please edit the question.

Please only ask one question, per 'question'. For your math question:… – Noctrine Aug 16 '11 at 1:38

So far you seem to be on the right track. those books can really give you a boost if you are going to develop your games using objective-c. if you have some a good knowledge about obj-c you can easily try changing tech-demo codes, released with the game engine. at least that's the way I usually learn how to work with new tools.

and there are other options for iphone development too. if you feel more comfortable with other languages like c# or c++ or other popular languages, there are engines to based on them.

you may need both OpenGL and mathematics knowledge while developing but just working on the engine helps you learn almost every thing you need to know. and later if you get into any problems, you can easily pinpoint them and directly ask about those specific opengl/math problem you are facing.

As far as I know, there is no game engine using java for iOS, since iOS doesn't support JVM or equivalent softwares. the most related one is JavaScript which is supported by unity. other than that the main programming language you need to use for iOS development is Obj-C, and cocos2d-iphone is one of the most successful gameengines using that language. but you need to learn c++ since there are many libraries written with it. even in cocos2d the main physics engine offered is box2D written in c++.

share|improve this answer
Java language is my bread but I learned Objective-C and started doing some iOS apps. I did some C/C++ programming in the past but I need a refresher any way. I prefer C because C++ is really vast. – Chiron Aug 15 '11 at 1:43

You might should start learning a little object-C first, but you you do not need to learn OpenGL ES before Cocos2D.

share|improve this answer

I was in the same situation as you, I'm a developer, but not in the gaming field, and I wanted to target iOS.

The SDK that I found to be productive and fairly easy to get into from a development background was Unity3D. You can code in either their version of Javascript (Unityscript) or in C#. Mind you it is very 3D oriented, but they have sprite engines you can use to create 2D only games.

The other advantage with using Unity is that it doesn't bind you to a specific platform. You can write once and deploy to many platforms (with minor platform specific tweaks perhaps). You can develop on a Mac or a PC which may be more convenient depending on your situation.

Another SDK that I use is GLBasic. It is much simpler and you develop using pure code, and you don't have the fancy interface as Unity (which can be quite confusing for the non-game programmer!). It has all the required 2D gaming commands that you should need, and it also has 3D commands if you wish. It doesn't have built in physics, but you can add the Box2D library which people have done. I love it for its simplicity and how quickly you can get something working.

Both offer a free version to try for as long as you wish, and you can upgrade the licenses if you want to deploy to iOS.

And as far as math is concerned, learning and mastering vectors would go a long way. That and basic algebra, but not much more than in regular development. My biggest learning curve was the graphical side of things, and how to organize a game project. Plus allowing yourself to break traditional programming 'rules' such as globals (etc) to create faster game loops.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.