= How to |> make clouds = == Create clouds using volumes == * Create a geometry object. * Append an [IsoOffset|Node:sop/isooffset] node at the geometry level. Make sure you set the __Output Type__ to __SDF Volume__, and the __Invert Sign__ checkbox is turned on. Increasing the __Sampling Divs__ provides better quality in more detailed volumes. * Append a [Volume Mix|Node:sop/volumemix] node. Change the __Mix Method__ to __User__ so that you can enter your own expression as the __Value__. For example, `clamp($V*10, 0, 1)`. * Set up [lights and a camera|/shelf/lightsandcameras]. If you want shadows, set the __Shadow Type__ parameter on your light node to __Depth Map Shadows__. Using depth map shadows is much faster than ray traced shadows. * Use one of the volume materials on the [Material Palette|/ref/panes/materialpalette]. * [Billowy Smoke|/gallery/shop/material/billowy_smoke] * [Wispy Smoke|/gallery/shop/material/wispy_smoke] * [Basic Smoke|/gallery/shop/material/basic_smoke] TIP: Billowy Smoke is useful because it has noise parameters. NOTE: You cannot drag and drop this material in the viewport like you can for other materials. You must point to it on the __Material__ tab of the object. * You can also create an [Instance Object|Node:OBJ/instance] to instance your original geometry onto several points. For example, inside the instance object you could create a [grid|Node:sop/grid] and append a [scatter|Node:sop/scatter] node. On the __Instance__ tab of the [Instance Object|Node:OBJ/instance], make sure you turn on the __Point Instancing__ checkbox, and point to your object in the __Instance Object__ parameter. == Creating clouds using i3ds == * Create an array of still [particles|/particles] to represent a cloud. * Create a [metacloud|Node:shop/v_metacloud] shader in the [Icon:NETWORKS/shop] SHOP network. * In the [Icon:NETWORKS/rop] Output network, create a [3D Texture Generator|Node:out/image3d] to drive the image3d program that generates 3D texture maps. On this node, set the following parameters: * __Output Image__ - to where you would like to output your .i3d files * __SHOP__ - to your metacloud * __Render As__ - to __Raw point geometry__ * __SOP__ - to the particle array * Turn on the __Verbose__ checkbox Click the __Render__ button. * Return to the [Icon:NETWORKS/shop] SHOP network and create a [Mantra: Image 3D Volume Procedural|Node:/shop/vm_geo_image3dvolume] and set the __I3D File__ parameter to the .i3d file that was just created. * At the [Icon:NETWORKS/OBJ] object level, create a geometry object and apply a [Billowy Smoke|/gallery/shop/material/billowy_smoke] material. On the __Geometry__ sub-tab of the __Render__ tab on the object, set the __Procedural Shader__ to the __Image 3D Volume Procedural__ shader, which will render the .i3d file directly. [Image:/images/howto/clouds.png] === Tips === * The __Volume Step Size__ parameter on the Mantra node controls the level of detail in volumetric clouds. The lower the step size, the greater the detail. * Using shadows will make your cloud look more realistic. Set the __Shadow Type__ to __Ray-Traced Shadows__ on the __Shadows__ tab of your light node.