This is the documentation for Enlighten.
class Geo RtMesh
class Geo::RtMesh
└>Geo::IRtMesh
└>Geo::IGeoReleasable
A mesh container that can be stored to disk and used later as a ray tracing mesh.
Note that it assumes that the triangles are in the 'correct' Enlighten winding order; if this is not the case, the user should be implementing IRtMesh themselves.
Functions
Name | Description |
---|---|
Clear() | Clears this mesh. |
Create() | Creates an RtMesh. |
Create(Geo::s32, Geo::s32) | Creates an RtMesh. |
Create(const Geo::GeoPoint3 *, Geo::s32, const Geo::s32 *, Geo::s32, const Geo::s32 *) | Creates an RtMesh. |
Create(const IRtMesh *) | Creates an RtMesh. |
GetNumRtTriangles() | Returns how many triangles in the mesh. |
GetNumRtTriangles() | Returns how many triangles in the mesh. |
GetNumRtVertices() | Returns how many vertices in the mesh. |
GetNumRtVertices() | Returns how many vertices in the mesh. |
GetRtTrianglePayload(Geo::s32) | Gets the payload data for the given triangle index. |
Load(Geo::IGeoInputStream &, Geo::u32) | Load an instance of this class from an IGeoInputStream. |
Release() | Free this object that was created within the Enlighten libraries. |
Release() | Free this object that was created within the Enlighten libraries. |
Save(Geo::IGeoStream &, Geo::u32) | Save an instance of this class to an IGeoStream. |
VisitRtMesh(Geo::EmbreeRtMeshVisitor &) | Calls methods on the given RtMeshVisitor for each vertex and triangle in the mesh. |
VisitRtMesh(EmbreeRtMeshVisitor &) | Calls methods on the given RtMeshVisitor for each vertex and triangle in the mesh. |
void Geo::RtMesh::Clear
public: void Clear()
Clears this mesh.
static RtMesh* Geo::RtMesh::Create
public: RtMesh * Create()
Creates an RtMesh.
static RtMesh* Geo::RtMesh::Create
public: RtMesh * Create
(
Geo::s32 numVertices,
Geo::s32 numTriangles
)
Creates an RtMesh.
static RtMesh* Geo::RtMesh::Create
public: RtMesh * Create
(
const Geo::GeoPoint3 * vertices,
Geo::s32 numVertices,
const Geo::s32 * triVertexIds,
Geo::s32 numTriVertexIds,
const Geo::s32 * triPayload
)
Creates an RtMesh.
static RtMesh* Geo::RtMesh::Create
public: RtMesh * Create
(
const IRtMesh * mesh
)
Creates an RtMesh.
virtual Geo::s32 Geo::RtMesh::GetNumRtTriangles
public: virtual Geo::s32 GetNumRtTriangles() const
Returns how many triangles in the mesh.
virtual Geo::s32 Geo::IRtMesh::GetNumRtTriangles
public: Geo::s32 GetNumRtTriangles() const
Returns how many triangles in the mesh.
virtual Geo::s32 Geo::RtMesh::GetNumRtVertices
public: virtual Geo::s32 GetNumRtVertices() const
Returns how many vertices in the mesh.
virtual Geo::s32 Geo::IRtMesh::GetNumRtVertices
public: Geo::s32 GetNumRtVertices() const
Returns how many vertices in the mesh.
Geo::s32 Geo::RtMesh::GetRtTrianglePayload
public: Geo::s32 GetRtTrianglePayload
(
Geo::s32 idx
) const
Gets the payload data for the given triangle index.
bool Geo::RtMesh::Load
public: bool Load
(
Geo::IGeoInputStream & stream,
Geo::u32 section
)
Load an instance of this class from an IGeoInputStream.
virtual void Geo::RtMesh::Release
public: virtual void Release()
Free this object that was created within the Enlighten libraries.
Expect this to behave in a similar way to calling 'delete(this)'
virtual void Geo::IGeoReleasable::Release
public: void Release()
Free this object that was created within the Enlighten libraries.
Expect this to behave in a similar way to calling 'delete(this)'
bool Geo::RtMesh::Save
public: bool Save
(
Geo::IGeoStream & stream,
Geo::u32 section
) const
Save an instance of this class to an IGeoStream.
virtual void Geo::RtMesh::VisitRtMesh
public: virtual void VisitRtMesh
(
Geo::EmbreeRtMeshVisitor & visitor
) const
Calls methods on the given RtMeshVisitor for each vertex and triangle in the mesh.
virtual void Geo::IRtMesh::VisitRtMesh
public: void VisitRtMesh
(
EmbreeRtMeshVisitor & visitor
) const
Calls methods on the given RtMeshVisitor for each vertex and triangle in the mesh.