ハロー餃子

餃子好きが興じてプログラムを書き始めました

Rigidbodyの設定を変えた話

f:id:oigyoza:20160515234824p:plain f:id:oigyoza:20160515234825p:plain

キャラの移動をRigidbody.MovePositionで行い
壁をBoxColliderで作成したのですが
キャラが壁にぶつかるとガタガタ震える事案が発生。

FixedUpdateとか Inputの手法を変えたりとか いくつか試したものの
結局、キャラのRigidBodyのInterpolate「None」にするだけで
ガタガタが解消しました。

元々の設定は「Interpolate」。試しに「Extrapolate」にするとガタガタ。
とりあえず「None」一択。

Unity - マニュアル: Rigidbody

Unity - スクリプトリファレンス: Rigidbody.MovePosition

 

Unityのバージョンアップで解決した話

qiita.com

5.2.3f1で開発してたので、まんまと引っかかりました。

自分の場合、実機に転送すると3Dモデルが欠けたり明滅したり…
このあたりが原因?とにかく直って良かった。

Quaternion newRotatation = Quaternion.LookRotation(playerToMove);
playerRigidbody.MoveRotation(newRotatation);