“ I recently ported a commercial game on MAC OS, here is my opinion about Mac Versus Windows Programming (as far as my experience goes) : ( Note that on Windows I’m not used to OpenGL, I always use DirectX ) MAC Pros:
- OpenGL Profiler
- When the QA has a crash on a release build where debug symbols have not been stripped, the callstack of the crash is automatically displayed … VERY HANDY MAC Cons:
- The carbon API (the equivalent of Win32) documentation is in my opinion very very poor. You hardly find what you search for.
- The XCode2 UI is very messy.
- XCode2 has some annoying bugs ( e.g. often you modify a single .cpp and the WHOLE project get recompiled, and our project took half an hour to compile … so imagine the frustration )
- XCode2 debugger is really a piece of crap. (crashing, not displaying NULL terminated string, not able to display a lot of globals, slow responsivness, etc, etc )
- Mac keyboards don’t have every character printed on them, e.g.: to write || (OR operator) you have to type ALT+SHILFT+L ( It took some time before i find this one…)
- OpenGL Profiler is quite good, but I had a lot of trouble with the OpenGL implementation itself … we had some crashes into OpenGL that corrupted our stack, or that completely crashed the MAC forcing us to un-plug the power coord !! In that respect Direct3D is far more better. OpenGL should REALLY have a debug driver that validates all states and parameters. In its current state it can easily become a pain. (We even sent the game to Apple to see if they could find the cause of the crash and they were unable to help with this one) ”