Provides bump mapping based on a 3d input. Bump3D works by evaluating the bump input at different points (P + epsilon, P + epsilon, P + epsilon). Since the only thing displaced is the point, the uv coordinates will be the same in the different lookups. These will give the same texel in the image and result in no perturbation of the normal. If you are using texture file images, you should use Bump2D for images.

Keep in mind that each bump3d node needs to evaluate the texture map 4 times (to get the partial derivatives in X, Y, Z).



The input used to compute the normal perturbation, provided as a float value representing the height, or directly as an RGB texture map, in which case the first component (R) will be used.
Scales the height of the bump map output.

Epsilon is used to remove noisy shading artifacts caused by insufficient precision in the small floating point differences between P and P+epsilon. Ideally it should be left at its default value of 1e-5 but in problematic cases it may be preferable to increase the epsilon, which may solve the numerical artifacts trading them for blurrier bump.

Optionally, a shader to specify the color and/or reflectance can be specified here, allowing the node to be connected to the Surface slot of the material (rather than connecting bump3d to the Bump Map slot and the other shader to the Surface slot separately). This may be useful in some situations.


Outputs a normal vector that can be linked to normal parameters in ambocclambertstandard_surface and utility shaders.

  • No labels