Zoom, by definition, is changing the FOV. You could increase/decrease the orbits instead. See this thread: https://forum.unity.com/threads/cin...ntrol-to-freelook-camera.505541/#post-3509905
This script is using the legacy input system, do you know how I would go about changing it to the new input system as i cant just put "mouse scrollwheel" as the input axis
Change the Awake() method to this, then it will use the attached CinemachineInputProvider's Z Axis as input. Code (CSharp): void Awake() { freelook = GetComponentInChildren<CinemachineFreeLook>(); if (freelook != null) { originalOrbits = new CinemachineFreeLook.Orbit[freelook.m_Orbits.Length]; for (int i = 0; i < originalOrbits.Length; i++) { originalOrbits[i].m_Height = freelook.m_Orbits[i].m_Height; originalOrbits[i].m_Radius = freelook.m_Orbits[i].m_Radius; } #if UNITY_EDITOR SaveDuringPlay.SaveDuringPlay.OnHotSave -= RestoreOriginalOrbits; SaveDuringPlay.SaveDuringPlay.OnHotSave += RestoreOriginalOrbits; #endif var provider = freelook.GetInputAxisProvider(); if (provider != null) zAxis.SetInputAxisProvider(2, provider); } }
CinemachineInputProvider is assuming that you are connecting the Z axis to a single float value input source. Either set one up in the Input system for the scroll wheel and use it, or make your own modified version of the CinemachineInputProvider script that accepts a Vector2 input source.