Grindstone Game Engine v0.2.0
An open source game engine and toolkit.
Loading...
Searching...
No Matches
VertexArrayObject.hpp
1#pragma once
2
3#include "Buffer.hpp"
4
5namespace Grindstone::GraphicsAPI {
9 class VertexArrayObject {
10 public:
11 struct CreateInfo {
12 const char* debugName = nullptr;
13 Buffer** vertexBuffers = nullptr;
14 uint32_t vertexBufferCount = 0;
15 Buffer* indexBuffer = nullptr;
16 VertexInputLayout layout;
17 };
18
19 VertexInputLayout layout;
20
21 VertexArrayObject() = default;
22 VertexArrayObject(const VertexInputLayout& layout) : layout(layout) {}
23 VertexInputLayout& GetLayout() { return layout; }
24
25 virtual ~VertexArrayObject() {};
26 virtual void Bind() = 0;
27 virtual void Unbind() = 0;
28 };
29}
Definition Buffer.hpp:56