#include "../app/Config.hpp"
#include "../app/Environment.hpp"
#include "../app/init.hpp"
+#include "../geometry/distance.hpp"
#include "../io/WorldSave.hpp"
#include <SDL.h>
chunk_renderer.FogDensity(wc.fog_density);
if (save.Exists(player)) {
save.Read(player);
- glm::vec3 orient(glm::eulerAngles(player.GetEntity().Orientation()));
- input.TurnHead(orient.x, orient.y);
} else {
spawn_player = true;
}
if (config.video.world) {
chunk_renderer.Render(viewport);
world.Render(viewport);
+ if (config.video.debug) {
+ world.RenderDebug(viewport);
+ }
sky.Render(viewport);
}
hud.Render(viewport);
}
}
+void MasterState::NextCamera() {
+ if (iszero(env.viewport.CameraOffset())) {
+ env.viewport.OffsetCamera(glm::vec3(0.0f, 0.0f, -5.0f));
+ } else {
+ env.viewport.OffsetCamera(glm::vec3(0.0f, 0.0f, 0.0f));
+ }
+}
+
void MasterState::Exit() {
save.Write(player);
env.state.Switch(&unload);