3

I'm planning on learning 3d game development for the iphone using a 3d engine, but because of lack of tutorials for the iphone I was planning on using C++ game tutorials and making the necessary changes.

The problem is that I've had limited success when searching for things such as 'c++ 3d fps tutorial ' I dont really get anything useful.

Are there any 3d c++ tutorials you can recommend?

genpfault
  • 51,148
  • 11
  • 85
  • 139
Dave
  • 348
  • 1
  • 6
  • 23
  • I'd like to recommend a great book by Philip Rideout: iPhone 3D Programming Developing Graphical Applications with OpenGL ES, available at http://iphone-3d-programming.labs.oreilly.com/ This book focuses on OpenGL ES programming. Another book that helped me a lot is iPhone Game Development by Paul Zirkle & Joe Hogue, which explains the core concepts and design thoughts very well. – Arrix May 01 '10 at 16:20

3 Answers3

24

There are no tutorials on writing a MS Word killer either.

That's because tutorials are for explaining specifics. There are tutorials for "how to implement bump-mapping in your game", but not for "how to make a complete AAA game from scratch".

If you feel you need a tutorial for that kind of thing, you're not ready to make it.

All programming is about splitting up complex tasks into tiny simple ones. You need to do the same.

Instead of wondering "how do I write a FPS game on iPhone", you need to ask:

  • how do I write any app at all
  • how do I initialize and use OpenGL on iPhone in the first place
  • how do I do 3D rendering in general (not API specific, but how does the math work, how does it work, what do I need to do)

...

and so on. There are a million steps on the way that can be solved individually. And at the end of the road, you'll have your game.

But there is no tutorial in how to make a FPS game on iPhone for the same reason that there are no tutorials in "how to make a fighter jet" or "how to achieve world peace". People who need to tutorials for it won't be able to do it, and a tutorial would be so big and complex, it'd be pointless.

You'll have to learn the hard way: by picking up a book on 3D graphics, learning how to program the iPhone, learning how to use OpenGL, learning how to do everything along the way. By looking up resources explaining that speciifc problem, rather than simply reading the next paragraph of your uber-tutorial.

jalf
  • 243,077
  • 51
  • 345
  • 550
  • Thanks for your response, its one of the best I've ever had :) The problem I'm having is that I'm at a stage where I have my scene setup and working on the iphone with a character , animation , textures lighting and basic collison in place but I dont know where to go from here. Can you offer any advice for this? – Dave May 01 '10 at 15:45
  • If you have an engine (scene, objects, T&L, collision), then you need to add game logic on top if that. How to do that depends on what kind of game you want. – ssube May 01 '10 at 17:41
  • 1
    @Dave: Well, what *don't* you have then? – jalf May 01 '10 at 17:44
  • Thanks for getting back to me. Thinks like AI worry me a little as it seems to be hard to track down even a general c++ tutorial on AI that could be relevent. – Dave May 01 '10 at 18:01
  • 2
    @Dave: then don't look for a tutorial. Buy a book. Find out what textbooks and other reading materials AI classes in colleges use. See what information you can find about how existing games handle it. Or just implement something that makes sense to you. How would you like the AI entities to behave? Sit down and think about how you can implement that behavior. Programming isn't about copy/pasting from tutorials. It's about solving problems. ;) – jalf May 04 '10 at 02:05
2

Okay, after the short comment, a little bit more description. First of all you most know there is no such thing as simply generic 'game programming', programming a game consists of many different topics. For example, 3D rendering, audio playing, gameplay coding (including AI), possibly network coding, some advanced I/O libraries, ... .

The reason for this is most games have different needs, for example most of the above will be very different for RTS vs FPS games. Even more specific examples, Doom³ had totally different needs than half-life² or far-cry (old examples but it's been a time since I really played games myself :p). The first one needed advanced lighting, shadows, awesome interiors, the latter ones needed impressive outdoor scenarios.

While you may think 'yeah, but these are all great professional games, I'm trying something simple', it is quite essential to understand this even applies on your level. There is no magic tutorial that will learn you how to write FPS games.

As I said in my comment, a good place to get started is Gamedev.net, they really have a huge collection of tutorials, articles and a good support forum. Here you can learn from which components a game is typically build, how you can learn these components (and which you need for the kind of game you want to write), ... .

Good luck and have fun with it, game developing is a really fun thing imho, but it's a long path to master it even a little bit :).

KillianDS
  • 16,936
  • 4
  • 61
  • 70
0

Read this as it explains why you need a game engine of which you can build but you might need to find a better graphics and physics library to build in 3d but other than that it is good.

Spartan322
  • 43
  • 9