#ifndef GAME_H #define GAME_H #include "LayeredFramebuffer.h" #include "Texture3D.h" #include "gaming-core/input/Buttons.h" #include "gaming-core/math/Frustum.h" #include "gaming-core/rendering/Shader.h" #include "gaming-core/rendering/VertexBuffer.h" #include "gaming-core/utils/Size.h" class Game final { Shader& shader; Shader& noiceShader; LayeredFramebuffer& noiceBuffer; Texture3D texture; Buttons& buttons; const Size& size; VertexBuffer rectangleBuffer; VertexBuffer emptyBuffer; Frustum frustum; Button up; Button down; Button left; Button right; Button front; Button back; Button toggle; Vector3 oldPosition; Vector3 position; float oldHeight; float height; public: Game(Shader& shader, Shader& noiceShader, LayeredFramebuffer& buffer, Buttons& buttons, const Size& size); void render(float lag); void tick(); bool isRunning() const; }; #endif