キャラクターを speed
付きで動かします。
Y 軸に沿った速度は無視されます。 スピードは「メートル/秒」です。重力は自動的に適用されます。 キャラクターが接地しているかどうかを返します。 これは 1 フレームごとに Move や SimpleMove を呼び出すためだけに使用することをお勧めします。
using UnityEngine; using System.Collections;
[RequireComponent(typeof(CharacterController))] public class ExampleClass : MonoBehaviour { public float speed = 3.0F; public float rotateSpeed = 3.0F; void Update() { CharacterController controller = GetComponent<CharacterController>(); transform.Rotate(0, Input.GetAxis("Horizontal") * rotateSpeed, 0); Vector3 forward = transform.TransformDirection(Vector3.forward); float curSpeed = speed * Input.GetAxis("Vertical"); controller.SimpleMove(forward * curSpeed); } }