地面移动后,刚体保持在空中(有时)

Rigidbody keeps in air, after ground moved (sometimes)

我有一个预制件(绿色菱形),它有一个玩家可以控制的刚体和地面。

在某些情况下,预制件似乎没有意识到地面被移动了。一旦被什么东西击中或者如果地面移动得更远(有时),预制件就会掉在地上。

由于玩家只会触发移动地面,我是否必须以某种方式通知预制件必须刷新其物理特性?

尝试了每个 "Interpolation" 和 "Collision Detection" 组合。

查看 Rigidbody.WakeUp。这可能是你要找的,虽然我不知道是否有更好的方法来解决这个问题。

我认为处理正确。对于我的具体情况。就是用rigidbody代替直接(transformation)操纵地面。

在固定更新方法中使用 "this.rigidbody.rotation = ... " 后,我也无法重现此问题。

http://docs.unity3d.com/ScriptReference/MonoBehaviour.FixedUpdate.html

FixedUpdate should be used instead of Update when dealing with Rigidbody. For example when adding a force to a rigidbody, you have to apply the force every fixed frame inside FixedUpdate instead of every frame inside Update.