| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- #if !UNITY_2019_1_OR_NEWER
- #define CINEMACHINE_TIMELINE
- #endif
- #if CINEMACHINE_TIMELINE
- using System;
- using UnityEngine;
- using UnityEngine.Playables;
- using UnityEngine.Timeline;
- using Cinemachine;
- //namespace Cinemachine.Timeline
- //{
- [Serializable]
- [TrackClipType(typeof(CinemachineShot))]
- #if !UNITY_2018_2_OR_NEWER
- [TrackMediaType(TimelineAsset.MediaType.Script)]
- #endif
- #if UNITY_2018_3_OR_NEWER
- [TrackBindingType(typeof(CinemachineBrain), TrackBindingFlags.None)]
- #else
- [TrackBindingType(typeof(CinemachineBrain))]
- #endif
- [TrackColor(0.53f, 0.0f, 0.08f)]
- public class CinemachineTrack : TrackAsset
- {
- public override Playable CreateTrackMixer(
- PlayableGraph graph, GameObject go, int inputCount)
- {
- #if !UNITY_2019_2_OR_NEWER
- // Hack to set the display name of the clip to match the vcam
- foreach (var c in GetClips())
- {
- CinemachineShot shot = (CinemachineShot)c.asset;
- CinemachineVirtualCameraBase vcam = shot.VirtualCamera.Resolve(graph.GetResolver());
- if (vcam != null)
- c.displayName = vcam.Name;
- }
- #endif
- var mixer = ScriptPlayable<CinemachineMixer>.Create(graph);
- mixer.SetInputCount(inputCount);
- return mixer;
- }
- }
- //}
- #endif
|