MacOS X, OpenGl, etc

Due to MacOS X, I am now in love with the Mac. Unix baby!! I have always liked the hardware, but not MacOS classic. Anyway, I am a graduating highschool student, and will soon be getting either a PowerMac G4 or a PowerBook. I develope games for a hobby, and was doing research on developing for MacOS X. Can anyone please explain all of the various frameworks for me. First of all, I program in C++, and was wondering if OpenGl and GameSprockets can only be used in C++. And what is the difference between Carbon and Cocoa vs. frameworks such as MacApp and PowerPlant? Don’t you have to Program under either Carbon or Cocoa? If so, what is the purpose of MacApp and PowerPlant? Confused.

To answer some of your questions…

  • GameSprockets in general cannot be used at all in OSX, (other than some very limited DrawSprocket support) so it’s best to just forget about them imho
  • Cocoa is the wave of the future… an OSX-only API
  • Carbon is a subset of the old, classic MacOS API which can also be used to build OSX native apps as well. “Carbon” apps run natively under OSX as well as MacOS 8 & 9.

If all you care about is coding for MacOSX and beyond, don’t spend much time (if any) learning the Carbon API or GameSprockets; instead start learing the Cocoa APIs.

Well, kinda right. Cocoa is a colective name for both the API and the framework, it’s supposedly very good, if you want to find out more about it go and visit developer.apple.com. However with Cocoa, you will not be able to use C++, the entire framework is based around Java and Objective-C (depending on your preferance). I have taken a quick look at objective C and it appears to be very powerfull (more so than C++) but also it’s syntax is horible and messy.

Finaly in answer to one of your origional questions, both the MacApp and PowerPlant frameworks are what are called ‘Clasic’ frameworks, which mean that they are only for writing MacOS 8 & 9 apps - these will not run natively under MacOS X.

Woops, forgot to mention - the cocoa API and framework are still being worked on by apple, and one of the many missing things at the moment is OpenGL support! (PANTS!)

[QUOTE]Originally posted by tdavie:
[b]Well, kinda right. Cocoa is a colective name for both the API and the framework, it’s supposedl>Well, kinda right.
You’re kinda right also …

>However with Cocoa, you will not be
>able to use C++, the entire framework is >based around Java and Objective-C
>(depending on your preferance).

that’s incorrect. You can use any languages you want to build your objects. You can intermix C, Obj-C, C++, Java, etc. all in your application. What you can’t do is to intermix your languages within the objects if you are using C++. It’s either C++ or Obj-C and Python and C and Java, etc.

Let’s not forget that Objective C++ is coming soon, maybe even this year. That should definately satisfy your needs.

Where can one find details about Objective C++.
(Nothing turned up in my web searches.)

Originally posted by jomeara:
[b]Where can one find details about Objective C++.
(Nothing turned up in my web searches.)

[/b]

Well, I think what was referred to above isn’t what you really think it means. I don’t believe you will be able to mix object parentages … only allow you to add c++ to the same file.

Anyway, there are rumours of an internal project at Apple that is doing Obj-C++, but nothing has been presented as of yet.

__joel

This topic was automatically closed 183 days after the last reply. New replies are no longer allowed.