28template<
int vertexCount,
int triangleCount>
Defines the IStaticTriangleGroup interface for managing a collection of static 3D triangles.
Defines the IndexGroup class for handling a group of three unsigned integer indices.
Defines the Triangle3D class for representing and manipulating 3D triangles.
Interface for managing a static group of 3D triangles and associated data.
Represents a group of three unsigned integer indices.
Represents a static collection of 3D triangles and associated vertex/UV data.
Triangle3D triangles[triangleCount]
Array of 3D triangles in the group.
const IndexGroup * uvIndexGroup
Index group for UV coordinates (if available).
const int GetTriangleCount() override
Gets the total number of triangles in the group.
StaticTriangleGroup(Vector3D *vertices, const IndexGroup *indexGroup)
Constructor for a group without UV data.
const bool hasUVB
Indicates whether the group contains UV data.
const IndexGroup * GetIndexGroup() override
Retrieves the triangle index group.
Vector3D * GetVertices() override
Retrieves the array of vertex positions.
const Vector2D * GetUVVertices() override
Retrieves the array of UV coordinates.
Vector3D * vertices
Array of vertex positions.
const IndexGroup * indexGroup
Index group defining triangle vertex indices.
const IndexGroup * GetUVIndexGroup() override
Retrieves the UV index group.
const Vector2D * uvVertices
Array of UV coordinates for texture mapping.
Triangle3D * GetTriangles() override
Retrieves the array of triangles in the group.
const int GetVertexCount() override
Gets the total number of vertices in the group.
StaticTriangleGroup(Vector3D *vertices, const IndexGroup *indexGroup, const IndexGroup *uvIndexGroup, const Vector2D *uvVertices)
Constructor for a group with UV data.
const bool HasUV() override
Checks if the group has UV data.
Represents a 3D triangle with support for UV mapping and ray intersection testing.
Represents a 2D vector (X, Y) and provides methods for vector arithmetic.
Represents a 3D vector (X, Y, Z) and provides methods for vector arithmetic.