Hi, I've been learning iphone development for a while , and now I want to start with game development, but I've a doubt. Should i start from the low level and learn OpenGL first, or it's better to start using directly a Game Engine, such as cocos2d? I hope you can help me
P.D: Sorry of my english, I'm from europe and I don't speak it very well
It is weird that not many devs are replying to threads in this forum anymore. I have no idea, maybe they are doing extremely well and enjoying their profits lol.
Anyway, for your question, I suggest you directly go into cocos2d. cocos2d is way better than the raw openGL. I've done openGL on my windows system before, and I take a look at cocos2d and impressed with its simplicity.
But remember if your planned game is just a very simple one, like tictactoe, you can accomplish that without learning even cocos2d, but just to use XCode and NSTimers.
Ok, thank you for the reply . So I'll try to learn cocos2d. I've found this page: iPhone Tutorials | Ray Wenderlich and this book: Learn iPhone and iPad cocos2d Game Development . Are they good to start learning? But wouldn't it be better to understand the underlying concepts of Cocos2D?(cocos2D is based on OpenGL, isn't it)And if i wanted to develop 3D games, would it be worth to learn OpenGL?
Yep. Ray Wenderlich writes some of the best tutorials out there. I can't comment on any books though. I've read 0 books about XCode.
OpenGL is somewhat a LOW LEVEL programming. It takes ~ 10 lines to construct a static plain colored quad. with cocos2d, probably just 1 line (not really sure because I've haven't started on it yet). So it all boils down to your preference. Some guys like to code in ASM even. Some prefer OOB, and so on.
For 3D, there are also game engine for that, Unity3D, and some other. I heard even cocos3d is also coming soon. And yes, you can also use openGL for 3d stuffs as well.
If you are serious about game programming, probably you should try both of cocos2d and openGL, doing something simple (like creating a moving triangle) using both language and see what suits you the best.
It will take you far more time learning OpenGL than starting with an engine like cocos2D.
I use my own engine to code my games, it is C++ based and wraps openGL so the code for the game does not has any calls to openGL, this is good if then I port my engine to another API like DirectX.. also I am those kind of guys that want to know what's happening underneath and have full control over it, no third party libs if possible, etc.
But it took me a significant amount of time (years) to get that engine at such good level, I had to learn OpenGL well, then learn about how to code an engine well, test it, use it, debug, refine, etc.. I also learned looking/using several other engines out there for PC like PTK & HGE, then when iPhone came out I just ported my engine.
It also depends what are your goals, if you want to have a game out there soon, pick an engine.
hope it helps.
It will take you far more time learning OpenGL than starting with an engine like cocos2D.
I use my own engine to code my games, it is C++ based and wraps openGL so the code for the game does not has any calls to openGL, this is good if then I port my engine to another API like DirectX.. also I am those kind of guys that want to know what's happening underneath and have full control over it, no third party libs if possible, etc.
But it took me a significant amount of time (years) to get that engine at such good level, I had to learn OpenGL well, then learn about how to code an engine well, test it, use it, debug, refine, etc.. I also learned looking/using several other engines out there for PC like PTK & HGE, then when iPhone came out I just ported my engine.
It also depends what are your goals, if you want to have a game out there soon, pick an engine.
hope it helps.
Hi vbovio, thanks for sharing. So I wonder now, can you share to me your iPhone gl based game engine?
Ok, thank you again for the replies. I think I'll start learning cocos2D and I'll use it to make my real games, but I also want to learn OpenGL and understand how things really work in a lower level. Thank you!
Ok, thank you for the reply . So I'll try to learn cocos2d. I've found this page: iPhone Tutorials | Ray Wenderlich and this book: Learn iPhone and iPad cocos2d Game Development . Are they good to start learning? But wouldn't it be better to understand the underlying concepts of Cocos2D?(cocos2D is based on OpenGL, isn't it)And if i wanted to develop 3D games, would it be worth to learn OpenGL?
You don't need to understand the underlying concepts. After all, you want to make games, not write game engine code.
I'm also working on an improved version of Cocos2D which fixes many of the issues beginning developers face and takes cross-platform (iOS & Mac OS) development seriously. It's called Kobold2D: Home - Kobold2D? -Kobold2D
Hi, I've been learning iphone development for a while , and now I want to start with game development, but I've a doubt. Should i start from the low level and learn OpenGL first, or it's better to start using directly a Game Engine, such as cocos2d? I hope you can help me
P.D: Sorry of my english, I'm from europe and I don't speak it very well
You will probably discover that cocos2d does most of what you need, so I would recommend starting with that.
Occasionally you will be using raw openGL to perform certain tasks Cocos2D doesn't do, for instance, creating a shape programmatically.
For that, Google will offer plenty of resources of canned OpenGL code available for you to tweak to your liking.
It helps to understand the state concept of OpenGL (I still don't fully understand it) and the basics of graphics programming.
This has been my experience.
If you check out the screenshots of my game (link below), you will notice sprites and triangles. The sprites were loaded from files with cocos2d, while the triangles were generated with OpenGL commands.