ImageNormalMap

Overview

ImageNormalMap applies tangent space normal mapping to materials. It is typically referenced by the input_normal attribute of a material.


Attribute Reference

UVs attributes

input_texture_coordinates

Vec3f bindable
default: [ 0, 0, 0 ]

When 'texture_coordinates' is set to 'input texture coordinates', UVs are generated by evaluating the map bound to this attribute

offset

Vec2f
default: [ 0, 0 ]

Translates the UV coordinates in texture space. The order of operations is rotation, scale, and then offset.

rotation_angle

Float
default: 0.0

Rotation of the UV coordinates in texture space in degrees. The order of operations is rotation, scale, and then offset.

rotation_center

Vec2f
default: [ 0.5, 0.5 ]

The UV coordinate around which to rotate. The order of operations is rotation, scale, and then offset.

scale

Vec2f
default: [ 1, 1 ]

Scales the UV coordinates in texture space. The order of operations is rotation, scale, and then offset.

texture_coordinates

Int enum
  0 = “texture” (default)
  1 = “input texture coordinates”

Selects which texture coordinates to use. 'texture' uses the surface UVs. 'input texture coordinates' uses the map bound to 'input_texture_coordinates'.

General attributes

default_value

Vec3f
default: [ 0, 0, 1 ]

Default value to be used for missing udims when 'use_default_value_when_missing' is enabled

normal_encoding

Int enum
  0 = “[0,1]” (default)
  1 = “[-1,1]”

Most normal maps are encoded [0,1]. Only certain rare floating point normal maps are encoded [-1,1]

tangent_space_normal_texture

String filename
default:

Filename that points to a tangent space normal texture .exr or .tx file (must be mip-mapped and tiled with maketx). If 'udim_files' is empty and a 'UDIM' token is present in the filename, then 'UDIM' will be replaced with the udim number (i.e. 1001, 1002, etc.)

udim_files

StringVector
default: {}

Explicit list of udim filenames (i.e. {'file.1001.tx', 'file.1002.tx' }). The number of strings must match the number of values in the 'udim_values' attribute. If this attribute is empty (default) and a 'UDIM' token is present in the filename, then 'UDIM' will be replaced with the udim number (i.e. 1001, 1002, etc.)

udim_max_v

Int
default: 10

Maximum v value for udim tiles. Udim values are calculated as 1000+(u+1)+(v*10). The v value for udim must be >= 0, and within 'udim_max_v'. If you don't use default color, an error will be generated if the v value is out of range.

udim_values

IntVector
default: {}

Explicit list of udim values (i.e. {0, 1, 2, 3}). These values are added to the udim start value of 1001. The number of values must match the number of strings in the 'udim_files' attribute.

use_default_value_when_missing

Bool
default: False

Uses the 'default_value' for missing udims and does not report error

wrap_around

Bool
default: True

Controls whether to repeat (true) or clamp (false) the texture