C# Unity 2D:动画师单帧动画-即时转换

C# Unity 2D:动画师单帧动画-即时转换,c#,animation,unity3d,2d,C#,Animation,Unity3d,2d,我使用Animator更容易控制玩家精灵的状态。玩家精灵对于不同的动画只有一个帧(每个不同的状态只有一个图像),然而-animator显示它播放每一帧17ms 所以当玩家跳跃时,我将animator参数“InAir”设置为true,它应该立即将精灵图像更改为InAir状态,但对于单帧,前一个状态是可见的(我相信这是因为animator需要17ms才能转换),并且在游戏中跳跃后会出现明显的闪烁 我应该如何实现即时转换,或者是否可以更改动画播放时间?我最近在Unity 5.3中遇到了同样的问题。我通

我使用Animator更容易控制玩家精灵的状态。玩家精灵对于不同的动画只有一个帧(每个不同的状态只有一个图像),然而-animator显示它播放每一帧17ms

所以当玩家跳跃时,我将animator参数“InAir”设置为true,它应该立即将精灵图像更改为InAir状态,但对于单帧,前一个状态是可见的(我相信这是因为animator需要17ms才能转换),并且在游戏中跳跃后会出现明显的闪烁


我应该如何实现即时转换,或者是否可以更改动画播放时间?

我最近在Unity 5.3中遇到了同样的问题。我通过清除转换的所有退出时间值来修复它。由于某些原因,在创建过渡时,会为其指定一些退出时间默认值,从而为动画添加额外的时间

可以通过单击过渡并查看Inspector窗口来查看它

当我禁用“有退出时间”复选框并清除“设置”下的值时,我的转换立即发生


我在本视频中实现了一个类似的系统,您只需在某些点暂停,看看我是如何做到的。。。完全复制我所做的一切,它将像我的一样工作:)你好,谢谢你的回复。不幸的是,此设置没有帮助,您的设置中存在与我的设置相同的问题-在_animator.SetBool生效之前将绘制1-3帧…啊,我明白了。。。这可能是一个统一的错误。。。你发错误报告了吗?我在想,我希望我做错了什么。无论如何,谢谢你的视频。