aboutsummaryrefslogtreecommitdiff
path: root/src/rendering/uniform_buffer.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/rendering/uniform_buffer.h')
-rw-r--r--src/rendering/uniform_buffer.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/rendering/uniform_buffer.h b/src/rendering/uniform_buffer.h
new file mode 100644
index 0000000..eb28e53
--- /dev/null
+++ b/src/rendering/uniform_buffer.h
@@ -0,0 +1,18 @@
+#pragma once
+
+#include "core/memory.h"
+#include <cstdint>
+
+namespace Donut
+{
+ class UniformBuffer
+ {
+ public:
+ virtual ~UniformBuffer() = default;
+
+ virtual auto set_data(const void* data, uint32_t size, uint32_t offset = 0) -> void = 0;
+ virtual auto bind(uint32_t binding) -> void = 0;
+
+ static auto create(uint32_t size, uint32_t binding) -> Ref<UniformBuffer>;
+ };
+};