OrbitEngine::Graphics::Mesh class

Derived classes

class D3DMesh
class GLMesh

Public static functions

template<typename Vertex>
static auto Create(const std::vector<Vertex>& vertices, VertexLayout* layout, const std::vector<unsigned short>& indices = std::vector<unsigned short>()) -> Mesh*
static auto Create(void* vertices, unsigned int vertexSize, VertexLayout* layout, const std::vector<unsigned short>& indices = std::vector<unsigned short>()) -> Mesh*
static auto Create(VertexLayout* layout, bool with_index_buffer) -> Mesh*
static auto GenerateIndices(Topology topology, unsigned int verticesCount) -> std::vector<unsigned short>

Constructors, destructors, conversion operators

~Mesh()
Mesh(void* vertices, unsigned int vertexSize, VertexLayout* layout, const std::vector<unsigned short>& indices) protected

Public functions

void drawIndexed(unsigned int count, unsigned int offset = 0) pure virtual
void draw(unsigned int count, unsigned int offset = 0) pure virtual
auto getVBO() -> VertexBuffer*
auto getIBO() -> Buffer*
auto getTopology() -> Topology
void setTopology(Topology topology)

Protected variables

VertexBuffer* p_VBO
Buffer* p_IBO
Topology p_Topology