2017-04-01 151 views
1

我對Unity3D中的移動感到困惑。 讓我澄清我的理解。Unity3D移動方式(Translate,MovePosition,velocity =,AddForce)

我認爲運動取決於

  • 方法(翻譯,MovePosition,速度=,AddForce)
  • Rigidbody.isKinematic

而且關係可以總結如下表所列清單。

movement way table

信息源

信息源是docs.unity3d.com和my experiment script

doc說MovePosition引起的平穩過渡。當isKinematic ==真,但是,我無法重現它。

問題。

這張表是否正確?

回答

1

您需要在rigibody上設置Interpolate下拉列表爲Interpolate然後在isKinimatic時使用MovePosition平滑過渡。注意:它仍然會移動得非常快,它將移動到1 FixedUpdate,但是如果您step update您會看到它試圖平滑過渡。

+0

謝謝你的回答。也許你認爲'step update'就是這樣的。 https://gist.github.com/onionmk2/278d09b1f0beb7199ec42a7d6b4c4298我無法弄清'順利過渡',但。但在我看來,你的答案表明我的列表清單基本正確。謝謝 :) –