This week we've brought you our transcription of John Carmack's GDC 2004 keynote address. In parts one and two the Id legend discussed how games would look like movies, and spoke about AI, development cycles and the impact of new technology. In the third, and concluding part of our transcription, Carmack discusses the slippage problems advancements in technology create and his hopes for smaller teams to breakthrough using this technology, and expands upon his theory that games will feature movie quality graphics sooner than you might think...
"Sometimes you just have to bite the bullet and take the time, get really late and slip [your game] and actually deliver something where you have had the time to do those two week fixes every time you found a game developer to prop them up.
"Each time we've done a technology there have been things that I thought that would help this process, like the level of interactivity that we have in Doom III's content creation is one of the really amazing things that we have over there. We have other developers looking in at the technology... Y'know looking at the game is one thing, you can always set-piece a scene and put a little touch in and it looks great, but what usually leaves the biggest impression is where level designers go ahead and stretch out the rendering window, and everything's looking right with shadows and the bump mapping and they just grab a light and drag it around and all the shadows and light and everything changes in real time.
"Contrast this with the previous generation where we had, usually, a thirty minute cycle to send something through the visibility and the lighting process before you could actually look at it in the game. So I'm thinking, okay I've got a little bit more work to do here, but this level of interactivity is so much better that it's going to shrink our development time on there somewhat, and it hasn't worked out that way.
The more you have the more you want to do
"It's sort of like, I believe, the offline rendering world where you get more capabilities or the ability to do something faster, and people will spend more time going ahead and trying to make it absolutely perfect. The demand for interactivity has been kind of amusing where at first when I brought it up, we had our normal kind of level editor, we can't enter and go ahead and render a scene. Y'know, it would bring up the scene exactly as the game renders it, with the bump mapping, the shadows and all that. So that was pretty cool. Then we got a little bit faster computers in there, and everyone's like 'well, we'd like to go ahead and stretch geometry and move around in this'. Okay, we put a continuous render mode in there, and people want to see the polygal systems dynamically acting in there, and you add that in and it finally got to the point where they were complaining about the fact that to change a light's colour you'd have to burn up colour picker dialogue, click on that and then close it, and now we've got like a continuous colour dragger with a live colour picker on there.
"Y'know, all of this is great, and we have a lot of really wonderful scenes in there, but it hasn't shortened content creation time. So, we're looking at it a little bit more from a higher-end strategy, strategic view where there's going to be some attempt to start building libraries of media and sharing to some degree. There are some media assets that we've shared with Raven, y'know, working on Quake IV, and we've got some things we've shared with other licensees.
Is he talking about a fire-fighter simulator?!
"We are hoping our next title with be able to reuse some of Doom III's assets, so that was one of those things where it gives us restriction on our possible game designs. It's going to be some near future, y'know, present day or near future thing where we can reuse the fire extinguishers, the waste baskets, some of those things like that in the game, which is another one [where we're] kind of, to some degree, hamstrung by our own directions on there.
"I still keep looking at things where there may be some possibilities of technical solutions to this, but I'm beginning to fear that no matter what kinds of new technology I can bring in to make some of these things a little bit easier, that it's not actually going to help. That even if we get, say, some forms of real-world data capture to go ahead and grab materials from a real value and do some interesting things like that, that the next project is going to take yet more man hours to support the pro media element, and the decision we wind up coming to is that the games are going to have to get less diverse to maintain the increasing quality on there.
"That's always been something that even before I kind of reached critical levels on this now. It always seemed clear to me that a lot of game designs where you have four completely different environments, you wanna have world one, world two, world three, world four, it seemed to me four times the work for one times the profit on there. But if you want to make a game, pick one single environment and try and make that as large as possible, but we've sort of got... especially first-person shooters, sort of have a standard 30 levels to them or thereabouts, and that's a lot of acreage to kind of fill out there, and I think that we're trying to learn some lessons from genres that people have been forced to, for outside development reasons, like cartridge console games like the Ultra 64 [sic] where you're limited by the total amount of cartridge ROM on there.
Cut you cloth accordingly
"You're forced for various reasons, even if you've got a hundred person development team you can't create too much effort, so you change your game design styles based around that. And even in high end game development states where you may have large budgets, large teams, just to get things done within reasonable amounts of time, we're going to have to make some of those decisions as well, because it's easy to have vast expansive worlds if you're basically painting with a very broad brush.
"But now we've given people the capability to go out and paint with extremely fine brushes with lots of different levels. It can take an arbitrary amount of time, and as we approach the level of fidelity that you can get with movies the problem becomes almost insurmountable. Movie development right now will employ hundreds and hundreds of people building some of these issues, and these are sets, y'know, they have no backs. You can't just turn around in some scene in a movie and then go and jump up onto a ledge and go and, like, explore down the hallway because that hasn't been created by those hundreds and hundreds of people.
"When can we draw pictures they look just as good as what we're currently doing in movies today. People are going to expect sets built to that level of detail, but then they want their pretty levels of adventure there. Or even worse they go into large scale online games where you want to have a considerable size of the world in there, and these are real problems. It's possible that there may be opportunities for a kind of stock box of different data. Certainly, this has sort of been tried, there's a few companies that sell stock models for different things. But with gaming as long as we keep revving these technologies like this the actual requirements for the media keep evolving, and that has kind of double edged problems there where on the one hand you have to keep retraining your level artists, and if you want to get something done fast, maybe you have to throw a whole lot of artists on it, you have a whole lot of people early on in the learning curve there.
The knowledge gap
"But if you want it to get done fast you kind of throw... lose the benefits of people... you wonder whether you occupy a relatively small factor of your development time, and if the learning curve is relatively short and you can go ahead and you spend several months learning and then two years development or something, but as things get more and more complex it takes longer for people to... not necessarily understand how it operates, but kind of find their artistic groove on how you use the technology effectively, and that can still wind up taking a good, y'know, a good chunk of the entire project.
"The fact that a new game can change the skill sets necessary for a Quake generation game versus a Doom III generation game, means that you can't necessarily just have, what the industry has is a huge pool of people ready to just go out and say 'we need 100 car renders'. Y'know, we can't just go out and say 'we need 100 Doom III modders or texture creators' because the skill set isn't specifically there. It takes months to just go ahead and build any level of that.
"I have some hope that the next generation of rendering technology will be a more general purpose tool where it won't be a kind of notching [set of] changes and features like we've seen up until now. That's something that I do think is fairly important, where previously older generations of things that we've done, including Doom III are based on notching sets of hardware features, where ok, you added cube maps, we had dot-three blending or something like that, and the relationship between a game engine and the offline rendering tool, for people who actually work with them are completely different things. There's some overlap in terms of what you want it producing on the output, but they're not approached the same way in a content creation or capabilities fashion.
A middleware outlook
"But the next generation does look good for being something that will be more general purpose, that will be something where you kind of program as much as you want because we have a floating point pixel format, and we have dependent texture and we've got modular programmes. Effectively it gives us anything we need in this, and the next level of technology will probably be taking advantage of this.
"This may mean that as we look five years from now that the skill sets required for content creation do become more uniform across the industry, and across the industry boundaries and the offline rendering world. And this will probably be a good thing in terms of allowing people to move different projects more readily and allow companies, if they choose, to bring on kind of waves of developers if necessary, where nowadays, especially, it's throwing developers at projects behind schedule to just bail them out and is a very rarely a good thing. You can put twice as much staff on them and not actually get much more done if you have to train them to do different things, such as ways that they haven't seen before.
"Being able to develop broader bases of people [who] work on there is good. We will probably be seeing actual data sharing between television and motion picture rendering and what actually goes on in games. There's a little bit of that going on right now. Certainly things are stolen from cut scenes and all, but occasionally you still find some model that was used scrunched up really small on motion picture screens, actually some of the renders are part of the game right now. On the material side of things that's going to be coming fairly soon in terms of game development.
Damn those hardware curved surfaces
"Next generation technology should be able to go ahead and do most of the surface models that are used in [movie] rendering right now. The resolutions will come down just to fit reasonably on there but it will still be a pretty direct path on there. It's a little less than the geometry is going to start using the same kind of tools and techniques that they use there. I've historically not been the biggest supporter of hardware curved surfaces for various reasons... it doesn't fit what I consider to be the best value for the effort on there, but that may also be coming in the worlds of the future. And then you start using the same models, you go ahead and first do a television show for a weekly animation or whatever and then make your game out of it.
"But, in some way these types of strategic directions are certainly not what game development used to be about. Now we're talking about being able to manage huge numbers of people being able to cross promote over different product lines. There's definitely an aspect where I can't go backwards to the days of early game development where we just got some people together who wanted to make a really fun game, something that was cool, that people played and had fun. I do still hope that there are people out here that are going to be following that path and still bring new elements in.
"I don't think that it's a completely closed off industry, I think that innovative, exciting new things do have a place and can still be successful. And something that... I know that my position isn't shared by too many people here, but when I hear developers moaning and complaining about different things about they can't get a publisher or getting contracts for different things... I very rarely comment on those situations, because my position is somewhat unique with regard to all that, but I do think that there's still cool, exciting things that can be done on a small level. And there will be things that won't be coming from Id Software because in those ways we are kind of a prisoner of our own success. We have our way of doing things and we will grow the company larger and do larger and larger projects and go ahead and cross-license and cross promote and all that, and that's sort of our lot in life there.
Too much excitement?
"There are going to be exciting things to come on a large scale, but I do still hope that there will be a place for that 'programmer-artist' denomination to go off and do something... that would be kind of interesting, because the capabilities that we're getting, on the one hand sucks up more and more resources, but on the other hand does give raw capabilities to smaller and smaller numbers of people.
"When we looked at the graphics rendering capabilities that we've got right now and are coming out soon, you can put what would have been... as soon as the technology matures a little bit in the current generation of cards for doing sophisticated offline rendering with the current hardware accelerated per pixel format stuff, you will have a render farm in a person's desktop computer. And the capabilities that will give people is pretty exciting when you start thinking about, 'well, my artistic vision could go off and do something that was previously only possible to render if you had Pixar sized render farm'.
"Y'know, if you wanted to do a 60 second short or something, if it took you four and a half hours per frame, you just don't get too many cycles through the creative process on there. But it's not long at all until we have, if not real time rendering I'm expecting a game engine with very, very fast hardware accelerated rendering things like that. I think that's going to make a very interesting artistic outlet, and that's always been one of my major motivations out there. I see what I do as a canvas that the artists, the creative people actually work on, and each generation of game rendering technology, in the game interactions and all the things that make up the game engine. The best moments for me have been when I'm in someone's office and see something really wonderfully cool that they couldn't possibly have done before that's now possible, and that is not slowing down at all.
The director's chair
"This generation will see kind of cinematic director's visions, things that you couldn't do before where in previous game you had some things that had sort of a director's style to it that would have some interesting things with the camera angles and so on, where you could crop scenes and set them up. But you really couldn't apply the tools and craft of a director, but with the current generation of technology if you look through like a book on film, every tool that they've got there, everything that that do with cookies and shutters and how you go ahead and achieve lighting... all that stuff comes out directly now.
"Over the course of a few years there are people that are going to experiment with that and find their personal style with it, and that's going to be very exciting to see. And the next generation will take that to the level of surface quality rendering that is movie quality, especially if people are going to be willing to sacrifice a little bit of frame rate or do things in a not-quite real time if they want to generate really fabulous images. It's a canvas and paintbrush set which no one has ever seen before, and that's going to be really something to watch.
"I've got a pretty clear idea of where things are going over the next five years. There's a path out there, a lot of inertia kind of covering what I think is evolving in the electronic industry, but I would not hazard to guess too much what things are going to look like five years past that. Again, if you go back to the very, very early days, working on my Apple IIc or something, and someone said 'ok a million times more power' I wouldn't have had the visions of bump mapping and stencil shadows and all that. I would have been happy rendering Tron the videogame. So we can look today and say 'well, we wanna have characters that look like Lord Of The Rings, y'know, we want to have that moving around in the game'. We'll get that. I have no doubt whatsoever that we will be seeing that, but there may be other things that may be even more important, like what we see in terms of online communications and everything and the fact that bandwidth latency hasn't improved all that much everything the number of players you have access to has improved by a factor of a million. You've gone from playing with your brother or something to having the whole world of online gamers open to you, and there maybe, y'know, aspects like that that turn out to be far more important to where games go than the actual broad audio visual technologies."