28 lines
602 B
C++
Executable File

#pragma once
#include "DeerRender/Render/Buffer.h"
#include <memory>
#include <string>
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>& vertexBuffer) = 0;
virtual void setIndexBuffer(const Ref<IndexBuffer>& indexBuffer) = 0;
virtual const Ref<IndexBuffer>& getIndexBuffer() = 0;
static Ref<VertexArray> create();
static Ref<VertexArray> create(uint8_t* data, uint32_t size);
};
}