From 26df15dcaf669fe1cfac356f30c59d5137790e27 Mon Sep 17 00:00:00 2001 From: Josh Morgenstern <josh@morgenstern.dev> Date: Tue, 15 Jun 2021 00:28:17 +0200 Subject: [PATCH] [#42] changes to invocation of cameraManager --- projects/cmd_sync_test/src/main.cpp | 17 +++++------------ projects/first_mesh/src/main.cpp | 9 +++------ projects/first_triangle/src/main.cpp | 14 +++----------- 3 files changed, 11 insertions(+), 29 deletions(-) diff --git a/projects/cmd_sync_test/src/main.cpp b/projects/cmd_sync_test/src/main.cpp index a2057b01..5d1863f1 100644 --- a/projects/cmd_sync_test/src/main.cpp +++ b/projects/cmd_sync_test/src/main.cpp @@ -18,16 +18,8 @@ int main(int argc, const char** argv) { true ); - vkcv::CameraManager cameraManager(window, windowWidth, windowHeight); - uint32_t camIndex = cameraManager.addCamera(); - uint32_t controllerIndex = cameraManager.addController(vkcv::ControllerType::PILOT, camIndex); - cameraManager.getCamera(camIndex).setPosition(glm::vec3(0.f, 0.f, 3.f)); - cameraManager.getCamera(camIndex).setNearFar(0.1, 30); - - uint32_t camIndex2 = cameraManager.addCamera(); - uint32_t controllerIndex2 = cameraManager.addController(vkcv::ControllerType::TRACKBALL, camIndex2); - cameraManager.getCamera(camIndex2).setPosition(glm::vec3(0.f, 0.f, 3.f)); - cameraManager.getCamera(camIndex2).setNearFar(0.1, 30); + vkcv::CameraManager cameraManager(window, windowWidth, windowHeight); + uint32_t camIndex = cameraManager.addCamera(vkcv::ControllerType::PILOT); window.initEvents(); @@ -236,7 +228,8 @@ int main(int argc, const char** argv) { auto end = std::chrono::system_clock::now(); auto deltatime = std::chrono::duration_cast<std::chrono::microseconds>(end - start); start = end; - cameraManager.update(deltatime.count() * 0.000001); + cameraManager.update(std::chrono::duration<double>(deltatime).count()); + const float sunTheta = std::chrono::duration_cast<std::chrono::milliseconds>(end - appStartTime).count() * 0.001f; lightInfo.direction = glm::normalize(glm::vec3(std::cos(sunTheta), 1, std::sin(sunTheta))); @@ -260,7 +253,7 @@ int main(int argc, const char** argv) { lightInfo.lightMatrix = projectionLight * viewLight; lightBuffer.fill({ lightInfo }); - const glm::mat4 viewProjectionCamera = cameraManager.getActiveController().getCamera().getMVP(); + const glm::mat4 viewProjectionCamera = cameraManager.getActiveCamera().getMVP(); mainPassMatrices.clear(); mvpLight.clear(); diff --git a/projects/first_mesh/src/main.cpp b/projects/first_mesh/src/main.cpp index f444ed40..d7de08c8 100644 --- a/projects/first_mesh/src/main.cpp +++ b/projects/first_mesh/src/main.cpp @@ -142,11 +142,8 @@ int main(int argc, const char** argv) { vkcv::DrawcallInfo drawcall(renderMesh, { descriptorUsage }); vkcv::CameraManager cameraManager(window, windowWidth, windowHeight); - uint32_t camIndex = cameraManager.addCamera(); - uint32_t controllerIndex = cameraManager.addController(vkcv::ControllerType::PILOT, camIndex); - - uint32_t camIndex2 = cameraManager.addCamera(); - uint32_t controllerIndex2 = cameraManager.addController(vkcv::ControllerType::TRACKBALL, camIndex2); + uint32_t camIndex0 = cameraManager.addCamera(vkcv::ControllerType::PILOT); + uint32_t camIndex1 = cameraManager.addCamera(vkcv::ControllerType::TRACKBALL); auto start = std::chrono::system_clock::now(); @@ -172,7 +169,7 @@ int main(int argc, const char** argv) { auto deltatime = end - start; start = end; cameraManager.update(std::chrono::duration<double>(deltatime).count()); - glm::mat4 mvp = cameraManager.getActiveController().getCamera().getMVP(); + glm::mat4 mvp = cameraManager.getActiveCamera().getMVP(); vkcv::PushConstantData pushConstantData((void*)&mvp, sizeof(glm::mat4)); diff --git a/projects/first_triangle/src/main.cpp b/projects/first_triangle/src/main.cpp index 79de39c3..afa90198 100644 --- a/projects/first_triangle/src/main.cpp +++ b/projects/first_triangle/src/main.cpp @@ -163,15 +163,7 @@ int main(int argc, const char** argv) { const vkcv::ImageHandle swapchainInput = vkcv::ImageHandle::createSwapchainImageHandle(); vkcv::CameraManager cameraManager(window, windowWidth, windowHeight); - uint32_t camIndex = cameraManager.addCamera(); - cameraManager.getCamera(camIndex).setPosition(glm::vec3(0.0f, 0.0f, 0.0f)); - cameraManager.getCamera(camIndex).setCenter(glm::vec3(0.0f, 0.0f, -1.0f)); - uint32_t controllerIndex = cameraManager.addController(vkcv::ControllerType::PILOT, camIndex); - - uint32_t camIndex2 = cameraManager.addCamera(); - cameraManager.getCamera(camIndex2).setPosition(glm::vec3(0.0f, 0.0f, 0.0f)); - cameraManager.getCamera(camIndex2).setCenter(glm::vec3(0.0f, 0.0f, -1.0f)); - uint32_t controllerIndex2 = cameraManager.addController(vkcv::ControllerType::TRACKBALL, camIndex2); + uint32_t camIndex = cameraManager.addCamera(vkcv::ControllerType::PILOT); while (window.isWindowOpen()) { @@ -185,8 +177,8 @@ int main(int argc, const char** argv) { auto end = std::chrono::system_clock::now(); auto deltatime = end - start; start = end; - cameraManager.update(std::chrono::duration<double>(deltatime).count()); - glm::mat4 mvp = cameraManager.getActiveController().getCamera().getMVP(); + cameraManager.update(std::chrono::duration<double>(deltatime).count()); + glm::mat4 mvp = cameraManager.getActiveCamera().getMVP(); vkcv::PushConstantData pushConstantData((void*)&mvp, sizeof(glm::mat4)); auto cmdStream = core.createCommandStream(vkcv::QueueType::Graphics); -- GitLab