diff --git a/indra/newview/app_settings/camera/Front.xml b/indra/newview/app_settings/camera/Front.xml index e4839d48ece909e82b7ef1452eb8562499be7662..7b5d597fdf69d8f336c9c32cae459906a496a9e0 100644 --- a/indra/newview/app_settings/camera/Front.xml +++ b/indra/newview/app_settings/camera/Front.xml @@ -72,7 +72,7 @@ <key>Type</key> <string>F32</string> <key>Value</key> - <real>0.9</real> + <real>0.90322577953338623</real> </map> <key>EditCameraMovement</key> <map> diff --git a/indra/newview/app_settings/camera/Rear.xml b/indra/newview/app_settings/camera/Rear.xml index 72e6c5d93ac09fd4f3039067559a56636522f9dd..7aa36c3e59c7fd70f08cc41acf0b9f8d573a82ce 100644 --- a/indra/newview/app_settings/camera/Rear.xml +++ b/indra/newview/app_settings/camera/Rear.xml @@ -72,7 +72,7 @@ <key>Type</key> <string>F32</string> <key>Value</key> - <real>0.9</real> + <real>0.90322577953338623</real> </map> <key>EditCameraMovement</key> <map> diff --git a/indra/newview/app_settings/camera/Side.xml b/indra/newview/app_settings/camera/Side.xml index eb3b3253c11c887b594ffc66b9627005666d4b0e..8890d9cbce32be40b9d79fb0c05f961895867bb5 100644 --- a/indra/newview/app_settings/camera/Side.xml +++ b/indra/newview/app_settings/camera/Side.xml @@ -72,7 +72,7 @@ <key>Type</key> <string>F32</string> <key>Value</key> - <real>0.9</real> + <real>0.90322577953338623</real> </map> <key>EditCameraMovement</key> <map> diff --git a/indra/newview/llagentcamera.cpp b/indra/newview/llagentcamera.cpp index d4d4f8e124e1c4f767f44e3fa132c82f5a4c6555..6b1dd4c3c31107eb41bfa73c28f193a87098669d 100644 --- a/indra/newview/llagentcamera.cpp +++ b/indra/newview/llagentcamera.cpp @@ -717,7 +717,7 @@ BOOL LLAgentCamera::calcCameraMinDistance(F32 &obj_min_distance) return TRUE; } -F32 LLAgentCamera::getCameraZoomFraction() +F32 LLAgentCamera::getCameraZoomFraction(bool get_third_person) { // 0.f -> camera zoomed all the way out // 1.f -> camera zoomed all the way in @@ -727,7 +727,7 @@ F32 LLAgentCamera::getCameraZoomFraction() // already [0,1] return mHUDTargetZoom; } - else if (mFocusOnAvatar && cameraThirdPerson()) + else if (get_third_person || (mFocusOnAvatar && cameraThirdPerson())) { return clamp_rescale(mCameraZoomFraction, MIN_ZOOM_FRACTION, MAX_ZOOM_FRACTION, 1.f, 0.f); } diff --git a/indra/newview/llagentcamera.h b/indra/newview/llagentcamera.h index af65ab431ad098ee0abd0a3dc03d07468b172943..128974666e227e4855fdfd0a50e9ddc6b497aea6 100644 --- a/indra/newview/llagentcamera.h +++ b/indra/newview/llagentcamera.h @@ -272,10 +272,10 @@ class LLAgentCamera // Zoom //-------------------------------------------------------------------- public: - void handleScrollWheel(S32 clicks); // Mousewheel driven zoom - void cameraZoomIn(const F32 factor); // Zoom in by fraction of current distance - F32 getCameraZoomFraction(); // Get camera zoom as fraction of minimum and maximum zoom - void setCameraZoomFraction(F32 fraction); // Set camera zoom as fraction of minimum and maximum zoom + void handleScrollWheel(S32 clicks); // Mousewheel driven zoom + void cameraZoomIn(const F32 factor); // Zoom in by fraction of current distance + F32 getCameraZoomFraction(bool get_third_person = false); // Get camera zoom as fraction of minimum and maximum zoom + void setCameraZoomFraction(F32 fraction); // Set camera zoom as fraction of minimum and maximum zoom F32 calcCameraFOVZoomFactor(); F32 getAgentHUDTargetZoom(); diff --git a/indra/newview/llpresetsmanager.cpp b/indra/newview/llpresetsmanager.cpp index 6b83be2b7076edb725b345dbc10e2c5bd9a0a91b..eaf139b1063f30ed538e2eb2bd7178d3b570d1c3 100644 --- a/indra/newview/llpresetsmanager.cpp +++ b/indra/newview/llpresetsmanager.cpp @@ -288,7 +288,7 @@ bool LLPresetsManager::savePreset(const std::string& subdirectory, std::string n getControlNames(name_list); name_list.push_back("PresetCameraActive"); - gSavedSettings.setF32("CameraZoomFraction", gAgentCamera.getCameraZoomFraction()); + gSavedSettings.setF32("CameraZoomFraction", gAgentCamera.getCameraZoomFraction(true)); name_list.push_back("CameraZoomFraction"); } else