Method
Extracts a surface from a procedural by first voxelising it (but only voxelising the spatial areas which are required) and then constructing a smoothened surface over the voxels. The surface produced is a triangle mesh which can be texture and deformed, can cast shadows, and can be used as a particle emitter among other things.
Example |
---|
|
Example Nodegraph |
---|
|
Transform
Name | Description |
---|---|
Position X | Move its position along the x-axis in local space. |
Position Y | Move its position along the y-axis in local space. |
Position Z | Move its position along the z-axis in local space. |
Rotation Heading | Rotate the object about the y-axis. |
Rotation Pitch | Rotate the object about the x-axis. |
Rotation Bank | Rotate the object about the z-axis. |
Scale X | Scale along the x-axis. |
Scale Y | Scale along the y-axis. |
Scale Z | Scale along the z-axis. |
Inherit Transform Channels
Toggle which transform channels should be inherited. By default, all are on.
Attributes
Name | Description |
---|---|
Grid Width | Width of the adaptive voxel grid. |
Grid Height | Height of the adaptive voxel grid. |
Grid Depth | Depth of the adaptive voxel grid. |
Error Tolerance | If the procedural distance field has too much distortion then it may be necessary to raise the error tolerance. A higher error tolerance may reduce performance, so this is a trade-off. |
Smoothing Iterations | The number of vertex smoothening iterations to perform. This will smoothen out sharp edges. |
HQ Smoothing | When enabled, vertex positions will be projected back on to the procedural surface. This preserves sharp edges without increasing the voxel grid size. |
Distance Field Normals | Vertex normals will be extracted from the procedural distance field. This can be more accurate, but slower. |
Seal Boundaries | When a procedural intersects the bounding box, usually a hole is created. Enabling this option will fill in the hole. |
Generate Colours | Uses colours set in procedural nodes (such as 3D Primitive) to colourise the generated vertices. This can reduce performance slightly. |
Generate UVs | Generate texture coordinates at the generated vertices, for use with a material. This can reduce performance slightly. |
Visible | Control whether the node is visible or not to the scene. |
Dynamic | When set above 1.0, the mesh will be re-generated on every frame. When set to 0.0, the last-generated mesh will be cached and re-used as a static output. |
Vertex Buffer Size (100,000s) | Limits the generated vertex buffer size. |
Triangle Buffer Size (100,000s) | Limits the generated triangle buffer size. |
Show Metrics | Displays information about the amount of mesh geometry being generated. |
Tessellation Enabled | Enables GPU-side tessellation. Note that post-tessellated geometry is processed last. |
Max Tessellation Factor | The maximum level of GPU tessellation. |
Material
See Materials.
Inputs
Name | Description | Typical Node Input |
---|---|---|
Procedural Root | Use a Procedural Root as an input, so the renderer is treated seperately from the roots transforms. In this case, the renderer itself would be connected to the scene Root node. | Procedural Root |
Bounding Box | The region in which the surface will be voxelised and generated | Bounding Box |
Render Transform | Takes the transformation of another node and applies it to the rendered mesh. | |
Material | A material to apply to the rendered mesh | Materials |
Transform Modifier | Links all transform properties to the input node. | Null |
Target Node | Always faces the x-axis towards the inputs anchor point. | Null |
Local Transform Override | Override the transformation values of the node, relative to its parent. | Null |
Outputs
There are no outputs from this node.