经过和同事的一起测试,发现是由于 Blend Curves 是Auto的原因,如果改成Manully就不会出现这个问题
因为Timeline内的Clip和Track都是拓展过后的,并没有研究原始文件是否会有这个问题。
整个项目基于2017.4.16F1
贴一下更改代码:
1 创建Clip的时候
自定义 Track代码:
protected override Playable CreatePlayable(PlayableGraph graph, GameObject go, TimelineClip clip)
{
// var _targetClip = clip.asset as (这里可以换成你自己拓展的Clip类);
// other code
// 这里需要手动设置一下,让Clip类知道TimelineClip的存在。目前没有找到如何获取Clip类的TimelineClip
// 如果有人能交流一下如何从原生代码中获取TimelineClip就好了
_targetClip.SetTimelineClip(clip);
if (clip.blendInCurveMode != TimelineClip.BlendCurveMode.Manual)
{
clip.mixInCurve = AnimationCurve.Linear(0, 0, 1, 1);
}
if (clip.blendOutCurveMode != TimelineClip.BlendCurveMode.Manual)
{
clip.mixOutCurve = AnimationCurve.Linear(0, 1,