John Carmack's secret weapon: MegaTexture - interview
(hx) 11:52 PM CEST - May,01 2006
- Post a comment / read (1) aGamerWithin
has posted an extensive Q&A with John Carmack as he discusses the new MegaTexture
technology, which will be used in the upcoming
Enemy Territory: Quake
Wars for PC. Definitely a worthy read for any programming, designing or
general development enthusiast, as well as any gamer slightly interested in the
development process behind games. Here's a slice:
Q1: What is MegaTexturing technology?
John Carmack: MegaTexture technology is something that addresses resource
limitations in one particular aspect of graphics. The core idea of it is that
when you start looking at outdoor rendering and how you want to do terrain and
things in general, people almost always wind up with some kind of cross-fade
blended approach where you tile your textures over and blend between them and
add little bits of detail here and there. A really important thing to realize
about just generally tiling textures, that we're so used to accepting it in
games, is that when you have one repeated pattern over a bunch of geometry,
the texture tiling and repeating is really just a very, very specialized form of
data compression where it's allowing you to take a smaller amount of data
and have it replicated over multiple surfaces, or multiple parts of the same
surface in a game since you generally don't have enough memory to be able to
have the exact texture that you'd like everywhere.
The key point of that is what you really want to do is to be able to have as
much texture as you want to use where you have something unique everywhere. Now
normally, you just can't get away with doing that, because if you allocate a
32,000 by 32,000 texture, the graphics curve can't render directly from that.
There's not enough memory in the system to do that, and even when you have
normal sized textures, games are always up against the limits of the graphics
card memory, and system memory, and eventually you've got hard drive or DVD
memory on there, but you wind up with a lot of different swapping schemes, where
you'll have a little low-res version of a texture, and then high res versions
that you bring in at different times, and a lot of effort goes into trying to
manage this one way or the other.
So when Splash Damage was starting on, really early with Enemy Territory: QUAKE
Wars, they were looking at some of these different ways to render the outdoor
scenes with different blends and things like that. And one of my early
suggestions to them was that they consider looking at an approach where you
just use one monumentally large texture, and that turned out to be 32,000 by
32,000. And I - rather then doing it by the conventional way that you
would approach something like this (i.e. - chopping up the geometry into
different pieces and mapping different textures on to there and incrementally
swapping them for low res versus high res versions), just let them treat one
uniform geometry mesh and have this effectively unbounded texture side on there,
and use a more complicated fragment program to go ahead and pick out exactly
what should be on there, just as if the graphics hardware and the system really
did support such a huge texture.
In the end what this winds up getting us is the ability to create a great
outdoor terrain texture that has far more complex interactions than anything
that you would get with any kind of conventional rendering, where you've
built it up out of pieces of lots of smaller textures on there, where they do
some sophisticated things with growing grass up between bump maps. And then you
can go back and do hand touch ups in a lot of different places to accent around
features that are coming out of the surface. And this type of thing is, I'm very
sure, going to become critically importance as we go forward into kind of next
generation technologies on there. We've seen this over and over as we've gone
through graphical technology improvements over the years, where there will be
certain key elements that you start looking at in games that look really dated
because they don't have the capabilities that people are seeing in sort of the
cutting edge things there. And this type of unique texturing over the coming
generation of games, I think, is going to be one of those, where when people
start looking back at a game that's predominantly piled and doesn't have that
unique artist touched sense about all of the scenes, it's going to look very
previous generation.
Nice to hear something from Carmack again. Seems like he's been quiet for a long time. |