8#include <Common/assertion.h>
21template<std::
size_t N>
25 static_assert(N >= 3);
30 std::array<math::Vector3R, N>
getPositions(std::size_t faceIndex)
const;
31 std::array<math::Vector3R, N>
getTexCoords(std::size_t faceIndex)
const;
32 std::array<math::Vector3R, N>
getNormals(std::size_t faceIndex)
const;
A general unsigned integer buffer for integers with any number of bits.
Definition IndexedUIntBuffer.h:27
A general vertex buffer for storing various indexed attributes.
Definition IndexedVertexBuffer.h:49
Definition TIndexedPolygonBuffer.h:23
std::array< math::Vector3R, N > getTexCoords(std::size_t faceIndex) const
Definition TIndexedPolygonBuffer.ipp:19
IndexedUIntBuffer & getIndexBuffer()
Definition TIndexedPolygonBuffer.ipp:104
IndexedVertexBuffer & getVertexBuffer()
Definition TIndexedPolygonBuffer.ipp:92
std::array< math::Vector3R, N > getPositions(std::size_t faceIndex) const
Definition TIndexedPolygonBuffer.ipp:13
bool hasTexCoord() const
Definition TIndexedPolygonBuffer.ipp:55
std::size_t memoryUsage() const
Definition TIndexedPolygonBuffer.ipp:73
TIndexedPolygonBuffer()
Definition TIndexedPolygonBuffer.ipp:7
bool hasNormal() const
Definition TIndexedPolygonBuffer.ipp:61
std::array< math::Vector3R, N > getFaceAttribute(EVertexAttribute attribute, std::size_t faceIndex) const
Definition TIndexedPolygonBuffer.ipp:31
float averagePerPolygonMemoryUsage() const
Definition TIndexedPolygonBuffer.ipp:79
std::size_t numFaces() const
Definition TIndexedPolygonBuffer.ipp:48
static constexpr std::size_t numPolygonVertices()
Definition TIndexedPolygonBuffer.ipp:116
static constexpr bool isTriangular()
Definition TIndexedPolygonBuffer.ipp:122
bool hasFaceAttribute(EVertexAttribute attribute) const
Definition TIndexedPolygonBuffer.ipp:67
std::array< math::Vector3R, N > getNormals(std::size_t faceIndex) const
Definition TIndexedPolygonBuffer.ipp:25
The root for all renderer implementations.
Definition EEngineProject.h:6
EVertexAttribute
Definition IndexedVertexBuffer.h:21