Finally, the Manual mode lets expert users create cloud coverage textures and lookup tables (LUT) in order to have absolute control over the position of each vertical slice of clouds defined by the LUT. For information on how each texture influences cloud rendering, see the documentation.
The cloud Volume is driven by a 2D coverage map, and different altitude profiles set by a LUT that specifies properties such as density, erosion, and ambient occlusion. Then, two 3D noise textures are used to eat at the cloud volume to generate distinct cloud shapes:
- Shape noise: A low-frequency noise that creates large cloud shapes
- Erosion noise: A high-frequency noise that provides micro-details on the surface of the clouds
For its rendering, the Volumetric Cloud system in HDRP uses ray marching, a technique that relies on casting rays in steps from the camera towards objects and light sources. In our case, we cast primary rays towards the cloud Volume to sample the surface of the clouds. Secondary rays are then cast towards the sun to shade the pixels on the surface of the clouds.
To reduce the cost further while minimizing the visual degradation, this process is done at quarter resolution and with a temporal reprojection and accumulation. This means that the cloud system uses samples from previous frames to build the full results. For this reason, when the camera moves at high speed and when parts of the clouds without any history must be rendered, some ghosting or reconstruction artifacts might appear. Nonetheless, we provide a greatly effective anti-ghosting solution that allows for very fast camera movements and very high wind speeds. In the animation below, ghosting is prevented while the clouds move at thrice the speed of sound.