Jump to content
  • Advertisement
Sign in to follow this  

mapping clarifications help?

This topic is 1087 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts


First, I didn't post on the beginner section thinking that was more generic and I looked for a more specific section.

I've been searching on the web for weeks on shaders, lighting models and different maps like diffuse, normal, cavity, height, specular, gloss, AO, displacement, emissive, I hope I didn't forget any :P

I have problems in understanding a few subtle issues so if somebody could explain them it would be great, don't waste your time too much, just a few lines:


1. AO map (for static geometry)

I know what it is and how to generate one. I'm not sure how it's used. I've seen shaders use it as a separate map but the problem is why not merge it into the diffuse map, since all it does is just darken the light?


2. Specular map and gloss map difference in purposes

I've read dozens of explanations and saw pictures but none really crosses the t's. Imagine a little puddle on the street and dozens of people passing by and still none of which never stepping in. It's possible.

So what I know:

I don't know if using environment mapping vs. a simple light matters.

Specular is 8 bit grayscale and denotes how shiny is the respective pixel, from a matte black all the way to the most polished white. Most polished = mirror. What's the purpose of the gloss map then?

I've read in multiple sources that the gloss map black/white is how large/little the light appears. In other words, how... polished the surface is? Isn't the specular map filling this part -- smoothness/polish degree? Otherwise, not using a gloss map, what does white on specular map mean/show? A semi-glossy surface?

Do they both describe the same surface characteristic -- shininess but one starts from matte to shiny and the other goes on from shiny to mirror-like?

If this is the case, then why not using one, less precise, map?

I'm really confused (as you can tell).

Share this post

Link to post
Share on other sites
OK, this is going to take some explanation. I am a 3D artist and will be explaining from my view point.
All textures can be considered maps, working with the UV map to tell the shader how each pixel should react.
Diffuse map. Think of this texture as not only the color of the object but also how light scatters over the object.
If you textured a persons hand you would have a brighter spot on the palm, to give a impression of a elevated surface.
Albedo map(PBR). With the new PBR shaders the Albedo replaces the diffuse map, think of this texture as the color only information. The engine it'self will work out the light information.
If you textured a hand the texture would have the different colors skin is made of, some veins and skin defects. There should however be only minimal shading information on this texture. No sharp shadows at all.
Bump map/ Height map/ Displacement map. A gray scale image that shows the height of each pixel. These can work with the shader to mimic lighting or to effect the mesh, creating extra detail.
Normal map. A blueish texture, that stores the X,Y,Z value of a normal into the R,G,B channels of a pixel. Similar to a height map, however much more powerful because of the information stored.
Normal maps can be made from height maps or "Baked" from high poly meshes. Normal maps can also be drawn, however this isn't recommended.
Specular map. This is how shiny a surface is, lights should create a white spot on the material based on this texture. With the new PBR materials this also has a effect on the reflectiveness of a material.
Specular maps are mostly gray scale, for metal and other special surfaces you will want to use a colored specular map.
Metal map. Mostly replaces the specular in the new PBR materials. This is a gray scale image that maps how metallic the given pixel is, it also has a large impact on reflectivity.
Gloss map. This texture maps how much light scatters before reflecting off a material. On the old shader this just blurs the specular spot, for BPR materials it blurs all reflections and effects the diffuse light.
So, yes this is how polished the material is. Useless with out a specular or metal input.
Ambient occlusion map. A simple explanation is that it checks how near objects are, then darkens the texture to mimic light scatter.If you have two objects touching, it will draw that point as a black spot. 
It's a good and fast way to mimic light scatter. The AO map can be added or multiplied into a diffuse texture, 3D artist do this all the time.
Emissive map. With the old shaders this is the part that won't be shaded, with the new shaders this can act as a light.
Cavity map. Depends on what software you use. Mostly it's just a small detail bump map or a sensitive AO map, some software will use it to store vertices into a texture.
Shadow map/ Light map. A static shadow on the object.
Enviroment map/ Cube map. A capture of the environment used as a fake or real time reflection on objects.
Fresnel map. A 1D texture used for a fake Fresnel effect(Peach fuzz). A 2D texture can be used.
These are quick explanations, I could write a book on each of these textures and still fail to explain them. If you want a more detailed explanation I could show some of the textures in use.
There could also be custom maps used by the shaders.


I've read in multiple sources that the gloss map black/white is how large/little the light appears. In other words, how... polished the surface is?
Plastic and metal are both very shiny, so both will have a bright specular map, so if you wanted the player to see that some parts of a object is plastic and others are metal you would use a gloss map.
Plastic is usually smooth so it will have a bright gloss map, metal is often scratched and scatters light so it will have a darker gloss map.
I had some time so I made a quick example of how Specular/ Gloss maps work.
On the far left is the default material, no specular map or gloss map.
In the middle is the same model with a specular map only.
Last uses a color specular with a gloss map, it clearly shows the different materials the object is made from.
This is a very quick example, with more effort it could be a good 3D model.
Edited by Scouting Ninja

Share this post

Link to post
Share on other sites

Wow! Thank you very much, Scouting Ninja for the explanations. Much to learn from your reply.

Until now I've mistaken albedo for color/diffuse map and a few other confusions.

TBH the model looks great as it is in the middle; in my project I wouldn't ask anything more from the model, as it is in the far right. Now of course it depends on close to photorealistic someone wants his models :)

Merry Christmas!

Share this post

Link to post
Share on other sites

Until now I've mistaken albedo for color/diffuse

Albedo is pure color, it needs no shading and looks good even as a single value; the new shaders makes life easier for the artist.


Now of course it depends on close to photorealistic someone wants his models

Realistic models don't do well in games, they are bland. Lot's of game engines like Unreal go overboard with special effects, otherwise a model that took hours to make can go unnoticed by player who is to busy fighting hordes of monsters.



Some thing I want to mention: the more textures you use the more textures you have to improve others.


A simple example is that for a specular map you need a diffuse map. If you have a normal map and gloss map it can improve your specular.

For a diffuse map you need a texture image, albedo map and light info. Normal maps, occlusion maps and cavity maps improve quality.

Metal maps can be improved with a specular map or gloss map.

Share this post

Link to post
Share on other sites
Sign in to follow this  

  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!