public void LinearFlight(TimeUpdateEvent e, HangarCameraLinearFlightNode hangar) { HangarCameraFlightDataComponent hangarCameraFlightData = hangar.hangarCameraFlightData; float t = Mathf.Pow(Mathf.Clamp01(((UnityTime.time - hangar.hangarCameraFlightData.StartFlightTime) - hangarCameraFlightData.ArcFlightTime) / hangarCameraFlightData.LinearFlightTime), 0.3333333f); hangar.cameraRootTransform.Root.position = Vector3.Lerp(hangarCameraFlightData.ArcToLinearPoint, hangarCameraFlightData.DestinationCameraPosition, t); }
public void StopLinearFlight(NodeRemoveEvent e, HangarCameraLinearFlightNode hangar) { HangarCameraFlightDataComponent hangarCameraFlightData = hangar.hangarCameraFlightData; hangar.cameraRootTransform.Root.position = hangarCameraFlightData.DestinationCameraPosition; }
public void StartLinearFlight(NodeAddedEvent e, HangarCameraLinearFlightNode hangar) { hangar.hangarCameraFlightData.ArcToLinearPoint = hangar.cameraRootTransform.Root.position; }