I need to know how blender calculates the amount of displacement it applies to a vertex.

I use the following configuration:

  • Cycles renderer
  • displacement node (scale = 1.0, midlevel = 0.5)
  • 8-bit displacement map

What is the minimal and maximal displacement for this configuration?

My assumption (BU = Blender Unit):

Min = scale * ( 1 BU / (0 - 128) )

Max = scale * ( 1 BU / (255 - 128) )

Can anyone confirm my assumptions? Unfortunately, there is no information regarding this topic in the official documentation.

Edit: New assumption with some evidence

  • convert values displacement map from range 0...255 to 0.0...1.0
  • displacement = scale * 1BU * (val - midlevel)

Experiment for Evidence:

  • I have placed a cube beside my flat surface. ( default cube with edge length of 2BU, therefore scaled z by 0.5)
  • edited the displacement map -> added a completely white and a completely black area

Result: enter image description here

As you can see, the maximal displacement is one BU, as the cube is 1 BU in height. With midlevel 0.5 the displacement spans the range from -0.5 to 0.5.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.