Interview with Icculus
Interview with the Icculus
13 May 2007 by JVM
It’s helpful for us, as a community, to have an idea where our system stands now, where we can see changes in the near future, and our
prospects for future growth. To that end, we’ve asked Ryan “icculusGordon to rate various companies and technologies and their impact on GNU/Linux gaming. Ryan has been essential to the development of several important games on GNU/Linux, including Unreal Tournament 2003, America’s Army,Descent 3, and Serious Sam. He has also ported some applications, like Google Earth and the Second Life client from Linden Labs.
LinuxGames: On a scale of 0-10, where 0 is no effect at all and 10 is metaphysical transmogrification, how will the following affect the future of GNU/Linux gaming? We’ll start with SDL.
Ryan: 8. It’s already the defacto standard for game development on Linux, and the next version more or less removes all the current limitations. I don’t see it going away.
Very few game titles, commercial or open source, use anything but SDL on Linux, and I don’t see this changing for a long time. More titles will use OpenGL for video instead of the 2D interfaces, but they’re still going to use
SDL to get that done.
LG: Ok, so OpenGL itself is a…?
Ryan: 10. Everything will be using it sooner than later, even things that don’t know they are, much like how Quartz
turned out on the Mac. Even SDL hides OpenGL behind the basic 2D video interfaces in the next major version.
2D framebuffers are a dead end, and having to write pixels manually is going to become a slower and slower path. Everything doing video, games or otherwise, will be using high level graphics APIs, like OpenGL or Cairo, that eventually talk
3D primitives and shader programs to the hardware. Cute things like wobbly windows or Apple’s Expose’ or Microsoft’s Flip3D are just side effects and bonuses of that transition.
LG: And on the audio side, how important is OpenAL ?
Ryan: As much as I like OpenAL, last year I would have said 3…a novelty that has a small fanbase that like the API and a majority of developers treating it like OpenGL vs. Direct3D…it’s what “everyone else” uses, but it’s not something they care deeply about on Windows.
Windows Vista removing hardware acceleration from DirectSound made OpenAL more like a 7, though. I wouldn’t be surprised if it becomes the defacto standard for game audio on Windows, and thus everywhere else, too. Creative’s Alchemy project shows that there was a real demand for this, and crippling DirectSound was a baffling mistake on Microsoft’s part. Mac OS X game developers rejoiced when OpenAL shipped in the default 10.4 install, since CoreAudio was really painful to program. Linux, of course, has had OpenAL easily available for years.
It’s nice to not be swimming upstream for once. :)
I don’t think anyone thinks of audio being as important as video…we probably won’t use OpenAL for the bleeps and bloops a system makes when new email arrives like we’ll use OpenGL to render basic window system controls…so it lands around 7 instead of 10. Important for Linux gaming, not so important for Linux in general.
Ryan: They’re a 2.
I think they’ll always be around, and as long as Windows is dominant, they’ll definitely have a use, but I just never manage to find anything that works with them, game or otherwise. Most things I’ve tried tend to crash on startup, but I don’t really put much effort into it, and to be fair, I’ve never really tried to use them for the things they want you to: Microsoft Office, World of Warcraft, etc, so my results aren’t really surprising. Usually it’s more like data wrapped in a Windows installer .exe that I need to extract and can’t.
But if you can only use it for a handful of apps, I’m not sure it justifies the man-years of development going into them. It seems like implementing the entire win32 API to run iTunes is a long way around just to be able to buy stuff from the iTunes Store. That’s just my opinion, though.
People talk about Wine and company like it’s going to kill Linux, but I just don’t see that happening.
I still say that Transgaming’s SwiftShader is way more impressive than Cedega, but that’s just me…the tech behind that is like Geek Porn to me, I can’t lie.
Ryan: 1? I don’t know much about these guys, except they have some sort of wine-like tech. But if they are just starting now, they are never going to get far, considering how long wine itself took to get where it is. Even focused on just gaming tech, I think they’d have trouble competing with Transgaming, who has a solid pile of really smart people building on top of wine’s foundation.
Ryan: 8. Add
Valve in there, too, since id, Epic and Valve supply the tech that powers most triple-A titles, and that’s not likely to change in the next 5 years.
It almost doesn’t matter if we see Half-Life 3 on Linux, so long as we get the Source Engine ported. Same for Quake 5 (Doom 4? Whatever) and UT3 and such. That id and Epic see value in Linux ports of their games is great, because it adds a ton of legitimacy to the platform, but that their engines are available is what’s important, because then you can lobby to their licensees. And boy, there’s lots of licensees now. You really can’t build a game from scratch in 2007…most things are building on top ofsomething, and usually it’s UnrealEngine3.
This proved to be a win with UnrealEngine1, UnrealEngine2, and I’m sure it will with UnrealEngine3, too. I’m sure TTimo [Timothee Besset] at id would say the same for Doom and Quake tech, and the other Linux titles they spawned.
Ryan: 3. I don’t see Tux Games building an empire. Loki was too aggressive about obtaining titles, LGP is not aggressive enough. I’m sort of the opinion that the Loki/LGP model isn’t the right way to go, though. I think we need more ports on the same disc as the Windows version, or freely downloadable for use with the Windows retail disc…it’s a serious problem not being able to get the product to consumers trivially…I think it would be hard to make a profit within those bounds with a third-party porting house.
Then again, that assumes a brick-and-mortar retail store. If everyone moves to the Steam /iTunes/whatever model of consuming content, it’s possible they could really thrive, but I think physical distribution is always going to be an albatross around Michael Simms’s neck.
LG: And the traditional nemesis, Microsoft.
Ryan: 1. I’m surprised you asked about Microsoft. Really, they’re the status quo. Even with something as controversial as Vista, people don’t really move to or from Windows in any significant quantities.
The real threat to Linux adoption is Apple, not Microsoft. If you didn’t know, now you know.
LG: And how about Google?
Ryan: 6. Maybe 5 or 4. They’ve definitely been enthusiastic about Linux versions of their desktop apps–heck, they paid me to port some of them–but with the exception of companies they acquired, like Keyhole for Google Earth, they just simply don’t DO many desktop apps.
There is some belief that they’ll deliver the world into a new era of AJAX‘d web 2.0 applications, and while I’m down with that, I’m not sure that actually helps Linux…if it doesn’t matter what desktop you run Firefox on, why change desktops?
LG: Finally, on a scale of 0 to 10, where 0 is the moribundity of Windows NT on PowerPC and 10 is akin to the virus-like spread of World of Warcraft, what is the future of GNU/Linux gaming going to be like in the next couple of years?
Ryan: It’s hard to say, of course. I think we’ve passed the usual also-ran bar at this point, and that’s almost as good as critical mass. Every alternate operating system declares desktop legitimacy as soon as a commercial title arrives, but the real test is what happens afterwards…Civilization: Call to Power had a BeOS version, too, after all.
Ultimately, I don’t think it’s entirely a social issue when one of these OSes fails; it’s actually largely technical. OS/2 added whole driver layers, DIVE and DART, because they found out that Doom 1 couldn’t move pixels to video RAM fast enough, but never really gave the system the rich APIs it needed. Neither OS/2 nor BeOS really provided robust OpenGL support, etc. Driver support in general starts to slip, and sooner than later, the technology of games marched on without them.
Linux has been keeping up better, in that the base system evolves to meet modern needs better, and for now closed-source video drivers give you all the same functionality you’d expect on Windows, so we’re not just flat-out locked out. You’d be surprised, that’s half the battle.
From there, keeping a few engines portable and aggressively lobbying for the right titles can make a big difference.
The problem recently is that we’ve been going through a dry spell, so everything seems a little bleak right now…for me, this is largely due to downtime between UnrealEngine2 and UnrealEngine3. After UT2003 shipped, I couldn’t sleep for all the porting work to be done, but now, there’s not much going on while people are preparing next-gen titles on next-gen tech. I expect 2008 will blow up again like 2003 did.
In the meantime, I’m following the smarter points of Loki’s plans, and continuing to build infrastructure I’ll need instead of wishing it would show up…SDL is moving towards the new 1.3 API, I just announced my next-gen loki_setup replacement today…and other things.
I guess you’re asking what Linux gaming will look like in five years and, in a roundabout way, I’m answering: whatever we make it look like.
LG: Thank you Ryan, for taking the time to answer our questions and giving usyour perspective. More importantly, thanks for all the hard work you’ve doneimproving the infrastructure for games on GNU/Linux.