diff options
author | dec05eba <dec05eba@protonmail.com> | 2017-12-20 20:55:05 +0100 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2021-11-18 15:21:46 +0100 |
commit | ca92d8c90f7103db6d7cae4cef49b278d804b474 (patch) | |
tree | baf44e42fcc1cf7e871a7b2f1d3d92f680f3a845 /include/RenderBackend/OpenGL/DeviceMemory.hpp | |
parent | 3d7f123c0fc0af4b8df3ad791b264d22268bd423 (diff) |
Create shader using c++ code
Diffstat (limited to 'include/RenderBackend/OpenGL/DeviceMemory.hpp')
-rw-r--r-- | include/RenderBackend/OpenGL/DeviceMemory.hpp | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/include/RenderBackend/OpenGL/DeviceMemory.hpp b/include/RenderBackend/OpenGL/DeviceMemory.hpp new file mode 100644 index 0000000..706529e --- /dev/null +++ b/include/RenderBackend/OpenGL/DeviceMemory.hpp @@ -0,0 +1,27 @@ +#pragma once + +#include "../../DataView.hpp" +#include "../../utils.hpp" + +namespace amalgine +{ + class DeviceMemory + { + DISABLE_COPY(DeviceMemory) + public: + DeviceMemory(); + + // Uploaded once, drawn many times + void copyStatic(const DataView<f32> &data); + + // Created once, changed from time to time but drawn many times more than that + void copyDynamic(const DataView<f32> &data); + + // Uploaded once, drawn once (for example data that is changed every frame) + void copyStream(const DataView<f32> &data); + private: + void copy(const DataView<f32> &data, i32 storageType); + private: + u32 vertexBufferObjectId; + }; +} |