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.'"

10 of 218 comments (clear)

  1. Not likely by eulevik · · Score: 0, Interesting

    Objective-C would limit your platform to Mac OSX and NextStep. Not a wide market.

    Games are written in C++ these days. Portability is more important than productivity only on Mac OSX.

  2. 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 smagoun · · Score: 2, Interesting
      You mentioned JBuilder, so I'm gonna plug the experiement I did yesterday. I have a heavily-upgraded PowerMac 7600 (pushing 6 years old) that I've installed OS X.1 on. Currently the machine is running a G4/450 accelerator. It's not exactly a speed demon, but it still manages to surprise me on occassion. I use JBuilder every day at work on a 733Mhz Pentium 3/RDRAM with a graphics accelerator. We develop under JDK 1.3, the same version that is included with OS X.

      Yesterday I decided to install JBuilder on the powermac to see if it would actually be useful. To my surprise, the JBuilder UI is actually *faster* on my powermac than it is on the Pentium - noticeably so. This is running at the same resolution (1024x768), same bit depth (24-bit) and with anti-aliased fonts in the editor on the powermac. This was using the 'metal' look and feel; the Aqua-native look and feel was, regrettably, slow. Even so, I was pretty amazed. Compiles are slower on the powermac, which didn't surprise me that much, considering the Powermac's high-speed bus (50Mhz, woohoo) and slower disk.

      I'm going to be gunning for a new DP Powermac for work. If an upgraded 6 year old machine can keep up with last year's Pentiums, I can't wait to see a DP G4 with fast disks....

  3. Re:Mac OS X may be... by Wonderkid · · Score: 3, Interesting

    ...yes but if more people write great apps for MaxOS, then more people will buy Macs. And the new cool iMac is a great gaming platform. Something few comment on is that it's built in wireless networking (airport) mean you could play multi-player games via 802.11. (Assuming it is supported in the games of course.) It is these 'vertical market' applications that can transform a platform.

    --

    O'WONDERWe're working on it.

  4. C++ vs. Objective C by seletz · · Score: 2, Interesting

    Well,
    at first I'd like to say that I'm a regular OS X 1.2 user (on a TI PB, that is) and
    I like OS X quite much, and I make a living of coding (C and C++ mostly, Linux and other *nixes).

    I tried to get used of Objective C, but i find it quite cumbersome to use,
    and that's why I don't see this happen soon. To get the most
    out of Carbon/Cocoa you'll have to use Objective C. That's the
    reason why I never got to use it (mostly due to lack of time),
    because I'd first have to learn Objective C.

    I think this happens to other developers too (read: game developers).

    Just my $0.02 anyway...

  5. Objective C by Greyfox · · Score: 3, Interesting
    I looked at Objective C a few years back and found it delivered a lot of the dynamic goodies that object oriented programming was supposed to deliver but which C++ at the time was incapable of. Ultimately though, no one was using it at the time and indeed many of the linux tools for the language have fallen into disrepair.

    It was a spiffy little language but these days you can do most of the same things with C++ using templates and the STL, and the C++ code will be much more type safe at compile time.

    --

    I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

  6. Good Point by Anonymous Coward · · Score: 1, Interesting

    The more I use OS X, the more I like it, even though my exposure to it is rather limited.

    The point of this article really is that you should use the tools you feel comfortable with to do the job. All you people who are saying stuff about the mac not having enough market share to justify it obviously haven't read the article.

    Being a person who likes low-level stuff, I rather hate using API's and stuff that make all this stuff easy. I prefer to write my own loaders, blitters and stuff... I've developed my own game tool library over the years and use it for all sorts of things because it's what i'm most comfortable with and can get things done more quickly.

    But I feel my view is similar to that of many other game developers (ones who are truly passionate about it) and we are a stubborn bunch (is this just coders in general?) and once set in our ways, tend not change them, even if another way is better.

    Sadly, in my view, game development is less of an art and more of a process now. Remember the days of DOS where you had direct access to the hardware and wrote your own graphics, input and sound routines? You really couldn't use a 3rd party library because it would conflict with your code or other libraries. Besides, that was just a lame thing to do.

    Anyways, less chat, less shovelware, more coding, more polishing.

  7. Good for Tool Chain, not the game its self... by LordZardoz · · Score: 3, Interesting

    It seems that few of you read the article its self. The article suggests that Cocoa is ideal for designing custom tools since it is easier to make iterative changes to the tool. It is not saying that it is the best target platform to develop games for.

    Mac's are also a good possiblity for console development (PS2, Gamecube). Especially since the compiler used is frequently based on GCC. OS-X's BSD core makes it easy enough to port the tools, and provides another alternative for those who are not intrested in using Linux or Cygwin based tools. However, since most of the art tools are used on NT/W2k boxes (Such as 3ds Max), it is probably simpler for the time being to stick to Windows based environments.

    END COMMUNICATION

  8. Re:Mac OS X may be... by Anonymous Coward · · Score: 1, Interesting
    Fords are more 'core', they don't make their vehicles look like they're smiling. They don't use kids in the TV commercials in a shameless attempt to grab naive young moms. And their cars tend to die a little younger than their asian counterparts if you treat them equally. However their cars are designed with the hobbyist's aftermarket in mind.

    Keep dreaming. If a Ford product development person heard you say this, they'd gasp in horror -- that's certainly not the message they want car buyers getting. The hobbyist market you speak of is a tiny fraction of Ford's sales, and I assure you that concern for them plays little or no role in deciding a vehicle's design. Families with kids, on the other hand, most certainly do -- and if you haven't noticed any kids in their commercials, you haven't been paying attention.

    To most people, a car is a means to an end, not an end in itself. Same with computers, which is why Macs are superior to PCs for most people. That Macs have such a small market share relative to PCs now can be attributed to (1) the fact that the Mac's advantages can't be boiled down to a few numbers, like clock speed, and (2) the fact that most computer-illiterate people, when looking for advice on what sort of machine to get, end up talking to some geek who loves tinkering and thus prefers PCs. I used to be one of those guys -- built a few computers of my own, salivated over the latest hardware, ran Linux and FreeBSD, and hated Macs. But eventually I outgrew that phase and discovered that, lo and behold, Macs were better for my day-to-day needs, because they had a simpler interface and required me to jump through fewer hoops to get the most common tasks done.

    And now that OS X is out, if I get the urge to tinker, I've got lots of options on the software side -- at least as many as Windows gave me. And while Mac hardware tinkering is out of the reach of the average Mac user, PC hardware tinkering is also out of the reach of the average PC user. But if you really enjoy tinkering with PC hardware (which means a bit more than just assembling your own box out of parts), then Mac tinkering is quite possible.

  9. Read the article. by CousinChimpy · · Score: 3, Interesting
    As several people who went to the radical extreme of actually reading the article have pointed out ... ;-) ... it's about developing and using internal game production tools on MacOSX, not about developing games for OSX (though that would certainly be nice too). (Case in point: The context of the article was a production tool I developed while working on a PlayStation game. Console development isn't done using consoles alone!)

    The article is not a testimonial about OpenGL performance on the Mac, nor is it a crisicism of OpenGL performance on the Mac. :-) Neither is it an endorsement of Objective-C as the best language in which to write a performance-critical game engine. (For that purpose I would personally choose either a tight subset of C++ or an OO approach to structuring C code.)

    The article is about the production process, and developing tools to aid in that process -- a domain in which I can say from experience that developer productivity is far more of a priority than getting every last drop of execution speed -- particularly if you can develop tools that will make a process more efficient for several artists/programmers: the efficiency of the development process then goes up in proportion to the number of people on the team who benefit. That's where Cocoa provides much needed leverage. Objective-C contributes to the efficiency of the development environment by being an appropriately flexible OO language for RAD. IMHO, as the article states & illustrates, it's very appropriate technology for the domain of custom application development. :-)

    CousinChimpy
    (Troy Stephens)