Index: compile.bat
===================================================================
--- compile.bat	(revision 1908591f828b8f96e74a01dcce09fc9b37f711d4)
+++ compile.bat	(revision 683dd557486e52b2bdd589d98486346bd0314c76)
@@ -1,4 +1,6 @@
 echo off
 setlocal enabledelayedexpansion
+
+cd shaders
 
 set VULKAN_SDK_PATH=D:\VulkanSDK\1.1.108.0
@@ -10,2 +12,4 @@
    %VULKAN_SDK_PATH%\Bin\glslangValidator.exe -V %%f -o %%~nf-!ext!.spv
 )
+
+cd ..
Index: graphics-pipeline_vulkan.hpp
===================================================================
--- graphics-pipeline_vulkan.hpp	(revision 1908591f828b8f96e74a01dcce09fc9b37f711d4)
+++ graphics-pipeline_vulkan.hpp	(revision 683dd557486e52b2bdd589d98486346bd0314c76)
@@ -56,4 +56,5 @@
       void createRenderCommands(VkCommandBuffer& commandBuffer, uint32_t currentImage);
 
+      const vector<SceneObject<VertexType>>& getObjects();
       bool addObject(const vector<VertexType>& vertices, vector<uint16_t> indices, VkCommandPool commandPool,
          VkQueue graphicsQueue);
@@ -104,4 +105,5 @@
 }
 
+// TODO: Verify that vertex capacity and index capacity are both > 0
 template<class VertexType>
 GraphicsPipeline_Vulkan<VertexType>::GraphicsPipeline_Vulkan(VkPhysicalDevice physicalDevice, VkDevice device,
@@ -406,4 +408,9 @@
 
 template<class VertexType>
+const vector<SceneObject<VertexType>>& GraphicsPipeline_Vulkan<VertexType>::getObjects() {
+   return objects;
+}
+
+template<class VertexType>
 bool GraphicsPipeline_Vulkan<VertexType>::addObject(const vector<VertexType>& vertices, vector<uint16_t> indices,
       VkCommandPool commandPool, VkQueue graphicsQueue) {
Index: makefile
===================================================================
--- makefile	(revision 1908591f828b8f96e74a01dcce09fc9b37f711d4)
+++ makefile	(revision 683dd557486e52b2bdd589d98486346bd0314c76)
@@ -59,6 +59,9 @@
 	$(CC) $(CXX_FLAGS) -o $@ $^ $(LIB_FLAGS) -DGAMEGUI_INCLUDE_VULKAN
 
-vulkangame: main-vulkan.cpp vulkan-game.cpp crash-logger.cpp logger.cpp vulkan-utils.cpp game-gui-sdl.cpp
-	$(CC) $(CXX_FLAGS) -o $@ $^ $(LIB_FLAGS) -DGAMEGUI_INCLUDE_VULKAN
+SRC_FILES = main-vulkan.cpp vulkan-game.cpp crash-logger.cpp logger.cpp vulkan-utils.cpp game-gui-sdl.cpp
+HEADER_FILES = vulkan-game.hpp crash-logger.hpp logger.hpp vulkan-utils.hpp game-gui-sdl.hpp game-gui.hpp graphics-pipeline_vulkan.hpp
+
+vulkangame: $(SRC_FILES) $(HEADER_FILES)
+	$(CC) $(CXX_FLAGS) -o $@ $(SRC_FILES) $(LIB_FLAGS) -DGAMEGUI_INCLUDE_VULKAN
 
 .PHONY: shaders
Index: vulkan-game.cpp
===================================================================
--- vulkan-game.cpp	(revision 1908591f828b8f96e74a01dcce09fc9b37f711d4)
+++ vulkan-game.cpp	(revision 683dd557486e52b2bdd589d98486346bd0314c76)
@@ -248,6 +248,4 @@
    cout << "Created all the graphics pipelines" << endl;
 
-   numPlanes = 2;
-
    createCommandBuffers();
 
@@ -255,4 +253,5 @@
 }
 
+// TODO: Maybe changes the name to initScene() or something similar
 void VulkanGame::initMatrices() {
    cam_pos = vec3(0.0f, 0.0f, 2.0f);
@@ -299,5 +298,5 @@
                } else if (e.key.keycode == SDL_SCANCODE_SPACE) {
                   cout << "Adding a plane" << endl;
-                  float zOffset = -2.0f + (0.5f * numPlanes);
+                  float zOffset = -2.0f + (0.5f * modelPipeline.getObjects().size());
 
                   vkDeviceWaitIdle(device);
@@ -314,6 +313,4 @@
 
                   createCommandBuffers();
-
-                  numPlanes++;
                } else {
                   cout << "Key event detected" << endl;
Index: vulkan-game.hpp
===================================================================
--- vulkan-game.hpp	(revision 1908591f828b8f96e74a01dcce09fc9b37f711d4)
+++ vulkan-game.hpp	(revision 683dd557486e52b2bdd589d98486346bd0314c76)
@@ -113,5 +113,4 @@
 
       size_t currentFrame;
-      size_t numPlanes = 0; // temp
 
       bool framebufferResized;
