Notch Notch Manual 0.9.23
 Light | Dark
Procedural Meshing

Procedural Meshing

Renders a procedural system as geometry.



Method #

Genrates a surface from a procedural by first voxelising it, and then constructing a smoothed surface over the voxels. The surface produced is a triangle mesh which can be textured, deformed, can cast shadows, and can be used as a particle emitter among other things.

This node outputs the normal transformation and translation values, but it also outputs geometry which can be modified with Deformer nodes, or used as a mesh sources for nodes which accept mesh connections, such as the Field 3D Object Emitter or the Procedural 3D Object.


These properties control the 3D transforms of the node. Transforms will generally be inherited by child nodes, although they can be ignored through the Inherit Transform Channels attributes.

Position XMove along the local x-axis.
Position YMove along the local y-axis.
Position ZMove along the local z-axis.
Rotation HeadingRotate around the local y-axis.
Rotation PitchRotate around the local x-axis.
Rotation BankRotate around the local z-axis.
Scale XScale along the local x-axis.
Scale YScale along the local y-axis.
Scale ZScale along the local z-axis.

Toggle which transform channels should be inherited from the parent node. By default, all transforms will be inherited.

Position XToggle inheritance of the X Position from the parent.
Position YToggle inheritance of the Y Position from the parent.
Position ZToggle inheritance of the Z Position from the parent.
Rotation HeadingToggle inheritance of the Rotation Heading from the parent.
Rotation PitchToggle inheritance of the Rotation Pitch from the parent.
Rotation BankToggle inheritance of the Rotation Bank from the parent.
Scale XToggle inheritance of the X Scale from the parent.
Scale YToggle inheritance of the Y Scale from the parent.
Scale ZToggle inheritance of the Z Scale from the parent.
World Position OnlyInherit the world position from the parent only, rotation and scale will be ignored. Overrides above properties.
Inherit TimeToggle inheritance of time from the parent.

These properties control the core behaviours of the node.

Grid WidthWidth of the adaptive voxel grid.
Grid HeightHeight of the adaptive voxel grid.
Grid DepthDepth of the adaptive voxel grid.
Error ToleranceIf 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 IterationsIteratively smoothes the meshes vertices by the number of levels specified, averaging out all the vertices in the mesh and producing a smoother result. Smoothing is done before rendering. High values can impact performance greatly, and may not be temporally stable if the underlying mesh changes.
HQ SmoothingWhen enabled, vertex positions will be projected back on to the procedural surface. this preserves sharp edges without increasing the voxel grid size.
Distance Field NormalsVertex normals will be extracted from the procedural distance field. this can be more accurate, but slower.
Seal BoundariesWhen a procedural intersects the bounding box, usually a hole is created. enabling this option will fill in the hole.
Generate ColoursUses colours set in procedural nodes (such as 3d primitive) to colourise the generated vertices. this can reduce performance slightly.
Generate UVsGenerate texture coordinates at the generated vertices, for use with a material. this can reduce performance slightly.
VisibleControl whether the node is visible or not to the scene.
DynamicWhen 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 MetricsDisplays information about the amount of mesh geometry being generated.
Tessellation EnabledEnables gpu-side tessellation. note that post-tessellated geometry is processed last.
Max Tessellation FactorThe maximum level of gpu tessellation.

See Materials.


NameDescriptionTypical Input
Procedural RootUse 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 BoxThe region in which the surface will be voxelised and generatedBounding Box
Render TransformTakes the transformation of another node and applies it to the rendered mesh.
MaterialA material to apply to the rendered meshMaterials
Transform ModifierApply the transforms of another node to this node.Null
Target NodeModifiy the rotations of the node to always direct the z axis towards the input.Null
Local Transform OverrideApply the transforms of another node to this node, relative to its parent.Null

Related Videos