diff options
Diffstat (limited to 'src/core/Core.hpp')
-rw-r--r-- | src/core/Core.hpp | 95 |
1 files changed, 0 insertions, 95 deletions
diff --git a/src/core/Core.hpp b/src/core/Core.hpp deleted file mode 100644 index 039b3a3..0000000 --- a/src/core/Core.hpp +++ /dev/null @@ -1,95 +0,0 @@ -#pragma once - -#include <iomanip> -#include <tuple> - -#include <easylogging++.h> -#include <GL/glew.h> -#include <glm/gtc/type_ptr.hpp> -#include <SFML/Window.hpp> - -#include <world/GameState.hpp> -#include <core/AssetManager.hpp> -#include <graphics/Shader.hpp> -#include <graphics/Gui.hpp> -#include <graphics/RenderSection.hpp> -#include <network/NetworkClient.hpp> - -struct MyMutex { - std::mutex mtx; - std::string str; - MyMutex(std::string name); - void lock(); - void unlock(); -}; - -class Core { - GameState *gameState; - NetworkClient *client; - sf::Window *window; - AssetManager *assetManager; - bool isMouseCaptured = false; - bool isRunning = true; - enum { - MainMenu, - Loading, - Playing, - PauseMenu, - } currentState = Playing; - float mouseXDelta, mouseYDelta; - float deltaTime; - float absTime; - - void RenderWorld(); - - void HandleMouseCapture(); - - void HandleEvents(); - - void InitSfml(unsigned int WinWidth, unsigned int WinHeight, std::string WinTitle); - - void InitGlew(); - - void SetMouseCapture(bool IsCaptured); - - void PrepareToRendering(); - - void RenderFrame(); - - unsigned int width(); - - unsigned int height(); - - void UpdateChunksToRender(); - - void UpdateGameState(); - - void UpdateSections(); - - std::thread gameStateLoopThread; - std::thread sectionUpdateLoopThread; - - Shader *shader; - //Cube verticies, Cube VAO, Cube UVs, TextureIndexes UboTextureIndexes, TextureData UboTextureIndexes, TextureData2 UboTextureIndexes, Blocks VBO, Models VBO, Line VAO, Lines VBO - bool isRendersShouldBeCreated=false; - std::condition_variable waitRendersCreated; - std::vector<Vector> renders; - std::mutex toRenderMutex; - std::vector<Vector> toRender; - std::map<Vector, RenderSection> availableChunks; - std::mutex availableChunksMutex; - - int ChunkDistance = 3; - - RenderState renderState; - - double tickRate = 0; - double sectionRate = 0; - -public: - Core(); - - ~Core(); - - void Exec(); -}; |