Index: graphics-pipeline_vulkan.hpp
===================================================================
--- graphics-pipeline_vulkan.hpp	(revision 0cf1a23e478e8f1f93094380133629b67af41ed8)
+++ graphics-pipeline_vulkan.hpp	(revision 06d959f593b7fdb74510302df65f69c7241c37a9)
@@ -11,6 +11,4 @@
 
 #include "vulkan-utils.hpp"
-
-using namespace std;
 
 // TODO: Maybe change the name of this struct so I can call the list something other than descriptorInfoList
@@ -57,5 +55,5 @@
 
       const vector<SceneObject<VertexType>>& getObjects();
-      bool addObject(const vector<VertexType>& vertices, vector<uint16_t> indices, VkCommandPool commandPool,
+      void addObject(const vector<VertexType>& vertices, vector<uint16_t> indices, VkCommandPool commandPool,
          VkQueue graphicsQueue);
 
@@ -413,5 +411,5 @@
 
 template<class VertexType>
-bool GraphicsPipeline_Vulkan<VertexType>::addObject(const vector<VertexType>& vertices, vector<uint16_t> indices,
+void GraphicsPipeline_Vulkan<VertexType>::addObject(const vector<VertexType>& vertices, vector<uint16_t> indices,
       VkCommandPool commandPool, VkQueue graphicsQueue) {
 
@@ -426,5 +424,5 @@
       idx += numVertices;
    }
-   objects.push_back({vertices, indices });
+   objects.push_back({ vertices, indices });
 
    VulkanUtils::copyDataToBuffer(device, physicalDevice, commandPool, vertices, vertexBuffer, numVertices,
@@ -435,6 +433,4 @@
       graphicsQueue);
    numIndices += indices.size();
-
-   return true;
 }
 
Index: vulkan-game.hpp
===================================================================
--- vulkan-game.hpp	(revision 0cf1a23e478e8f1f93094380133629b67af41ed8)
+++ vulkan-game.hpp	(revision 06d959f593b7fdb74510302df65f69c7241c37a9)
@@ -32,4 +32,5 @@
    vec3 pos;
    vec3 color;
+   vec3 normal;
 };
 
@@ -158,4 +159,7 @@
       void createSyncObjects();
 
+      template<class VertexType>
+      vector<VertexType> addVertexNormals(vector<VertexType> vertices);
+
       template<class UniformType>
       void createUniformBuffers(vector<VkBuffer>& buffers, vector<VkDeviceMemory>& buffersMemory,
@@ -191,3 +195,22 @@
 }
 
+template<class VertexType>
+vector<VertexType> VulkanGame::addVertexNormals(vector<VertexType> vertices) {
+   for (unsigned int i = 0; i < vertices.size(); i += 3) {
+      vec3 p1 = vertices[i].pos;
+      vec3 p2 = vertices[i+1].pos;
+      vec3 p3 = vertices[i+2].pos;
+
+      vec3 normal = normalize(cross(p2 - p1, p3 - p1));
+      normal.z = -normal.z;
+
+      // Add the same normal for all 3 vertices
+      vertices[i].normal = normal;
+      vertices[i+1].normal = normal;
+      vertices[i+2].normal = normal;
+   }
+
+   return vertices;
+}
+
 #endif // _VULKAN_GAME_H
