Main.cpp 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #include "client/input/Controller.h"
  2. #include "client/rendering/Engine.h"
  3. #include "client/rendering/Framebuffers.h"
  4. #include "client/rendering/RenderSettings.h"
  5. #include "client/rendering/Shaders.h"
  6. #include "gaming-core/network/Client.h"
  7. #include "gaming-core/network/ENet.h"
  8. #include "gaming-core/rendering/Window.h"
  9. #include "gaming-core/wrapper/GL.h"
  10. int main() {
  11. ENet enet;
  12. if(enet.init()) {
  13. std::cout << "cannot initialize enet\n";
  14. return 0;
  15. }
  16. Client client;
  17. if(client.hasError()) {
  18. std::cout << client.getError() << '\n';
  19. return 0;
  20. }
  21. Size size(1024, 620);
  22. WindowOptions options(4, 0, size, false, "test");
  23. TextInput* textInput = nullptr;
  24. Window w(textInput, options);
  25. if(w.getError().has()) {
  26. std::cout << w.getError().message << '\n';
  27. return 0;
  28. }
  29. Shaders shaders;
  30. if(shaders.hasError()) {
  31. return 0;
  32. }
  33. Framebuffers framebuffers;
  34. if(framebuffers.init(w.getSize())) {
  35. return 0;
  36. }
  37. RenderSettings renderSettings;
  38. Controller controller(w.getButtons());
  39. Game game(textInput, controller, w.getFrameClock(), w.getTickClock(),
  40. renderSettings, w.getSize(), client);
  41. Engine engine(shaders, framebuffers, w.getSize(), renderSettings, game);
  42. w.run(engine, 50'000'000);
  43. return 0;
  44. }