Normalmaps and Bump Mapping

Quetoo's bump mapping (per-pixel lighting) uses a combination of deluxe mapping, dot3-bump mapping, and parallax mapping. This technique requires that you provide normalmap images for your world textures. Generally speaking, you'll want to provide a normalmap image for every visible world texture appearing in your level, except for liquids like water and lava. Materials textures like animations and pulses do not require normalmaps.

The standard convention is to name your normalmaps with the _nm or _norm suffix. For example, if your texture is named torn/floor1, the corresponding normalmap image should be named torn/floor1_nm or torn/floor1_norm. For parallax mapping, include a heightmap in the alpha channel of your normalmap textures, or provide an additional heightmap image with the suffix _h, e.g. torn/floor1_h.

Creating proper normalmaps from diffuse textures can be difficult and tedious. We recommend that you elect to use textures specifically designed for this rendering technique, that should come with properly encoded normalmaps. Should you choose a texture set that does not, you might find this tutorial for creating normalmaps useful. There are several free tools available for creating and working with normalmaps:

The best way to create normalmaps is from 3D models:

Additionally, you should tune each texture's bump mapping properties via the materials system to achieve the best looking result.