]> git.lizzy.rs Git - dragonblocks3d.git/blob - src/dragonblocks/client.cpp
Multithreading
[dragonblocks3d.git] / src / dragonblocks / client.cpp
1 #include "camera.hpp" 
2 #include "client.hpp" 
3 #include "game.hpp"
4 #include "gl.hpp"
5 #include "input_handler.hpp"
6 #include "log.hpp" 
7 #include "map.hpp" 
8 #include "mapgen.hpp" 
9 #include "render_engine.hpp" 
10 #include "texture.hpp" 
11 #include "window.hpp" 
12
13 using namespace glm;
14 using namespace dragonblocks;
15
16 Client::Client()
17 {
18         log("Initalizing...");
19         
20         Texture::mipmap = false;
21         Texture::bilinear_filter = false;
22         Texture::initArgs();
23         
24         render_engine = new RenderEngine;
25         
26         render_engine->window->setSize(1250, 750);
27         render_engine->window->setPos(0, 0);
28         render_engine->window->setTitle("Dragonblocks");
29         render_engine->window->toggleFullscreen();
30         render_engine->camera->pos = vec3(8, 8, 8);
31         render_engine->input_handler->mouse_sensitivity = 20;
32         render_engine->input_handler->pitch_move = false;
33         render_engine->input_handler->yaw = -90;
34         render_engine->input_handler->pitch = -80;
35         render_engine->input_handler->speed = 10;
36         render_engine->setSky(vec3(0.52941176470588, 0.8078431372549, 0.92156862745098));
37         render_engine->setRenderDistance(1000);
38         render_engine->setFov(86.1);
39         
40         mapgen = new Mapgen;
41         
42         map = new Map(mapgen, render_engine->mesh_gen_mgr, render_engine->scene);
43         
44         game = new Game(mapgen);
45
46         log("Initialisation complete.");
47 }
48
49 void Client::start()
50 {
51         render_engine->mesh_gen_mgr->start();
52         render_engine->loop();
53 }