#pragma once #include "DeerRender/Render/Buffer.h" #include #include namespace Deer { class VertexArray; using Mesh = VertexArray; class VertexArray { public: virtual ~VertexArray() = default; virtual void bind() const = 0; virtual void unbind() const = 0; virtual void addVertexBuffer(const Ref& vertexBuffer) = 0; virtual void setIndexBuffer(const Ref& indexBuffer) = 0; virtual const Ref& getIndexBuffer() = 0; static Ref create(); static Ref create(uint8_t* data, uint32_t size); }; }