From 23a37b2cdd8ffde8bb85a4159888bf3a7ec35966 Mon Sep 17 00:00:00 2001 From: dec05eba Date: Mon, 4 Nov 2019 00:50:45 +0100 Subject: Use external shaders instead of generating shader code from c++ code... --- include/RenderBackend/OpenGL/DeviceMemory.hpp | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'include/RenderBackend/OpenGL/DeviceMemory.hpp') diff --git a/include/RenderBackend/OpenGL/DeviceMemory.hpp b/include/RenderBackend/OpenGL/DeviceMemory.hpp index c37acfb..c9c8b23 100644 --- a/include/RenderBackend/OpenGL/DeviceMemory.hpp +++ b/include/RenderBackend/OpenGL/DeviceMemory.hpp @@ -3,21 +3,19 @@ #include "../../DataView.hpp" #include "../../utils.hpp" #include "../../Triangle2D.hpp" -#include -namespace amalgine -{ - class DeviceMemoryEmpty : public std::runtime_error - { - public: - DeviceMemoryEmpty(const std::string &errMsg) : std::runtime_error(errMsg) {} +namespace amalgine { + enum class DeviceMemoryType { + NONE, + VEC2, + VEC3 }; - + class DeviceMemory { DISABLE_COPY(DeviceMemory) friend class DeviceFrame; - friend class ShaderInputVec2; + friend class ShaderProgram; public: enum class StorageType { @@ -40,13 +38,15 @@ namespace amalgine //void copy(const DataView &data, StorageType storageType, PrimitiveType primitiveType = PrimitiveType::TRIANGLE); void copy(const DataView &triangles, StorageType storageType); void draw(); + + DeviceMemoryType get_type() const { return type; } private: DeviceMemory(); - void operator delete(void *data); void use() const; private: u32 vertexBufferObjectId; u32 primitiveType; u32 numVertices; + DeviceMemoryType type; }; } -- cgit v1.2.3