Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

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

NameDescription
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.

NonCopyable(NonCopyable &&)

Defaulted to allow move.

operator=(NonCopyable &&)

Defaulted to allow move.

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.


Anchor
a56ea8a58e4b1c267bd84ff99d52b763e
a56ea8a58e4b1c267bd84ff99d52b763e

void Geo::RtMesh::Clear

...

public: void Clear()

...

Clears this mesh.


Anchor
a745c5616d3b5ec451ffe1711023c2db7
a745c5616d3b5ec451ffe1711023c2db7

static RtMesh* Geo::RtMesh::Create

...

public: RtMesh * Create()

...

Creates an RtMesh.


Anchor
a3ac55fe9c8d002a72692b9550c323165
a3ac55fe9c8d002a72692b9550c323165

static RtMesh* Geo::RtMesh::Create

...

public: RtMesh * Create
(
    Geo::s32 numVertices,
    Geo::s32 numTriangles
)

...

Creates an RtMesh.


Anchor
a9b0c96b497745e98cf0e1d6ff015a0dc
a9b0c96b497745e98cf0e1d6ff015a0dc

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.


Anchor
a0722867f986e5ff0ef793c7d7b823e9d
a0722867f986e5ff0ef793c7d7b823e9d

static RtMesh* Geo::RtMesh::Create

...

public: RtMesh * Create
(
    const IRtMesh * mesh
)

...

Creates an RtMesh.


Anchor
a38bcb0b2d9146bc8bac6a745d45a8dbe
a38bcb0b2d9146bc8bac6a745d45a8dbe

virtual Geo::s32 Geo::RtMesh::GetNumRtTriangles

...

public: virtual Geo::s32 GetNumRtTriangles() const

...

Returns how many triangles in the mesh.


Anchor
a5e151a9a555443c1cef118eb5942f574
a5e151a9a555443c1cef118eb5942f574

virtual Geo::s32 Geo::IRtMesh::GetNumRtTriangles

...

public: Geo::s32 GetNumRtTriangles() const

...

Returns how many triangles in the mesh.


Anchor
a3e38c971342cf1da0713e69904488344
a3e38c971342cf1da0713e69904488344

virtual Geo::s32 Geo::RtMesh::GetNumRtVertices

...

public: virtual Geo::s32 GetNumRtVertices() const

...

Returns how many vertices in the mesh.


Anchor
a44d281ca0daccbbafebf93eb92872cda
a44d281ca0daccbbafebf93eb92872cda

virtual Geo::s32 Geo::IRtMesh::GetNumRtVertices

...

public: Geo::s32 GetNumRtVertices() const

...

Returns how many vertices in the mesh.


Anchor
a22f4c2d38038bbf545b65c68cf79b975
a22f4c2d38038bbf545b65c68cf79b975

Geo::s32 Geo::RtMesh::GetRtTrianglePayload

...

public: Geo::s32 GetRtTrianglePayload
(
    Geo::s32 idx
) const

...

Gets the payload data for the given triangle index.


Anchor
a645fc1ce6cf9ad46943ebfd563263c53
a645fc1ce6cf9ad46943ebfd563263c53

bool Geo::RtMesh::Load

...

public: bool Load
(
    Geo::IGeoInputStream & stream,
    Geo::u32 section
)

...

Load an instance of this class from an IGeoInputStream.


Anchor
adaed81b4c59f263dcb4e78c4126f4683
adaed81b4c59f263dcb4e78c4126f4683

Geo::NonCopyable::NonCopyable

...

public: NonCopyable
(
    NonCopyable &&
)

...

Defaulted to allow move.


Anchor
a6abc781e23b8f4864e0b868806e0acbf
a6abc781e23b8f4864e0b868806e0acbf

NonCopyable& Geo::NonCopyable::operator=

...

public: NonCopyable & operator=
(
    NonCopyable &&
)

...

Defaulted to allow move.


Anchor
a8956659d25cc9e770eeeb59545c15f7e
a8956659d25cc9e770eeeb59545c15f7e

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)'


Anchor
af6bdf30b42adde386c428e9dc2821eb9
af6bdf30b42adde386c428e9dc2821eb9

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)'


Anchor
acf5c0af1cdce66800ab4c028515a2d0a
acf5c0af1cdce66800ab4c028515a2d0a

bool Geo::RtMesh::Save

...

public: bool Save
(
    Geo::IGeoStream & stream,
    Geo::u32 section
) const

...

Save an instance of this class to an IGeoStream.


Anchor
a30894ff8a8c215caa247699205ed96bf
a30894ff8a8c215caa247699205ed96bf

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.


Anchor
ab39c603c35482a228bef0ec42c9ab5ad
ab39c603c35482a228bef0ec42c9ab5ad

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.