Normalmap

From Blood Wiki
(Difference between revisions)
Jump to: navigation, search
Line 2: Line 2:
 
[[File:Heightmap_tiles.jpg|150px|thumb|Heightmap for parallax mapping]]
 
[[File:Heightmap_tiles.jpg|150px|thumb|Heightmap for parallax mapping]]
  
Normal maps are images that store per-pixel surfaces normals directly in the RGB values of an image. They can dramatically increase object detalisation without adding more polygons. Therefore, normalmaps have a bunch fo limits and quirks.
+
Normal maps are images that store per-pixel surface normals directly in the RGB values of an image. Properly done normalmaps can dramatically increase object detalisation without adding more polygons. Therefore, normalmaps have a bunch fo limits and quirks:
 +
 
 +
* Tangentspace normalmap is based on vertex normals.
 +
* There is DirectX and OpenGL normalmap format, should figure out what format tool is producing and fix normalmap if it doesnt fit.
 +
* Normalmappers have a couple of quirks (aliasing, noise).
 +
* Seams and hard edges is tricky.
  
 
'''Recommended articles on normalmaps:'''
 
'''Recommended articles on normalmaps:'''

Revision as of 15:08, 18 July 2012

Normalmap for a bowl model
Heightmap for parallax mapping

Normal maps are images that store per-pixel surface normals directly in the RGB values of an image. Properly done normalmaps can dramatically increase object detalisation without adding more polygons. Therefore, normalmaps have a bunch fo limits and quirks:

  • Tangentspace normalmap is based on vertex normals.
  • There is DirectX and OpenGL normalmap format, should figure out what format tool is producing and fix normalmap if it doesnt fit.
  • Normalmappers have a couple of quirks (aliasing, noise).
  • Seams and hard edges is tricky.

Recommended articles on normalmaps:

In Darkplaces Engine, normalmaps are:

  • Tangent-space RGB
  • OpenGL-oriented (X stores horizontal, Y vertical)
  • Optionally can store alpha component which represents height that will be use for parallax mapping.
  • Compressed to DXT1 (if not alpha) or DXT5

See also

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox