Method

This node renders a 3D primitive mesh that has been generated according to various attributes. The Shape Type parameter defines the primitive shape used. The Subdivisions X/Y parameters determine how many subdivisions the primitive has, and the Axis defines which axis it is created in where appropriate. The Size and Radius parameters may be used to control the size of the primitive.

As well as being rendered directly, Shape 3D nodes may also be used as an input for various other nodes, including Particle Mesh Emitters, Field 3D Object Emitters, Clone To Mesh, Clone To Volume, Collision Affectors and numerous others.

There is a set of material parameters under the Material property group which controls how the shape is rendered. The material also has a corresponding input which allows Material nodes to be connected to it. See Materials for more information about material properties.

Deformers may be parented to the node, causing the mesh to be deformed.

GPU hardware tessellation is supported via the Tessellation Enabled parameter. This causes the mesh to be subdivided at render time using the GPU hardware which does not incur a memory overhead and is also processed efficiently. Tessellation is adaptive based on distance from the camera, where the falloff is controlled via the Subdivision Distance parameter. This allows the mesh to become denser when close to the viewer. Tessellation is often useful in conjunction with displacement mapping, enabled by setting a displacement map on a material.

The Shape 3D node may be used as a rigid body in a physics system via the Physics Attributes properties. It must be parented under a Rigid Body Root node for physics to be applied.

Example
Nodegraph Example

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 x-axis.
Rotation Pitch Rotate the object about the y-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
Shape Type Choose which 3D shape is rendered.
Radius The radius of the primitive, where appropriate.
Size X The size of the primitive in the X axis, where appropriate.
Size Y The size of the primitive in the Y axis, where appropriate.
Size Z The size of the primitive in the Z axis, where appropriate.
Subdivisions X How many subdivisions along the objects X axis.
Subdivisions Y How many subdivisions along the objects Y axis.
Axis Select which axis you want the shape to aligned to upon creation.
Line Thickness Thickness of lines, if “Line” or “Line Array” is selected in the “Shape Type” attribute.

Rendering

Name Description
Visible Control whether the node is visible or not to the scene.
Solid Toggle the shaped is solid or not.
Tessellation Enabled Enables hardware tessellation, which subdivides the mesh efficiently at render time on the GPU. Tessellation does not consume memory resources and is more efficient than subdivision.
Max Tesselation Factor The maximum tessellation factor for hardware tessellation. Controls the maximum number of polygons generated from each source polygon in the mesh.
Subdivision Near Distance The near distance from the camera at which tessellation remains the tessellated mesh.
Subdivision Distance The distance from the camera at which tessellation falls off to the original mesh polygons.

Material

see Materials

Physics Attributes

Name Description
Friction The friction of the rigid body.
Bounciness The bounciness of the rigid body.
Density The density of the rigid body. The density is scaled by the area of the shape to determine the mass of the body.
Spin X The spin of the rigid body in the X axis. This scales the inertia tensor on the X axis, making the body spin faster in that direction when torque is applied.
Spin Y The spin of the rigid body in the Y axis. This scales the inertia tensor on the Y axis, making the body spin faster in that direction when torque is applied.
Spin Z The spin of the rigid body in the Z axis. This scales the inertia tensor on the Z axis, making the body spin faster in that direction when torque is applied.
Dynamics Mode The dynamics mode of the object
  • Static, A static rigid body does not move and can’t be moved by physics.
  • Kinematic, A kinematic rigid body is not moved by physics but has a velocity that can affect dynamic bodies.
  • Dynamic, A dynamic rigid body has its initial position set by its transform, but transform control is taken over by physics as soon as the simulation starts.
  • Disabled, Physics will not be applied.
Dynamics Transform For Rendering Only (Faster) If selected, the transform of the body is maintained on GPU only. This reduces latency and increases performance but means that parenting to the object, e.g. using it to transform lights or emitters, will not work.
Rigid Body Shape The shape of the rigid body
  • Sphere, A sphere
  • Box, A box
  • Plane, A plane – can only be static or kinematic
  • 3D Object (Convex Hull), A convex hull derived from the geometry of the Shape3D node
  • 3D Object (Use Original Geometry), The original triangle geometry of the Shape 3D node, if applicable
Rigid Body Sphere Radius The radius of the rigid body sphere shape if applicable
Rigid Body Box Size X The size of the rigid body box shape if applicable
Rigid Body Box Size Y The size of the rigid body box shape if applicable
Rigid Body Box Size Z The size of the rigid body box shape if applicable
Rigid Body Convex Hull Mode If the Convex Hull shape is used, determines the convex hull mode used – which will be wrapped around the node’s geometry

Inputs

Name Description Typical Node Input
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

This node outputs the normal transformation and translation values, but it also outputs geometry which can be Deformed or used as a mesh source by other nodes.