46 virtual void CreateVertexBuffer(std::vector<VertexPositionColorTextureNormalTangent> vertices) = 0;
Interface for GPU mesh resource management.
virtual ~IMeshRenderResources()=default
Virtual destructor.
virtual size_t GetVertexBufferSize() const =0
Get the size (in bytes) of the GPU vertex buffer.
virtual void CreateVertexBuffer(std::vector< Vertex2D > vertices)=0
Create a GPU vertex buffer from 2D vertex data.
virtual bool IsOnGPU() const =0
Check if the buffers are currently resident on the GPU.
virtual void CreateVertexBuffer(std::vector< VertexPositionColorTextureNormalTangent > vertices)=0
Create a GPU vertex buffer from 3D lit vertex data.
virtual void Shutdown()=0
Release all GPU resources associated with this mesh.
virtual void CreateVertexBuffer(std::vector< VertexPositionColorTexture > vertices)=0
Create a GPU vertex buffer from 3D unlit vertex data.
virtual void CreateIndexBuffer(std::vector< uint32_t > indices)=0
Create a GPU index buffer.
virtual size_t GetIndexBufferSize() const =0
Get the size (in bytes) of the GPU index buffer.