版本:Unity 6 (6000.0)
语言:英语
编辑动画曲线
Dopesheet 模式下的关键帧操作

动画中的旋转

您可以使用 Unity 来为您的游戏对象Unity 场景中的基本对象,可以代表角色、道具、场景、相机、路点等。游戏对象的功能由附加到它的组件定义。更多信息
请参阅术语表
的旋转制作动画。有不同的方法来应用这些旋转,以最适合您的项目。

请参阅Unity 中的旋转和方向,以获取有关旋转表示的更多信息。

旋转插值

您可以使用动画窗口来选择 Unity 如何将旋转应用于您的游戏对象。Unity 使用插值来计算您的游戏对象在动画中从一个方向到另一个方向的视觉移动方式。

不同的插值方法在运动中看起来不同,但具有相同的结果。Unity 为您的动画提供了三种类型的插值

The Animation window, with the interpolation menu expanded to show the rotation interpolation options.
动画窗口,其中插值菜单已展开以显示旋转插值选项。

欧拉角插值

欧拉角插值将您输入的角度指定的整个运动范围应用于指定的游戏对象;如果旋转大于 360 度,则游戏对象将完全旋转,然后在正确方向停止。

欧拉角(四元数)插值使用上述插值方法,但将信息烘焙到四元数Unity 表示旋转数据的标准方式。在编写处理旋转的代码时,通常应该使用 Quaternion 类及其方法。更多信息
请参阅术语表
曲线中。此方法使用更多内存,但导致运行时略快。

四元数插值

四元数插值将在最短距离内旋转游戏对象,使其到达特定方向。例如,无论旋转值为 5 度还是 365 度,游戏对象都将旋转 5 度。

外部动画来源

来自外部来源的动画 通常包含以欧拉格式表示的旋转关键帧一个帧,标记动画中过渡的起点或终点。关键帧之间的帧称为中间帧。
请参阅术语表
动画。Unity 会重新采样这些动画,并为动画中的每一帧生成新的关键帧,以避免旋转超过旋转四元数的有效范围。

例如,如果您有两个相隔六帧的关键帧,其中 x 值从 0 度变为 270 度,则游戏对象会向相反方向旋转 90 度,因为它是最短的方式来获得相同的结果。相反,Unity 会重新采样并在每一帧添加一个关键帧,因此关键帧之间的旋转仅为 45 度,并且旋转是正确的。

解决外部动画来源的旋转问题

如果导入动画的四元数重新采样与原始动画的匹配程度不够高,您可以关闭动画重新采样,并在运行时使用原始的欧拉动画关键帧。有关更多信息,请参阅欧拉曲线重新采样

其他资源

编辑动画曲线
Dopesheet 模式下的关键帧操作