New to Mac Game Programming

Apprentice
Posts: 19
Joined: 2005.11
Post: #1
Little background info on me... I'm a Senior at the Savannah College of Art and Design majoring in Visual Effects (with a focus on Particles). For one of my electives last quarter (semester), I took a C++ class for Game Developers. Oh boy that was awesome. Our final project was an SDL 2-player tank shoot'em up game (boy my particles knowledge came in handy there, and I went all out... bouncing bullets, shrapnell grenades, velocity/drag, even had a half-way functioning homing missile). My teacher said I was one of the very best he's had (he hasn't been teaching long, though).

My question is this, where do I go now? Should I try to learn OpenGL? Or continue in SDL (my SDL knowledge isn't too extensive...)? Should I learn carbon or cocoa? Books/tutorial suggestions? Or do I want to go with another programming book for more moderate/advanced C++? Or should I try to learn C (seems like everyone uses C as opposed to C++ in the gaming world, or am I wrong?) Or should I get a book geared really on game-development?

I hear Carbon is geared towards C/C++. And Cocoa is Objective-C (something similar to C but object-oriented). Well, my C++ teacher kept pushing object-oriented and class-oriented programs on my class, or maybe my definition of Object-oriented is wrong (where objects handle themsleves... i.e. the bullet knows how to update itself, it doesn't have to be told). How is the upcoming intel-switch going to effect Carbon - I heard it's harder to port Carbon-based apps? or is that only High-end apps?

Suggestions, comments, random jokes and funny stories all welcome.

[EDIT]
I seem unable to do a standard or quick post, it displays my post in the screen after this, but then if I refresh the page, or navigate to it from any other spot in the forum, my new posts are gone... weiiiird..., but here's what I've been trying to say:

Oh this'll be a hobby, nothing more. As people have stated in that other forum that I should have read before starting this one, OpenGL and SDL have advantages and disadvantages... such as?

And some random, probably noob questions:
>What exactly are API's?
>What's the differencebetween GLUT and OpenGL? What I'm getting is GLUT is a pre-set up 'preference' to OpenGL?
>So if I know C++, I know Cocoa?
>There are a roughly eight books listed in that one thread for recommended reads for mac game programming. Based on what I've told you is my experience, does anybody have any recommendations on which one(s) to start with, or any others? (Christmas is right around the corner, gotta work on my wish-list.) And what are some other good web-sites for mac-game-programming, besides this one? Or just sites in general I should know / be aware of?

[EDIT2] Oops! That screen that kept flashing after adding a post finally stuck around this time, it looks like I'm being moderated on my posts, which is why I haven't been able to post. Sorry moderators for that *huge* list you probalby had of me trying to post... Sad Not a great first impression for this site...
Quote this message in a reply
Luminary
Posts: 5,143
Joined: 2002.04
Post: #2
SDL is fine. Plenty of people (even professional games, eg. UT2k4) use it.

If you want to make programs with a standard Mac UI, Cocoa knowledge will be helpful. It'll also be helpful for understanding a lot of the things that get said around here Smile

C++ is probably the most popular language for game development, so if you know that already, you're in a good place. I'm not personally a fan though, so don't expect me to say nice things about it Rasp

The Intel switch won't affect Carbon at all. Carbon apps are unlikely to be any harder to port than Cocoa ones.
Quote this message in a reply
Moderator
Posts: 529
Joined: 2003.03
Post: #3
Your question is disturbingly similar to this thread: http://www.idevgames.com/forum/showthread.php?t=10921

Peruse that, and then post here if you have additional questions.

Welcome to iDev. Smile

bwalters Wrote:Suggestions, comments, random jokes and funny stories all welcome.
There once was a man from Nantucket...

"Yes, well, that's the sort of blinkered, Philistine pig-ignorance I've come to expect from you non-creative garbage."
Quote this message in a reply
Member
Posts: 184
Joined: 2004.07
Post: #4
It depends on what your goal is. Are you trying to get hired? Do you just want to make a hobby Mac game? Do you want to work on console games?
Quote this message in a reply
Apprentice
Posts: 19
Joined: 2005.11
Post: #5
Oh this'll be a hobby, nothing more. As people have stated in that other forum that I should have read before starting this one, OpenGL and SDL have advantages and disadvantages... such as?

And some random, probably noob questions:
>What exactly are API's?
>What's the differencebetween GLUT and OpenGL? What I'm getting is GLUT is a pre-set up 'preference' to OpenGL?
>So if I know C++, I know Cocoa?
>There are a roughly eightbooks listed in that one thread for recommended reads for mac game programming. Based on what I've told you is my experience, does anybody have any recommendations on which one(s) to start with? Christmas is right around the corner, gotta work on my wish-list. And what are some other good web-sites for mac-game-programming, besides this one? Or just sites in general I should know / be aware of?
Quote this message in a reply
Moderator
Posts: 697
Joined: 2002.04
Post: #6
I'm just posting this here as bwalters has disabled private messaging...

sealfin Wrote:Greetings, just to let you know that you were posting in the thread, it is just that as an anti-spammer measure, posts from new members must be approved by a moderator before they will be publicly shown - as soon as you have a certain number of approved posts (three I think...) your posts are automatically approved; I've approved your reply in that thread, and deleted your half-dozen duplicate replies Rasp

Mark Bishop
--
Student and freelance OS X & iOS developer
Quote this message in a reply
Moderator
Posts: 1,140
Joined: 2005.07
Post: #7
bwalters Wrote:Oh this'll be a hobby, nothing more. As people have stated in that other forum that I should have read before starting this one, OpenGL and SDL have advantages and disadvantages... such as?
OpenGL's advantages are that it's the only solution for 3D on Mac OS X. Also, it's powerful and easy to use. SDL's advantages are that it makes it easy to create the windows, events, and sounds for a game. I don't think it uses 3D sound, though, so you might want to learn how to use OpenAL. It's disadvantages are you have less control over your context and specific parts of events like you would if you used the system API.

bwalters Wrote:And some random, probably noob questions:
>What exactly are API's?
API stands for Application Program Interface. Basically, it's the interface you have (provided through functions etc.) to a library that you can use to enhance your programs.

bwalters Wrote:>What's the differencebetween GLUT and OpenGL? What I'm getting is GLUT is a pre-set up 'preference' to OpenGL?
GLUT is similar to SDL, but it doesn't include the sound libraries. With GLUT, it's very easy to set up an OpenGL context, however you don't have nearly as much control over it as if you used the traditional way through the system.
bwalters Wrote:>So if I know C++, I know Cocoa?
Cocoa is an API for the system. Also, Cocoa is done in ObjectiveC, rather than C++. Carbon is the system API for straight C and C++. If you are using SDL, I suggest just using straight C++. If you wanted to start using the system API for more control, I suggest you learn the carbon methods, since that will make your code more portable if you ever decided to port your programs. If you were using windowed and GUI elements, I suggest you use Cocoa and ObjectiveC for the GUI part, and C++ for the rest, since the Cocoa API is much easier for GUI elements.
Quote this message in a reply
Apprentice
Posts: 19
Joined: 2005.11
Post: #8
Oops, yeah I meant "So if I know C++, I know Carbon?" Not,"I know Cocoa?"
Quote this message in a reply
Moderator
Posts: 1,140
Joined: 2005.07
Post: #9
It's the same regardless: Carbon and Cocoa are both APIs. They are actually more or less the same deep down, but the Cocoa API is easier to use than the Carbon API.
Quote this message in a reply
Member
Posts: 749
Joined: 2003.01
Post: #10
>My question is this, where do I go now? Should I try to learn OpenGL? Or continue in SDL (my SDL knowledge isn't too extensive...)?

While you can use SDL alone for graphics (which is probably what you have been doing), it isn't as fast as opengl, plus you dont get the 3D goodies.

The good thing is that you can use SDL (to make a window and manage input)+OpenGL, which actually isn't all that hard, you just need to find some good tutorials, and here they are:

http://www.libsdl.org/opengl/index.php

(The first links: the NeHe tutorials and the source ported to SDL)

The hardest thing of starting opengl is understanding all the commands at the setup, which sound really obscure but after a while they become familiar. Here you can download for free the redbook v1.1

http://www.opengl.org/documentation/red_book_1.0/

where you can learn the basics (at least lookup the controls you find in the source)

©h€ck øut µy stuƒƒ åt ragdollsoft.com
New game in development Rubber Ninjas - Mac Games Downloads
Quote this message in a reply
Post Reply 

Possibly Related Threads...
Thread: Author Replies: Views: Last Post
  Upcoming Multiplatform Game Programming Book for Beginners JazonYamamoto 3 842 Apr 14, 2014 05:55 PM
Last Post: JustinFic
  Game engines with object programming JonnyThunder 3 8,016 Aug 16, 2010 10:42 AM
Last Post: SethWillits
  free mac game programming book jaked 4 6,541 Jun 8, 2009 12:48 AM
Last Post: SethWillits
  Game Programming Tutorial markvw 0 4,163 Jan 27, 2009 05:10 AM
Last Post: markvw
  Game Programming for iPhone? Help with Cocoa and MVC. holografix 7 6,382 Jan 22, 2009 08:17 AM
Last Post: AnotherJake