6 float cameraRotationZ = 0;
12 void OnImGuiRender()
override
14 if (ImGui::SliderFloat(
"Rotate Around Z", &cameraRotationZ, 0.0f, 360.0f)) {
15 rotateCamera(cameraRotationZ);
19 void rotateCamera(
float& _cameraRotationZ) {
20 std::shared_ptr<PerspectiveCamera> main_camera2D = std::dynamic_pointer_cast<PerspectiveCamera>(CameraManager::getInstance().getCamera(
"main"));
22 float angleRad = glm::radians(_cameraRotationZ);
23 float radius = 1000.0f;
25 float x = cos(angleRad) * radius;
26 float y = sin(angleRad) * radius;
27 float z = main_camera2D->getPosition().z;
29 glm::vec3 newEyePos = glm::vec3(x, y, z);
30 main_camera2D->setPosition(newEyePos);
32 main_camera2D->setAimPos(glm::vec3(0.0f, 0.0f, 0.0f));