change: more alterations to the new movement and settingvalue system
This commit is contained in:
@@ -69,111 +69,77 @@ public class CameraSettingsProcessor : MonoBehaviour{
|
||||
axisCont = mainCamera.GetComponent<CinemachineInputAxisController>();
|
||||
|
||||
// Initialize camera settings values from current values
|
||||
data.mainFieldOfView.value = main.Lens.FieldOfView;
|
||||
data.mainFieldOfView.targetValue = main.Lens.FieldOfView;
|
||||
|
||||
data.orbitPositionDamping.value = orbit.TrackerSettings.PositionDamping;
|
||||
data.orbitTargetOffset.value = orbit.TargetOffset;
|
||||
data.orbitPositionDamping.targetValue = orbit.TrackerSettings.PositionDamping;
|
||||
data.orbitTargetOffset.targetValue = orbit.TargetOffset;
|
||||
|
||||
data.axisLookEnabledX.value = axisCont.Controllers[0].Enabled;
|
||||
data.axisLookEnabledY.value = axisCont.Controllers[1].Enabled;
|
||||
data.axisLookEnabledX.targetValue = axisCont.Controllers[0].Enabled;
|
||||
data.axisLookEnabledY.targetValue = axisCont.Controllers[1].Enabled;
|
||||
|
||||
data.axisLookGainX.value = axisCont.Controllers[0].Input.Gain;
|
||||
data.axisLookGainY.value = axisCont.Controllers[1].Input.Gain;
|
||||
data.axisLookGainX.targetValue = axisCont.Controllers[0].Input.Gain;
|
||||
data.axisLookGainY.targetValue = axisCont.Controllers[1].Input.Gain;
|
||||
|
||||
data.orbitFollowTopHeight.value = orbit.Orbits.Top.Height;
|
||||
data.orbitFollowTopRadius.value = orbit.Orbits.Top.Radius;
|
||||
data.orbitFollowCenterHeight.value = orbit.Orbits.Center.Height;
|
||||
data.orbitFollowCenterRadius.value = orbit.Orbits.Center.Radius;
|
||||
data.orbitFollowBottomHeight.value = orbit.Orbits.Bottom.Height;
|
||||
data.orbitFollowBottomRadius.value = orbit.Orbits.Bottom.Radius;
|
||||
data.orbitFollowTopHeight.targetValue = orbit.Orbits.Top.Height;
|
||||
data.orbitFollowTopRadius.targetValue = orbit.Orbits.Top.Radius;
|
||||
data.orbitFollowCenterHeight.targetValue = orbit.Orbits.Center.Height;
|
||||
data.orbitFollowCenterRadius.targetValue = orbit.Orbits.Center.Radius;
|
||||
data.orbitFollowBottomHeight.targetValue = orbit.Orbits.Bottom.Height;
|
||||
data.orbitFollowBottomRadius.targetValue = orbit.Orbits.Bottom.Radius;
|
||||
|
||||
data.rotationComposerScreenPos.value = rotComp.Composition.ScreenPosition;
|
||||
data.cameraOffsetOffset.value = offset.Offset;
|
||||
data.rotationComposerScreenPos.targetValue = rotComp.Composition.ScreenPosition;
|
||||
data.cameraOffsetOffset.targetValue = offset.Offset;
|
||||
|
||||
// And copy to the original
|
||||
original = (CameraSettingData)data.Clone();
|
||||
}
|
||||
|
||||
void Update(){
|
||||
EaseToNewSmoothingValues();
|
||||
ProcessCameraValues();
|
||||
// EaseToNewSmoothingValues();
|
||||
// ProcessCameraValues();
|
||||
}
|
||||
|
||||
void EaseToNewSmoothingValues(){
|
||||
data.mainFieldOfView.currentSmoothing = Mathf.MoveTowards(data.mainFieldOfView.currentSmoothing, data.mainFieldOfView.smoothing, data.mainFieldOfView.easing * Time.deltaTime);
|
||||
data.mainFieldOfView.SmoothAndEase();
|
||||
|
||||
data.orbitPositionDamping.currentSmoothing = Mathf.MoveTowards(data.orbitPositionDamping.currentSmoothing, data.orbitPositionDamping.smoothing, easing.orbitPositionDamping.easing * Time.deltaTime);
|
||||
data.orbitTargetOffset.currentSmoothing = Mathf.MoveTowards(data.mainFieldOfView.currentSmoothing, data.mainFieldOfView.smoothing, easing.mainFieldOfView.easing * Time.deltaTime);
|
||||
data.orbitPositionDamping.SmoothAndEase();
|
||||
data.orbitTargetOffset.SmoothAndEase();
|
||||
|
||||
data.axisLookGainX.currentSmoothing = Mathf.MoveTowards(data.mainFieldOfView.currentSmoothing, data.mainFieldOfView.smoothing, easing.mainFieldOfView.easing * Time.deltaTime);
|
||||
data.axisLookGainY.currentSmoothing = Mathf.MoveTowards(data.mainFieldOfView.currentSmoothing, data.mainFieldOfView.smoothing, easing.mainFieldOfView.easing * Time.deltaTime);
|
||||
data.axisLookGainX.SmoothAndEase();
|
||||
data.axisLookGainY.SmoothAndEase();
|
||||
|
||||
data.orbitFollowTopHeight.currentSmoothing = Mathf.MoveTowards(data.mainFieldOfView.currentSmoothing, data.mainFieldOfView.smoothing, easing.mainFieldOfView.easing * Time.deltaTime);
|
||||
data.orbitFollowTopRadius.currentSmoothing = Mathf.MoveTowards(data.mainFieldOfView.currentSmoothing, data.mainFieldOfView.smoothing, easing.mainFieldOfView.easing * Time.deltaTime);
|
||||
data.orbitFollowCenterHeight.currentSmoothing = Mathf.MoveTowards(data.mainFieldOfView.currentSmoothing, data.mainFieldOfView.smoothing, easing.mainFieldOfView.easing * Time.deltaTime);
|
||||
data.orbitFollowCenterRadius.currentSmoothing = Mathf.MoveTowards(data.mainFieldOfView.currentSmoothing, data.mainFieldOfView.smoothing, easing.mainFieldOfView.easing * Time.deltaTime);
|
||||
data.orbitFollowBottomHeight.currentSmoothing = Mathf.MoveTowards(data.mainFieldOfView.currentSmoothing, data.mainFieldOfView.smoothing, easing.mainFieldOfView.easing * Time.deltaTime);
|
||||
data.orbitFollowBottomRadius.currentSmoothing = Mathf.MoveTowards(data.mainFieldOfView.currentSmoothing, data.mainFieldOfView.smoothing, easing.mainFieldOfView.easing * Time.deltaTime);
|
||||
data.orbitFollowTopHeight.SmoothAndEase();
|
||||
data.orbitFollowTopRadius.SmoothAndEase();
|
||||
data.orbitFollowCenterHeight.SmoothAndEase();
|
||||
data.orbitFollowCenterRadius.SmoothAndEase();
|
||||
data.orbitFollowBottomHeight.SmoothAndEase();
|
||||
data.orbitFollowBottomRadius.SmoothAndEase();
|
||||
|
||||
data.rotationComposerScreenPos.currentSmoothing = Mathf.MoveTowards(data.mainFieldOfView.currentSmoothing, data.mainFieldOfView.smoothing, easing.mainFieldOfView.easing * Time.deltaTime);
|
||||
data.cameraOffsetOffset.currentSmoothing = Mathf.MoveTowards(data.mainFieldOfView.currentSmoothing, data.mainFieldOfView.smoothing, easing.mainFieldOfView.easing * Time.deltaTime);
|
||||
data.rotationComposerScreenPos.SmoothAndEase();
|
||||
data.cameraOffsetOffset.SmoothAndEase();
|
||||
}
|
||||
|
||||
void ProcessCameraValues(){
|
||||
main.Lens.FieldOfView = Mathf.SmoothDamp(main.Lens.FieldOfView,
|
||||
data.mainFieldOfView.value, ref data.mainFieldOfView.refVel,
|
||||
data.mainFieldOfView.smoothing);
|
||||
main.Lens.FieldOfView = data.mainFieldOfView.Value;
|
||||
|
||||
axisCont.Controllers[0].Enabled = data.axisLookEnabledX.value;
|
||||
|
||||
axisCont.Controllers[1].Enabled = data.axisLookEnabledY.value;
|
||||
axisCont.Controllers[0].Enabled = data.axisLookEnabledX.Value;
|
||||
axisCont.Controllers[1].Enabled = data.axisLookEnabledY.Value;
|
||||
|
||||
axisCont.Controllers[0].Input.Gain = Mathf.SmoothDamp(axisCont.Controllers[0].Input.Gain,
|
||||
data.axisLookGainX.value, ref data.axisLookGainX.refVel,
|
||||
data.axisLookGainX.smoothing);
|
||||
axisCont.Controllers[0].Input.Gain = data.axisLookGainX.Value;
|
||||
axisCont.Controllers[1].Input.Gain = data.axisLookGainY.Value;
|
||||
|
||||
orbit.TrackerSettings.PositionDamping = data.orbitPositionDamping.Value;
|
||||
orbit.TargetOffset = data.orbitTargetOffset.Value;
|
||||
|
||||
orbit.Orbits.Top.Height = data.orbitFollowTopHeight.Value;
|
||||
orbit.Orbits.Top.Radius = data.orbitFollowTopRadius.Value;
|
||||
orbit.Orbits.Center.Height = data.orbitFollowCenterHeight.Value;
|
||||
orbit.Orbits.Center.Radius = data.orbitFollowCenterRadius.Value;
|
||||
orbit.Orbits.Bottom.Height = data.orbitFollowBottomHeight.Value;
|
||||
orbit.Orbits.Bottom.Radius = data.orbitFollowBottomRadius.Value;
|
||||
|
||||
axisCont.Controllers[1].Input.Gain = Mathf.SmoothDamp(axisCont.Controllers[1].Input.Gain,
|
||||
data.axisLookGainY.value, ref data.axisLookGainY.refVel,
|
||||
data.axisLookGainY.smoothing);
|
||||
rotComp.Composition.ScreenPosition = data.rotationComposerScreenPos.Value;
|
||||
|
||||
orbit.TargetOffset = Vector3.SmoothDamp(orbit.TargetOffset,
|
||||
data.orbitTargetOffset.value, ref data.orbitTargetOffset.refVel,
|
||||
data.orbitTargetOffset.smoothing);
|
||||
|
||||
orbit.TrackerSettings.PositionDamping = Vector3.SmoothDamp(orbit.TrackerSettings.PositionDamping,
|
||||
data.orbitPositionDamping.value, ref data.orbitPositionDamping.refVel,
|
||||
data.orbitPositionDamping.smoothing);
|
||||
|
||||
orbit.Orbits.Top.Height = Mathf.SmoothDamp(orbit.Orbits.Top.Height,
|
||||
data.orbitFollowTopHeight.value, ref data.orbitFollowTopHeight.refVel,
|
||||
data.orbitFollowTopHeight.smoothing);
|
||||
|
||||
orbit.Orbits.Top.Radius = Mathf.SmoothDamp(orbit.Orbits.Top.Radius,
|
||||
data.orbitFollowTopRadius.value, ref data.orbitFollowTopRadius.refVel,
|
||||
data.orbitFollowTopRadius.smoothing);
|
||||
|
||||
orbit.Orbits.Center.Height = Mathf.SmoothDamp(orbit.Orbits.Center.Height,
|
||||
data.orbitFollowCenterHeight.value, ref data.orbitFollowCenterHeight.refVel,
|
||||
data.orbitFollowCenterHeight.smoothing);
|
||||
|
||||
orbit.Orbits.Center.Radius = Mathf.SmoothDamp(orbit.Orbits.Center.Radius,
|
||||
data.orbitFollowCenterRadius.value, ref data.orbitFollowCenterRadius.refVel,
|
||||
data.orbitFollowCenterRadius.smoothing);
|
||||
|
||||
orbit.Orbits.Bottom.Height = Mathf.SmoothDamp(orbit.Orbits.Bottom.Height,
|
||||
data.orbitFollowBottomHeight.value, ref data.orbitFollowBottomHeight.refVel,
|
||||
data.orbitFollowBottomHeight.smoothing);
|
||||
|
||||
orbit.Orbits.Bottom.Radius = Mathf.SmoothDamp(orbit.Orbits.Bottom.Radius,
|
||||
data.orbitFollowBottomRadius.value, ref data.orbitFollowBottomRadius.refVel,
|
||||
data.orbitFollowBottomRadius.smoothing);
|
||||
|
||||
rotComp.Composition.ScreenPosition = Vector2.SmoothDamp(rotComp.Composition.ScreenPosition,
|
||||
data.rotationComposerScreenPos.value, ref data.rotationComposerScreenPos.refVel,
|
||||
data.rotationComposerScreenPos.smoothing);
|
||||
|
||||
offset.Offset = Vector3.SmoothDamp(offset.Offset,
|
||||
data.cameraOffsetOffset.value, ref data.cameraOffsetOffset.refVel,
|
||||
data.cameraOffsetOffset.smoothing);
|
||||
offset.Offset = data.cameraOffsetOffset.Value;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user