Browse Source

Imrpoved camera controller and fixed mipmap bug

Improved the camera controller to now take mouse input as well.

Fixed a bug with the mipmapped texture being in the wrong layout at the end of mipmap generation.
Jef Belmans 2 years ago
parent
commit
8e1bcf01af
33 changed files with 252 additions and 281 deletions
  1. 3 3
      coral_renderer/CMakeLists.txt
  2. 0 35
      coral_renderer/KeyboardController.cpp
  3. 0 31
      coral_renderer/KeyboardController.h
  4. 52 2
      coral_renderer/coral_camera.cpp
  5. 43 2
      coral_renderer/coral_camera.h
  6. 0 0
      coral_renderer/coral_input.cpp
  7. 20 20
      coral_renderer/coral_texture.cpp
  8. 5 0
      coral_renderer/coral_window.cpp
  9. 2 0
      coral_renderer/coral_window.h
  10. 2 10
      coral_renderer/first_app.cpp
  11. 1 1
      out/build/x64-Debug/.cmake/api/v1/reply/cache-v2-874eee79501767bf3432.json
  12. 1 1
      out/build/x64-Debug/.cmake/api/v1/reply/codemodel-v2-e8f36021396685d72073.json
  13. 4 4
      out/build/x64-Debug/.cmake/api/v1/reply/index-2023-07-09T23-35-36-0059.json
  14. 3 17
      out/build/x64-Debug/.cmake/api/v1/reply/target-coral_renderer-Debug-9cb121178bd5f1fe37d8.json
  15. BIN
      out/build/x64-Debug/.ninja_deps
  16. 46 63
      out/build/x64-Debug/.ninja_log
  17. 1 1
      out/build/x64-Debug/CMakeCache.txt
  18. 2 2
      out/build/x64-Debug/CMakeFiles/rules.ninja
  19. 2 2
      out/build/x64-Debug/Testing/Temporary/LastTest.log
  20. 1 9
      out/build/x64-Debug/build.ninja
  21. BIN
      out/build/x64-Debug/coral_renderer/CMakeFiles/coral_renderer.dir/vc140.pdb
  22. BIN
      out/build/x64-Debug/coral_renderer/coral_renderer.ilk
  23. BIN
      out/build/x64-Debug/coral_renderer/coral_renderer.pdb
  24. BIN
      out/build/x64-Debug/third_party/CMakeFiles/tinyobjloader.dir/tinyobjloader.pdb
  25. BIN
      out/build/x64-Debug/third_party/CMakeFiles/vkbootstrap.dir/vkbootstrap.pdb
  26. BIN
      out/build/x64-Debug/third_party/GLFW/src/CMakeFiles/glfw.dir/glfw.pdb
  27. 1 1
      out/build/x64-Release/.cmake/api/v1/reply/codemodel-v2-d628cc49a00582cb6a44.json
  28. 2 2
      out/build/x64-Release/.cmake/api/v1/reply/index-2023-07-10T00-03-04-0164.json
  29. 5 19
      out/build/x64-Release/.cmake/api/v1/reply/target-coral_renderer-Release-c1beb400199d0bf255ba.json
  30. BIN
      out/build/x64-Release/.ninja_deps
  31. 53 45
      out/build/x64-Release/.ninja_log
  32. 2 2
      out/build/x64-Release/Testing/Temporary/LastTest.log
  33. 1 9
      out/build/x64-Release/build.ninja

+ 3 - 3
coral_renderer/CMakeLists.txt

@@ -23,8 +23,6 @@ add_executable(coral_renderer
     "render_system.cpp"
     "coral_camera.h"
     "coral_camera.cpp"
-    "KeyboardController.h"
-    "KeyboardController.cpp"
     "coral_utils.h"
     "coral_utils.cpp"
     "coral_texture.h"
@@ -33,7 +31,9 @@ add_executable(coral_renderer
     "coral_buffer.cpp"
     "coral_frame_info.h"
     "coral_frame_info.cpp"
- "coral_descriptors.h" "coral_descriptors.cpp")
+    "coral_descriptors.h"
+    "coral_descriptors.cpp"
+)
 
 add_dependencies(coral_renderer Shaders)
 

+ 0 - 35
coral_renderer/KeyboardController.cpp

@@ -1,35 +0,0 @@
-#include "KeyboardController.h"
-#include <limits>
-
-using namespace coral_3d;
-
-void KeyboardController::move_in_plane_xz(GLFWwindow* pWindow, float dt, coral_gameobject& gameobject)
-{
-	glm::vec3 rotate{0.f};
-	if (glfwGetKey(pWindow, keys.look_right) == GLFW_PRESS) rotate.y += 1.f;
-	if (glfwGetKey(pWindow, keys.look_left) == GLFW_PRESS) rotate.y -= 1.f;
-	if (glfwGetKey(pWindow, keys.look_up) == GLFW_PRESS) rotate.x += 1.f;
-	if (glfwGetKey(pWindow, keys.look_up) == GLFW_PRESS) rotate.x -= 1.f;
-		
-	if(glm::length(rotate) > std::numeric_limits<float>::epsilon())
-		gameobject.transform_.rotation += look_speed * dt * glm::normalize(rotate);
-
-	gameobject.transform_.rotation.x = glm::clamp(gameobject.transform_.rotation.x, -1.5f, 1.5f);
-	gameobject.transform_.rotation.y = glm::mod(gameobject.transform_.rotation.y, glm::two_pi<float>());
-
-	float yaw = gameobject.transform_.rotation.y;
-	const glm::vec3 forward_dir{sin(yaw), 0.f, cos(yaw)};
-	const glm::vec3 right_dir{forward_dir.z, 0.f, -forward_dir.x};
-	const glm::vec3 up_dir{0.f, -1.f, 0.f};
-
-	glm::vec3 move_dir{0.f};
-	if (glfwGetKey(pWindow, keys.move_forward) == GLFW_PRESS) move_dir += forward_dir;
-	if (glfwGetKey(pWindow, keys.move_backward) == GLFW_PRESS)  move_dir -= forward_dir;
-	if (glfwGetKey(pWindow, keys.move_right) == GLFW_PRESS) move_dir += right_dir;
-	if (glfwGetKey(pWindow, keys.move_left) == GLFW_PRESS) move_dir -= right_dir;
-	if (glfwGetKey(pWindow, keys.move_up) == GLFW_PRESS) move_dir += up_dir;
-	if (glfwGetKey(pWindow, keys.move_down) == GLFW_PRESS) move_dir -= up_dir;
-
-	if (glm::length(move_dir) > std::numeric_limits<float>::epsilon())
-		gameobject.transform_.translation += move_speed * dt * glm::normalize(move_dir);
-}

+ 0 - 31
coral_renderer/KeyboardController.h

@@ -1,31 +0,0 @@
-#pragma once
-
-#include "coral_gameobject.h"
-#include "coral_window.h"
-
-namespace coral_3d
-{
-	class KeyboardController final
-	{
-	public:
-		struct KeyMappings
-		{
-			int move_left = GLFW_KEY_A;
-			int move_right = GLFW_KEY_D;
-			int move_forward = GLFW_KEY_W;
-			int move_backward = GLFW_KEY_S;
-			int move_up = GLFW_KEY_E;
-			int move_down = GLFW_KEY_Q;
-			int look_left = GLFW_KEY_LEFT;
-			int look_right = GLFW_KEY_RIGHT;
-			int look_up = GLFW_KEY_UP;
-			int look_down = GLFW_KEY_DOWN;
-		};
-
-		void move_in_plane_xz(GLFWwindow* pWindow, float dt, coral_gameobject& gameobject);
-
-		KeyMappings keys{};
-		float move_speed{ 3.f };
-		float look_speed{ 1.5f };
-	};
-}

+ 52 - 2
coral_renderer/coral_camera.cpp

@@ -1,9 +1,17 @@
 #include "coral_camera.h"
 
 #include <gtc/matrix_transform.hpp>
+#include <algorithm>
 
 using namespace coral_3d;
 
+coral_camera::coral_camera(glm::vec3 position, float movement_speed, float mouse_sensitivity)
+	: movement_speed_{ movement_speed }
+	, mouse_sensitivity_{ mouse_sensitivity }
+	, position_{ position }
+{
+}
+
 void coral_camera::set_ortographic_projection(float left, float right, float top, float bottom, float near, float far)
 {
 	projection_matrix_ = glm::orthoLH(left, right, bottom, top, near, far);
@@ -16,8 +24,7 @@ void coral_camera::set_perspective_projection(float fovy, float aspect, float ne
 
 void coral_camera::set_view_direction(glm::vec3 position, glm::vec3 direction, glm::vec3 up)
 {
-	direction.x *= -1.f;
-	view_matrix_ = glm::lookAtLH(position, direction, up);
+	view_matrix_ = glm::lookAt(position, position + direction, up);
 }
 
 void coral_camera::set_view_target(glm::vec3 position, glm::vec3 target, glm::vec3 up)
@@ -51,3 +58,46 @@ void coral_camera::set_view_yxz(glm::vec3 position, glm::vec3 rotation)
 	view_matrix_[3][1] = -glm::dot(v, position);
 	view_matrix_[3][2] = -glm::dot(w, position);
 }
+
+void coral_camera::update_input(GLFWwindow* pWindow, float dt)
+{
+	// Mouse input
+	double mouse_x, mouse_y;
+	glfwGetCursorPos(pWindow, &mouse_x, &mouse_y);
+
+	float mouse_dx = static_cast<float>(mouse_x - last_mouse_x_) * mouse_sensitivity_;
+	float mouse_dy = static_cast<float>(last_mouse_y_ - mouse_y) * mouse_sensitivity_;
+	last_mouse_x_ = static_cast<float>(mouse_x);
+	last_mouse_y_ = static_cast<float>(mouse_y);
+
+	yaw_ -= mouse_dx;
+	pitch_ += mouse_dy;
+	pitch_ = std::clamp(pitch_, -89.f, 89.f);
+
+	update_camera_vectors();
+	set_view_direction(position_, forward_, up_);
+
+	// Keyboard input
+	const float velocity{ glfwGetKey(pWindow, keys_.sprint) == GLFW_PRESS ? sprint_movement_speed_ * dt : movement_speed_ * dt };
+	if(glfwGetKey(pWindow, keys_.move_forward) == GLFW_PRESS) position_ -= forward_ * velocity;
+	if(glfwGetKey(pWindow, keys_.move_backward) == GLFW_PRESS) position_ += forward_ * velocity;
+	if(glfwGetKey(pWindow, keys_.move_left) == GLFW_PRESS) position_ -= right_ * velocity;
+	if(glfwGetKey(pWindow, keys_.move_right) == GLFW_PRESS) position_ += right_ * velocity;
+
+	if(glfwGetKey(pWindow, keys_.move_up) == GLFW_PRESS) position_ += up_ * velocity;
+	if(glfwGetKey(pWindow, keys_.move_down) == GLFW_PRESS) position_ -= up_ * velocity;
+}
+
+void coral_camera::update_camera_vectors()
+{
+	glm::vec3 forward
+	{
+		glm::cos(glm::radians(yaw_)) * glm::cos(glm::radians(pitch_)),
+		glm::sin(glm::radians(pitch_)),
+		glm::sin(glm::radians(yaw_)) * glm::cos(glm::radians(pitch_))
+	};
+	
+	forward_ = glm::normalize(forward);
+	right_ = glm::normalize(glm::cross(forward_, world_up_));
+	up_ = glm::normalize(glm::cross(right_, forward_));
+}

+ 43 - 2
coral_renderer/coral_camera.h

@@ -5,13 +5,29 @@
 #define GLM_FORCE_DEPTH_ZERO_TO_ONE
 #include <glm.hpp>
 
+#include <GLFW/glfw3.h>
+
 namespace coral_3d
 {
+	struct KeyBindings
+	{
+		int move_forward = GLFW_KEY_W;
+		int move_backward = GLFW_KEY_S;
+		int move_left = GLFW_KEY_A;
+		int move_right = GLFW_KEY_D;
+		int move_up = GLFW_KEY_E;
+		int move_down = GLFW_KEY_Q;
+		int sprint = GLFW_KEY_LEFT_SHIFT;
+	};
+
 	class coral_camera final
 	{
 	public:
+		coral_camera(glm::vec3 position, float movement_speed = 3.f, float mouse_sensitivity = 0.1f);
+		~coral_camera() = default;
+
 		void set_ortographic_projection(
-		float left, float right, float top, float bottom, float near, float far);
+			float left, float right, float top, float bottom, float near, float far);
 		void set_perspective_projection(float fovy, float aspect, float near, float far);
 
 		void set_view_direction(glm::vec3 position, glm::vec3 direction, glm::vec3 up = glm::vec3{ 0.f, -1.f, 0.f });
@@ -21,8 +37,33 @@ namespace coral_3d
 		const glm::mat4& get_projection() const { return projection_matrix_; }
 		const glm::mat4& get_view() const { return view_matrix_; }
 
+		void update_input(GLFWwindow* pWindow, float dt);
+
 	private:
+		void update_camera_vectors();
+
+		KeyBindings keys_{};
+
+		// Camera frame
+		glm::vec3 position_{};
+		glm::vec3 forward_{};
+		glm::vec3 right_{};
+		glm::vec3 up_{};
+		glm::vec3 world_up_{0.f, 1.f, 0.f};
+		
+		// Mouse
+		float last_mouse_x_{};
+		float last_mouse_y_{};
+
+		// Rotation
+		float yaw_{0.f};
+		float pitch_{0.f};
+
+		float movement_speed_{ 3.f };
+		float sprint_movement_speed_{ 8.f };
+		float mouse_sensitivity_{ 1.5f };
+
 		glm::mat4 projection_matrix_{ 1.f };
-		glm::mat4 view_matrix_{1.f};
+		glm::mat4 view_matrix_{0.1f};
 	};
 }

+ 0 - 0
coral_renderer/coral_input.cpp


+ 20 - 20
coral_renderer/coral_texture.cpp

@@ -84,15 +84,15 @@ void coral_texture::Builder::generate_mipmaps(coral_device& device, uint32_t wid
 		barrier.image = image.image;
 		barrier.srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED;
 		barrier.dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED;
+		barrier.subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT;
 		barrier.subresourceRange.baseArrayLayer = 0;
 		barrier.subresourceRange.layerCount = 1;
 		barrier.subresourceRange.levelCount = 1;
 
-		int32_t mip_width = width;
-		int32_t mip_height = height;
+		int32_t mipWidth = width;
+		int32_t mipHeight = height;
 
-		for (uint32_t i = 1; i < mip_levels; i++)
-		{
+		for (uint32_t i = 1; i < mip_levels; i++) {
 			barrier.subresourceRange.baseMipLevel = i - 1;
 			barrier.oldLayout = VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL;
 			barrier.newLayout = VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL;
@@ -107,13 +107,13 @@ void coral_texture::Builder::generate_mipmaps(coral_device& device, uint32_t wid
 
 			VkImageBlit blit{};
 			blit.srcOffsets[0] = { 0, 0, 0 };
-			blit.srcOffsets[1] = { mip_width, mip_height, 1 };
+			blit.srcOffsets[1] = { mipWidth, mipHeight, 1 };
 			blit.srcSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT;
 			blit.srcSubresource.mipLevel = i - 1;
 			blit.srcSubresource.baseArrayLayer = 0;
 			blit.srcSubresource.layerCount = 1;
 			blit.dstOffsets[0] = { 0, 0, 0 };
-			blit.dstOffsets[1] = { mip_width > 1 ? mip_width / 2 : 1, mip_height > 1 ? mip_height / 2 : 1, 1 };
+			blit.dstOffsets[1] = { mipWidth > 1 ? mipWidth / 2 : 1, mipHeight > 1 ? mipHeight / 2 : 1, 1 };
 			blit.dstSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT;
 			blit.dstSubresource.mipLevel = i;
 			blit.dstSubresource.baseArrayLayer = 0;
@@ -136,22 +136,22 @@ void coral_texture::Builder::generate_mipmaps(coral_device& device, uint32_t wid
 				0, nullptr,
 				1, &barrier);
 
-			if (mip_width > 1) mip_width *= 0.5;
-			if (mip_height > 1) mip_height *= 0.5;
-
-			barrier.subresourceRange.baseMipLevel = mip_levels - 1;
-			barrier.oldLayout = VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL;
-			barrier.newLayout = VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL;
-			barrier.srcAccessMask = VK_ACCESS_TRANSFER_WRITE_BIT;
-			barrier.dstAccessMask = VK_ACCESS_SHADER_READ_BIT;
-
-			vkCmdPipelineBarrier(cmd,
-				VK_PIPELINE_STAGE_TRANSFER_BIT, VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT, 0,
-				0, nullptr,
-				0, nullptr,
-				1, &barrier);
+			if (mipWidth > 1) mipWidth /= 2;
+			if (mipHeight > 1) mipHeight /= 2;
 		}
 
+		barrier.subresourceRange.baseMipLevel = mip_levels - 1;
+		barrier.oldLayout = VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL;
+		barrier.newLayout = VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL;
+		barrier.srcAccessMask = VK_ACCESS_TRANSFER_WRITE_BIT;
+		barrier.dstAccessMask = VK_ACCESS_SHADER_READ_BIT;
+
+		vkCmdPipelineBarrier(cmd,
+			VK_PIPELINE_STAGE_TRANSFER_BIT, VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT, 0,
+			0, nullptr,
+			0, nullptr,
+			1, &barrier);
+
 		});
 }
 

+ 5 - 0
coral_renderer/coral_window.cpp

@@ -36,8 +36,13 @@ void coral_window::init_window()
 	glfwWindowHint(GLFW_RESIZABLE, GLFW_TRUE);
 
 	pWindow_ = glfwCreateWindow(width_, height_, window_name_.c_str(), nullptr, nullptr);
+
+	// Set window user pointer
 	glfwSetWindowUserPointer(pWindow_, this);
 	glfwSetFramebufferSizeCallback(pWindow_, framebuffer_resize_callback);
+
+	// Set mouse input mode
+	glfwSetInputMode(pWindow_, GLFW_CURSOR, GLFW_CURSOR_DISABLED);
 }
 
 void coral_window::create_window_surface(VkInstance instance, VkSurfaceKHR* surface)

+ 2 - 0
coral_renderer/coral_window.h

@@ -5,6 +5,8 @@
 #define GLFW_INCLUDE_VULKAN
 #include <GLFW/glfw3.h>
 
+#include <vulkan/vulkan.h>
+
 namespace coral_3d
 {
 	class coral_window final

+ 2 - 10
coral_renderer/first_app.cpp

@@ -1,6 +1,5 @@
 #include "first_app.h"
 
-#include "KeyboardController.h"
 #include "render_system.h"
 #include "coral_camera.h"
 #include "coral_buffer.h"
@@ -76,13 +75,7 @@ void first_app::run()
     }
 
 	render_system render_system{ device_, renderer_.get_swapchain_render_pass(), global_set_layout->get_descriptor_set_layout() };
-    coral_camera camera{};
-   
-    auto camera_object{ coral_gameobject::create_gameobject() };
-    camera_object.transform_.translation = glm::vec3{ -1.5f, -1.5f, -1.5f };
-    camera_object.transform_.rotation = glm::vec3{ glm::radians(-25.f), glm::radians(45.f), 0.f};
-
-    KeyboardController camera_controller{};
+    coral_camera camera{ {-1.5f, -1.5f, -1.5f} };
 
     auto last_time{ std::chrono::high_resolution_clock::now() };
 
@@ -95,8 +88,7 @@ void first_app::run()
         last_time = current_time;
 
         // MOVE CAMERA
-        camera_controller.move_in_plane_xz(window_.get_glfw_window(), frame_time, camera_object);
-        camera.set_view_yxz(camera_object.transform_.translation, camera_object.transform_.rotation);
+        camera.update_input(window_.get_glfw_window(), frame_time);
 
         float aspect{ renderer_.get_aspect_ratio() };
         camera.set_perspective_projection(glm::radians(60.f), aspect, 0.1f, 1000.f);

+ 1 - 1
out/build/x64-Debug/.cmake/api/v1/reply/cache-v2-c56a070f044ddc696b8d.json → out/build/x64-Debug/.cmake/api/v1/reply/cache-v2-874eee79501767bf3432.json

@@ -871,7 +871,7 @@
 				}
 			],
 			"type" : "FILEPATH",
-			"value" : "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/Ninja/ninja.exe"
+			"value" : "C:/PROGRA~1/MICROS~2/2022/ENTERP~1/Common7/IDE/COMMON~1/MICROS~1/CMake/Ninja/ninja.exe"
 		},
 		{
 			"name" : "CMAKE_MODULE_LINKER_FLAGS",

+ 1 - 1
out/build/x64-Debug/.cmake/api/v1/reply/codemodel-v2-f4e6144b2ef141c9a028.json → out/build/x64-Debug/.cmake/api/v1/reply/codemodel-v2-e8f36021396685d72073.json

@@ -146,7 +146,7 @@
 				{
 					"directoryIndex" : 1,
 					"id" : "coral_renderer::@189d46817749ee15bd40",
-					"jsonFile" : "target-coral_renderer-Debug-bf53e00b22faabf80f9c.json",
+					"jsonFile" : "target-coral_renderer-Debug-9cb121178bd5f1fe37d8.json",
 					"name" : "coral_renderer",
 					"projectIndex" : 0
 				},

+ 4 - 4
out/build/x64-Debug/.cmake/api/v1/reply/index-2023-07-07T22-54-58-0147.json → out/build/x64-Debug/.cmake/api/v1/reply/index-2023-07-09T23-35-36-0059.json

@@ -26,7 +26,7 @@
 	"objects" : 
 	[
 		{
-			"jsonFile" : "codemodel-v2-f4e6144b2ef141c9a028.json",
+			"jsonFile" : "codemodel-v2-e8f36021396685d72073.json",
 			"kind" : "codemodel",
 			"version" : 
 			{
@@ -35,7 +35,7 @@
 			}
 		},
 		{
-			"jsonFile" : "cache-v2-c56a070f044ddc696b8d.json",
+			"jsonFile" : "cache-v2-874eee79501767bf3432.json",
 			"kind" : "cache",
 			"version" : 
 			{
@@ -90,7 +90,7 @@
 				"responses" : 
 				[
 					{
-						"jsonFile" : "cache-v2-c56a070f044ddc696b8d.json",
+						"jsonFile" : "cache-v2-874eee79501767bf3432.json",
 						"kind" : "cache",
 						"version" : 
 						{
@@ -108,7 +108,7 @@
 						}
 					},
 					{
-						"jsonFile" : "codemodel-v2-f4e6144b2ef141c9a028.json",
+						"jsonFile" : "codemodel-v2-e8f36021396685d72073.json",
 						"kind" : "codemodel",
 						"version" : 
 						{

+ 3 - 17
out/build/x64-Debug/.cmake/api/v1/reply/target-coral_renderer-Debug-bf53e00b22faabf80f9c.json → out/build/x64-Debug/.cmake/api/v1/reply/target-coral_renderer-Debug-9cb121178bd5f1fe37d8.json

@@ -137,8 +137,7 @@
 				27,
 				29,
 				31,
-				33,
-				35
+				33
 			]
 		}
 	],
@@ -235,8 +234,7 @@
 				27,
 				29,
 				31,
-				33,
-				35
+				33
 			]
 		},
 		{
@@ -259,8 +257,7 @@
 				26,
 				28,
 				30,
-				32,
-				34
+				32
 			]
 		}
 	],
@@ -398,17 +395,6 @@
 			"path" : "coral_renderer/coral_camera.cpp",
 			"sourceGroupIndex" : 0
 		},
-		{
-			"backtrace" : 1,
-			"path" : "coral_renderer/KeyboardController.h",
-			"sourceGroupIndex" : 1
-		},
-		{
-			"backtrace" : 1,
-			"compileGroupIndex" : 0,
-			"path" : "coral_renderer/KeyboardController.cpp",
-			"sourceGroupIndex" : 0
-		},
 		{
 			"backtrace" : 1,
 			"path" : "coral_renderer/coral_utils.h",

BIN
out/build/x64-Debug/.ninja_deps


+ 46 - 63
out/build/x64-Debug/.ninja_log

@@ -1,65 +1,48 @@
 # ninja log v5
-173	1753	7106254093694928	coral_renderer/CMakeFiles/coral_renderer.dir/coral_pipeline.cpp.obj	adb242e15b527fb5
-6	19	0	clean	21a4d0550fd2b6b1
-163	1776	7106254093936764	coral_renderer/CMakeFiles/coral_renderer.dir/main.cpp.obj	5b91ae9e0709491
-64	670	7106254082667426	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_thread.c.obj	bff58b93f2a56d1b
-21	162	7106254077750529	E:/Game Development/Visual Studio Solutions/Coral3D/shaders/compiled/simple_shader.vert.spv	319095c1d4500e9c
-17	163	7106254077750529	E:/Game Development/Visual Studio Solutions/Coral3D/shaders/compiled/simple_shader.frag.spv	182e19d82932b3f8
-9	139	7106254077517059	E:/Game Development/Visual Studio Solutions/Coral3D/shaders/compiled/PosNormCol.frag.spv	ba83fc1d44361fa5
-74	655	7106254082571666	third_party/GLFW/src/CMakeFiles/glfw.dir/egl_context.c.obj	720789878af83506
-55	669	7106254082727990	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_joystick.c.obj	155a4d402b926fee
-13	153	7106254077652648	E:/Game Development/Visual Studio Solutions/Coral3D/shaders/compiled/PosNormCol.vert.spv	9a4b34331b5d0f2
-655	1663	7106254092787708	coral_renderer/CMakeFiles/coral_renderer.dir/coral_descriptors.cpp.obj	4c08920c9ecc7551
-44	663	7106254082612394	third_party/GLFW/src/CMakeFiles/glfw.dir/vulkan.c.obj	d687613254603224
-48	667	7106254082587309	third_party/GLFW/src/CMakeFiles/glfw.dir/window.c.obj	b83095e4b715bc19
-61	668	7106254082597344	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_time.c.obj	406eae6337b59224
-51	668	7106254082697944	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_init.c.obj	aee4bdf0f24be977
-41	669	7106254082657413	third_party/GLFW/src/CMakeFiles/glfw.dir/monitor.c.obj	c00f6f9bbf18e104
-2402	2710	7106254101463415	coral_renderer/coral_renderer.exe	850b509407927fc3
-77	667	7106254082566668	third_party/GLFW/src/CMakeFiles/glfw.dir/osmesa_context.c.obj	c429fa4f29a15e5f
-33	666	7106254082692959	third_party/GLFW/src/CMakeFiles/glfw.dir/init.c.obj	5f4a50f3267d8484
-58	666	7106254082662425	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_monitor.c.obj	e5281a6601c9ad8f
-71	664	7106254082667426	third_party/GLFW/src/CMakeFiles/glfw.dir/wgl_context.c.obj	3afd0e43a8a16dc7
-670	729	7106254083422261	third_party/GLFW/src/glfw3.lib	72cb3f0d3bdbe8a5
-37	665	7106254082677428	third_party/GLFW/src/CMakeFiles/glfw.dir/input.c.obj	ad4c648576f9cac1
-30	664	7106254082627388	third_party/GLFW/src/CMakeFiles/glfw.dir/context.c.obj	1ba1283f035e00a8
-179	839	7106254084547640	coral_renderer/CMakeFiles/coral_renderer.dir/vk_initializers.cpp.obj	b5447a272bda0e1f
-67	670	7106254082758012	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_window.c.obj	b606f65291c42a2c
-202	762	7106254083776261	coral_renderer/CMakeFiles/coral_renderer.dir/coral_utils.cpp.obj	db0a0874561cc25
-166	902	7106254085180320	coral_renderer/CMakeFiles/coral_renderer.dir/coral_window.cpp.obj	50e2c5cf9cf55551
-196	955	7106254085728198	coral_renderer/CMakeFiles/coral_renderer.dir/coral_camera.cpp.obj	b1c7ef6d3ffce87e
-24	1762	7106254093778557	third_party/CMakeFiles/vkbootstrap.dir/vkbootstrap/VkBootstrap.cpp.obj	90b228a58cfb5773
-211	1561	7106254091771568	coral_renderer/CMakeFiles/coral_renderer.dir/coral_frame_info.cpp.obj	7fc0aec244739071
-205	1546	7106254091578749	coral_renderer/CMakeFiles/coral_renderer.dir/coral_texture.cpp.obj	4e5ce193de00006
-190	1200	7106254088161138	coral_renderer/CMakeFiles/coral_renderer.dir/coral_renderer.cpp.obj	dc606ce2cb83384e
-188	1529	7106254091448149	coral_renderer/CMakeFiles/coral_renderer.dir/coral_gameobject.cpp.obj	f72964d8217310cf
+181	1583	7106503680235265	coral_renderer/CMakeFiles/coral_renderer.dir/coral_pipeline.cpp.obj	adb242e15b527fb5
+9	23	0	clean	7736c1ea50927c7a
+17	171	7106503666096050	E:/Game Development/Visual Studio Solutions/Coral3D/shaders/compiled/simple_shader.frag.spv	182e19d82932b3f8
+20	164	7106503666015523	E:/Game Development/Visual Studio Solutions/Coral3D/shaders/compiled/simple_shader.vert.spv	319095c1d4500e9c
+171	1629	7106503680709184	coral_renderer/CMakeFiles/coral_renderer.dir/main.cpp.obj	5b91ae9e0709491
+65	678	7106503671121466	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_thread.c.obj	bff58b93f2a56d1b
+9	159	7106503665950164	E:/Game Development/Visual Studio Solutions/Coral3D/shaders/compiled/PosNormCol.frag.spv	ba83fc1d44361fa5
+56	688	7106503671171506	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_joystick.c.obj	155a4d402b926fee
+75	689	7106503671202083	third_party/GLFW/src/CMakeFiles/glfw.dir/egl_context.c.obj	720789878af83506
+13	169	7106503666060571	E:/Game Development/Visual Studio Solutions/Coral3D/shaders/compiled/PosNormCol.vert.spv	9a4b34331b5d0f2
+45	677	7106503671040770	third_party/GLFW/src/CMakeFiles/glfw.dir/vulkan.c.obj	d687613254603224
+221	1206	7106503676460200	coral_renderer/CMakeFiles/coral_renderer.dir/coral_descriptors.cpp.obj	4c08920c9ecc7551
+49	667	7106503671000731	third_party/GLFW/src/CMakeFiles/glfw.dir/window.c.obj	b83095e4b715bc19
+53	679	7106503671126467	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_init.c.obj	aee4bdf0f24be977
+62	669	7106503670990704	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_time.c.obj	406eae6337b59224
+42	681	7106503671111455	third_party/GLFW/src/CMakeFiles/glfw.dir/monitor.c.obj	c00f6f9bbf18e104
+78	686	7106503671156488	third_party/GLFW/src/CMakeFiles/glfw.dir/osmesa_context.c.obj	c429fa4f29a15e5f
+2286	2599	7106503688603797	coral_renderer/coral_renderer.exe	92864a5f2f7c8346
+59	683	7106503671181544	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_monitor.c.obj	e5281a6601c9ad8f
+35	680	7106503671126467	third_party/GLFW/src/CMakeFiles/glfw.dir/init.c.obj	5f4a50f3267d8484
+72	685	7106503671171506	third_party/GLFW/src/CMakeFiles/glfw.dir/wgl_context.c.obj	3afd0e43a8a16dc7
+38	682	7106503671181544	third_party/GLFW/src/CMakeFiles/glfw.dir/input.c.obj	ad4c648576f9cac1
+689	743	7106503671802670	third_party/GLFW/src/glfw3.lib	72cb3f0d3bdbe8a5
+31	684	7106503671126467	third_party/GLFW/src/CMakeFiles/glfw.dir/context.c.obj	1ba1283f035e00a8
+69	687	7106503671161503	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_window.c.obj	b606f65291c42a2c
+187	873	7106503673133551	coral_renderer/CMakeFiles/coral_renderer.dir/vk_initializers.cpp.obj	b5447a272bda0e1f
+208	778	7106503672185184	coral_renderer/CMakeFiles/coral_renderer.dir/coral_utils.cpp.obj	db0a0874561cc25
+175	834	7106503672740729	coral_renderer/CMakeFiles/coral_renderer.dir/coral_window.cpp.obj	50e2c5cf9cf55551
+206	1164	7106503676049082	coral_renderer/CMakeFiles/coral_renderer.dir/coral_camera.cpp.obj	b1c7ef6d3ffce87e
+217	1462	7106503679028147	coral_renderer/CMakeFiles/coral_renderer.dir/coral_frame_info.cpp.obj	7fc0aec244739071
+24	1621	7106503680606807	third_party/CMakeFiles/vkbootstrap.dir/vkbootstrap/VkBootstrap.cpp.obj	90b228a58cfb5773
+199	1184	7106503676247466	coral_renderer/CMakeFiles/coral_renderer.dir/coral_renderer.cpp.obj	dc606ce2cb83384e
+211	1402	7106503678416660	coral_renderer/CMakeFiles/coral_renderer.dir/coral_texture.cpp.obj	4e5ce193de00006
+196	1395	7106503678363087	coral_renderer/CMakeFiles/coral_renderer.dir/coral_gameobject.cpp.obj	f72964d8217310cf
 199	1559	7106254091731523	coral_renderer/CMakeFiles/coral_renderer.dir/KeyboardController.cpp.obj	4f83e50dee6e924b
-182	1501	7106254091150447	coral_renderer/CMakeFiles/coral_renderer.dir/coral_swapchain.cpp.obj	e2ca15df2dccc38
-193	1661	7106254092772725	coral_renderer/CMakeFiles/coral_renderer.dir/render_system.cpp.obj	81cca75b0728adbc
-208	1630	7106254092437959	coral_renderer/CMakeFiles/coral_renderer.dir/coral_buffer.cpp.obj	75d5b7c40039e476
-27	1631	7106254092452962	third_party/CMakeFiles/tinyobjloader.dir/tinyobjloader/tiny_obj_loader.cc.obj	cc3766067532a1e2
-1631	1685	7106254092938493	third_party/tinyobjloader.lib	49f56a18b656ab21
-176	1691	7106254093065381	coral_renderer/CMakeFiles/coral_renderer.dir/coral_device.cpp.obj	ff18d7db912bfbb1
-1762	1802	7106254094127468	third_party/vkbootstrap.lib	70c0e9f308a489de
-185	2203	7106254098192492	coral_renderer/CMakeFiles/coral_renderer.dir/coral_mesh.cpp.obj	d7ba5beaa3207a9d
-170	2402	7106254100179112	coral_renderer/CMakeFiles/coral_renderer.dir/first_app.cpp.obj	8a161ac1b163f960
-4	1536	7106254660594083	coral_renderer/CMakeFiles/coral_renderer.dir/first_app.cpp.obj	8a161ac1b163f960
-1537	1816	7106254661657224	coral_renderer/coral_renderer.exe	850b509407927fc3
-15	1334	7106254852595647	coral_renderer/CMakeFiles/coral_renderer.dir/coral_mesh.cpp.obj	d7ba5beaa3207a9d
-12	1552	7106254854789982	coral_renderer/CMakeFiles/coral_renderer.dir/first_app.cpp.obj	8a161ac1b163f960
-1552	1900	7106254856463351	coral_renderer/coral_renderer.exe	850b509407927fc3
-12	1532	7106255061056604	coral_renderer/CMakeFiles/coral_renderer.dir/first_app.cpp.obj	8a161ac1b163f960
-1532	1870	7106255062595740	coral_renderer/coral_renderer.exe	850b509407927fc3
-11	104	7106255327192328	E:/Game Development/Visual Studio Solutions/Coral3D/shaders/compiled/simple_shader.frag.spv	182e19d82932b3f8
-104	1592	7106255342057017	coral_renderer/CMakeFiles/coral_renderer.dir/first_app.cpp.obj	8a161ac1b163f960
-1592	1921	7106255343578850	coral_renderer/coral_renderer.exe	850b509407927fc3
-5	1755	7106258321900344	coral_renderer/CMakeFiles/coral_renderer.dir/first_app.cpp.obj	8a161ac1b163f960
-1755	2046	7106258322990440	coral_renderer/coral_renderer.exe	850b509407927fc3
-14	780	7106263745495515	coral_renderer/CMakeFiles/coral_renderer.dir/render_system.cpp.obj	81cca75b0728adbc
-11	1521	7106263752889651	coral_renderer/CMakeFiles/coral_renderer.dir/first_app.cpp.obj	8a161ac1b163f960
-1521	1794	7106263753902887	coral_renderer/coral_renderer.exe	850b509407927fc3
-11	784	7106264205820664	coral_renderer/CMakeFiles/coral_renderer.dir/render_system.cpp.obj	81cca75b0728adbc
-784	1055	7106264206779792	coral_renderer/coral_renderer.exe	850b509407927fc3
-15	805	7106267987278596	coral_renderer/CMakeFiles/coral_renderer.dir/render_system.cpp.obj	81cca75b0728adbc
-12	1337	7106267992594490	coral_renderer/CMakeFiles/coral_renderer.dir/coral_mesh.cpp.obj	d7ba5beaa3207a9d
-1337	1613	7106267993675018	coral_renderer/coral_renderer.exe	850b509407927fc3
+190	1404	7106503678441675	coral_renderer/CMakeFiles/coral_renderer.dir/coral_swapchain.cpp.obj	e2ca15df2dccc38
+202	1442	7106503678815744	coral_renderer/CMakeFiles/coral_renderer.dir/render_system.cpp.obj	81cca75b0728adbc
+214	1504	7106503679441539	coral_renderer/CMakeFiles/coral_renderer.dir/coral_buffer.cpp.obj	75d5b7c40039e476
+28	1510	7106503679506540	third_party/CMakeFiles/tinyobjloader.dir/tinyobjloader/tiny_obj_loader.cc.obj	cc3766067532a1e2
+1510	1558	7106503679895179	third_party/tinyobjloader.lib	49f56a18b656ab21
+184	1592	7106503680325618	coral_renderer/CMakeFiles/coral_renderer.dir/coral_device.cpp.obj	ff18d7db912bfbb1
+1621	1660	7106503680959876	third_party/vkbootstrap.lib	70c0e9f308a489de
+193	2066	7106503685059739	coral_renderer/CMakeFiles/coral_renderer.dir/coral_mesh.cpp.obj	d7ba5beaa3207a9d
+178	2286	7106503687269589	coral_renderer/CMakeFiles/coral_renderer.dir/first_app.cpp.obj	8a161ac1b163f960
+2	233	7106489360033212	build.ninja	d3ef501823688633
+8	862	7106505503687010	coral_renderer/CMakeFiles/coral_renderer.dir/coral_texture.cpp.obj	4e5ce193de00006
+12	310	7106505571471142	coral_renderer/coral_renderer.exe	92864a5f2f7c8346

+ 1 - 1
out/build/x64-Debug/CMakeCache.txt

@@ -141,7 +141,7 @@ CMAKE_INSTALL_SYSCONFDIR:PATH=etc
 CMAKE_LINKER:FILEPATH=C:/Program Files/Microsoft Visual Studio/2022/Enterprise/VC/Tools/MSVC/14.36.32532/bin/Hostx64/x64/link.exe
 
 //make program
-CMAKE_MAKE_PROGRAM:FILEPATH=C:/Program Files/Microsoft Visual Studio/2022/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/Ninja/ninja.exe
+CMAKE_MAKE_PROGRAM:FILEPATH=C:/PROGRA~1/MICROS~2/2022/ENTERP~1/Common7/IDE/COMMON~1/MICROS~1/CMake/Ninja/ninja.exe
 
 //Flags used by the linker during the creation of modules during
 // all build types.

+ 2 - 2
out/build/x64-Debug/CMakeFiles/rules.ninja

@@ -110,7 +110,7 @@ rule RERUN_CMAKE
 # Rule for cleaning all built files.
 
 rule CLEAN
-  command = "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\CommonExtensions\Microsoft\CMake\Ninja\ninja.exe" $FILE_ARG -t clean $TARGETS
+  command = C:\PROGRA~1\MICROS~2\2022\ENTERP~1\Common7\IDE\COMMON~1\MICROS~1\CMake\Ninja\ninja.exe $FILE_ARG -t clean $TARGETS
   description = Cleaning all built files...
 
 
@@ -118,6 +118,6 @@ rule CLEAN
 # Rule for printing all primary targets available.
 
 rule HELP
-  command = "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\CommonExtensions\Microsoft\CMake\Ninja\ninja.exe" -t targets
+  command = C:\PROGRA~1\MICROS~2\2022\ENTERP~1\Common7\IDE\COMMON~1\MICROS~1\CMake\Ninja\ninja.exe -t targets
   description = All primary targets available:
 

+ 2 - 2
out/build/x64-Debug/Testing/Temporary/LastTest.log

@@ -1,3 +1,3 @@
-Start testing: Jul 08 00:54 Romance Daylight Time
+Start testing: Jul 10 01:29 Romance Daylight Time
 ----------------------------------------------------------
-End testing: Jul 08 00:54 Romance Daylight Time
+End testing: Jul 10 01:29 Romance Daylight Time

+ 1 - 9
out/build/x64-Debug/build.ninja

@@ -203,14 +203,6 @@ build coral_renderer\CMakeFiles\coral_renderer.dir\coral_camera.cpp.obj: CXX_COM
   TARGET_COMPILE_PDB = coral_renderer\CMakeFiles\coral_renderer.dir\
   TARGET_PDB = coral_renderer\coral_renderer.pdb
 
-build coral_renderer\CMakeFiles\coral_renderer.dir\KeyboardController.cpp.obj: CXX_COMPILER__coral_renderer_unscanned_Debug E$:\Game$ Development\Visual$ Studio$ Solutions\Coral3D\coral_renderer\KeyboardController.cpp || cmake_object_order_depends_target_coral_renderer
-  FLAGS = /DWIN32 /D_WINDOWS /EHsc /Zi /Ob0 /Od /RTC1 -std:c++latest -MDd /W4 /WX /w
-  INCLUDES = -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\GLFW\include" -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\glm" -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\vkbootstrap" -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\tinyobjloader" -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\vma" -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\stb_image" -external:IC:\VulkanSDK\1.3.250.0\Include -external:W0
-  OBJECT_DIR = coral_renderer\CMakeFiles\coral_renderer.dir
-  OBJECT_FILE_DIR = coral_renderer\CMakeFiles\coral_renderer.dir
-  TARGET_COMPILE_PDB = coral_renderer\CMakeFiles\coral_renderer.dir\
-  TARGET_PDB = coral_renderer\coral_renderer.pdb
-
 build coral_renderer\CMakeFiles\coral_renderer.dir\coral_utils.cpp.obj: CXX_COMPILER__coral_renderer_unscanned_Debug E$:\Game$ Development\Visual$ Studio$ Solutions\Coral3D\coral_renderer\coral_utils.cpp || cmake_object_order_depends_target_coral_renderer
   FLAGS = /DWIN32 /D_WINDOWS /EHsc /Zi /Ob0 /Od /RTC1 -std:c++latest -MDd /W4 /WX /w
   INCLUDES = -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\GLFW\include" -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\glm" -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\vkbootstrap" -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\tinyobjloader" -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\vma" -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\stb_image" -external:IC:\VulkanSDK\1.3.250.0\Include -external:W0
@@ -259,7 +251,7 @@ build coral_renderer\CMakeFiles\coral_renderer.dir\coral_descriptors.cpp.obj: CX
 #############################################
 # Link the executable coral_renderer\coral_renderer.exe
 
-build coral_renderer\coral_renderer.exe: CXX_EXECUTABLE_LINKER__coral_renderer_Debug coral_renderer\CMakeFiles\coral_renderer.dir\main.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_window.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\first_app.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_pipeline.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_device.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\vk_initializers.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_swapchain.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_mesh.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_gameobject.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_renderer.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\render_system.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_camera.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\KeyboardController.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_utils.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_texture.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_buffer.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_frame_info.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_descriptors.cpp.obj | C$:\VulkanSDK\1.3.250.0\Lib\vulkan-1.lib third_party\GLFW\src\glfw3.lib third_party\vkbootstrap.lib third_party\tinyobjloader.lib C$:\VulkanSDK\1.3.250.0\Lib\vulkan-1.lib || coral_renderer\Shaders third_party\GLFW\src\glfw3.lib third_party\tinyobjloader.lib third_party\vkbootstrap.lib
+build coral_renderer\coral_renderer.exe: CXX_EXECUTABLE_LINKER__coral_renderer_Debug coral_renderer\CMakeFiles\coral_renderer.dir\main.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_window.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\first_app.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_pipeline.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_device.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\vk_initializers.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_swapchain.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_mesh.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_gameobject.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_renderer.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\render_system.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_camera.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_utils.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_texture.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_buffer.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_frame_info.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_descriptors.cpp.obj | C$:\VulkanSDK\1.3.250.0\Lib\vulkan-1.lib third_party\GLFW\src\glfw3.lib third_party\vkbootstrap.lib third_party\tinyobjloader.lib C$:\VulkanSDK\1.3.250.0\Lib\vulkan-1.lib || coral_renderer\Shaders third_party\GLFW\src\glfw3.lib third_party\tinyobjloader.lib third_party\vkbootstrap.lib
   FLAGS = /DWIN32 /D_WINDOWS /EHsc /Zi /Ob0 /Od /RTC1 -MDd
   LINK_FLAGS = /machine:x64 /debug /INCREMENTAL /subsystem:console
   LINK_LIBRARIES = C:\VulkanSDK\1.3.250.0\Lib\vulkan-1.lib  third_party\GLFW\src\glfw3.lib  third_party\vkbootstrap.lib  third_party\tinyobjloader.lib  C:\VulkanSDK\1.3.250.0\Lib\vulkan-1.lib  kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib

BIN
out/build/x64-Debug/coral_renderer/CMakeFiles/coral_renderer.dir/vc140.pdb


BIN
out/build/x64-Debug/coral_renderer/coral_renderer.ilk


BIN
out/build/x64-Debug/coral_renderer/coral_renderer.pdb


BIN
out/build/x64-Debug/third_party/CMakeFiles/tinyobjloader.dir/tinyobjloader.pdb


BIN
out/build/x64-Debug/third_party/CMakeFiles/vkbootstrap.dir/vkbootstrap.pdb


BIN
out/build/x64-Debug/third_party/GLFW/src/CMakeFiles/glfw.dir/glfw.pdb


+ 1 - 1
out/build/x64-Release/.cmake/api/v1/reply/codemodel-v2-007909d810b7554c8f7d.json → out/build/x64-Release/.cmake/api/v1/reply/codemodel-v2-d628cc49a00582cb6a44.json

@@ -146,7 +146,7 @@
 				{
 					"directoryIndex" : 1,
 					"id" : "coral_renderer::@189d46817749ee15bd40",
-					"jsonFile" : "target-coral_renderer-Release-25450927b358396c972e.json",
+					"jsonFile" : "target-coral_renderer-Release-c1beb400199d0bf255ba.json",
 					"name" : "coral_renderer",
 					"projectIndex" : 0
 				},

+ 2 - 2
out/build/x64-Release/.cmake/api/v1/reply/index-2023-07-07T22-13-23-0605.json → out/build/x64-Release/.cmake/api/v1/reply/index-2023-07-10T00-03-04-0164.json

@@ -26,7 +26,7 @@
 	"objects" : 
 	[
 		{
-			"jsonFile" : "codemodel-v2-007909d810b7554c8f7d.json",
+			"jsonFile" : "codemodel-v2-d628cc49a00582cb6a44.json",
 			"kind" : "codemodel",
 			"version" : 
 			{
@@ -108,7 +108,7 @@
 						}
 					},
 					{
-						"jsonFile" : "codemodel-v2-007909d810b7554c8f7d.json",
+						"jsonFile" : "codemodel-v2-d628cc49a00582cb6a44.json",
 						"kind" : "codemodel",
 						"version" : 
 						{

+ 5 - 19
out/build/x64-Release/.cmake/api/v1/reply/target-coral_renderer-Release-25450927b358396c972e.json → out/build/x64-Release/.cmake/api/v1/reply/target-coral_renderer-Release-c1beb400199d0bf255ba.json

@@ -137,8 +137,7 @@
 				27,
 				29,
 				31,
-				33,
-				35
+				33
 			]
 		}
 	],
@@ -150,11 +149,11 @@
 		},
 		{
 			"backtrace" : 3,
-			"id" : "tinyobjloader::@037116246cbfaaeb5504"
+			"id" : "vkbootstrap::@037116246cbfaaeb5504"
 		},
 		{
 			"backtrace" : 3,
-			"id" : "vkbootstrap::@037116246cbfaaeb5504"
+			"id" : "tinyobjloader::@037116246cbfaaeb5504"
 		},
 		{
 			"backtrace" : 3,
@@ -235,8 +234,7 @@
 				27,
 				29,
 				31,
-				33,
-				35
+				33
 			]
 		},
 		{
@@ -259,8 +257,7 @@
 				26,
 				28,
 				30,
-				32,
-				34
+				32
 			]
 		}
 	],
@@ -398,17 +395,6 @@
 			"path" : "coral_renderer/coral_camera.cpp",
 			"sourceGroupIndex" : 0
 		},
-		{
-			"backtrace" : 1,
-			"path" : "coral_renderer/KeyboardController.h",
-			"sourceGroupIndex" : 1
-		},
-		{
-			"backtrace" : 1,
-			"compileGroupIndex" : 0,
-			"path" : "coral_renderer/KeyboardController.cpp",
-			"sourceGroupIndex" : 0
-		},
 		{
 			"backtrace" : 1,
 			"path" : "coral_renderer/coral_utils.h",

BIN
out/build/x64-Release/.ninja_deps


+ 53 - 45
out/build/x64-Release/.ninja_log

@@ -1,53 +1,61 @@
 # ninja log v5
 9	156	7104779596285183	E:/Game Development/Visual Studio Solutions/Coral3D/shaders/compiled/PosNormCol.frag.spv	cf825d28678334f9
-19	117	7106258649300271	E:/Game Development/Visual Studio Solutions/Coral3D/shaders/compiled/simple_shader.frag.spv	b93d887ab982a112
-23	119	7106258649330306	E:/Game Development/Visual Studio Solutions/Coral3D/shaders/compiled/simple_shader.vert.spv	546ee68668f23aa2
-2254	2619	7106297270723602	coral_renderer/coral_renderer.exe	7e3dd419e8473639
-74	678	7104779601454955	third_party/GLFW/src/CMakeFiles/glfw.dir/osmesa_context.c.obj	496e01f20bcd9209
-5	1276	7106297258677388	coral_renderer/CMakeFiles/coral_renderer.dir/main.cpp.obj	f1790302c2906830
-62	684	7104779601499996	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_thread.c.obj	a42466a924400240
+11	133	7106429268398847	E:/Game Development/Visual Studio Solutions/Coral3D/shaders/compiled/simple_shader.frag.spv	b93d887ab982a112
+15	140	7106429268488934	E:/Game Development/Visual Studio Solutions/Coral3D/shaders/compiled/simple_shader.vert.spv	546ee68668f23aa2
+2330	2712	7106485666395284	coral_renderer/coral_renderer.exe	313bca28687c6013
+63	727	7106429274324712	third_party/GLFW/src/CMakeFiles/glfw.dir/osmesa_context.c.obj	496e01f20bcd9209
+12	1318	7106485653967499	coral_renderer/CMakeFiles/coral_renderer.dir/main.cpp.obj	f1790302c2906830
+51	728	7106429274092783	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_thread.c.obj	a42466a924400240
 13	150	7104779596219766	E:/Game Development/Visual Studio Solutions/Coral3D/shaders/compiled/PosNormCol.vert.spv	ab94f32c2a30bf2e
-49	690	7104779601585418	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_init.c.obj	2af4bda6680fb9a0
-59	656	7104779601316568	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_time.c.obj	560b9841c36ca334
-33	687	7104779601525013	third_party/GLFW/src/CMakeFiles/glfw.dir/init.c.obj	4c3432162dfba984
-56	686	7104779601444932	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_monitor.c.obj	4ce60cb8085bfc4a
-39	689	7104779601600433	third_party/GLFW/src/CMakeFiles/glfw.dir/monitor.c.obj	2612862b2eceab12
-43	665	7104779601344460	third_party/GLFW/src/CMakeFiles/glfw.dir/vulkan.c.obj	650f0f592dd807bc
-43	822	7106297254123686	coral_renderer/CMakeFiles/coral_renderer.dir/coral_descriptors.cpp.obj	b0367d1ec1f05597
-46	666	7104779601379504	third_party/GLFW/src/CMakeFiles/glfw.dir/window.c.obj	113330e8f19e6d35
-30	697	7104779601710836	third_party/GLFW/src/CMakeFiles/glfw.dir/context.c.obj	caf4694f76bba58d
-71	691	7104779601590430	third_party/GLFW/src/CMakeFiles/glfw.dir/egl_context.c.obj	a0bf0e9de6ce9e23
-52	692	7104779601595430	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_joystick.c.obj	f4448c998c46664c
-68	734	7104779602103214	third_party/GLFW/src/CMakeFiles/glfw.dir/wgl_context.c.obj	82f0c3e97c492c8b
-65	757	7104779602339034	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_window.c.obj	551096e38bb5f60a
-131	703	7106258655165123	coral_renderer/CMakeFiles/coral_renderer.dir/vk_initializers.cpp.obj	c2015483347b5af0
-36	709	7104779601826801	third_party/GLFW/src/CMakeFiles/glfw.dir/input.c.obj	fdab6c055128488
-757	812	7104779602863802	third_party/GLFW/src/glfw3.lib	72cb3f0d3bdbe8a5
-198	705	7104779601806786	coral_renderer/CMakeFiles/coral_renderer.dir/coral_utils.cpp.obj	42d48cfb53b9eab8
-164	894	7104779603682460	coral_renderer/CMakeFiles/coral_renderer.dir/coral_window.cpp.obj	5aa42d2c1bcd31f8
-193	1004	7104779604797660	coral_renderer/CMakeFiles/coral_renderer.dir/coral_camera.cpp.obj	4b16cea60e0205bb
-40	970	7106297255580553	coral_renderer/CMakeFiles/coral_renderer.dir/coral_frame_info.cpp.obj	ecb235014a3ff800
+38	756	7106429274612994	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_init.c.obj	2af4bda6680fb9a0
+48	750	7106429274456973	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_time.c.obj	560b9841c36ca334
+22	753	7106429274587968	third_party/GLFW/src/CMakeFiles/glfw.dir/init.c.obj	4c3432162dfba984
+44	724	7106429274324712	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_monitor.c.obj	4ce60cb8085bfc4a
+29	749	7106429274127804	third_party/GLFW/src/CMakeFiles/glfw.dir/monitor.c.obj	2612862b2eceab12
+32	726	7106429274092783	third_party/GLFW/src/CMakeFiles/glfw.dir/vulkan.c.obj	650f0f592dd807bc
+53	926	7106485650043514	coral_renderer/CMakeFiles/coral_renderer.dir/coral_descriptors.cpp.obj	b0367d1ec1f05597
+35	751	7106429274127804	third_party/GLFW/src/CMakeFiles/glfw.dir/window.c.obj	113330e8f19e6d35
+19	772	7106429274825932	third_party/GLFW/src/CMakeFiles/glfw.dir/context.c.obj	caf4694f76bba58d
+60	765	7106429274729006	third_party/GLFW/src/CMakeFiles/glfw.dir/egl_context.c.obj	a0bf0e9de6ce9e23
+42	755	7106429274617990	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_joystick.c.obj	f4448c998c46664c
+57	754	7106429274612994	third_party/GLFW/src/CMakeFiles/glfw.dir/wgl_context.c.obj	82f0c3e97c492c8b
+54	796	7106429275051677	third_party/GLFW/src/CMakeFiles/glfw.dir/win32_window.c.obj	551096e38bb5f60a
+159	844	7106429275540693	coral_renderer/CMakeFiles/coral_renderer.dir/vk_initializers.cpp.obj	c2015483347b5af0
+26	747	7106429274512019	third_party/GLFW/src/CMakeFiles/glfw.dir/input.c.obj	fdab6c055128488
+796	861	7106429275681608	third_party/GLFW/src/glfw3.lib	72cb3f0d3bdbe8a5
+184	725	7106429274127804	coral_renderer/CMakeFiles/coral_renderer.dir/coral_utils.cpp.obj	42d48cfb53b9eab8
+15	663	7106485647424091	coral_renderer/CMakeFiles/coral_renderer.dir/coral_window.cpp.obj	5aa42d2c1bcd31f8
+42	768	7106485648467894	coral_renderer/CMakeFiles/coral_renderer.dir/coral_camera.cpp.obj	4b16cea60e0205bb
+50	1061	7106485651399493	coral_renderer/CMakeFiles/coral_renderer.dir/coral_frame_info.cpp.obj	ecb235014a3ff800
 23	2032	7104779615050702	third_party/CMakeFiles/vkbootstrap.dir/vkbootstrap/VkBootstrap.cpp.obj	af5f1ea9e4fd4598
-26	696	7106297252872029	coral_renderer/CMakeFiles/coral_renderer.dir/coral_renderer.cpp.obj	536923ca1217490
-35	1254	7106297258421101	coral_renderer/CMakeFiles/coral_renderer.dir/coral_texture.cpp.obj	3044726d4ca58275
-23	895	7106297254874049	coral_renderer/CMakeFiles/coral_renderer.dir/coral_gameobject.cpp.obj	7af10ed630ad47db
-32	946	7106297255343837	coral_renderer/CMakeFiles/coral_renderer.dir/KeyboardController.cpp.obj	2650616bdd2aa775
-17	1045	7106297256312033	coral_renderer/CMakeFiles/coral_renderer.dir/coral_swapchain.cpp.obj	22c9a5c659fb8d53
-29	1132	7106297257188598	coral_renderer/CMakeFiles/coral_renderer.dir/render_system.cpp.obj	d56caeed4073939d
-11	1221	7106297258073718	coral_renderer/CMakeFiles/coral_renderer.dir/coral_pipeline.cpp.obj	6a470fcfeaba3762
+36	759	7106485648387526	coral_renderer/CMakeFiles/coral_renderer.dir/coral_renderer.cpp.obj	536923ca1217490
+45	1351	7106485654278862	coral_renderer/CMakeFiles/coral_renderer.dir/coral_texture.cpp.obj	3044726d4ca58275
+33	974	7106485650552955	coral_renderer/CMakeFiles/coral_renderer.dir/coral_gameobject.cpp.obj	7af10ed630ad47db
+181	1434	7106429281382518	coral_renderer/CMakeFiles/coral_renderer.dir/KeyboardController.cpp.obj	2650616bdd2aa775
+27	1122	7106485651951618	coral_renderer/CMakeFiles/coral_renderer.dir/coral_swapchain.cpp.obj	22c9a5c659fb8d53
+39	1130	7106485652062715	coral_renderer/CMakeFiles/coral_renderer.dir/render_system.cpp.obj	d56caeed4073939d
+21	1283	7106485653587850	coral_renderer/CMakeFiles/coral_renderer.dir/coral_pipeline.cpp.obj	6a470fcfeaba3762
 9	21	0	clean	21a4d0550fd2b6b1
-14	1342	7106297259340508	coral_renderer/CMakeFiles/coral_renderer.dir/coral_device.cpp.obj	fe2c6aa298e5b96a
-38	1441	7106297260317252	coral_renderer/CMakeFiles/coral_renderer.dir/coral_buffer.cpp.obj	863241225d8b3aaa
+24	1367	7106485654471111	coral_renderer/CMakeFiles/coral_renderer.dir/coral_device.cpp.obj	fe2c6aa298e5b96a
+47	1520	7106485655985658	coral_renderer/CMakeFiles/coral_renderer.dir/coral_buffer.cpp.obj	863241225d8b3aaa
 2032	2074	7104779615462390	third_party/vkbootstrap.lib	70c0e9f308a489de
 27	2314	7104779617880538	third_party/CMakeFiles/tinyobjloader.dir/tinyobjloader/tiny_obj_loader.cc.obj	5d11c9f136fb5987
 2314	2351	7104779618251840	third_party/tinyobjloader.lib	49f56a18b656ab21
-9	2046	7106297266372213	coral_renderer/CMakeFiles/coral_renderer.dir/first_app.cpp.obj	fcf8e517d4069e99
-20	2254	7106297268376417	coral_renderer/CMakeFiles/coral_renderer.dir/coral_mesh.cpp.obj	8602f41971fb97e9
-8	906	7106308508514268	coral_renderer/CMakeFiles/coral_renderer.dir/main.cpp.obj	f1790302c2906830
-15	929	7106308508705078	coral_renderer/CMakeFiles/coral_renderer.dir/coral_texture.cpp.obj	3044726d4ca58275
-12	1613	7106308515550037	coral_renderer/CMakeFiles/coral_renderer.dir/first_app.cpp.obj	fcf8e517d4069e99
-1613	1992	7106308517942615	coral_renderer/coral_renderer.exe	7e3dd419e8473639
-4	915	7106308970833624	coral_renderer/CMakeFiles/coral_renderer.dir/coral_texture.cpp.obj	3044726d4ca58275
-916	1293	7106308973159188	coral_renderer/coral_renderer.exe	7e3dd419e8473639
-11	917	7106309155134575	coral_renderer/CMakeFiles/coral_renderer.dir/coral_texture.cpp.obj	3044726d4ca58275
-918	1290	7106309157420515	coral_renderer/coral_renderer.exe	7e3dd419e8473639
+18	2090	7106485661685966	coral_renderer/CMakeFiles/coral_renderer.dir/first_app.cpp.obj	fcf8e517d4069e99
+30	2330	7106485664062851	coral_renderer/CMakeFiles/coral_renderer.dir/coral_mesh.cpp.obj	8602f41971fb97e9
+15	666	7106505870434909	coral_renderer/CMakeFiles/coral_renderer.dir/coral_window.cpp.obj	5aa42d2c1bcd31f8
+44	780	7106505871543892	coral_renderer/CMakeFiles/coral_renderer.dir/coral_camera.cpp.obj	4b16cea60e0205bb
+37	799	7106505871746352	coral_renderer/CMakeFiles/coral_renderer.dir/coral_renderer.cpp.obj	536923ca1217490
+56	905	7106505872803808	coral_renderer/CMakeFiles/coral_renderer.dir/coral_descriptors.cpp.obj	b0367d1ec1f05597
+34	965	7106505873409249	coral_renderer/CMakeFiles/coral_renderer.dir/coral_gameobject.cpp.obj	7af10ed630ad47db
+53	1152	7106505875284754	coral_renderer/CMakeFiles/coral_renderer.dir/coral_frame_info.cpp.obj	ecb235014a3ff800
+28	1170	7106505875433091	coral_renderer/CMakeFiles/coral_renderer.dir/coral_swapchain.cpp.obj	22c9a5c659fb8d53
+41	1212	7106505875824308	coral_renderer/CMakeFiles/coral_renderer.dir/render_system.cpp.obj	d56caeed4073939d
+22	1307	7106505876823199	coral_renderer/CMakeFiles/coral_renderer.dir/coral_pipeline.cpp.obj	6a470fcfeaba3762
+47	1328	7106505877035669	coral_renderer/CMakeFiles/coral_renderer.dir/coral_texture.cpp.obj	3044726d4ca58275
+11	1368	7106505877459649	coral_renderer/CMakeFiles/coral_renderer.dir/main.cpp.obj	f1790302c2906830
+25	1442	7106505878186601	coral_renderer/CMakeFiles/coral_renderer.dir/coral_device.cpp.obj	fe2c6aa298e5b96a
+50	1508	7106505878833147	coral_renderer/CMakeFiles/coral_renderer.dir/coral_buffer.cpp.obj	863241225d8b3aaa
+18	2101	7106505884770786	coral_renderer/CMakeFiles/coral_renderer.dir/first_app.cpp.obj	fcf8e517d4069e99
+31	2362	7106505887346686	coral_renderer/CMakeFiles/coral_renderer.dir/coral_mesh.cpp.obj	8602f41971fb97e9
+2362	2730	7106505889670078	coral_renderer/coral_renderer.exe	313bca28687c6013

+ 2 - 2
out/build/x64-Release/Testing/Temporary/LastTest.log

@@ -1,3 +1,3 @@
-Start testing: Jul 08 00:13 Romance Daylight Time
+Start testing: Jul 10 02:03 Romance Daylight Time
 ----------------------------------------------------------
-End testing: Jul 08 00:13 Romance Daylight Time
+End testing: Jul 10 02:03 Romance Daylight Time

+ 1 - 9
out/build/x64-Release/build.ninja

@@ -203,14 +203,6 @@ build coral_renderer\CMakeFiles\coral_renderer.dir\coral_camera.cpp.obj: CXX_COM
   TARGET_COMPILE_PDB = coral_renderer\CMakeFiles\coral_renderer.dir\
   TARGET_PDB = coral_renderer\coral_renderer.pdb
 
-build coral_renderer\CMakeFiles\coral_renderer.dir\KeyboardController.cpp.obj: CXX_COMPILER__coral_renderer_unscanned_Release E$:\Game$ Development\Visual$ Studio$ Solutions\Coral3D\coral_renderer\KeyboardController.cpp || cmake_object_order_depends_target_coral_renderer
-  FLAGS = /DWIN32 /D_WINDOWS /EHsc /O2 /Ob2 /DNDEBUG -std:c++latest -MD /W4 /WX /w
-  INCLUDES = -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\GLFW\include" -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\glm" -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\vkbootstrap" -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\tinyobjloader" -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\vma" -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\stb_image" -external:IC:\VulkanSDK\1.3.250.0\Include -external:W0
-  OBJECT_DIR = coral_renderer\CMakeFiles\coral_renderer.dir
-  OBJECT_FILE_DIR = coral_renderer\CMakeFiles\coral_renderer.dir
-  TARGET_COMPILE_PDB = coral_renderer\CMakeFiles\coral_renderer.dir\
-  TARGET_PDB = coral_renderer\coral_renderer.pdb
-
 build coral_renderer\CMakeFiles\coral_renderer.dir\coral_utils.cpp.obj: CXX_COMPILER__coral_renderer_unscanned_Release E$:\Game$ Development\Visual$ Studio$ Solutions\Coral3D\coral_renderer\coral_utils.cpp || cmake_object_order_depends_target_coral_renderer
   FLAGS = /DWIN32 /D_WINDOWS /EHsc /O2 /Ob2 /DNDEBUG -std:c++latest -MD /W4 /WX /w
   INCLUDES = -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\GLFW\include" -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\glm" -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\vkbootstrap" -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\tinyobjloader" -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\vma" -I"E:\Game Development\Visual Studio Solutions\Coral3D\third_party\stb_image" -external:IC:\VulkanSDK\1.3.250.0\Include -external:W0
@@ -259,7 +251,7 @@ build coral_renderer\CMakeFiles\coral_renderer.dir\coral_descriptors.cpp.obj: CX
 #############################################
 # Link the executable coral_renderer\coral_renderer.exe
 
-build coral_renderer\coral_renderer.exe: CXX_EXECUTABLE_LINKER__coral_renderer_Release coral_renderer\CMakeFiles\coral_renderer.dir\main.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_window.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\first_app.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_pipeline.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_device.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\vk_initializers.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_swapchain.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_mesh.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_gameobject.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_renderer.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\render_system.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_camera.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\KeyboardController.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_utils.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_texture.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_buffer.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_frame_info.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_descriptors.cpp.obj | C$:\VulkanSDK\1.3.250.0\Lib\vulkan-1.lib third_party\GLFW\src\glfw3.lib third_party\vkbootstrap.lib third_party\tinyobjloader.lib C$:\VulkanSDK\1.3.250.0\Lib\vulkan-1.lib || coral_renderer\Shaders third_party\GLFW\src\glfw3.lib third_party\tinyobjloader.lib third_party\vkbootstrap.lib
+build coral_renderer\coral_renderer.exe: CXX_EXECUTABLE_LINKER__coral_renderer_Release coral_renderer\CMakeFiles\coral_renderer.dir\main.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_window.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\first_app.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_pipeline.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_device.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\vk_initializers.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_swapchain.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_mesh.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_gameobject.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_renderer.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\render_system.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_camera.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_utils.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_texture.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_buffer.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_frame_info.cpp.obj coral_renderer\CMakeFiles\coral_renderer.dir\coral_descriptors.cpp.obj | C$:\VulkanSDK\1.3.250.0\Lib\vulkan-1.lib third_party\GLFW\src\glfw3.lib third_party\vkbootstrap.lib third_party\tinyobjloader.lib C$:\VulkanSDK\1.3.250.0\Lib\vulkan-1.lib || coral_renderer\Shaders third_party\GLFW\src\glfw3.lib third_party\tinyobjloader.lib third_party\vkbootstrap.lib
   FLAGS = /DWIN32 /D_WINDOWS /EHsc /O2 /Ob2 /DNDEBUG -MD
   LINK_FLAGS = /machine:x64 /INCREMENTAL:NO /subsystem:console
   LINK_LIBRARIES = C:\VulkanSDK\1.3.250.0\Lib\vulkan-1.lib  third_party\GLFW\src\glfw3.lib  third_party\vkbootstrap.lib  third_party\tinyobjloader.lib  C:\VulkanSDK\1.3.250.0\Lib\vulkan-1.lib  kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib