Game.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. #ifndef GAME_H
  2. #define GAME_H
  3. #include "LayeredFramebuffer.h"
  4. #include "Texture3D.h"
  5. #include "gaming-core/input/Buttons.h"
  6. #include "gaming-core/math/Frustum.h"
  7. #include "gaming-core/rendering/FileTexture.h"
  8. #include "gaming-core/rendering/Shader.h"
  9. #include "gaming-core/rendering/VertexBuffer.h"
  10. #include "gaming-core/utils/Size.h"
  11. class Game final {
  12. Shader& shader;
  13. Shader& noiceShader;
  14. LayeredFramebuffer& noiceBuffer;
  15. FileTexture bricks;
  16. FileTexture bricksBump;
  17. FileTexture bricksNormal;
  18. Buttons& buttons;
  19. const Size& size;
  20. VertexBuffer rectangleBuffer;
  21. VertexBuffer emptyBuffer;
  22. Frustum frustum;
  23. Button up;
  24. Button down;
  25. Button left;
  26. Button right;
  27. Button front;
  28. Button back;
  29. Button toggle;
  30. Button scaleUp;
  31. Button scaleDown;
  32. Vector3 oldPosition;
  33. Vector3 position;
  34. float oldHeight;
  35. float height;
  36. float heightScale;
  37. public:
  38. Game(Shader& shader, Shader& noiceShader, LayeredFramebuffer& buffer,
  39. Buttons& buttons, const Size& size);
  40. void render(float lag);
  41. void tick();
  42. bool isRunning() const;
  43. };
  44. #endif