#include "camera.hpp"
#include "controller.hpp"
+#include "hud.hpp"
#include "init.hpp"
#include "model.hpp"
#include "shader.hpp"
Application(const Application &) = delete;
Application &operator =(const Application &) = delete;
+ /// run until user quits
void Run();
void Loop(int dt);
+ /// run for n frames
+ void RunN(size_t n);
+ /// run for t milliseconds
+ void RunT(size_t t);
+ /// run for n frames, assuming t milliseconds for each
+ void RunS(size_t n, size_t t);
+
void HandleEvents();
void Update(int dt);
void Render();
Window window;
GLContext ctx;
InitGLEW init_glew;
- Program program;
-
- float move_velocity;
- float pitch_sensitivity;
- float yaw_sensitivity;
-
- BlockTypeRegistry blockType;
+ DirectionalLighting program;
Camera cam;
- Chunk chunk;
- OutlineModel outline;
+ HUD hud;
+ World world;
+ FPSController controller;
+ OutlineModel outline;
bool outline_visible;
glm::mat4 outline_transform;
- glm::vec3 light_position;
- glm::vec3 light_color;
- float light_power;
-
- GLuint m_handle;
- GLuint v_handle;
- GLuint mv_handle;
- GLuint mvp_handle;
- GLuint light_position_handle;
- GLuint light_color_handle;
- GLuint light_power_handle;
-
bool running;
- bool front, back, left, right, up, down;
bool place, remove, pick;
int remove_id;