Houdini 20.0 Nodes Geometry nodes

Volume Rasterize geometry node

Rasterizes into a volume.

Since 12.5

The Volume Rasterize operation updates volume values according to a VEX function. It is designed to allow the VEX code to be run just-in-time according to a set of primitives rather than over the entire object.


You may want to unlock the Volume Rasterize Points SOP for a more advanced example of how to use this.

The default VOP network shows some of the built-in bindings.

texture_P is bound to the local space of the rasterized primitive.

surface_P is bound to the location on the surface of the rasterized primitive. For points, this is the point position.

world_P is bound to the currently processed world position for the voxel currently being rasterized.



Which volumes or VDBs in the first input to stamp into. If no name attribute is present, there should be a single volume or VDB and is treated as the “density” target.

If more than one is present, a name attribute should be present. The name is used to compare with the point attributes.

density will be filled with the alpha mask of the points.

All of the destination must be aligned and of the same time (vdb or volume).

Rasterization Group

A group of points in the second input to rasterize.

Merge Method

How to blend each incoming point in with the base grid. Because it is not defined what order the points will actually be stamped in, this must be symmetric.

Samples per Voxel

If stamping small points a low resolution volume, aliasing artifacts can occur. To avoid this, you can make more than one sample per destination voxel.

If this is 1, no random sampling is done, instead a single sample is done in the middle of the voxel.

Sampling Seed

The seed used for generating the random samples.

Relative Padding

Each primitive/point being rasterized has a certain area it will rasterize into. For points, for example, it is a sphere of radius pscale. This will be scaled by the Relative Padding amount to determine the area to rasterize.

This will be overridden by a point attribute padding_relative.

Absolute Padding

This specifies a distance in world space for the rasterization area of each primitive to be expanded.

This will be overridden by a point attribute padding_absolute.

Scale Texture Space

Whether the texture_P binding will be scaled by the pscale attribute of the input.

Premultiply Input by Density

The generated attributes other than density will be multiplied by the 'density' field, if present. This allows for proper mixing of normalized fields such as colour or velocity.

Normalize Output by Density

Divide the generated fields by the density field to undo the effect of the premultiplication pass.

See also

Geometry nodes