blob: e40eb5a3232c398ab2b7df243fcc6569dd319d6e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
#include "main-impl.hpp"
#include "compat/fpu.hpp"
#include "src/astar.hpp"
#include <Corrade/Containers/GrowableArray.h>
namespace floormat {
main_impl::main_impl(floormat_app& app, fm_settings&& se, int& argc, char** argv) noexcept :
Platform::Sdl2Application{Arguments{argc, argv},
make_conf(se), make_gl_conf(se)},
s{std::move(se)}, app{app}, _shader{_tuc}
{
if (s.vsync)
{
(void)setSwapInterval(1);
if (const auto list = GL::Context::current().extensionStrings();
std::find(list.cbegin(), list.cend(), "EXT_swap_control_tear") != list.cend())
(void)setSwapInterval(-1);
}
else
(void)setSwapInterval(0);
set_fp_mask();
arrayReserve(_clickable_scenery, 128);
timeline.start();
}
class world& main_impl::reset_world(class world&& w) noexcept
{
arrayResize(_clickable_scenery, 0);
_world = std::move(w);
return _world;
}
} // namespace floormat
|