![]() |
![]() |
noise_mode: scalar (default) | noise_mode: vector |
This short tutorial demonstrates a workflow for normalizing the Arnold noise shader when combined with volume Displacement. In this example, we have a smoke VDB whose detail we wish to increase using volume displacement.
Various VDB volumes can be downloaded here.
Assign a standard_volume shader to the volume.
Create an Arnold noise shader and connect it to the displacement parameter of the standard volume shader.
That seems simple enough, however, there is a problem. The volume has been offset to the side and is showing displacement in only one direction.
Noise is only displacing in one direction
This happens because the noise shader is working from 0 to 1. Smoke is volumetric and not a flat object so we need to remap our texture from 0-1 to -1 - 1.
Before and after using the Range shader
In general, you should avoid adding another shader, especially in the volume context.
Noise -> VectorMap -> Volume Displacement
Thanks to Slava Sych for his assistance with this tutorial.