What are maps and how they work

I heard about normal maps that tilts the surface to add extra geometry without adding extra geometry. What other maps are. I recently bought an character for my game because I’m now good at modeling and I find this image:


I also know about albedo that gives the actual texture but other maps are extra features that the author of the model wanted to add as an optional thing? And what other maps are appliable on 3d models?

This might be helpful:

There’s an old one called bump map, and another called spec map aka specular map. They used them especially bump maps, for many games, like Quake Arena, and Unreal Tournament, back in the 90’s and 2000’s. Bump maps are kinda similar to normal maps, because they add and give object surfaces, a fake bumpy detailed look, without having to add more polys, to the 3d object. But nowadays, game creators normally use normal maps.

1 Like

So first a map is just a fancy word for texture, or an image applied to a model.
There are lots of different types used for all sorts of different things and they change as new rendering algorithms come along.

Sometimes there are different names for the same thing as well.
Here are some common ones:

Diffuse/Colour/Albedo map: Usually refers to your standard texture that adds the colour to the model.

Bump Map: An old technique. A greyscale texture where the white and black are used to add the appearance of extra detail or bumpiness to the model. Note this doesn’t actually alter the geometry, the effect is an illusion. Mostly replaced with normal maps these days but still occasionally used.

Normal Maps: Like a bump map, these fake extra detail in the model. Again they don’t actually alter the geometry, it’s an illusion. They are usually created using a high detail version of the model which is not shipped with the game. An algorithm runs over the high detail model and looks at how light bounces off its surface, the result is stored in the normal map with each pixel representing the direction of the light bouncing off one part of the model as a vector (x axis stored in red channel, y in green, z in blue). In the game this normal map is then applied to the low detail version and simulates the same light bounce to create the same highlights and shadows that were on the high detail version which is enough to trick the eye into thinking there is extra detail there when there isn’t.

Parallax Maps: An alternative to normal maps that generates fake extra details. Gained some popularity at once point but never quite caught on and is rarely used these days.

Displacement Maps: Another technique for adding extra detail to a model except unlike normal maps, displacement maps actually add new geometry. The model’s triangle count will increase and it will change shape to actually match what the displacement map says. This is quite expensive on performance so it is only recently becoming popular and many games don’t use it.

Ambient Occlusion/AO map: Ambient Occlusion is a way of faking some extra shadow details for the model. In real life, objects have shadows where there are sharp angles, for example in the corners of a room where two walls meet. Real time lighting techniques often don’t simulate this well. Ambient occlusion aims to correct this by looking for sharp angles in the geometry and adding in extra fake shadows to make up what was missing. There are real time ambient occlusion algorithms but they can be slow, so the result is often per-calculated and stored in a texture so that the players computer doesn’t have to do the calculations.

Specular map: Stores shiny parts and highlights. Usually used for glossy objects like glass and metal to add the illusion that light reflects off the surface. These are mostly used in older rendering systems and with the rise of PBR have been replaced with metalness maps.

Metalness map: Does the same thing as specular - stores how shiny a surface is. Designed for use with PBR. I’m not sure specifically how a metalness map and specular map are different but I believe they are only in terms of how the data is stored.

Roughness/Gloss map: Kind of like a bump map. Adds roughness to the texture. Used in PBR.

Height Map: A greyscale image usually used to generate terrain where the different shades represent different heights to the terrain.

Emission Map: Makes the object appear to glow. Usually used on light bulbs and other glowing objects. The texture contains bright patches of colour that alter the base colour of the model to make it look like its emitting light. This is an illusion and the map itself doesn’t actually emit light and won’t illuminate its surroundings although some engines do add this feature and make them really emit light.

There are lots of others used in different programs and people invent more as needed, but those are some of the more common.

4 Likes