64 vertices = std::move(other.vertices);
65 normals = std::move(other.normals);
67 indices = std::move(other.indices);
122 vertices.emplace_back(std::forward<Args>(args)...);
145 normals.emplace_back(std::forward<Args>(args)...);
168 texCoords.emplace_back(std::forward<Args>(args)...);
191 indices.emplace_back(std::forward<Args>(args)...);
static int count
Definition SystemSetTest.cpp:7
Definition AmbientLight.hpp:5
const std::vector< glm::vec3 > & GetVertices() const
Definition Mesh.hpp:96
void SetVertices(const std::vector< glm::vec3 > &newVertices)
Definition Mesh.hpp:104
void SetNormals(const std::vector< glm::vec3 > &newNormals)
Definition Mesh.hpp:127
const std::vector< glm::vec2 > & GetTexCoords() const
Definition Mesh.hpp:98
void EmplaceNormals(Args &&...args)
Definition Mesh.hpp:143
std::vector< uint32_t > indices
Definition Mesh.hpp:215
std::vector< glm::vec3 > vertices
Definition Mesh.hpp:212
void SetTexCoordAt(size_t index, const glm::vec2 &texCoord)
Definition Mesh.hpp:156
~Mesh()
Definition Mesh.hpp:42
void SetVertexAt(size_t index, const glm::vec3 &vertex)
Definition Mesh.hpp:110
void EmplaceIndices(Args &&...args)
Definition Mesh.hpp:189
std::vector< glm::vec2 > texCoords
Definition Mesh.hpp:214
Mesh(Mesh &&other) noexcept
Definition Mesh.hpp:52
bool IsDirty() const
Check if the mesh data has been modified since last GPU sync.
Definition Mesh.hpp:201
std::vector< glm::vec3 > normals
Definition Mesh.hpp:213
bool _dirty
Dirty flag for GPU synchronization optimization.
Definition Mesh.hpp:224
void SetTexCoords(const std::vector< glm::vec2 > &newTexCoords)
Definition Mesh.hpp:150
void EmplaceVertices(Args &&...args)
Definition Mesh.hpp:120
Mesh & operator=(const Mesh &other)
Definition Mesh.hpp:82
const std::vector< glm::vec3 > & GetNormals() const
Definition Mesh.hpp:97
const std::vector< uint32_t > & GetIndices() const
Definition Mesh.hpp:99
void SetIndices(const std::vector< uint32_t > &newIndices)
Definition Mesh.hpp:173
void ReserveTexCoords(size_t count)
Definition Mesh.hpp:164
Mesh & operator=(Mesh &&other) noexcept
Definition Mesh.hpp:60
void EmplaceTexCoords(Args &&...args)
Definition Mesh.hpp:166
void SetIndexAt(size_t index, uint32_t indexValue)
Definition Mesh.hpp:179
void SetNormalAt(size_t index, const glm::vec3 &normal)
Definition Mesh.hpp:133
Mesh(const Mesh &other)
Definition Mesh.hpp:75
void ReserveIndices(size_t count)
Definition Mesh.hpp:187
void ReserveNormals(size_t count)
Definition Mesh.hpp:141
void ClearDirty() const
Clear the dirty flag after GPU buffer has been updated.
Definition Mesh.hpp:209
void ReserveVertices(size_t count)
Definition Mesh.hpp:118