]> git.lizzy.rs Git - dragonblocks3d.git/blobdiff - src/dragonblocks/client.cpp
Added player, refactored mesh code
[dragonblocks3d.git] / src / dragonblocks / client.cpp
index 4e49d3683e47eb623d06e3ee0b59c0e9a9a2ea68..c98cec344c39df8ef82cd40b98c780288cb7756c 100644 (file)
@@ -6,6 +6,7 @@
 #include "log.hpp" 
 #include "map.hpp" 
 #include "mapgen.hpp" 
+#include "player.hpp" 
 #include "render_engine.hpp" 
 #include "texture.hpp" 
 #include "window.hpp" 
@@ -27,12 +28,8 @@ Client::Client()
        render_engine->window->setPos(0, 0);
        render_engine->window->setTitle("Dragonblocks");
        render_engine->window->toggleFullscreen();
-       render_engine->camera->pos = vec3(8, 8, 8);
        render_engine->input_handler->mouse_sensitivity = 20;
-       render_engine->input_handler->pitch_move = false;
-       render_engine->input_handler->yaw = -90;
-       render_engine->input_handler->pitch = -80;
-       render_engine->input_handler->speed = 10;
+       
        render_engine->setSky(vec3(0.52941176470588, 0.8078431372549, 0.92156862745098));
        render_engine->setRenderDistance(1000);
        render_engine->setFov(86.1);
@@ -41,6 +38,14 @@ Client::Client()
        
        map = new Map(mapgen, render_engine->mesh_gen_mgr, render_engine->scene);
        
+       player = Player::createLocalplayer(render_engine->camera, render_engine->input_handler, map);
+       
+       player->pitch_move = false;
+       player->yaw = -90;
+       player->pitch = -80;
+       player->speed = 10;
+       player->pos = vec3(8, 8, 8);
+       
        game = new Game(mapgen);
 
        log("Initialisation complete.");
@@ -48,6 +53,8 @@ Client::Client()
 
 void Client::start()
 {
-       render_engine->mesh_gen_mgr->start();
-       render_engine->loop();
+       render_engine->startMeshGenMgr();
+       while (render_engine->running()) {
+               render_engine->render();
+       }
 }