From f38901c955fe8bcb0487e1f0157b0c0fe51fef0d Mon Sep 17 00:00:00 2001 From: Gregory Labute Date: Wed, 16 Jul 2025 09:50:04 -0400 Subject: [PATCH] InheritPosition was not inheriting the camera position in all cases --- com.unity.cinemachine/CHANGELOG.md | 7 +++++++ .../Runtime/Behaviours/CinemachineCamera.cs | 2 -- .../Runtime/Core/CinemachineVirtualCameraBase.cs | 1 + 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/com.unity.cinemachine/CHANGELOG.md b/com.unity.cinemachine/CHANGELOG.md index d0847fc59..e240b3b1f 100644 --- a/com.unity.cinemachine/CHANGELOG.md +++ b/com.unity.cinemachine/CHANGELOG.md @@ -4,6 +4,13 @@ All notable changes to this package will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). +## [3.1.5] - 2025-012-31 +### Unreleased + +### Bugfixes +- InheritPosition was not inheriting the camera position in all cases. + + ## [3.1.4] - 2025-06-10 ### Bugfixes diff --git a/com.unity.cinemachine/Runtime/Behaviours/CinemachineCamera.cs b/com.unity.cinemachine/Runtime/Behaviours/CinemachineCamera.cs index 34190d5a9..853d28f32 100644 --- a/com.unity.cinemachine/Runtime/Behaviours/CinemachineCamera.cs +++ b/com.unity.cinemachine/Runtime/Behaviours/CinemachineCamera.cs @@ -137,8 +137,6 @@ public override void OnTargetObjectWarped(Transform target, Vector3 positionDelt /// World-space orientation to take public override void ForceCameraPosition(Vector3 pos, Quaternion rot) { - PreviousStateIsValid = false; - UpdatePipelineCache(); for (int i = 0; i < m_Pipeline.Length; ++i) if (m_Pipeline[i] != null) diff --git a/com.unity.cinemachine/Runtime/Core/CinemachineVirtualCameraBase.cs b/com.unity.cinemachine/Runtime/Core/CinemachineVirtualCameraBase.cs index 9accea611..06b6ad4cc 100644 --- a/com.unity.cinemachine/Runtime/Core/CinemachineVirtualCameraBase.cs +++ b/com.unity.cinemachine/Runtime/Core/CinemachineVirtualCameraBase.cs @@ -677,6 +677,7 @@ void ForceCameraPosition(CinemachineVirtualCameraBase vcam, Vector3 pos, Quatern } if (ParentCamera is CinemachineVirtualCameraBase vcamParent) vcamParent.ForceCameraPosition(vcam, pos, rot); + PreviousStateIsValid = true; } ///