Shape

Shape class

The shape describes the deformation on a set of control points, which is similar to the cluster deformer in Maya. For example, we can add a shape to a created geometry. And the shape and the geometry have the same topological information but different position of the control points. With varying amounts of influence, the geometry performs a deformation effect.

public class Shape : Geometry

Constructors

Name Description
Shape() Initializes a new instance of the Shape class.
Shape(string) Initializes a new instance of the Shape class.

Properties

Name Description
CastShadows { get; set; } Gets or sets whether this geometry can cast shadow
ControlPoints { get; } Gets all control points
Deformers { get; } Gets all deformers associated with this geometry.
Excluded { get; set; } Gets or sets whether to exclude this entity during exporting.
Indices { get; } Gets the indices.
virtual Name { get; set; } Gets or sets the name.
ParentNode { get; set; } Gets or sets the first parent node, if set the first parent node, this entity will be detached from other parent nodes.
ParentNodes { get; } Gets all parent nodes, an entity can be attached to multiple parent nodes for geometry instancing
Properties { get; } Gets the collection of all properties.
ReceiveShadows { get; set; } Gets or sets whether this geometry can receive shadow.
Scene { get; } Gets the scene that this object belongs to
VertexElements { get; } Gets all vertex elements
Visible { get; set; } Gets or sets if the geometry is visible

Methods

Name Description
static FromControlPoints(params Vector3[]) Create a shape with specified control points with a default indices.
AddElement(VertexElement) Adds an existing vertex element to current geometry
CreateElement(VertexElementType) Creates a vertex element with specified type and add it to the geometry.
CreateElement(VertexElementType, MappingMode, ReferenceMode) Creates a vertex element with specified type and add it to the geometry.
CreateElementUV(TextureMapping) Creates a VertexElementUV with given texture mapping type.
CreateElementUV(TextureMapping, MappingMode, ReferenceMode) Creates a VertexElementUV with given texture mapping type.
FindProperty(string) Finds the property. It can be a dynamic property (Created by CreateDynamicProperty/SetProperty) or native property(Identified by its name)
GetBoundingBox() Gets the bounding box of current entity in its object space coordinate system.
GetDeformers<T>()
GetElement(VertexElementType) Gets a vertex element with specified type
virtual GetEntityRendererKey() Gets the key of the entity renderer registered in the renderer
GetProperty(string) Get the value of specified property
GetVertexElementOfUV(TextureMapping) Gets a VertexElementUV instance with given texture mapping type
RemoveProperty(Property) Removes a dynamic property.
RemoveProperty(string) Remove the specified property identified by name
SetProperty(string, object) Sets the value of specified property

See Also