Okay so as far as I know this is how the id stuff works, please correct me if I'm wrong and you know otherwise, I'm just taking a guess at this based on that old video Carmack did. I have some questions as I've finished the game now, and I should mention I played the pc version with the 8192x8192 texture pages.
1. Artist makes a bunch of building block pieces, buildings, terrain, small props etc.
2. All the art has to be unwrapped so there are no overlapping uv shells, this also allows for great looking non repeat textures.
3. Amount of unique textures applied in 3D package like Max does not matter.
4. Building block pieces are placed in the world editor.
5. Artist can then paint on top of all the building blocks and cover up any seams between them with tiling textures.
6. An unlimited amount of floating decals can be placed on top of everything.
7. Everything including lighting is baked into a giant texture with a specified texel density per meter and cut up into pages, e.g 8 meters gets a 512x512 pixel density, but the pages themselves are much 4096x4096.
So my questions are:
1. If everything is baked to a specified texel density why do I see some areas of the game lower res than others? This doesn't make sense I thought the mega texture bake would spit out a bunch of little textures atlased together in a 4096x4096. The best example would be when you go visit the hermit to give him the piece of the asteroid, the game incurs a load, but the inside of his very small level is very blurry compared to the outside? The dead city also seemed very blurry in general.
2. Are there any tools that help reproject the painting and decals if the game designer asks for geometry changes, e.g "move that road to the left." Oh shit I just spent a month painting and decaling that in the world editor guess I'll have to start over. Just like baked lighting.
3. I didn't notice any specular in the game, I did see an environment cube map on selected surfaces. What was the reason for the no specular dots from light sources, was this a performance constraint or an art direction choice?
4. What technique is being used to be able to see the normal maps if the lighting is baked. Does the radiousity baker take into account the normal and then bake that detail into the texture as well, or is there some kind of directional light map?
5. I thought the point of mega texture tech was to stream in the level of mip map you need when you need it and nothing else, thus allowing you to have an unlimited amount of texture resolution and it would stream what you need on the fly. This does not appear to be the case as getting close to any surface reveals the texel density per meter is quite low. Game looks amazing, but the texel density is much lower than all current gen games. Gears of War 3 you can get much closer to a surface before it looks blurry. Was the world just too big to stream in just the mips you need, I imagine the textures were authored much higher res than they appear once baked into the mega texture. Is there some other constraint here, I thought the hermit level should look much higher res or was everything averaged to keep the visual quality at a consistent level?
I'm in the same boat - constantly wondering about the tech as I play along
Regarding 5 : It is very possible that we as end users are simply limited by whatever data was shipped with the game. I would guess that the high quality baked down textures of the final internal art build were at a much higher density than what we got to see in the game today - maybe at least twice the size ? ie 4 times the detail. (16k atlases) Also I remember hearing they used some very aggressive texture compression, therefore making things look more blurry...
I am so impatient to see the highres texture pack being released one day! It's so gorgeous already...
1. If the source art is low res to begin with then its going to look low res even when transferred into virtual texture data.
2. When they showed the tools a long time ago all the stamping and stuff was non destructive so changing things could be done without too much work I guess.
3. In the promo builds they probably used normal and spec data but for the shipped game they probably got rid of it and baked spec into the diffuse map, that way they only need 1 set of virtual texture data instead of 4 or 5 (diffuse, normal, spec, light direction), which makes the game file size at least 2-3 times smaller.
4. Because every pixel in the game is unique the lighting can be baked directly into the diffuse texture data. Assuming they baked specular in the release builds then the diffuse data is all thats needed, everything is completely pre baked.
5. The point is that every pixel in a level is unique, which allows for revolutionary tools that couldnt work otherwise. That comes at the cost of requiring overall lower resolution texture data. They were barely able to ship the game even after excluding everything but the diffuse map data.
I am assuming they did baked the spec into the diffuse textures because of what people say on the internets, I have not actually played it so I cant say for sure.
Everything including lighting is baked into a giant texture with a specified texel density per meter and cut up into pages, e.g 8 meters gets a 512x512 pixel density, but the pages themselves are much 4096x4096.
That's not like that. Everything is atlased into a giant single texture layout for a bunch of assets (you can check the individual files in your program files x86 folder), and then that's split up into small 128x128 square tiles.
Because anisotropic filtering wouldn't work otherwise, each tile has a 4 pixel wide border, so the actual content is only 120x120 texels.
The 4K / 8K page that you can set in the menu is the actual single physical texture used to render all the geometry. It is built from those 128x128 tiles on the fly, it is updated on the fly, and it doesn't even have to be full all the time.
I guess the reason for the world texel density is that they've already been stretching the size and production time of their source datasets. They could have built a smaller world (not much room for vehicles there) or they could have spent even more time on development.
I personally find the texel density good enough, you don't usually go stare at walls while playing the game; but the pure richness and beauty of the game is utterly wonderful.
Regarding 5 : It is very possible that we as end users are simply limited by whatever data was shipped with the game. I would guess that the high quality baked down textures of the final internal art build were at a much higher density than what we got to see in the game today - maybe at least twice the size ? ie 4 times the detail. (16k atlases) Also I remember hearing they used some very aggressive texture compression, therefore making things look more blurry...
There were no 16k atlases, you're just confused by the 4k / 8k setting in the options menu. That is the size of a single texture built up of all the 128x128 tiles necessary to render the scene. Can't really find a Rage related image but it's basically a random looking mosaic mess of small pieces of textures; and as you move around in the game world the tiles are constantly replaced with new data.
What the virtual texturing does here is that the UV coords from the original 128,000 x 128,000 (or whatever) single (but virtual) texture page are individually translated into this single (physical) 4k/8k texture. After all the GPU still has to do the rendering in the traditional way. So the trick is to manually build this one texture from the small tiles; and for that you need to determine the tiles you see, then load them, decompress from HD-photo and compress into DXTC.
Using 8k instead of 4k will only do one thing, the physical texture will have space for more tiles, so polygons further away from the camera can also load and use higher MIP level tiles.
The compression stuff they do does not downscale textures that you can walk up to as far as I know. They get more compression artifacts probably, and the system might not always load the highest MIP levels, but at least on the PC using 8k you get all the detail you can see.
The one thing that's not full res is supposed to be background scenery which you can't walk up to and thus you won't ever see the detail anyway.
But as far as I know there's no 2x-4x sized texture set sitting unused on id's servers.
The compression stuff they do does not downscale textures that you can walk up to as far as I know. They get more compression artifacts probably, and the system might not always load the highest MIP levels, but at least on the PC using 8k you get all the detail you can see.
The one thing that's not full res is supposed to be background scenery which you can't walk up to and thus you won't ever see the detail anyway.
But as far as I know there's no 2x-4x sized texture set sitting unused on id's servers.
Wrong. They had to compress the shit out of stuff to get it to fit on a reasonable number of physical discs, and fit into memory at any given point in time (particularly for consoles).
Carmack talked at Quakecon about how artists were 'crushed' at the amount of texture compression that had to happen to the worlds to finally get it to all fit into the memory of consoles, and fit on the physical space of the disks.
And finally, Carmack has talked about how he would like to eventually ship a higher-resolution patch for the PC. They've given very PR-friendly reasons like "testing the gains" or whatever, but realistically they are probrably trying to not piss off console people by having the PC look 4 times better.
1) I think this has something to do with the average playable area maybe. You will see that locations you are usually in are fine, but once you go off the track, the resolution drops. My first thought was that this maybe had something to do with further away textures could take up more UV space because, well, they are further away and don’t need it, but that doesn’t hold up all the time. Not 100% sure on this one. As for why its blurred inside the Russian guys place, that’s simply because they wanted to keep at least a some what average resolution/compression rate over the whole game. It would stand out if that room was really high res.
2) EVERYTHING is saved into raw format. That means that the mega texture is saved “as is”, stamps and all, and they can be moved around and changed at will. Think of it like placing normal decals in a map file like we already do. Once compiled, this is all compressed into a single layer. The lighting stage I image comes last, just like in older Quake compiling.
3) I noticed spec… I think… Maybe… I certainly did notice the really crappy oldschool envmapping, that’s for sure. More than likely down to memory constraits.
4) Take a look at how you get bump mapping in Quake 3. Its all baked into the texture.
5) Definatly all averaged so it all looked somewhat the same. But you have to remember that just because the game engine can stream a 1:1 pixel perfect world in for you, PLUS have it run nicely and LOD out correctly where needed… It doesn’t mean that would fit on the disks. What we got was still HUGE, so increasing resolution clearly would increase file sizes, before we even get into memory issues (Such as consoles having to run at terrible LOD levels and the like).
Wrong. They had to compress the shit out of stuff to get it to fit on a reasonable number of physical discs, and fit into memory at any given point in time (particularly for consoles).
Don't worry, I did my reading and watching quite a while ago. I don;'t think you could dig up much about Rage tech that I haven't seen already I never said they did not compress, I said they didn't downsize (except for distant background elements).
What you can hope for with a dedicated PC release is
- less compression artifacts
- higher res textures in the background elements as well
Carmack talked at Quakecon about how artists were 'crushed' at the amount of texture compression that had to happen to the worlds to finally get it to all fit into the memory of consoles, and fit on the physical space of the disks.
Compression artifats =/= resolution loss. Textures won't get magically rezed up no matter how low they'd set the compression.
ID tech 5 gives an artist far more freedom than what is standard today. Id Artists are learning daily how to better utilize this way of building worlds. Some of the old school creation ways are gone, but most still remain (reusing assets / poly budgets)
One question that stuck out is stamping and major map changes. We DO NOT stamp(3d paint) until THE MAP IS DONE. and if there is a change we like to keep it small. Artist here have to be heavily involved in Map creation for these and other reasons.
Hey Varg, thanks for the clarifications!
However, again regarding 5, it is very possible that they whole texture sources shipped with the game are way lower than what's been used in production. I mean sure it is compressed (thus the artefacts), but the first logical step in reducing data weight is to res down textures... This is noticeable in the game too : some assets really look like they have been worked on (by that I mean, at the stamping stage, not at the source stage which could be unlimited) at 2 or 4 times the resolution than what is shown in the game. I would expect the same for character gear, and so on...
How can you bake specular into a texture when it is relative to your viewing angle? I would understand baking lighting from normals, since there were almost no dynaic lights in Rage, even your gun wouldn't light any static objects.
Because anisotropic filtering wouldn't work otherwise, each tile has a 4 pixel wide border, so the actual content is only 120x120 texels.
minor nitpick, what you mean is bilinear filtering, which is what comes "first" within a mip-map level. Anisotropic filtering is what makes texturing at angles much sharper (especially streets in racing games...).
edit: this is wrong aniso requires the wider border
I did not see a thread yet talking about the final resulting visuals for Rage yet and the tech behind it so I thought I would start one. I would be curious to hear from some of the actual ID software artists that might be lurking on the forum as well.
Would I be correct in assuming that most of the normal maps on the environment assets get removed in the end after lighting is calculated? This is for the static assets. I suspect this because I don't see specular highlights changing at all on all the wet or slimy assets. The sewers and nasty mutant slime nests made me realize this.
That frees up TONS of texture space. Worst case 3 passes are removed from most assets if they use Normals, Full color specular and Gloss. So right there you gain 3 times more texture memory for the flat baked texture maps.
This can work perfectly well in the end if you don't want dynamic specular reflection. The lighting is baked in on a per pixel level in relation to all the textures they are applied too which makes for some lovely crisp shadowing.
But yea so I suspect that for the most part we are just seeing what amounts to diffuse only textures with all the specular and shadowing baked in from the original assets. Looks pretty dang awesome expect for none reactive specular highlights.
I could imagine a game using this system using pure diffuse only painted textures on everything. Make it look like a Miyazaki movies full 3d backgrounds...
""""""""
So as I said I suspect that there is no specular light reaction because it is indeed all for the most part baked down to diffuse only maps. You can check the visual similarity inside 3dsmax yourself with a uniquely unwrapped asset using normals and specular. Bake down the lighting into single full-bright diffuse and compared it next to the same asset using normals only and then specular as well.
On the baked down version for the most part especially on very matted materials you would not be the wiser unless you closely scrutinize the asset. The sub-pixel lighting "caused by the texture filtering" is gone in the baked asset.
Look forward to more tech musings or some factual responses from any Art folk working at ID. Congrats to all because I think the game looks AMAZING. I cant walk for more then 10 seconds without having to fully study and scour every scene I pass through.
commander_keen, what's the trick to averaged specular baking, any current tool that can do this?.
vargatom I think you might be mistaken, I don't think wellspring has specular or normal maps. I think the normal map is used to generate better lighting which is baked into the diffuse later during the mega texture stage, and conveniently avoids the 0-255 brightness restriction light maps have incidentally. You're probably noticing the environment map on a couple things here and there, which I believe appears in shadow and is not motivated by any light source, it does appear to be modulated by the normal map though, perhaps shaders that use environment maps also pay the cost for a normal map render pass.
Skiffy, sorry no I didn't see your thread or I wouldn't have started this one.
I'm still not convinced, I still think the source textures are 4x higher res than what is displayed in game and during the mega texture bake process they all get clamped to an average quality.
I also suspect that the original texture size for many assets are at least double the resolution of what ends up in game. But sadly you would only be able to confirm that with the Source data that they have internally on the network before it all got downsized and baked down.
One would imagine that they had some global value set for the average pixel density during the final bake / creation of the megatextures. Some things that can mess up though with this type of setting is assets that are not mapped with a 1x1 ration and has texture stretching. Like pipes for example. I have seen some dang lowresolution pipes right next to far more detailed pipe valves.
I just want ID "CARMACK!" to release a 100gig download on some server for us to install and enjoy the textures at their purist most uncompressed form in the future...
commander_keen, what's the trick to averaged specular baking, any current tool that can do this?.
It would be done when the lighting is baked in the engine. You could set up nodes in the editor that have a radius of influence and each pixel could decide on an averaged view direction based on those nodes.
What I find very interesting about the baked-in specular is that in the end, it leaves the artist two options for assets : either leave it all static and baked in (like maybe 90% of the game), or, add a very light cheap cubemap reflection mask (as seen on barrels, some wet rocks, dirty mirrors, chrome parts, and so on). It sounds like a very harsh limitation ... but in the end it creates very strong and beautiful visual contrast between assets, looking either dry and dusty, or having a nice reflected sheen to them. Nothing in between.
In a way, this tech limitation is one of the strongest element of the art direction of the final product!
Even tho the engine sure could pull out "triple megatextures" with diffuse normals and spec all working together the regular way, I got to say I really like the way it all looks at the moment. No cheap plastic-like highlights to be seen anywhere!
Agreed, from a distance everything has a painterly quality. And it even makes sense considering how dusty a post apocalyptic world would be, rarely will you find anything shiny irl when you have so much dust and sand.
What I find interesting is id jumped from visual extreme to another. Ideally there is a balance between the two so you're not all shiny plastic doom 3 and you're not totally matte like rage. I have to say though if I had to pick between the two I like the matte realistic feel of rage better. I'd love to see the next doom look more like rage, and play more like rage.
Yeah totally! And if we think about it, sure, scifi "doomesque" settings seems to be appropriate for , well, Doom-like action ... but still, even tho shiny metallic bumpy corridors might be the current norm for nextgen/currentgen games, they are actually not the norm at all for thrilling scifi! As a matter of fact I would be glad to see Doom4 looking less like Quake4 and more like the first Alien movie... or Moon ... or 2001. Even the original Doom and Doom2 felt quite dusty and rusted. Now imagining them at the Rage sauce suddenly seems like the best thing possible!
There are Quality-Settings for the virtual-texturing system that suggest that there are indeed specular and normal-maps, not just diffuse ones.
My guess is that those specular and normal-textures are just used very conservatively, and mostly just in indoor areas around certain lightsources for storage reasons.
Since the virtual texturing works in "tiles", it could theoretically be possible to not need a full specular and normal-map that takes up exactly the same space as the diffuse, but just certain tiles, resulting in lower storage requireements for specular and normal-textures.
But that's just a wild guess .
At least i did notice more actual specularity ( even with proper respect to lightsources ) going on in the indoor levels. It is definitely there.
They do use a lot of env-mapping too though.
Oh its a mix of baked flat diffuse only with some assets that still use normals and speculars with cubemaps. but for a great deal of the environments its all baked down.
thanks varga, about the bilinear vs aniso thing indeed one needs indeed a little more boundary info for aniso because aniso samples along the projected direction.
I'm actually not seeing this baked specular we're talking about. Can someone post an image with some examples. I see nice highlights on the sharp edges of models, but aren't these coming from the diffuse, like an inverted cavity map derived from the normal map in Photoshop?
Good example of the strongly baked specular is the animated pipes/pumps/steam ports in Wellspring. They are very very sharp.
Also in the second city, the hydralic rods used on the lift to the cave under the garage. There are instances of crappy cubemaps on shiny cylindrical objects but they work very well, so who cares.
Now that I've gone looking for it I really don't see it, every single railing in well spring and every single grill and piece of texture that looks baked has an environment map on it if you look closely. The edges are highlighted in the diffuse texture, but I am yet to see a single example in well spring of something that doesn't move with the camera if you look close enough.
Hey Malcom go to the deadcity zones with the red and green slime like Pior mentioned. All the specular on the slime and blood growth stuff in these 2 images are baked into the texture.
I think that's another fascinating facet of it all - even tho we all know how important spec is to a good 3d look, it all somehow becomes irrelevant in the light of great art direction.
Speaking of tech and the "painted in" effects, it makes me wonder about the following. We know that the editor tools are based on the "rich stamp" idea, that is to stamping down diffuse, normal and spec "stencils" at the map creation stage. But what about using this tech as a more global hook to tweak things further after the whole final bakedown ? For instance, lets imagine Wellsprings lighting and textures being all baked down with the stamping all done. Couldnt an artist send over a highres screenshots of different angles of the map to the AD, have these screenshots enhanced and painted over to add detail and color variation ... and then reproject them all as "macrostamps" ? The opening sequence showing Subway City for the first time really makes me feel like such a process might have been used...
This could open up so many possibilities when it comes to the fluid art direction of small indie projects!!
I would imagine it would be easier to just include the specular tiles for the slimy parts than to bake into the diffuse tiles. Not every piece of the environment has to be diffuse only.
There you go Malcolm, a few more "baked in spec" screenshots below. Now it is true that there is indeed a cubemap/reflection pass on most of the metallic world assets to give them a nice dynamic sheen (whose mask is very likely derived from the specular map from the original stamp or asset) but one can still spot the "regular" specular highlight being baked down to the overall diffuse, very similarly to what Max does in the complete preview of the Render To Texture window.
Obviously static screenshots don't prove anything hehe But if you travel to these areas I think the static nature of the highlights will show quite obviously when slowly panning past the assets. And again, it is so subtle that in the end, the choice of baking these in and applying a nice fake reflection on top really makes sense, I think!
Pior what you're suggesting is doable tech wise, but it's a tonne of wasted work if uv's or verts change. I once worked with this insane artist that would hand paint light maps instead of using the light map baking system. His lighting looked like shit compared to the rest of the game and then someone had to do some geometry changes to that environment. We asked him to rebake the lighting after the changes were done and he got this weird stress look and said it would take weeks to redo the lighting. We later found out he had hand painted all the lighting in Photoshop so we ended up relighting his scene and baking it the real way. Looked a thousand times better. I'm not a fan of throw away workflows, there will always be changes made after the art is finished, at least in the Vancouver games industry.
Very true! I guess that as far as big tweaks go, they mostly got the best out of color correction. It creates some sudden transitions at times but overall it's pretty beautiful!
My god seriously? He hand painted it? Madness... and nobody found out till much later. scary stuff. As for what Pior is talking about I think that could be interesting indeed for global changes. But I like doing mass color changes and very stylistic highlights with lighting alone so that indeed it survives geometry changes. Painting with lights is what I like to call it.
I do like the idea of painting entire levels by hand though... but diffuse only madness like those 3d background from more recent Disney films.
Pior thanks I see what you guys are considering baked in spec now, but I don't agree. I don't think those one pixel highlights on edges are derived from any light source/shader bake. These just look like an inverted cavity map that exists in the diffuse texture in Photoshop. The environment map then brightens these edges and they appear to shine as you walk by them. Check out the car closest to the gate in wellspring. The side window is the perfect example. The edges of the grill are highlighted in the diffuse texture and there is an environment map on top of that, don't even think the environment map uses a gloss map. Surely these little highlights on edges are not generated in the light baking process from lights in the scene, but rather derived from the normal map by running a filter on it crazy bump xnormal ect. And then overlaying/screening in Photoshop. I'm pretty sure this is common practice for all weapon modelers these days, and since there are no overlapping uv shells in the dcc this now means you can treat all assets as if they were a weapon and layer these various passes in to bolster the diffuse.
It's tough to decipher! I'm not quite sure about it all, I guess the best is to wait for clarification from ID themselves The question remains open for the green/red slime surfaces tho - the fixed specular highlights really feel directional there... Can't wait to know more!!
As for screenshot #4 posted above, I didn't mean to point at the thin 1pix highlights which are indeed very likely derived from a Crazybump pass ; instead I was looking at the faint "airbrushed" highlight running horizontally all the way through the center of the metal tube. It's confusing hehe!
pior, I looked at a bunch of pipes which I swore were static, but on closer inspection they had the most subtle environment map that barely moved based on camera angle. Also some of this baked spec could be just baked lighitng, like the highlight on a lambert shader when you bake directional light on to it. I'll take a closer look at the dead city tonight. It's fun debating this stuff.
Skiffy, yeah people were busy lighting their own environments and that guy had been a lighter for quite some time so there was no reason to think he would take what I thought was a really good light map baking system and hand paint everything. That guy was just on loan to us so once he left we just lit the scene with real lights and baked it for real. I heard it got fired years later for while he was working on Skate 2, something about him contacting Activision and trying to convince the Skate team to go work on Tony Hawk, haven't seen him in years, but we still reference his name every time someone suggests let's just bring that light map into Photoshop and tweak it there. Painting with light, cool! I call it modeling with light. Art direction in Rage when it comes to colour and light is pretty standard fare, stylized realism for textures and lighting and then use a colour cube per area to tint the colour of the world. It's an old trick, but it still looks good for realistic looking games and this is how most live action feature films are done. At certain points in the game you can stand between colour cube zones and look into a room where the colour correction hasn't been loaded, you'll notice the texture sets and lighting are all the same colour palette and all the unique look and mood comes of the lighting comes from the colour correction. The only problem with this technique is it tints the screen with a certain colour in most cases so you end up with a monochromatic look, you can fight this issue by adjusting the colour balance on the individual channels or the HSV on individual channels. I've found for cartoony looking games like I work on now that the Assassin's Creed/Rage/Transformers 3 The Movie art direction doesn't work, it's better to go Pixar style and use actual lights and colours in the lights to get the look you're after. I'm also not a huge fan of the art director coming in at the end colour cubing the shit out of world, often leads to banding and in a lot of cases making the underlying art look worse. I encourage all my guys to do their own post processing after the lighting is in a good place, but some of the guys prefer me to do it. I don't mind it's the funnest part of the polish stage in my opinion.
It's tough to decipher! I'm not quite sure about it all, I guess the best is to wait for clarification from ID themselves The question remains open for the green/red slime surfaces tho - the fixed specular highlights really feel directional there... Can't wait to know more!!
As for screenshot #4 posted above, I didn't mean to point at the thin 1pix highlights which are indeed very likely derived from a Crazybump pass ; instead I was looking at the faint "airbrushed" highlight running horizontally all the way through the center of the metal tube. It's confusing hehe!
Dont have a ton of time right now, but I'll answer this quick.
All the environments are built in modo. Props and assets are built mostly in modo, with a couple artists using Max and then baking via renderbump (like past id engines). From there, all the props, layout, texturing is done inside modo with it's fantastic tools and Seneca's scripts (modo users will be familliar with them). You can use radiant to place props if you wanted to, but obviously there's more control in a 3d app. Assets are built pretty much the same as anything else. The engine handles the process of uniquely unwrapping the world for megatexture use.
Stamps contain diff/bump/spec and are placed on top and blended however you want. You can blend diffuse only, or bump only, or spec only, or arbitrary values therein. That opens up huge possibilities for making things look integrated in different ways, as you can see in the game.
You are both right - the rage art style really depends on that edge hilighting in the diffuse to make things pop. You'll see it on most everything.
As for the baked specular like in those slimy screenshots, each area can have a specified view origin from which to calculate the baked specular.
pior - that technique of painting over the view was not used at all in rage, though I believe we do have tools for that.
Replies
Regarding 5 : It is very possible that we as end users are simply limited by whatever data was shipped with the game. I would guess that the high quality baked down textures of the final internal art build were at a much higher density than what we got to see in the game today - maybe at least twice the size ? ie 4 times the detail. (16k atlases) Also I remember hearing they used some very aggressive texture compression, therefore making things look more blurry...
I am so impatient to see the highres texture pack being released one day! It's so gorgeous already...
2. When they showed the tools a long time ago all the stamping and stuff was non destructive so changing things could be done without too much work I guess.
3. In the promo builds they probably used normal and spec data but for the shipped game they probably got rid of it and baked spec into the diffuse map, that way they only need 1 set of virtual texture data instead of 4 or 5 (diffuse, normal, spec, light direction), which makes the game file size at least 2-3 times smaller.
4. Because every pixel in the game is unique the lighting can be baked directly into the diffuse texture data. Assuming they baked specular in the release builds then the diffuse data is all thats needed, everything is completely pre baked.
5. The point is that every pixel in a level is unique, which allows for revolutionary tools that couldnt work otherwise. That comes at the cost of requiring overall lower resolution texture data. They were barely able to ship the game even after excluding everything but the diffuse map data.
I am assuming they did baked the spec into the diffuse textures because of what people say on the internets, I have not actually played it so I cant say for sure.
That's not like that. Everything is atlased into a giant single texture layout for a bunch of assets (you can check the individual files in your program files x86 folder), and then that's split up into small 128x128 square tiles.
Because anisotropic filtering wouldn't work otherwise, each tile has a 4 pixel wide border, so the actual content is only 120x120 texels.
The 4K / 8K page that you can set in the menu is the actual single physical texture used to render all the geometry. It is built from those 128x128 tiles on the fly, it is updated on the fly, and it doesn't even have to be full all the time.
I guess the reason for the world texel density is that they've already been stretching the size and production time of their source datasets. They could have built a smaller world (not much room for vehicles there) or they could have spent even more time on development.
I personally find the texel density good enough, you don't usually go stare at walls while playing the game; but the pure richness and beauty of the game is utterly wonderful.
There were no 16k atlases, you're just confused by the 4k / 8k setting in the options menu. That is the size of a single texture built up of all the 128x128 tiles necessary to render the scene. Can't really find a Rage related image but it's basically a random looking mosaic mess of small pieces of textures; and as you move around in the game world the tiles are constantly replaced with new data.
What the virtual texturing does here is that the UV coords from the original 128,000 x 128,000 (or whatever) single (but virtual) texture page are individually translated into this single (physical) 4k/8k texture. After all the GPU still has to do the rendering in the traditional way. So the trick is to manually build this one texture from the small tiles; and for that you need to determine the tiles you see, then load them, decompress from HD-photo and compress into DXTC.
Using 8k instead of 4k will only do one thing, the physical texture will have space for more tiles, so polygons further away from the camera can also load and use higher MIP level tiles.
The compression stuff they do does not downscale textures that you can walk up to as far as I know. They get more compression artifacts probably, and the system might not always load the highest MIP levels, but at least on the PC using 8k you get all the detail you can see.
The one thing that's not full res is supposed to be background scenery which you can't walk up to and thus you won't ever see the detail anyway.
But as far as I know there's no 2x-4x sized texture set sitting unused on id's servers.
There's some shots here of how it looks inside modo before being exported to the engine for megatexturing...
Also, Luxology's CEO dressed as Batman.
Wrong. They had to compress the shit out of stuff to get it to fit on a reasonable number of physical discs, and fit into memory at any given point in time (particularly for consoles).
Carmack talked at Quakecon about how artists were 'crushed' at the amount of texture compression that had to happen to the worlds to finally get it to all fit into the memory of consoles, and fit on the physical space of the disks.
[ame=http://www.youtube.com/watch?v=4zgYG-_ha28]Carmack at quakecon[/ame]
Carmack has also stated for a fact that all platforms have exactly the same textures. They've found a middleground and shipped it for everyone. Fact.
And finally, Carmack has talked about how he would like to eventually ship a higher-resolution patch for the PC. They've given very PR-friendly reasons like "testing the gains" or whatever, but realistically they are probrably trying to not piss off console people by having the PC look 4 times better.
1) I think this has something to do with the average playable area maybe. You will see that locations you are usually in are fine, but once you go off the track, the resolution drops. My first thought was that this maybe had something to do with further away textures could take up more UV space because, well, they are further away and don’t need it, but that doesn’t hold up all the time. Not 100% sure on this one. As for why its blurred inside the Russian guys place, that’s simply because they wanted to keep at least a some what average resolution/compression rate over the whole game. It would stand out if that room was really high res.
2) EVERYTHING is saved into raw format. That means that the mega texture is saved “as is”, stamps and all, and they can be moved around and changed at will. Think of it like placing normal decals in a map file like we already do. Once compiled, this is all compressed into a single layer. The lighting stage I image comes last, just like in older Quake compiling.
3) I noticed spec… I think… Maybe… I certainly did notice the really crappy oldschool envmapping, that’s for sure. More than likely down to memory constraits.
4) Take a look at how you get bump mapping in Quake 3. Its all baked into the texture.
5) Definatly all averaged so it all looked somewhat the same. But you have to remember that just because the game engine can stream a 1:1 pixel perfect world in for you, PLUS have it run nicely and LOD out correctly where needed… It doesn’t mean that would fit on the disks. What we got was still HUGE, so increasing resolution clearly would increase file sizes, before we even get into memory issues (Such as consoles having to run at terrible LOD levels and the like).
Don't worry, I did my reading and watching quite a while ago. I don;'t think you could dig up much about Rage tech that I haven't seen already I never said they did not compress, I said they didn't downsize (except for distant background elements).
What you can hope for with a dedicated PC release is
- less compression artifacts
- higher res textures in the background elements as well
Compression artifats =/= resolution loss. Textures won't get magically rezed up no matter how low they'd set the compression.
Again, it's one thing to see what's in the files and another to see what the engine can actually display from the datasets.
Check this comparison, there are obvious differences:
http://www.eurogamer.net/articles/digitalfoundry-rage-face-off
ID tech 5 gives an artist far more freedom than what is standard today. Id Artists are learning daily how to better utilize this way of building worlds. Some of the old school creation ways are gone, but most still remain (reusing assets / poly budgets)
One question that stuck out is stamping and major map changes. We DO NOT stamp(3d paint) until THE MAP IS DONE. and if there is a change we like to keep it small. Artist here have to be heavily involved in Map creation for these and other reasons.
I hope this helps some.
Patrick Thomas
However, again regarding 5, it is very possible that they whole texture sources shipped with the game are way lower than what's been used in production. I mean sure it is compressed (thus the artefacts), but the first logical step in reducing data weight is to res down textures... This is noticeable in the game too : some assets really look like they have been worked on (by that I mean, at the stamping stage, not at the source stage which could be unlimited) at 2 or 4 times the resolution than what is shown in the game. I would expect the same for character gear, and so on...
How did Quake 3 do this without megatextures? Wouldn't the lightmaps be too low desity for it to be distinguishable?
minor nitpick, what you mean is bilinear filtering, which is what comes "first" within a mip-map level. Anisotropic filtering is what makes texturing at angles much sharper (especially streets in racing games...).
edit: this is wrong aniso requires the wider border
Using an averaged viewing angle. It sucks but the amount of data it frees up is huge.
Here was the original thread but it fell off the map.
http://www.polycount.com/forum/showthread.php?t=89650
Also just quoted it below
"""""""
Hello everyone,
I did not see a thread yet talking about the final resulting visuals for Rage yet and the tech behind it so I thought I would start one. I would be curious to hear from some of the actual ID software artists that might be lurking on the forum as well.
Would I be correct in assuming that most of the normal maps on the environment assets get removed in the end after lighting is calculated? This is for the static assets. I suspect this because I don't see specular highlights changing at all on all the wet or slimy assets. The sewers and nasty mutant slime nests made me realize this.
That frees up TONS of texture space. Worst case 3 passes are removed from most assets if they use Normals, Full color specular and Gloss. So right there you gain 3 times more texture memory for the flat baked texture maps.
This can work perfectly well in the end if you don't want dynamic specular reflection. The lighting is baked in on a per pixel level in relation to all the textures they are applied too which makes for some lovely crisp shadowing.
But yea so I suspect that for the most part we are just seeing what amounts to diffuse only textures with all the specular and shadowing baked in from the original assets. Looks pretty dang awesome expect for none reactive specular highlights.
I could imagine a game using this system using pure diffuse only painted textures on everything. Make it look like a Miyazaki movies full 3d backgrounds...
""""""""
So as I said I suspect that there is no specular light reaction because it is indeed all for the most part baked down to diffuse only maps. You can check the visual similarity inside 3dsmax yourself with a uniquely unwrapped asset using normals and specular. Bake down the lighting into single full-bright diffuse and compared it next to the same asset using normals only and then specular as well.
On the baked down version for the most part especially on very matted materials you would not be the wiser unless you closely scrutinize the asset. The sub-pixel lighting "caused by the texture filtering" is gone in the baked asset.
Look forward to more tech musings or some factual responses from any Art folk working at ID. Congrats to all because I think the game looks AMAZING. I cant walk for more then 10 seconds without having to fully study and scour every scene I pass through.
commander_keen, what's the trick to averaged specular baking, any current tool that can do this?.
vargatom I think you might be mistaken, I don't think wellspring has specular or normal maps. I think the normal map is used to generate better lighting which is baked into the diffuse later during the mega texture stage, and conveniently avoids the 0-255 brightness restriction light maps have incidentally. You're probably noticing the environment map on a couple things here and there, which I believe appears in shadow and is not motivated by any light source, it does appear to be modulated by the normal map though, perhaps shaders that use environment maps also pay the cost for a normal map render pass.
Skiffy, sorry no I didn't see your thread or I wouldn't have started this one.
I'm still not convinced, I still think the source textures are 4x higher res than what is displayed in game and during the mega texture bake process they all get clamped to an average quality.
One would imagine that they had some global value set for the average pixel density during the final bake / creation of the megatextures. Some things that can mess up though with this type of setting is assets that are not mapped with a 1x1 ration and has texture stretching. Like pipes for example. I have seen some dang lowresolution pipes right next to far more detailed pipe valves.
I just want ID "CARMACK!" to release a 100gig download on some server for us to install and enjoy the textures at their purist most uncompressed form in the future...
It would be done when the lighting is baked in the engine. You could set up nodes in the editor that have a radius of influence and each pixel could decide on an averaged view direction based on those nodes.
In a way, this tech limitation is one of the strongest element of the art direction of the final product!
Even tho the engine sure could pull out "triple megatextures" with diffuse normals and spec all working together the regular way, I got to say I really like the way it all looks at the moment. No cheap plastic-like highlights to be seen anywhere!
My guess is that those specular and normal-textures are just used very conservatively, and mostly just in indoor areas around certain lightsources for storage reasons.
Since the virtual texturing works in "tiles", it could theoretically be possible to not need a full specular and normal-map that takes up exactly the same space as the diffuse, but just certain tiles, resulting in lower storage requireements for specular and normal-textures.
But that's just a wild guess .
At least i did notice more actual specularity ( even with proper respect to lightsources ) going on in the indoor levels. It is definitely there.
They do use a lot of env-mapping too though.
http://nvidia.fullviewmedia.com/gtc2010/0921-a1-2152.html
slides can be found here
http://mrelusive.com/publications/pubs_bydate.html
Also in the second city, the hydralic rods used on the lift to the cave under the garage. There are instances of crappy cubemaps on shiny cylindrical objects but they work very well, so who cares.
Speaking of tech and the "painted in" effects, it makes me wonder about the following. We know that the editor tools are based on the "rich stamp" idea, that is to stamping down diffuse, normal and spec "stencils" at the map creation stage. But what about using this tech as a more global hook to tweak things further after the whole final bakedown ? For instance, lets imagine Wellsprings lighting and textures being all baked down with the stamping all done. Couldnt an artist send over a highres screenshots of different angles of the map to the AD, have these screenshots enhanced and painted over to add detail and color variation ... and then reproject them all as "macrostamps" ? The opening sequence showing Subway City for the first time really makes me feel like such a process might have been used...
This could open up so many possibilities when it comes to the fluid art direction of small indie projects!!
http://img.photobucket.com/albums/v242/pior_ubb/2011-10-12_00126.jpg
http://img.photobucket.com/albums/v242/pior_ubb/2011-10-12_00127.jpg
http://img.photobucket.com/albums/v242/pior_ubb/2011-10-12_00128.jpg
http://img.photobucket.com/albums/v242/pior_ubb/2011-10-12_00129.jpg
http://img.photobucket.com/albums/v242/pior_ubb/2011-10-12_00130.jpg
http://img.photobucket.com/albums/v242/pior_ubb/2011-10-12_00131.jpg
http://img.photobucket.com/albums/v242/pior_ubb/2011-10-12_00132.jpg
Obviously static screenshots don't prove anything hehe But if you travel to these areas I think the static nature of the highlights will show quite obviously when slowly panning past the assets. And again, it is so subtle that in the end, the choice of baking these in and applying a nice fake reflection on top really makes sense, I think!
I do like the idea of painting entire levels by hand though... but diffuse only madness like those 3d background from more recent Disney films.
As for screenshot #4 posted above, I didn't mean to point at the thin 1pix highlights which are indeed very likely derived from a Crazybump pass ; instead I was looking at the faint "airbrushed" highlight running horizontally all the way through the center of the metal tube. It's confusing hehe!
Skiffy, yeah people were busy lighting their own environments and that guy had been a lighter for quite some time so there was no reason to think he would take what I thought was a really good light map baking system and hand paint everything. That guy was just on loan to us so once he left we just lit the scene with real lights and baked it for real. I heard it got fired years later for while he was working on Skate 2, something about him contacting Activision and trying to convince the Skate team to go work on Tony Hawk, haven't seen him in years, but we still reference his name every time someone suggests let's just bring that light map into Photoshop and tweak it there. Painting with light, cool! I call it modeling with light. Art direction in Rage when it comes to colour and light is pretty standard fare, stylized realism for textures and lighting and then use a colour cube per area to tint the colour of the world. It's an old trick, but it still looks good for realistic looking games and this is how most live action feature films are done. At certain points in the game you can stand between colour cube zones and look into a room where the colour correction hasn't been loaded, you'll notice the texture sets and lighting are all the same colour palette and all the unique look and mood comes of the lighting comes from the colour correction. The only problem with this technique is it tints the screen with a certain colour in most cases so you end up with a monochromatic look, you can fight this issue by adjusting the colour balance on the individual channels or the HSV on individual channels. I've found for cartoony looking games like I work on now that the Assassin's Creed/Rage/Transformers 3 The Movie art direction doesn't work, it's better to go Pixar style and use actual lights and colours in the lights to get the look you're after. I'm also not a huge fan of the art director coming in at the end colour cubing the shit out of world, often leads to banding and in a lot of cases making the underlying art look worse. I encourage all my guys to do their own post processing after the lighting is in a good place, but some of the guys prefer me to do it. I don't mind it's the funnest part of the polish stage in my opinion.
Dont have a ton of time right now, but I'll answer this quick.
All the environments are built in modo. Props and assets are built mostly in modo, with a couple artists using Max and then baking via renderbump (like past id engines). From there, all the props, layout, texturing is done inside modo with it's fantastic tools and Seneca's scripts (modo users will be familliar with them). You can use radiant to place props if you wanted to, but obviously there's more control in a 3d app. Assets are built pretty much the same as anything else. The engine handles the process of uniquely unwrapping the world for megatexture use.
Stamps contain diff/bump/spec and are placed on top and blended however you want. You can blend diffuse only, or bump only, or spec only, or arbitrary values therein. That opens up huge possibilities for making things look integrated in different ways, as you can see in the game.
You are both right - the rage art style really depends on that edge hilighting in the diffuse to make things pop. You'll see it on most everything.
As for the baked specular like in those slimy screenshots, each area can have a specified view origin from which to calculate the baked specular.
pior - that technique of painting over the view was not used at all in rage, though I believe we do have tools for that.