This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
private:infinimap2017:infinimap_normal_mapper [2017/05/08 16:33] – created lightwolf | infinimap2018:infinimap_normal_mapper [2017/12/27 10:41] (current) – ↷ Links adapted because of a move operation lightwolf | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== infiniMap Normal Mapper Node ====== | ====== infiniMap Normal Mapper Node ====== | ||
+ | {{ infinimap2018: | ||
The Normal Mapper Node has been designed for image maps that contain normals. | The Normal Mapper Node has been designed for image maps that contain normals. | ||
- | Normal maps basically store a direction vector. That's three components, X,Y and Z, each ranging from -1 to 1. | + | |
- | They are used to bend the surface normal when shading, resulting in a relief like change of the shading that is very similar to the effects of a bump map1. | + | Normal maps basically store a direction vector. That's three components, X,Y and Z, each ranging from -1 to 1 for a floating point image. |
+ | |||
+ | They are used to bend the surface normal when shading, resulting in a relief like change of the shading that is very similar to the effects of a bump map (( A bump map is more or less a simplified variant of a normal map. When rendering, normals are derived from the bump map. )). | ||
===== Type of Normal Map ===== | ===== Type of Normal Map ===== | ||
Line 22: | Line 24: | ||
These controls allow you to assign any of the channels present in the current infiniMap image to be used as X, Y or Z. You can also selectively invert the directions on a per channel basis. | These controls allow you to assign any of the channels present in the current infiniMap image to be used as X, Y or Z. You can also selectively invert the directions on a per channel basis. | ||
===== Normal Origin, Normal Scale ===== | ===== Normal Origin, Normal Scale ===== | ||
+ | {{ infinimap2018: | ||
Since most image formats don't handle negative numbers, those values are stored in a range from 0 to 1 (or 0 to 255 in 8-bit pixel terms). | Since most image formats don't handle negative numbers, those values are stored in a range from 0 to 1 (or 0 to 255 in 8-bit pixel terms). | ||
Line 28: | Line 30: | ||
Some applications also store normal maps using a file format that supports negative numbers (such as OpenEXR), in this case a -1 in the normal map is a -1 in the file. | Some applications also store normal maps using a file format that supports negative numbers (such as OpenEXR), in this case a -1 in the normal map is a -1 in the file. | ||
- | To cater for those, we've added the Normal Origin and Normal Scale options to bring what is stored in the image into the range from -1.0 to 1.0 | + | To cater for those, we've added the **Normal Origin** and **Normal Scale** options to bring what is stored in the image into the range from -1.0 to 1.0 |
For a normal map stored in the range 0..1, the default settings bring the values into the -1..1 range. | For a normal map stored in the range 0..1, the default settings bring the values into the -1..1 range. | ||
- | Basically: value = (pixel – Normal Origin) * Normal Scale | + | Basically: value = (pixel – **Normal Origin**) * **Normal Scale** |
+ | |||
+ | For a proper float image with negative values, the settings would be 0 for the **Normal Origin** and 1 for the **Normal Scale**. | ||
- | For a proper float image with negative values, the settings would be 0 for the Normal Origin and 1 for the Normal Scale. | + | <- extended_node| ^ | ^ browser | -> |