Getting Started in Mac Game Dev

Suppose somebody without any programming experience wanted to make games on the Mac. How would you recommend they get started? What books or articles would you have them read first, which language would you recommend?

XtraLarge, because its what I know, I would suggest learning Obj-C and Cocoa. As far as books go, there are plenty of good books to get, but to start you off, get "Cocoa Programming for MacOS X", by Aaron Hillegass. A great book for those just starting out, and those who have already programmed for a while.

That book is only for Cocoa though, and if you don't already know it, you will need to learn C and object-oriented design first. For C, there is a master book on this, that I forget the name of, but others could tell you, and Apple has a pdf on the developer part of their site, that will teach you.

Justin Brimm Wrote:I don't think that one is going to help him at the moment OSC.

XtraLarge, because its what I know, I would suggest learning Obj-C and Cocoa. As far as books go, there are plenty of good books to get, but to start you off, get "Cocoa Programming for MacOS X", by Aaron Hillegass. A great book for those just starting out, and those who have already programmed for a while.

That book is only for Cocoa though, and if you don't already know it, you will need to learn C and object-oriented design first. For C, there is a master book on this, that I forget the name of, but others could tell you, and Apple has a pdf on the developer part of their site, that will teach you.

By the way, this isn't a question for me, but a question for the iDevGames community in general. I know a small amount of C, Java & JavaScript (conditionals, loops, etc.). I've read both Hillegass's book & also the O'Reilly books. The only problem with those is that they deal mainly with document based applications, a subject which has almost nothing to do with game development as far as I can tell.

But this is besides the point. If you had a friend who was interested in developing games on the Mac, but had NO programming experience, what would you recommend to them? Clearly OSC's tutorial isn't appropriate because it assumes you know Cocoa & C.

Unfortunately, you can't just learn a portion of a language, and then expect to make a game. Regardless of whether they talk about games directly or not, many of the things they cover, you must also know to complete a game. After you have done that, then you can tackle OpenGL books, and subjects directly relating to games.

You could make a tutorial which teaches a programming language and game programming simultaneously, but I can't help feeling that it would be inefficient, and probably not all that different from learning the language the normal way, then moving on to game programming.

I would recommend your friend learn Cocoa and C then. Programming is way, a lot more harder than everybody thinks it is (that's how come we get away with poor grammar when we want;-). GAME programming is even harder at times. If game programming for the Mac was a hole in the ground, I would hang a sign over it saying, "Abandon all hope, ye who enter here". Seriously though, OSC's tutorial is VERY appropriate. You should take it with a spoonful of sugar but that's the direction to head.

Justin Brimm Wrote:For C, there is a master book on this, that I forget the name of

"The C Programming Language" by Brian Kernighan and Dennis Ritchie is the master book ( K&R as it's usually referred to ). But that brings up another point: I haven't noticed any new books for learning C on the Mac in at least five years, and certainly nothing for OS X. My first C programming book was "Learn C on the Macintosh" by Dave Mark back in like 1991. I know there was another edition afterwards, but is there anything for beginners like that now for OS X?

Quote: I know there was another edition afterwards, but is there anything for beginners like that now for OS X?

There's not so much of a difference, that you would really need a new book. C hasn't exactly changed; XCode/PB will still compile stuff from those books. One of the C books, coupled with one or two online tutorials, would really be all you need... a book that first teaches you C, and then Obj-C would be nice to see, though.

Justin Brimm Wrote:There's not so much of a difference, that you would really need a new book. C hasn't exactly changed; XCode/PB will still compile stuff from those books. One of the C books, coupled with one or two online tutorials, would really be all you need... a book that first teaches you C, and then Obj-C would be nice to see, though.

There are a few good C tutorials on O'Reilly's MacDevCenter, under Cocoa. Also, the Mark book would be a good one to have updated, but you would need to explain how to use the terminal (can't do user input in Project Builder).

FYI, I don't have a friend who wants to learn game programming, this was a hypothetical question.

AnotherJake Wrote:I would recommend your friend learn Cocoa and C then. Programming is way, a lot more harder than everybody thinks it is (that's how come we get away with poor grammar when we want;-). GAME programming is even harder at times. If game programming for the Mac was a hole in the ground, I would hang a sign over it saying, "Abandon all hope, ye who enter here". Seriously though, OSC's tutorial is VERY appropriate. You should take it with a spoonful of sugar but that's the direction to head.