This is the first of two parts on OS X and gaming on the Mac. This installment focuses on how games are ported to the Mac, while Part Two will cover OSX's impact on gaming development.
At the annual Electronic Entertainment Expo (E3), the Mac is far from the first platform on attendees' minds. More widely used gaming consoles such as Sony's PlayStation 2 and Nintendo 64, or emerging technologies like Microsoft's Xbox, garner most of the attention.
Yet, there was Apple at the E3 event earlier this month with its own sizable meeting room. Inside, the company was showing off its sexiest gaming hardware running the latest games on Mac OS X. Leading game developers and the press were invited to see just what Apple was up to and gape at the speed with which these games had been moved to the infant OS.
Why would Apple, with its annual developers conference looming just two days after E3, take the time to show off its ware at a trade event that is not typically a Mac show? Credit a new operating system, a booming gaming market, and Apple's desire to reposition its computers as digital-device hubs for stoking the company's interest in gaming.
"Games are an important part of Apple's future," said Bard Williams, senior manager of worldwide markets at Apple. "They are a part of Apple's 'Digital Hub' and the digital lifestyle."
It may be tempting to dismiss gaming as a juvenile pastime, but Apple can't afford to. People spent $6 billion on games in 2000, according to the Interactive Digital Software Association. The trade association also contends that people spent more money on games in 1999 than they did on movie tickets. Throw in Apple's core education market -- where more products are adding game-like features -- and game performance and playability on the Mac become even more crucial to the platform's continued success.
That's where OS X comes in. Games tax hardware and OS components more than most other commercial applications. Games routinely use more memory and processor power than anything but the largest Photoshop or digital-video tasks. So an ideal way to demonstrate OS X's power is to do what Apple did at E3 -- show an OS X-powered Mac playing a killer new game.
In other words, a healthy gaming market on OS X will illustrate that the new OS is a good platform for all developers -- not just gaming companies.
The Hunt for Mac Games
But before diving into what OS X means for the future of Mac gaming, it helps to look at how games have been developed for the platform. In the early days, Mac games were coded specifically for the Mac. But by the early 1990s, most commercial game development was being done for the PC. Mac developers would note demand for popular game titles on the PC, and they would port them, reworking the code of a game so that it would run on a Mac.
PC games enjoy far larger budgets, thanks to their much larger sales. Early Mac game developers didn't have the kind of cash that their PC cousins had for development. There were exceptions -- for instance, Bungie created Marathon solely for the Mac. Its success attracted interest from outside the Mac community. (Indeed, Microsoft bought Bungie a year ago to spur development of games for its Xbox console.) But that exception only proves the rule -- first-tier games are developed for Windows, and then ported to the Mac OS.
Part of the problem is that Macs make up a sliver of the gaming market. Most games are sold for consoles such as PlayStation and Nintendo. PCs are the next-largest segment, followed by Macs. So when it comes time to port a popular PC game over to the Mac, developers must consider three factors: sales, cost, and time. How many of the ported title will a developer sell? How much will it cost to do the port? And how quickly can the port be completed?
Pondering the Port
Take the decision-making process at GraphSim Entertainment, which publishes a number of game titles each year in addition to developing games internally. Last summer, GraphSim brought the popular PC game Baldur's Gate over to the Mac.
"The first thing we do when deciding on a port is to guess who the average Mac gamer is and how they differ from the average PC gamer," says Jeff Morgan, GraphSim's marketing director. Morgan speculates that there are fewer core gamers among Mac users and that they are usually older than their PC counterparts. Mac gamers tend to favor simulations, fantasy and family games. Sports titles don't seem to fare as well on the Mac as they do on the PC.
"Generally a hit on the PC can be expected to be a relative hit on the Mac," Morgan says. "But the Mac filter may bring other titles to the forefront." For example, The Sims -- already a blockbuster on the PC -- was anticipated to be an even bigger success when Mac game publisher Aspyr Media brought it to the Mac because it fit in with the platform's demographic.
After GraphSim decides which games to port, Morgan needs to talk with GraphSim Technical Director Trey Smith about how long it will take to port the game and how much it will cost. The company also has to start talks with the game's original publisher about allowing a Mac port and obtaining the game's source code. Once Smith has had a look at the code, he can determine what needs to be done, how much it will cost and how long it will take.
Time and cost are critical estimates for a Mac port. If the game takes too long to port, interest could fall off, hurting sales. If the port costs too much, it may price itself out of the Mac market.
"Our break-even point on a title is 7,000 units," Morgan says. "A good Mac title for us sells about 30,000 units worldwide. One hundred thousand units is our theoretical guess at a ceiling for a Mac game. The Sims on the Mac may hit this point."
Share the Load
Still, game developers agree that the easiest way to bring a product to multiple platforms is to plan on doing that from the start. That way, developers can make decisions from the get-go that will make it relatively easy to develop a game for the Mac and PC simultaneously.
Besides increased sales from the Mac market, a publisher that takes the simultaneous route only has to advertise once -- typically running one campaign with a Mac OS logo in the system requirements area. A publisher that ports a game to the Mac months after its PC release can't piggyback on PC advertising. Also, Mac games that are released earlier capitalize on higher prices fueled by greater demand.
Blizzard Entertainment, creators of the popular Diablo, Warcraft, and Starcraft series, now routinely develops for the Mac and PC at the same time. "Blizzard's goal is to make the best games possible, regardless of platform," says Blizzard spokesman Brian Love.
Blizzard begins with an integrated code base, which it compiles for both platforms. This extra work allows Blizzard to find bugs more easily as it compares notes between the two platforms, Love says.
Blizzard makes all of its graphics, movies, and sound files platform-agnostic, storing them in a specific location on its hybrid Mac/PC CD. The Mac partition, which holds the Mac OS version of the application file, can easily access these vanilla media files and use them in the game.
This development method adds only marginal expense to Blizzard's game-development process, Love says. The boost in revenue from added Mac sales more than make up for any rise in cost.
Education software maker Kutoka Interactive also develops for the Mac and Windows platforms simultaneously. Every installment of Kutoka's Mia the Mouse series ships on a hybrid CD that works in 11 languages. "We are in the Mac market more out of preference," says Kutoka President Richard Vincent. "Multiple languages and platforms must be considered off the bat."
Part of the reason for the simultaneous development is Apple's strong position in the education market. Kutoka estimates that Mac users make up 20 percent of the 150,000 copies of Mia that have sold. "The strength of Apple's education market is from the iMac," Vincent says. "Apple sold lots and most of our customers use them."
While Blizzard and Kutoka can develop for both the Mac and the PC at the same time, GraphSim's Smith suggests that the large size and organizational inertia of giant companies such as Electronic Arts prevents them from following a simultaneous development path. "Development at a company that size has many layers of management, and the additional decisions and teamwork required to do a hybrid or Mac version would delay the PC version," Smith says. "Even a few days of delay for their PC product could eat up any profit from Mac sales." In contrast, GraphSim has five employees; it can turn a profit on a Mac game that a larger company cannot.
The Port Process
Still, ports of popular PC titles to the Mac will be a fact of life for the time being. And developers have a number of commonly used tools that work on both the Mac and Windows platforms.
For example, Metrowerks' Code Warrior Integrated Development Environment -- the application that coders use to write and compile their applications -- is a standard tool on both platforms. RAD Game Tools make development tools that easily add sound, video, and animation in any game, be it Mac or PC, making life considerably easier for a company porting a title to another platform.
Even if no common tools are used, a large part of a game's code will not need to be changed when porting it to another platform. "Generally, the things that need to be changed are where the code touches a particular API [Application Programming Interface] or specific hardware," says Greg Titus, senior engineer at The Omni Group. "The vast majority of data does not need changing."
The major translation issues occur with gaming programming environments -- namely, translating DirectX or OpenGL implementations, file system, and hardware calls to the Mac's OpenGL, Sound Manager, Game Sprockets, file system, and hardware.
Processors also pose a challenge in porting games. The X86 processors in Windows machines accept data in a different order than the Mac's PowerPC CPUs do. It's like the difference between a Hewlett-Packard scientific calculator and a regular model. To type 846 on a normal calculator, you'd type the numbers in that order. On the scientific calculator, you would type 6, then 4, and then 8. The difference between the PowerPC's BigEndian system and the X86 processor's LittleEndian system is similar. Anyone porting an application from the PC to the Mac will need to address this byte-swapping issue for the application to run properly.
Over the past few years, Apple has taken steps to make the process of porting games to the Mac OS easier. "One of the best things we did to enable developers to create great Mac games was to adopt OpenGL, an industry standard 3-D graphics API," says Mac OS X Product Manager Chris Bourden. Apple has also adopted industry standard 3-D hardware from ATI and Nvidia.
Jim Black, senior product manager at Nvidia, says the graphics processor maker is "mindmelding" with Apple on driver development. "Nvidia uses the same driver core on the Mac OS, Linux, and PC," Black says. All the company does differently between supported platforms is changing the hardware interface layer. The driver itself remains constant and behaves identically.
"Rather than code and test their product on every platform, a developer can now develop once and move easily," Black says.
Practice Makes Perfect
Porting a game to the Mac OS from the PC can range from relatively easy to difficult. Philip Sulak and Ken Cobb, both vice presidents at Westlake Interactive, say it depends on the quality of the original source code and the number of platform-specific APIs that the original game uses. A game that uses OpenGL -- the 3-D-rendering API for the Mac OS -- is far easier to port than a game that uses Direct3D, a part of Microsoft's proprietary 3-D rendering, sound, and hardware interface API.
For Westlake, a company that has considerable experience porting games to the Mac OS, average port times run six to eight programmer months. "Sometimes we get beautiful, well-remarked code and can get the port done easily. But, sometimes we get worse code," Sulak says.
"It's not that anyone sets out to write bad code," Cobb adds, noting that changing goals and pressure to meet deadlines sometimes causes programmers to cut corners.
Besides code, developers have to consider the hardware that a game uses. If a PC game requires 256MB of RAM and a 1GHz processor, for instance, chances are that a Mac version won't run on the family iMac.
However, most hardware intensive games have options that can allow the game to play with fewer features, thus easing the burden on the Mac's hardware resources. Since many early adopters of OS X will have robust hardware -- Macs with plenty of processing power and memory -- this could lead to many of the latest and greatest titles coming to OS X before the Classic Mac OS.
One thing about OS X is fairly certain -- it will change the way game developers approach the Mac platform.
Part Two of this story, focusing on OS X's impact on gaming development, will appear next Friday.