1
0
mirror of https://github.com/originalnicodr/CinematicUnityExplorer.git synced 2026-10-10 04:53:15 +08:00

Separated Reset button behaviour from the button check so we can properly call ResetCameraTransform on SetupFreeCamera.
Build CinematicUnityExplorer / build_dotnet (push) Has been cancelled
Build CinematicUnityExplorer / build_connector (push) Has been cancelled

This commit is contained in:
Nicolás Uriel Navall
2025-12-07 20:44:13 -03:00
parent 733887ea50
commit 1b93dd67f8
2 changed files with 19 additions and 13 deletions
+19 -13
View File
@@ -350,18 +350,18 @@ namespace UnityExplorer.UI.Panels
if (!cameraPathMover) if (!cameraPathMover)
cameraPathMover = ourCamera.gameObject.AddComponent<CatmullRom.CatmullRomMover>(); cameraPathMover = ourCamera.gameObject.AddComponent<CatmullRom.CatmullRomMover>();
string currentScene = SceneManager.GetActiveScene().name;
if (ConfigManager.Reset_Camera_Transform.Value || lastScene != currentScene){
ResetCameraTransform();
}
lastScene = currentScene;
GetFreecam().transform.position = (Vector3)currentUserCameraPosition; GetFreecam().transform.position = (Vector3)currentUserCameraPosition;
GetFreecam().transform.rotation = (Quaternion)currentUserCameraRotation; GetFreecam().transform.rotation = (Quaternion)currentUserCameraRotation;
SetFOV(currentUserCameraFov); SetFOV(currentUserCameraFov);
ourCamera.gameObject.SetActive(true); ourCamera.gameObject.SetActive(true);
ourCamera.enabled = true; ourCamera.enabled = true;
string currentScene = SceneManager.GetActiveScene().name;
if (lastScene != currentScene || ConfigManager.Reset_Camera_Transform.Value){
OnResetPosButtonClicked();
}
lastScene = currentScene;
} }
internal static void EndFreecam() internal static void EndFreecam()
@@ -916,21 +916,27 @@ namespace UnityExplorer.UI.Panels
BeginFreecam(); BeginFreecam();
} }
static void OnResetPosButtonClicked() static void ResetCameraTransform()
{ {
currentUserCameraPosition = originalCameraPosition; currentUserCameraPosition = originalCameraPosition;
currentUserCameraRotation = originalCameraRotation; currentUserCameraRotation = originalCameraRotation;
currentUserCameraFov = originalCameraFOV;
if (inFreeCamMode && ourCamera) SetCameraPosition((Vector3)currentUserCameraPosition, true);
{ SetCameraRotation((Quaternion)currentUserCameraRotation, true);
SetCameraPosition((Vector3)currentUserCameraPosition, true); ourCamera.fieldOfView = originalCameraFOV;
SetCameraRotation((Quaternion)currentUserCameraRotation, true);
ourCamera.fieldOfView = originalCameraFOV;
}
positionInput.Text = ParseUtility.ToStringForInput<Vector3>(originalCameraPosition); positionInput.Text = ParseUtility.ToStringForInput<Vector3>(originalCameraPosition);
} }
static void OnResetPosButtonClicked()
{
if (inFreeCamMode && ourCamera)
{
ResetCameraTransform();
}
}
void PositionInput_OnEndEdit(string input) void PositionInput_OnEndEdit(string input)
{ {
EventSystemHelper.SetSelectedGameObject(null); EventSystemHelper.SetSelectedGameObject(null);