John Carmack’s QuakeCon 2005 keynote

JOHN CARMACK’S QUAKECON address has become something of an annual benchmark for the industry, summing up the news of his latest work and the state of game development’s cutting edge, as intertwined as those two things are. Carmack spoke live and in person at QuakeCon this year, after having missed the last two years due to illness in 2003 and the birth of his child in 2004. He was back in typical form, delivering his speech without notes, seemingly off the top of his head. The speech was still crystal clear and reasonably well organized, as one might expect from a renowned programmer.

Handicapping the next-gen consoles
Carmack started out by offering his assessment of the current state of PC gaming hardware, noting that he is largely satisfied with current trends. He marveled for a moment over the advances made in recent years, especially in graphics, and looked forward to continued progress on most fronts. Ever the PC guy, Carmack observed that the upcoming generation of game consoles looks to be very powerful, but said that PCs will, of course, be much more powerful than these consoles thanks to PC hardware’s rate of progress.

The quintessential PC game programmer then dropped a bit of a bombshell by announcing that he had recently moved his primary development efforts over to the Xbox 360, and that he expected to continue development there for the next six months—although the PC version of id Software’s next game will still be released first. One of his reasons for the move to Xbox 360 for development, Carmack said, was the headache of driver issues on the PC platform. The several layers of abstraction on the PC make it hard to nail down exact graphics performance because the programmer is held at a distance from the hardware. By contrast, the Xbox 360’s more direct approach was “refreshing.” Carmack also praised Microsoft’s development environment as easily the best of any of the consoles, thanks to the company’s background as a software provider.

As for the PS3, he liked sound of the noises Sony has been making about the PlayStation 3 as something of an open platform, and suggested that perhaps an open PS3 could become a computing platform something like the Amiga of old, with an excellent, fixed graphics subsystem. HDTV displays offer the fidelity to make this happen where it couldn’t on past consoles.

Carmack was less pleased with the PowerPC processors for the new consoles, questioning the choice of an in-order CPU architecture. He estimated the console CPUs’ performance at about 50% that of a modern x86 processor and expressed skepticism about the returns of multi-core designs and multithreaded software, especially in the short term. Graphics accelerators are a great example of parallelism working well, he noted, but game code is not similarly parallelizable. Carmack cited his Quake III Arena engine, whose renderer was multithreaded and achieved up to 40% performance increases on multiprocessor systems, as a good example of where games would have to go. (Q3A’s SMP mode was notoriously crash-prone and fragile, working only with certain graphics driver revisions and the like.) Initial returns on multithreading, he projected, will be disappointing.

Part of the problem with multithreading, argued Carmack, is knowing how to use the power of additional CPU cores to enhance the game experience. A.I., can be effective when very simple, as some of the first Doom logic was. It was less than a page of code, but players ascribed complex behaviors and motivations to the bad guys. However, more complex A.I. seems hard to improve to the point where it really changes the game. More physics detail, meanwhile, threatens to make games too fragile as interactions in the game world become more complex.

Physics acceleration’s prospects
Carmack said he considers the prospects for the upcoming physics acceleration chip on the PC iffy, because physics presents a very fundamental problem that graphics doesn’t have: it isn’t easily scalable for level of detail. Either an object in the game is a true physics object with which other objects can interact, or it isn’t. Carmack predicted this constraint would lead to a number of physics-accelerated titles where acceleration affects only elements, such as flowing water, that are peripheral to the core gameplay experience.

Another of his concerns about physics acceleration was speed, not in the sense of peak processing throughput but in terms of the immediacy of real-time interactions. Carmack recalled that the first pre-3dfx graphics chips made Quake feel slower due to lag between user input and visual output. He worried that the first generation of physics chips could cause similar problems, leaving us with games that are fragile and slow. He also happily conceded that he is more of a graphics guy than a physics guy, and admitted that his worries about the bar being raised in physics are probably similar to the worries other have had about his own standard-setting work in graphics.

Cultivating creativity
The subject of bar-raising was, in fact, one of the overarching themes of his speech, as Carmack displayed a passion for cultivating creativity in game development and making development accessible for aspiring game designers and programmers. He acknowledged that today’s games, for which id Software has helped create the expectations, require budgets of tens of millions of dollars and the creation of B-movie-class creative assets. The big budgets, he said, prevent risk-taking. His recent work in developing a game for cell phones had convinced him these relatively simple platforms could be a good place for a lower-budget project—at least for now, until phones become more capable and budgets balloon there, as well.

In a move intended to address this situation, Carmack announced that id Software will, very shortly, be making the source code for Quake III Arena available to the public under the GNU General Public License. This release will include not just the game code, but the development utilities, as well. Carmack looked forward to the possibility of a company doing commercial development work with the engine and actually shipping a game with source code on the CD, as required by the terms of the GPL.

What’s next for graphics
Although the general trajectory and rate of progress in PC hardware pleased him, Carmack did end up his speech with a couple of wish-list items for the graphics companies. First and foremost on that list was full virtualization of texture mapping in graphics hardware. Carmack decried the “fallacy” that “procedural synthesis will be worth a damn,” arguing that programmers spending hours creating procedural shaders isn’t the best way forward. Instead, he said, tools should unleash artists. He called the current tiled texture analogy a crude form of compression, and argued that true unique texturing in graphics would be a massive leap in visual fidelity over current practices. To that end, Carmack asked for virtual page tables in graphics hardware with 64-bit addressing.

Carmack’s other wish-list item was that some attention be paid to the problems with handling small batches of data on today’s GPUs. He said the graphics companies’ typical answers to these problems, large batches and instancing, don’t make for great games.

John Carmack’s past pleas for graphics hardware changes have led to a number of developments, including the incorporation of floating-point color formats into DirectX 9-class graphics chips. We’ll have to watch and see how the graphics companies address these two problems over the next couple of years. 

Comments closed
    • Ruiner
    • 14 years ago

    If there is an issue with concentrating on consoles, it’s that the PC games that come afterwards play like console ports.
    i.e. they’re watered down suckage…..overly simplified play and small level design to work on limited console hardware.
    The recent Thief and Deus Ex games are perfect examples.

    • Hector
    • 14 years ago

    You forgot to tell him he owes me $54.99 also next time tell him to turn gamma and brightness up about 50 notches in next game, add some gun lights, and improve gameplay…:D ..not to beat a dead horse or anything:P

    • DrDillyBar
    • 14 years ago

    So, developing on the X360 eh, does remove a few layers o’ crap and (user) choice from the equation. Should assist with coding it “cleanly”, no?
    But deveolping in D3D and on ATI hardware… seems odly backwards.
    PS3 = Amiga’06 … decent analogy if it does all the DVR stuff properly.
    Wise re:PPU (can you frolic in said water, just for the eye candy?) ha!

    • 5150 Joker
    • 14 years ago

    Isn’t this bad news for the PC if John Carmack is switching his primary development over to the Xbox 360?

      • blastdoor
      • 14 years ago

      Not necessarily — he developed Quake3 on a Mac, didn’t he? In fact, I think the demo was released first on the Mac. PC gaming managed to do okay.

      Heck, wasn’t his original development platform NeXTStep? Maybe his choice of development platform is a bad sign for the future of a platform…

        • 5150 Joker
        • 14 years ago

        Yeah but this time he’s citing drivers as an issue he doesn’t seem to want to deal with on the PC. This is a first and could mean he may simply shift his focus away from PCs entirely in the future. :\

          • blastdoor
          • 14 years ago

          I think that “drivers” is simply one example of a more general issue, which was also behind his reasons for using the Mac, and that is platform stability during the development process. That is, perhaps he wants to do the actual development work on a system that he knows will remain consistent and work as expected. Once development is complete, his employees can worry about driver issues and porting to other platforms.

          So, just because he doesn’t use the PC as his development platform doesn’t mean that iD won’t support the PC.

            • T-Dawg
            • 14 years ago

            The Mac was not the developement platform during Quake 3. I recall a .finger file back in 98/99 saying they’d moved over to a Wintel platform completely. If memory serves me correct, the Quake 3 test was first released on the Macintosh because it provided them with a more limitted test audience, with a more consistant hardware base – allowing them to focus more on the network code, rather than OS compatibility, driver issues, etc. Which is completely understandable if that is the goal of your public test.

            I still recall the Penny-Arcade comic from that time period though. My Shuttle PC’s windows name is “Tiny-God” in tribute.

            “Mine’s grape!” sigh.

      • PRIME1
      • 14 years ago

      How many years were there between the Quake III engine and the Doom 3 engine?

      Carmack can focus on Console games while working on the next engine. There are already several games from Id coming using the D3 engine (Quake 4, EnemyTerritory II, etc.)

        • 5150 Joker
        • 14 years ago

        Yeah but you’re assuming he’ll even bother working on another engine that is natively developed on the PC. For all we know his next engine may specifically target the xbox 360 platform which would suck balls for us PC guys.

    • Illissius
    • 14 years ago

    Hmm. I hope working on Xbox360 doesn’t mean the next engine will be DirectX, though I don’t see how it could be otherwise… 🙁

    • DukenukemX
    • 14 years ago

    y[http://www.ansonwilson.com/anandreview.htm<]§ So Anandtech says PS3 and 360 CPU's will suck and everyone bitches but when Carmack speaks it makes a lot of sense now.

    • spworley
    • 14 years ago

    Although Carmack is a game programmer, he’s absolutely right about the texture memory problem. He’s thinking way ahead, like 2+ years, but you NEED to think that far ahead to influence hardware design. At SIGGRAPH, there are amazing research directions for programmable graphics hardware, but a big limit is just how much a card can hold.. 512 MB is not even close to being enough, and even 4GB (a 32 bit addressing limit) is likely not enough! Users will hear the claim “512MB is too small” and laugh (since even 256MB isn’t usually necessary for even the latest graphics heavy games) but when you see researchers trying to cram every bit of scene data onto a card, it is. The typical example is a Pixar film frame, which uses an average (not peak, but average) of 8 GB of texture and geometry data.
    Carmack is mostly talking about swapping of gfx card memory with page tables (transparently) and not 64 bit support, but they’re related.

    • AmishRakeFight
    • 14 years ago

    oops. mis-post

    • AmishRakeFight
    • 14 years ago

    “The Carmack”?

    does he really refer to himself like that?

      • Hizpanick
      • 14 years ago

      How many other Carmacks do you know?

        • AmishRakeFight
        • 14 years ago

        none. I typically don’t associate with people who refer to themselves in the third person.

        • Shinare
        • 14 years ago

        Didn’t Johnny Carson have an ongoing skit as a fortuntelling question answerer dubbed “Carmack” or something like that?

          • Justice
          • 14 years ago

          That would be “The Great Carnack”

        • madlemming
        • 14 years ago

        Adrian? hmmm… I seem to remember him helping to found some software company…

      • Damage
      • 14 years ago

      Nope.

      • T-Dawg
      • 14 years ago

      No, John Carmack does not refer to himself as “The Carmack.” That is a title that has been bestowed upon him by many gamers that have put him on a pedistal. He’s very talented, and quite influential, but I doubt anyone would consider him egotistical.

      And Adrian Carmack (who also co-founded id Software) and John are not related. Just one of those bizarre coincidences.

    • droopy1592
    • 14 years ago

    Consoles will probably rake more cash in per title so maybe that’s another reason why his development has moved.

      • Shark
      • 14 years ago

      I’m pretty sure that cash is not a concern he has.

        • Justice
        • 14 years ago

        It may be more recently than in the past due to his investments into the X-Prize contest.

Pin It on Pinterest

Share This