Slashdot Mirror


Mac OS X: Game Developer's Playground

Mauro Notarianni writes: "In the Stepwise article, 'Mac OS X: Game Developer's Playground,' Troy Stephens writes, "Mac OS X has the potential to be a superb launching pad for doing game development.' The author describes how 'Cocoa's developer productivity benefits, when combined with Mac OS X's strong support for technologies such as OpenGL and QuickTime, can empower game developers to create the custom production tools they often need in a fraction of the programmer hours it takes on other platforms.'"

11 of 218 comments (clear)

  1. Cocoa! by ciryon · · Score: 4, Interesting

    I have just started developing with Cocoa and it's really great. The "Application Builder" works flawlessly together with the "Interface Builder". It's also easy to port your *nix programs to Mac OS X. I need to take a closer look on Objective-C though, since I don't feel like using Java.

    Apple is also providing excellent documentation and tutorials.

    Ciryon

    PS. I am actually running Mac OS X on an old iMac G3 300Mhz with 64MB RAM. And it's not that slow actually!! The 10.1 update really speeds things up! Great work, Apple!

    1. Re:Cocoa! by TheAJofOZ · · Score: 4, Informative
      I have just started developing with Cocoa and it's really great. The "Application Builder" works flawlessly together with the "Interface Builder".

      More significant than this though is that you have so much choice about how you develop. You could choose to use Apple's free Project Builder (called "Application Builder" in the parent post) and Interface builder. You could just use one or the other or you could use something completely different. BBEdit is very popular for editing text files - mostly HTML but is quite suitable for code as well. JBuilder is available for the Java types or you can really cut loose and go command line. My work environment is a combination of OS X, vim and ant. You could also use make, autoconf, emacs, XEmacs, gvim or heck go wild and use ed!

      OS X lets you work the way you want to work. You can choose your work environment or switch between them and then you can go a step further. You can choose which API you wanted to work with. You can quite happily combine Carbon, Cocoa, the BSD layer , Java and X-Windows into the one application. That level of choice just doesn't exist anywhere else. That's before you get into things like Real Basic (VB work-a-like) and MetaCard (HyperCard work-a-like). Oh and did I mention perl? Tk? TcL? Qt?

      Pretty much any Linux (or other UNIX) tool can be run on OS X and most Windows development tools lock you into using that particular tool. On Mac OS the tools work together so well that you can select the right tool not just for the application but for each part of the application. Do yourself a favour, go out and actually try development on MacOS (even if the target is for another OS) before you make up your mind about it's worth.

  2. Re:Mac OS X may be... by jgerman · · Score: 4, Insightful

    You have to realize that the box you do your developement on and the target box for the game need not be the same architecture. Many stages of developement can be done on one machine and cross-compiled to the other. I haven't tried it yet, (probably never will because I really don't have the desire to write for windows), but it would be relatively easy to set up a developement environment in Linux that builds an executable for Windows, and to launch the program for testing over a Samba share on the Windows side. So doing the same from a Mac to Windows shouldn't be that difficult.

    --
    I'm the big fish in the big pond bitch.
  3. Alternate URL for article by sanguish · · Score: 5, Informative

    To protect my pathetic bandwidth on the local server, the article is also available here on the graphics server. That should cover off any bandwidth issues.

    Troy's article really does highlight the use of these environments for tools behind the scene's.. there is an older article on this as well that is linked from Troy's document.

    Scott Anguish
    Stepwise
    http://www.stepwise.com
  4. Re:Mac OS X may be... by Stormie · · Score: 5, Informative

    ...a Game Developer's Playground
    but with macs holding <4% of the market it is not a viable playground...

    I know that actually reading the article will just slow you down, but if you'd bothered, the emphasis was on developer. The guy was talking about how quick and easy it was to develop tools for his Playstation development on a Mac. Not about playing games on a Mac.

  5. Re:Mac OS X may be... by Zenin · · Score: 4, Insightful

    The article is mostly talking about building games, and the ability to create the tools to do so.

    That said, think about the market for the "highend" gamers. You know...the %4 of us that actually buy a GeForce 3 when they first come out? Many such gamers would love to move off of Windows, especially the 98 variants. While Win2k helps a lot, in the end it's still Windows. Many are pushing for Linux to be the next great gaming OS, so much so that more then a few major game companies have already targeted it (even if not completely successful, ala Loki). Linux however, has a long, long way to go (to be very, very kind).

    If all the "hot new games" start coming out for Mac (even if they also come out for Windows and/or Linux), it suddenly makes Mac an extremely attractive system for gamers. Gamers of course, being the only people who own a computer that are likely to actually buy a new one before 2030...

    Now, if building games on Mac is easier, faster, and thus results in better games to market sooner...

    If building a game under Mac implies open standards such as OpenGL instead of DirectX, thus enabling the game to target Mac, Windows, Linux, etc without nearly so much trouble...

    The math becomes easy. Develop under Windows and we sell to say, 90% of the market. Develop our game under Mac and we sell to 100% of the market (5% Mac lets say another %5 Linux/Other)...AND we get to market faster AND our development is cheaper... The choice is clear, IMHO.

    --
    My /. uid is better then your /. uid
  6. Crystal Space 3D Engine by Jorrit · · Score: 4, Informative

    Sorry for the obvious plug but Crystal Space is an Open Source 3D Engine that runs fine on GNU/Linux, Windows, OS/2, BeOS, AND MacOS/X. The MacOS/X port is very alive and kicking. We also have support for OpenGL now (giving frame rates of 100 FPS or more).

    Crystal Space is free (LGPL license) and written in C++. It is a 3D engine but more accuratelly it is a game development platform for 3D and isometric games.

    Check it out at crystal.sourceforge.net.

    Greetings,

    --
    Project Manager of Crystal Space (http://www.crystalspace3d.org). Support CS at http://tinyurl.com/cb3x4
  7. Re:Potential by TheAJofOZ · · Score: 4, Insightful
    Market share is redundant (the moderators were right), the Mac is used to create tools to aid the development of the game. The target platform may or may not be a Mac. For creating little utilities quickly it is extremely hard to beat Cocoa. To give you an indication you can create a text editor with support for formatting (bold, italic, underline, different fonts, etc, etc, etc) *and* images (added to the document via drag and drop) in less than 30 lines of code and about half an hour (files save out to rtf). Oh, and that includes an as-you-type spell checker.

    You used to develop applications quickly in VB, now Cocoa has gone above and beyond, letting you build *good* applications quickly.

  8. OpenGL and QuickTime by SilentChris · · Score: 4, Informative
    "Mac OS X's strong support for technologies such as OpenGL and QuickTime, can empower game developers to create the custom production tools they often need in a fraction of the programmer hours it takes on other platforms"

    The problem is you're dealing with 2 completely different kinds of technologies. One is cross-platform and relatively "free", the other is held back by proprietary code (like most Apple "innovations"). Additionally, even with the new development tools, getting QuickTime to play nicely with OpenGL is a job within itself.

    DirectX is no better in the proprietary code department, but at least you can setup a few function calls that will seemlessly pull together 3D graphics, video, sound and input routines that would work on a variety of PC hardware. I just wish that the "Direct-like" projects in Linux would be more ported to Windows, and that they supported more hardware-specific calls like pixel shaders.

  9. OS X and Games by MrIcee · · Score: 4, Informative
    While I agree that OS X is a great new platform,and indeed, a great gameing platform, There are a couple of caveats I'd point out in reference to the article.

    We recently rewrote our game tranquility, originally for SGI, to run on OS X (100% rewrite, not a port). We selected OS X over MS because of two major reasons... (1) we hate MS and (2) we love UNIX. OS X gave us the ability to completely work around a shifting (and shifty) MS playing ground... and because OS X is based on a UNIX kernel, we felt that stability and capability were superior.

    We were not wrong. OS X is a blast to write games for. While our game servers are SUN (though they could be MACs)... the client internet code was written on a SUN and compiled straight away, with no errors, on the MAC. This type of simplicity and uniformaty indeed make OS X a beauty to write for.

    However... we also selected OpenGL as the clients drawing system, simply because it matched the needs of the game (which was originally written in SGI GL). Apple has yet to release its version of OpenGL in source form to developers. Releasing it would help developers to support it, increase its efficiency, as well as remove a couple of the remaining problems (it IS open source, after all, but Apple has made some changes within the code). Instead, Apple seems to prefer its game developers to use its alternative (and prop. platform)... which immediatly removes porting possibilities.

    Furthermore, and sadly... Apple enjoys Objective C... which quite frankly I've never been able to properly sink my teeth into. Bastardizations of a standard language such as C, into deviants such as C++ and Objective C, do nothing good for anyone. It makes porting or even rewriting difficult... and obscures readability of the code. It also wastes development time in learning a new language.

    My upshot? OS X is a WONDERFUL game platform, if you ignore Apples desires and stick to the UNIX layer and standard C, as much as possible, for your designs. Specialized tools, libraries and langauge only serve to make programming more difficult.

  10. Re:It's better than PSX, but that's no big whoop by frankie · · Score: 5, Insightful

    You need to read the article again; that's not at all what he's talking about.

    The author described a particular problem he had while developing a PSX game -- mapping the limited VRAM was a pain. So he wanted to write an automated graphical utility to do it for him. Using OpenStep (aka Cocoa) it took about 2 days and saved his entire team man-months of tedious labor.

    This wasn't about porting some random PSX game to Macs. It was about using the language at the heart of OS X to be more productive at whatever it is you're doing. As you recall, productivity was one of the main reasons for the computer revolution (along with communication and porn, but you get the idea).