diff --git a/gui/src/layer.cpp b/gui/src/layer.cpp
index c66dd9ca99ad0ac4092468f161d572ef7d168c97..b4d46d4c7da1dabccedf1dee34649763335dd32e 100644
--- a/gui/src/layer.cpp
+++ b/gui/src/layer.cpp
@@ -6,6 +6,7 @@
 #include <shader.hpp>
 #include <metadata_manager.hpp>
 #include <material.hpp>
+#include <INIReader.h>
 
 Layer::Layer(std::string name, std::string filename, float zOffset, Material mat): _name(name), _zOffset(zOffset) {
     //read data from file into vertex buffer, element buffer
@@ -106,8 +107,9 @@ Layer::Layer(std::string name, std::string filename, float zOffset, Material mat
     glBindBuffer(GL_ARRAY_BUFFER, 0);
 
     //setup shader
-    std::string vertFile = std::string(SHADER_LOC) + std::string("objectShader.vert");
-    std::string fragFile = std::string(SHADER_LOC) + std::string("objectShader.frag");
+    INIReader inireader("config.ini");
+    std::string vertFile = inireader.GetString("paths", "pathShaders", "NONE") + std::string("objectShader.vert");
+    std::string fragFile = inireader.GetString("paths", "pathShaders", "NONE") + std::string("objectShader.frag");
     _shader = Shader(vertFile.c_str(), fragFile.c_str());
     _shader.use();
     _shader.setFloat("z_offset", _zOffset);