【3Dゲームエンジン】Unity質問スレッド8at GAMEDEV
【3Dゲームエンジン】Unity質問スレッド8 - 暇つぶし2ch213:名前は開発中のものです。
14/03/21 17:14:32.04 a7pMEZ2l.net
void Update () {
if (Mathf.Abs(Input.GetAxisRaw("Vertical")) > 0.5) {
rigidbody.MovePosition(transform.position - transform.up * Input.GetAxis("Vertical") * speed);
}
if (Mathf.Abs (Input.GetAxisRaw ("Horizontal")) > 0.5) {
Quaternion nowAngle = Quaternion.Euler(
transform.rotation.eulerAngles.x,
transform.rotation.eulerAngles.y,
transform.rotation.eulerAngles.z
);
Quaternion afterAngle = Quaternion.Euler(
nowAngle.eulerAngles.x,
nowAngle.eulerAngles.y + circle_speed * Input.GetAxis("Horizontal"),
nowAngle.eulerAngles.z
);
rigidbody.MoveRotation(afterAngle);
}
}

水平方向のみに移動したいのでFreeze PositionのYとFreeze RotationのXとZをONにしています。
WASDで前進後進旋回をしたいのですが、壁にぶつかるとキーを入力していなくても勝手に旋回をしてしまいます。
どうすれば壁にぶつかっても勝手に移動しなくなりますか?


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch