插值提供了一种方法来管理运行时 刚体一个允许游戏对象受到模拟重力和其它力的影响的组件。 更多信息
参见 术语表 游戏对象Unity 场景中的基本对象,可以表示角色、道具、场景、摄像机、路径点等。游戏对象的函数由附加在其上的组件定义。 更多信息
参见 术语表 运动中的抖动外观。
当物理模拟更新速率(由 固定时间步长一个可自定义的与帧率无关的间隔,决定何时执行物理计算和 FixedUpdate() 事件。 更多信息
参见 术语表 确定)慢于应用程序的帧率时,可能会发生抖动。如果您有一个具有基于物理的运动的刚体,并且 摄像机一个组件,用于创建场景中特定视点的图像。输出要么绘制到屏幕上,要么捕获为纹理。 更多信息
参见 术语表 在运行时跟踪该刚体,则抖动最为明显。
Unity 的 PhysX 系统提供了一种实现插值的方法。刚体上的 **插值** 设置提供了两种选项,如果刚体在运行时看起来抖动,则可以平滑其运动的外观。这些选项是 **插值** 和 **外推**。
插值和外推都计算物理更新之间刚体的姿态(即位置和旋转)。您应该选择哪一个取决于哪个选项为您的用例产生最佳视觉效果。
只有在您看到刚体运动中的抖动时,才应该使用插值或外推。默认情况下,**插值** 设置为 **无**。
启用插值或外推后,物理系统将控制刚体的变换。因此,您应该在对变换进行任何直接(非物理)更改后,使用 Physics.SyncTransforms 调用。否则,Unity 将忽略任何不是源自物理系统的变换更改。
使用刚体前两次物理更新的姿态来计算和应用当前帧中刚体的姿态。
插值使刚体看起来稍微落后于其应在的位置。这是因为插值将刚体的姿态延迟了一个物理更新,以便它有两个点可用于计算,并有足够的时间将刚体移动到新的姿态。
插值比外推更准确,但它有一个物理更新的时滞。
在刚体速度变化或有其他物理元素影响刚体运动的情况下,插值通常是最佳选择。
插值由 API 属性 RigidbodyInterpolation.Interpolate
表示。
使用刚体前一次物理更新的姿态,并预测刚体在下次物理更新中的姿态,以计算和预测当前帧中的姿态。
外推使刚体看起来稍微领先于其应在的位置。这是因为外推使用刚体的当前速度来预测刚体在下次物理更新中的姿态,以便它有两个点可用于计算。
外推通常不太准确,并且可能明显超出 碰撞当物理引擎检测到两个游戏对象的碰撞体接触或重叠时,就会发生碰撞,前提是至少有一个具有刚体组件并且正在运动。 更多信息
参见 术语表 边界(然后在下一帧、下次物理更新后自行纠正)。这是因为外推计算没有考虑未来的物理力或计算。
外推通常只适用于精度不重要的场景;例如,如果刚体以恒定速度移动,并且没有其他物理元素影响刚体的运动。
外推由 API 属性 RigidbodyInterpolation.Extrapolate
表示。