Carmack on Rage
August 19, 2011 Page 3 of 4
Have you guys made the decision, or has Bethesda made the decision not to license id Tech 5? I talked to Tim [Willits] a little bit about that, but when we ran the story, there was some disappointment from people.
JC: It's interesting when you look back at our technology licensing -- it was never really a business that I wanted to be in. In the very early days, people would pester us, and we would just throw out some ridiculous terms, and we were surprised that people were taking us up on it.
I didn't want to be in the process of supporting a lot of outside teams -- because we feel beholden to not make radical changes, and pull the rug out from underneath lots of other people. If it's your own team, you can make the sensible decision of "It's going to be worth it. It's going to suck for a while, but we can make our way through it." But you don't want to do that to other people.
People who are paying you.
JC: Yeah. You know, Epic's done a really good job at building up a support structure for all of that. They have done a good job. The market was ours to keep, and we abdicated because we weren't willing to put that kind of effort into it. We didn't want to have half our company be about managing technology licensing. And they've gone and done a great job with it.
Even though we're inside Bethesda... We talk about, well, "id Tech 5 does these things well," but it's not magic. If you have a team that's up to speed and is going great guns with Unreal Technology, I don't care at all. It's not a personal affront to me if somebody wants to choose a different technology to build a game upon.
There are certain things that I think we do better than anybody else. If you want to be an awesome looking, 60 frames per second game... If you want to be able to craft a world around this kind of extraordinary detail, we're better than anything.
But there are some things it's bad on. If you wanted to do the next Grand Theft Auto that had a city... It's too much surface area to MegaTexture everything at the level of detail that you want to do. If you want to do a game that's all about walking around with torches, our dynamic lighting approximations are not as good as you might want for something like that.
There are certainly aspects in which you put the best programmers [on a project] and give them lots of resources, and they do something great for this targeted thing, but there are so many decisions you can make. You can't make something that's the best for everyone.
The MegaTexture direction gives us some big wins, but it's also fairly restrictive on certain types of games. It would be a completely unacceptable engine to do [Bethesda's Elder Scrolls V] Skyrim in, where you've got the whole world going, and you're walking across these huge areas.
What about mobile? You've got your iPad there, and I know that you did Rage HD... Is that almost a pet project for you?
JC: I think Zenimax humors me about it, because Zenimax proper is all about swinging for the fences. [laughs]
But you're always about the new stuff and tinkering with that.
JC: Yeah. And I actually get multiple benefits out of it in that... The last iOS Rage project, we shipped with some new technology that's using some clever stuff to make live C++ objects that live in memory mapped files, backed by the flash file system on here, which is how I want to structure all our future work on PCs.
Because what I look back as one of the biggest mistakes I made in this generation, was at the beginning, five or six years ago, looking and saying, "Consoles are basically as good as PCs," at the time, and developing the workflow so it worked across both of them.
Looking back now, we have PCs that are an order of magnitude more powerful, and if our workflow is instead focused on explicitly on just... you build and develop on the PC, and you decimate things into a target for the consoles. There are things that I would do very differently.
And part of that stuff is, the three legs of this that we have now, is we have massive numbers of cores -- I have 24 threads on my desktop machine. Massive amounts of memory -- 24 gigs, and we can throw a lot more in. And we've got solid state drives -- you can put a half of a terabyte in there. And if I take that as the baseline of what I want all our developers to use, I will build a very different system.
My marching orders to myself here are, I want game loads of two seconds on our PC platform, so we can iterate that much faster. And right now, even with solid state drives, you're dominated by all the things that you do at loading times, so it takes this different discipline to be able to say "Everything is going to be decimated and used in relative addresses," so you just say, "Map the file, all my resources are right there, and it's done in 15 milliseconds."
That's actually how we shipped the last iOS title. Most of the stuff was set up like that. I'm excited to be carrying that forward. That was great. So, that wasn't a throwaway research project. That was a product that went out and made money. It's nice to be able to do things like that.
Page 3 of 4