IModelGeometryDynamic

Description

interface Tinman.Engine.Models.IModelGeometryDynamic

Derived from

IModelGeometry

Base interface for model geometries that can be updated at runtime.

To update a model geometry, perform the following steps:

  1. Use any of the following methods to obtain the model geometry data arrays and modify their contents:

  2. Call UpdateRange zero ore more times, in order to specify the vertex and index ranges that have been modified in step (1). The IModelGeometryListener.IndicesUpdated resp. IModelGeometryListener.VerticesUpdated methods will be called on all listeners that have been added with UpdateListenerAdd.

  3. Call Model.ColliderDirty if the updated model geometry shall be taken into account for spatial queries.

Public / Methods

Update​Color


public method UpdateColor → ()

returns → Long1

The vertex array or null iff not present.

Returns the Semantic.Texture vertex array that holds the per-vertex data for ModelVertexFormat.Color.

See also

Colors

Update​Indices


public method UpdateIndices → ()

returns → int32 [ ]

The vertex indices or null iff not present.

Returns the vertex indices.

Update​Listener​Add


public method UpdateListenerAdd → (1)

listener in : IModelGeometryListener

[not-null]
The update listener.

Adds a listener for model geometry updates.

Update​Listener​Remove


public method UpdateListenerRemove → (1)

listener in : IModelGeometryListener

[not-null]
The update listener.

Removes a listener for model geometry updates.

Update​Normal


public method UpdateNormal → ()

returns → Float3

The vertex array or null iff not present.

Returns the Semantic.Normal vertex array that holds the per-vertex data for ModelVertexFormat.Normal.

Update​Position


public method UpdatePosition → ()

returns → Double3

The vertex array.

Returns the Semantic.Position vertex array that holds the per-vertex data for ModelVertexFormat.Position and ModelVertexFormat.PositionExtra.

Update​Range


public method UpdateRange → (2)

vertices in : RangeI

The modified vertex range of RangeI.Zero for none.

indices in : RangeI

The modified index range or RangeI.Zero for none.

Specifies a vertex and/or index range that has been modified.

Update​Tangent


public method UpdateTangent → (1)

index in : int32

[0..1]
The tangent index (0 is X, 1 is Y).

returns → Float3

The vertex array or null iff not present.

Returns the Semantic.TangentX / Semantic.TangentY vertex array that holds the per-vertex data for ModelVertexFormat.TangentX / ModelVertexFormat.TangentY.

Update​Texture​Coords


public method UpdateTextureCoords → (1)

index in : int32

[0..1]
The texture coordinate set index.

returns → Float2

The vertex array or null iff not present.