3 #include "async_mgr.hpp"
7 #include "input_handler.hpp"
8 #include "local_player.hpp"
11 #include "render_engine.hpp"
12 #include "shader_program.hpp"
13 #include "texture.hpp"
18 using namespace dragonblocks;
23 while (render_engine->running()) {
24 double dtime = glfwGetTime() - last_time;
25 last_time = glfwGetTime();
29 render_engine->render(dtime);
31 input_handler->processInput(dtime);
34 if (input_handler->wasKeyDown(GLFW_KEY_F11)) {
35 render_engine->window->toggleFullscreen();
42 cout << "Initalizing Client..." << endl;
44 Texture::mipmap = true;
45 Texture::bilinear_filter = false;
48 async_mgr = new AsyncMgr;
50 input_handler = new InputHandler();
51 input_handler->mouse_sensitivity = 20;
52 input_handler->listenFor(GLFW_KEY_F11);
54 render_engine = new RenderEngine;
55 render_engine->render_distance = 1000;
56 render_engine->fov = 86.1;
57 render_engine->sky = vec3(0.52941176470588, 0.8078431372549, 0.92156862745098); // HTML skyblue
58 render_engine->window->setSize(1250, 750);
59 render_engine->window->setPos(0, 0);
60 render_engine->window->setTitle("Dragonblocks");
62 input_handler->setWindow(render_engine->window);
64 shader_program = new ShaderProgram("shaders");
68 map = new Map(mapgen, async_mgr, render_engine->scene, shader_program);
70 Texture player_texture;
71 player_texture.load("textures/stone.png");
73 player = new LocalPlayer(map, render_engine->scene, player_texture, shader_program, render_engine->camera, input_handler);
74 player->pitch_move = false;
76 player->setSize(vec3(0.75, 1.5, 0.75));
78 game = new Game(mapgen);
80 last_time = glfwGetTime();
82 cout << "Initialisation done." << endl;
85 extern "C" void _dragonblocks_start_client()