diff --git a/include/class-diagram.dia b/include/class-diagram.dia
index 40185bee..a0e60d4f 100644
--- a/include/class-diagram.dia
+++ b/include/class-diagram.dia
@@ -1329,7 +1329,7 @@
-
+
@@ -1338,7 +1338,7 @@
-
+
#ClientGameEngine#
@@ -1477,6 +1477,29 @@
+
+
+ #areLoadingTexture#
+
+
+ #std::atomic<bool>#
+
+
+ #false#
+
+
+ ##
+
+
+
+
+
+
+
+
+
+
+
#clientGame#
@@ -8065,7 +8088,7 @@
-
+
@@ -8073,8 +8096,8 @@
-
-
+
+
@@ -15322,17 +15345,17 @@
-
+
-
+
-
-
+
+
@@ -15369,7 +15392,7 @@
-
+
@@ -23210,18 +23233,18 @@
-
+
-
+
-
-
-
+
+
+
@@ -23257,7 +23280,7 @@
-
+
@@ -23397,17 +23420,17 @@
-
+
-
+
-
-
+
+
@@ -23471,7 +23494,7 @@
-
+
@@ -24886,17 +24909,19 @@
-
+
-
+
+
+
diff --git a/src/client/ClientGameEngine.cpp b/src/client/ClientGameEngine.cpp
index 3d11cf25..ec610f21 100644
--- a/src/client/ClientGameEngine.cpp
+++ b/src/client/ClientGameEngine.cpp
@@ -449,10 +449,13 @@ void ClientGameEngine::renderGame()
*/
void ClientGameEngine::playGame()
{
+
std::thread t(&ClientGameEngine::startGameWindow, this);
long lastUpdateTimer = clientGame->getCurrentTime();
+ while (!areLoadingTexture);
+
while (runningWindow.load() == GAME)
{
if (clientGame->getCurrentTime() - lastUpdateTimer > REFRESH_ELEMENT)
diff --git a/src/client/GameWindow.cpp b/src/client/GameWindow.cpp
index f9b540b2..fdeba1a7 100644
--- a/src/client/GameWindow.cpp
+++ b/src/client/GameWindow.cpp
@@ -159,6 +159,7 @@ void GameWindow::startGame()
loadElementTexture();
updateElementTexture();
loadHudTexture();
+ gameEnginePtr->areLoadingTexture = true;
addPlayer(gameEnginePtr->myself->getName());
std::shared_ptr moveMode = std::make_shared(false);