summaryrefslogtreecommitdiff
path: root/src/render/OpenGL.hpp
diff options
context:
space:
mode:
authorvaxerski <vaxry@vaxry.net>2024-01-07 18:35:44 +0100
committervaxerski <vaxry@vaxry.net>2024-01-07 18:35:44 +0100
commit44ee9915e34910aac67ab60f1296eed8be8e7cea (patch)
treeff9c4f812e67dd7319c674ab98929f6594d0b19b /src/render/OpenGL.hpp
parent9f2bde925bde09b4820a2cef369e9ddd930a746b (diff)
renderer: overhaul renderModifData
Diffstat (limited to 'src/render/OpenGL.hpp')
-rw-r--r--src/render/OpenGL.hpp13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/render/OpenGL.hpp b/src/render/OpenGL.hpp
index cd52fe3e..ba27b608 100644
--- a/src/render/OpenGL.hpp
+++ b/src/render/OpenGL.hpp
@@ -36,8 +36,17 @@ enum eDiscardMode {
};
struct SRenderModifData {
- Vector2D translate = {};
- float scale = 1.f;
+ enum eRenderModifType {
+ RMOD_TYPE_SCALE, /* scale by a float */
+ RMOD_TYPE_SCALECENTER, /* scale by a float from the center */
+ RMOD_TYPE_TRANSLATE, /* translate by a Vector2D */
+ RMOD_TYPE_ROTATE, /* rotate by a float in rad from top left */
+ RMOD_TYPE_ROTATECENTER, /* rotate by a float in rad from center */
+ };
+
+ std::vector<std::pair<eRenderModifType, std::any>> modifs;
+
+ void applyToBox(CBox& box);
};
struct SGLPixelFormat {