views:

777

answers:

3

I'm thinking of starting a project to make a game, maybe just a simple one, but still a game in 3D for the IPhone.

Though i still have a long way to go, learning objective-C and so on, but a question popped in to my mind while thinking of the 3D gaming world.

Would i benefit from learning OpenGL(PC/Mac) first before doing games for the IPhone? And if so, where are good guides/tutorials to do that?

And also, does it exist any good OpenGL engines for the IPhone that are free/open source?

+1  A: 

I cannot speak of whether or not it is a good idea to learn OpenGL before hitting OpenGL ES. However if you are interested in learning OpenGL there are several things you need to ask yourself, like what platform do you want to use, and in what language do you want to develop.

I do think that you would benefit from it, but how much is hard to say.

First have a look at All Public API Implementations, Tutorials and Sample Code

For tutorials here are some that i find useful

C++

Introduction to C++ OpenGL Programming

Java

JOGL: A Beginner's Guide and Tutorial

Multiple platforms/languages

OpenGL Lessons

Peter Lindqvist
+4  A: 

Hi
Well, OpenGLES is a subset of OpenGL, so in case you had already known OpenGL it would be easier for you to switch to ES. To be honest, I don't know if it's worse or better approach to start with OpenGL for PC. What can be important on the other hand is the environment. If you want to implement some game for mobile device you have to consider limited resources, you would have to focus more on the optimization etc. So it would be probably better to start from learning openGL for embedded systems.

BTW, there is a really great OpenGLES tutorial for beginners. Code examples are written in Objective-C. http://iphonedevelopment.blogspot.com/2009/05/opengl-es-from-ground-up-table-of.html

Regards!

Ramps
I am in the process of learning OpenGL, by going through tutorials Ramps mentioned. There are great, and they outline the differences / limitations of the iPhone / OpenGL ES. His examples don't really need an understanding of obj-c to get going as he proves a template with the 'grunt' work. But the author has an excellent book on obj-c on the iphone. If you like his style I'm sure you would like his book.
Ross
I totally agree. There are two types of people. 1. "Look how clever I am" 2. "Look how easy it is!” Author of the tutorial I mentioned is definitely the second type. And yes, I agree with you that Obj-C knowledge is not essential. I went through all his tutorials knowing nothing about Obj-C.
Ramps
+2  A: 

You would benefit from learning OpenGL yes, but OpenGL ES used on the iPhone is essentially OpenGL with many of the convenience libraries removed. So I would just learn OpenGL ES to take that route.

If you're just starting out with programming, and want to get your game out there ASAP I'd skip learning OpenGL ES completely and just using an engine. There's a lot of tutorials out there, but starting learning OpenGL ES->High quality game is a long road.

There are many good open source/free iphone game engines.

Check this out: iPhone Game Engine Comparison - http://maniacdev.com/2009/08/the-open-source-iphone-game-engine-comparison/

Maniacdev