Carmack on low polies on models and other things

The glossiness defines the size of the specular highlight; the gloss map contains the variation of this attribute across the surface. The specular map contains the strength of the specular highlight. To get realistic surfaces, these attributes must not remain constant.
 
Thanks for the clarification Laa-Yosh...

I'm not sure what you mean by "size" of the specular highlight...
is this some way of encoding the distribution of reflected light ray directions based on an incoming light vector (i.e. how much an incoming ray is spread by the reflection?)


I was thinking that maybe the projective shadow mapping look on some lights comes from the fact that shadows are "pre-baked" into the cube map (for point sources) or texture map (for spot lights) which specifies the intensity/color of emitted light.
 
From the 3ds max help file:

Specular Level: Affects the intensity of the specular highlight. As you increase the value, the highlight grows brighter.

Glossiness: Affects the size of the specular highlight. As you increase the value, the highlight gets smaller and the material appears shinier.

I cannot really explain it any better without images, but unfortunately I'm unable to use FTP right now. Maybe I'll be able to post some images at a later time.
Also, glossiness maps aren't really used, as the size of the speculars does not really change on a surface, rather the intensity, which is defined by a specular map.
 
One could say that the glossiness is (a function of) the exponent in the usual specular formula.
You could see it as a smoothness-factor of the surface. Smooth surface => sharp reflection => high gloss value.

I haven't done this kind of art. But at least theoretically it would be a good thing to have a gloss map as complement to a bumpmap. As the textures are downfiltered for mipmaping, the bumps that disapear from the bumpmap should enter the glossmap as a lowered glossiness.

Otherwise you could get the strange behaviour as I've seen on a screenshot of the 3Dmark Nature test. The bumps on the lake have been so smothed out in the distance (due to mipmaping) that it looks like a perfect mirror, instead of blurring the reflection. (I can't run that test on my GF2 to verify it though.)

I assume that the best way of using the glossiness factor with environment maps is to bias the mip lod of the reflected image.

I must admit though that even though this is something I've thought quite some time about, I didn't know that this was what was stored in a gloss map. :oops:

Thanks for the explanation Laa-Yosh.
 
Basic, you mean kinda like <A HREF=http://www.informatik.uni-tuebingen.de/FILES/bibliothek/wsi-97-15.pdf>this</A>? ;)
 
Laa-Yosh said:
Which means that the engine can only collapse non-overlapping lights into one pass then. Thanks.
Although it might be reasonable to turn off shadow casting for some lights, like gunfire, except when it's the only light source in a room.

Level building for Doom3 will certainly not be easy...

For what I've seen, many lights in Doom 3 are spot lights. Therefore, for static lights (not moving), the overlapping status can be precomputed at level building time. This fit well for rooms such as long corridors with lot of lights mounted on the ceiling.

Furthermore, you can still use lightmap for static lights with static sceneries. However, static lights still need to use dynamic shadows for moving objects.
 
Heh, they even used the same example.

Oooh, yet another nice round thing that could be used for transportation...

I did think of "anisotropic bumps" stored in a matrix like that, but never formalized anything of it. Didn't even think about using it as input to an anisotropic filtering of the environment map. That's beautiful.

I still think mip map lod biasing is a reasonable first step though. It should also reduce the problems with texture cache thrashing whith EMBM.
 
Back
Top