#include "client/input/Controller.h" #include "client/rendering/Engine.h" #include "client/rendering/Framebuffers.h" #include "client/rendering/RenderSettings.h" #include "client/rendering/Shaders.h" #include "gaming-core/network/Client.h" #include "gaming-core/network/ENet.h" #include "gaming-core/rendering/Window.h" #include "gaming-core/wrapper/GL.h" int main() { ENet enet; if(enet.init()) { std::cout << "cannot initialize enet\n"; return 0; } Client client; if(client.hasError()) { std::cout << client.getError() << '\n'; return 0; } Size size(1024, 620); WindowOptions options(4, 0, size, false, "test"); TextInput* textInput = nullptr; Window w(textInput, options); if(w.getError().has()) { std::cout << w.getError().message << '\n'; return 0; } Shaders shaders; if(shaders.hasError()) { return 0; } Framebuffers framebuffers; if(framebuffers.init(w.getSize())) { return 0; } RenderSettings renderSettings; Controller controller(w.getButtons()); Game game(textInput, controller, w.getFrameClock(), w.getTickClock(), renderSettings, w.getSize(), client); Engine engine(shaders, framebuffers, w.getSize(), renderSettings, game); w.run(engine, 50'000'000); return 0; }