SPOnG: Moving on to talk a little bit about the technology, specifically about
John Carmack’s ‘Megatextures’ – and
ETQW is the first game to make use of these - can you explain what these are?
Paul Wedgwood: Well the Megatexture is just a really big texture!! [laughs] It’s mega!
It starts off as a 32,000 by 32,000 pixel texture, which covers the entire landscape of the game. It’s partly generated and partly hand-painted. So, in the first process we have a tool… we bring in a height map that represents the terrain.
Then we have, lets say, a theme that’s temperate… and in our tool we say, “grass grows up inclines up to 45-degrees, but after 45-degrees you only get moss. Grass will grow into the crevices that exist between rocks, or snow will gather in rocks at the top; it’s weathered rock at high altitude and organic rock at lower altitudes… cracked riverbeds, and all that kind of stuff… the altitudes and inclines and things that that these texture types exist on. And so when we click ‘Go’ it generates the kind of initial palette for us of the entire landscape with everything appropriately placed.
Then we have a tool in the game, called a ‘decal stamp’ tool, and we can jump in with that tool and paint in unique details anywhere we like to reinforce the idea of uniqueness around the map.
The Megatexture starts out as a 6-gigabyte source image, when we’ve finished compiling it, and then we then compress it down to around 300 or 400 megabytes, but it only actually uses about 30 or 40 megabytes of memory on the computer. So, it’s a very efficient way – compared to loading in a gazillion tiling textures that you would have in a traditional videogame.
The second thing is that because the Megatexture has normal map-like qualities, you need considerably less polygons for the terrain mesh that’s underlying it. You need far less polygons than was previously the case in the traditional approach. And on top of that, because we derive the particles – their colour and density and size – from the Megatexture, so impacts from driving, audio effects that are played, traction for vehicles and so on… we don’t have to have polygons that differentiate those points underneath, which is how you would normally define those properties (such as “this polygon makes this noise when you walk on it and so on”).
So, proportionately we’re drawing less polygons than we used to represent a similar scene in
Wolfenstein Enemy Territory, and we’re using less video memory to do more with the texture on the surface. And that’s why it’s ended up being such a beneficial system. And why on the top of it, we’re able to do ‘brute force rendering’ – where we render absolutely everything right to the horizon. The whole terrain all the way to the horizon is rendered.
SPOnG: So, chicken-and-egg question, which came first? The Megatexture or the game?
Paul Wedgwood: The game! [looks slightly aghast] We started on the high concept for
ETQW with id Software in the summer of 2003, around the time of completing
Wolfenstein Enemy Territory. The idea was that we had this bunch of ideas from
Wolf ET that we would have liked to do, which evolved into a high concept design document that went back and forth between Splash Damage and id Software. And that eventually evolved into a 300-page detailed game design document.
We spent about nine months working on different attempts at the technology, because what we had done is that we’d taken the
Doom 3 engine as a foundation – which is a linear, single-player first-person indoor shooter – and decided that we wanted to make an outdoor, terrain-rendered multiplayer game with networking and physics! So, there wasn’t really that much ‘synergy’ really between what we had! [laughs]
But we knew that the
Doom 3 engine was a really solid ‘renderer’ – that was the thing we were sure of. So when we started out, over those first nine months, Splash Damage made a number of missteps and mistakes with the ways in which we approached the technology, made maps and so on. But here we are a few years later and all of that stuff is now ironed out and is working pretty damn well.