- 213 名前:名前は開発中のものです。 mailto:sage [2014/03/21(金) 17:14:32.04 ID: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で前進後進旋回をしたいのですが、壁にぶつかるとキーを入力していなくても勝手に旋回をしてしまいます。 どうすれば壁にぶつかっても勝手に移動しなくなりますか?
|

|