Base interface for continuous level-of-detail terrain meshes.
interface
|
IMesh
|
extends
|
IDisposable
|
||
IVersioned
|
|||||
base of
|
IMeshDynamic
|
The terrain mesh version (see Version) is incremented during MeshUpdate if the mesh structure has changed.
The IGeometry object this terrain mesh uses.
property
|
Geometry
{
get
}
|
||
type
|
IGeometry
|
||
value
|
|
The geometry object. |
Remarks:
The geometry object is used to compute actual vertex data from the terrain data that has been gathered from the heightmap.
See also:
HeightmapThe heightmap of this terrain mesh.
property
|
Heightmap
{
get
}
|
||
type
|
IHeightmap
|
||
value
|
|
The heightmap. |
Remarks:
The heightmap delivers terrain data, such as elevation and diffuse color.
See also:
GeometryIs this terrain mesh ready for traversal and triangulation?
property
|
IsReady
{
get
}
|
||
type
|
bool
|
||
value
|
true
if
this
mesh
is
ready,
false
if
not. |
Remarks:
When a mesh is not ready yet, calling GetRoot will always return Null.
Returns the lifecycle state of this object.
property
|
LifecycleState
{
get
}
|
||
type
|
LifecycleState
|
||
value
|
The lifecycle state. | ||
inherited
|
ILifecycleState.LifecycleState
|
The task group that is used by this mesh for background computations.
property
|
TaskGroup
{
get
}
|
||
type
|
TaskGroup
|
||
value
|
|
The task group. |
Returns the mesh quadtree object which can be used during traversals.
property
|
Tree
{
get
}
|
||
type
|
MeshTree
|
||
value
|
|
The mesh structure helper object. |
Remarks:
Each mesh face (see CubemapFace) represents the root of a quadtree structure. During mesh traversal (via the IMeshTraversal), the MeshTree object provides access to the underlying quadtree structure.
Return the Triangulator object to use for mesh triangulation.
property
|
Triangulator
{
get
}
|
||
type
|
Triangulator
|
||
value
|
|
The Triangulator instance. |
Returns the current version of object.
property
|
Version
{
get
}
|
||
type
|
int32
|
||
value
|
The current version number. | ||
inherited
|
IVersioned.Version
|
Remarks:
For each modification, the version is incremented by at least one.
Returns the CPU vertex data collection of this terrain mesh.
property
|
Vertices
{
get
}
|
||
type
|
VertexArrays
|
||
value
|
|
The vertex data collection. |
Remarks:
All meshes created by a single MeshBuffer share the same vertex data collection.
Acquires a strong reference to this disposable object.
[OwnerReturn, ThreadSafe]
|
||||
method
|
AcquireTry
()
|
|||
type
|
IDisposable
|
|||
returns
|
this
if
a
new
strong
reference
has
been
acquired,
null
if
this
object
is
already
being
disposed.
|
|||
inherited
|
IDisposable.AcquireTry
|
Remarks:
The object will not be actually disposed by calls to Dispose when there is at least one strong reference left. Code that calls the AcquireTry method is responsible for calling the Dispose method accordingly.
This method is not intended to be used in performance-critical code. It should only be used to high-level resource management.
Releases all resources held by this object if there are no more strong references to it, decrements the reference counter by one otherwise.
[Dispose, OwnerThis, ThreadSafe]
|
||||
method
|
Dispose
()
|
|||
inherited
|
IDisposable.Dispose
|
Remarks:
The Dispose method silently returns if the object has already been disposed.