Our friends at iDevGames.com have posted an interview that will be of interest to Mac gamers, especially people interested in making Mac games. The site has interviewed Mark Adams, the now-legendary cofounder of Westlake Interactive. Westlake Interactive has been the porting house behind most (but not all) of the top Mac games you have played in the last 3 years, including Deus Ex, The Sims (and Livini Large), Klingon Honor Guard, Star Trek Voyager – Elite Force, Unreal Tournament, Sid Meieris Alpha Centauri, Civilization: Call To Power, Unreal Mac, Falcon 4.0, Railroad Tycoon II, Deadlock, QuakeWorld Client & Server, Quake Mac, Shadow Warrior, X-Men: Quake add-on, and one of our all-time favorites, Duke Nukem. Thatis quite the resum?, and itis not actually a complete one.
iDevGames is a site dedicated to providing resources and support for people interested in making Mac games, and this interview deals with a lot of developer issues. Mark Adams has a long history of developing for the Mac, and this interview taps into some of his wisdom that many Mac coders will find invaluable. From the interview:
Which graphics/3D technology/solution do you choose for non-OpenGL games? Are all Direct3D games by default converted to Q3D for example?
Right now weire mostly taking D3D games to OpenGL. Appleis OpenGL drivers have been getting more stable and faster, and since RAVE isnit really a supported technology any more weive decided to go straight to GL in most cases. There are a few exceptions, like Unreal Tournament, which had a very good RAVE code base to start with (from Unreal Mac), and didnit gain anything by playing in OpenGL.Many new programmers ask questions about which language they should learn for game development. Usually, the more experience programmers will then have a debate on C vs C++. Whatis your opinion on this?
Everyone has a personal preference, I suppose as far as porting existing code, I prefer C over C++, just because the language spec is more standard and there arenit as many wacky extensions in Visual C that choke CodeWarrior like C++. If I was doing original development, Iim a big proponent of object oriented programming (OOP), and would use C++. But Iid be very careful of going overboard with some of the C++ extensions like templates and operator overloading. Not only do you run into portability issues, you can also make code very hard to read and debug by misusing some of the more esoteric C++ extensions.
Thatis just a small sample, so head over to iDevGames and read the interview.