14 template<
typename IndexType = u
int16_t>
37 template<
typename... Args>
40 m_cpuVertex->emplaceBack(std::forward<Args>(args)...);
100 template<
typename IndexType = u
int16_t>
123 template<
typename... Args>
130 m_cpuVertex->emplaceBack(std::forward<Args>(args)...);
146 size_t newCapacity = std::max(tmp2, tmp);
void resizeVertexBuffer(size_t newCapacity)
void setIndices(const std::vector< IndexType > &indices)
VertexBuffer * m_cpuVertex
VertexLayout m_vertexLayout
RHI::IndexBuffer * m_gpuIndex
void draw(RHI::CommandBuffer *cmdBuf, uint32_t instanceCount=1)
std::vector< IndexType > m_cpuIndices
void bind(RHI::CommandBuffer *cmdBuf)
VertexBuffer * getVertexBuffer() const
size_t getIndexCapacity() const
DynamicMesh(Context *context, const VertexLayout &layout)
void reserveVertices(size_t capacity)
void addIndex(IndexType index)
RHI::VertexBuffer * m_gpuVertex
void addVertex(Args &&... args)
size_t getVertexCount() const
void resizeIndexBuffer(size_t newCapacity)
void addIndices(const std::vector< IndexType > &indices)
size_t getVertexCapacity() const
size_t getIndexCount() const
void reserveIndices(size_t capacity)
virtual void draw(size_t vertexBegin, size_t instanceBegin, size_t vertexSize, size_t instanceSize)=0
virtual void drawIndex(size_t indexBegin, size_t instanceBegin, size_t indexCount, size_t instanceCount, size_t firstVertex=0)=0
std::vector< IndexType > m_cpuIndices
VertexLayout m_vertexLayout
StaticMesh(Context *context, const VertexLayout &layout)
void addVertex(Args &&... args)
size_t getVertexCount() const
size_t getIndexCount() const
void setIndices(const std::vector< IndexType > &indices)
RHI::VertexBuffer * m_gpuVertex
VertexBuffer * getVertexBuffer() const
void draw(RHI::CommandBuffer *cmdBuf, uint32_t instanceCount=1)
RHI::IndexBuffer * m_gpuIndex
void bind(RHI::CommandBuffer *cmdBuf)
VertexBuffer * m_cpuVertex