internal static void OnRecordingArmed(this TrackAsset track, PlayableDirector director) { if (track == null) return; var animClip = track.FindRecordingAnimationClipAtTime(director.time); if (animClip == null) return; s_ActiveClips[track] = animClip; }
internal static void OnRecordingTimeChanged(this TrackAsset track, PlayableDirector director) { if (!(track == null)) { AnimationClip animationClip = track.FindRecordingAnimationClipAtTime(director.get_time()); AnimationClip activeRecordingAnimationClip = track.GetActiveRecordingAnimationClip(); if (activeRecordingAnimationClip != animationClip) { TrackAssetRecordingExtensions.s_ActiveClips[track] = animationClip; } } }
internal static void OnRecordingArmed(this TrackAsset track, PlayableDirector director) { if (!(track == null)) { AnimationClip animationClip = track.FindRecordingAnimationClipAtTime(director.get_time()); if (!(animationClip == null)) { TrackAssetRecordingExtensions.s_ActiveClips[track] = animationClip; track.SetShowInlineCurves(true); } } }
internal static void OnRecordingTimeChanged(this TrackAsset track, PlayableDirector director) { if (track == null) return; var animClip = track.FindRecordingAnimationClipAtTime(director.time); AnimationClip prevClip = track.GetActiveRecordingAnimationClip(); if (prevClip != animClip) { s_ActiveClips[track] = animClip; } }
// Given an animation track, return the clip that we are currently recording to static AnimationClip GetRecordingClip(TrackAsset asset, WindowState state, out double startTime, out double timeScale) { startTime = 0; timeScale = 1; TimelineClip displayBackground = null; asset.FindRecordingClipAtTime(state.editSequence.time, out displayBackground); var animClip = asset.FindRecordingAnimationClipAtTime(state.editSequence.time); if (displayBackground != null) { startTime = displayBackground.start; timeScale = displayBackground.timeScale; } return(animClip); }