1234567891011121314151617181920212223242526272829303132333435363738 |
- #ifndef RENDERER_H
- #define RENDERER_H
- #include "gaming-core/wrapper/Shader.h"
- #include "gaming-core/math/MatrixStack.h"
- #include "gaming-core/math/Vector.h"
- #include "gaming-core/math/Quaternion.h"
- class Renderer final {
- public:
- Renderer(Shader& shader, MatrixStack<16>& stack, Matrix& view);
-
- void pop();
- void push();
-
- Renderer& update();
- Renderer& update(const Vector3& pos, const Quaternion& rotation);
-
- Renderer& scale(float sx, float sy, float sz);
- Renderer& scale(float s);
- Renderer& translate(float tx, float ty, float tz);
- Renderer& translateX(float tx);
- Renderer& translateY(float ty);
- Renderer& translateZ(float tz);
- Renderer& translateTo(float tx, float ty, float tz);
- Renderer& rotateX(float degrees);
- Renderer& rotateY(float degrees);
- Renderer& rotateZ(float degrees);
- private:
- Shader& shader;
- MatrixStack<16>& stack;
- Matrix& view;
- };
- #endif
|