ニュース

Top  >   13. キャラクター  >   Q, キャラクターをスクリプトで移動させたい

Q, キャラクターをスクリプトで移動させたい

2026/03/20

メインコンテンツへスキップ
< すべてのカテゴリに戻る

A,結論

CharacterController や Transform を使うと、キーボード入力でキャラクターを動かせます。

原因 / 背景

  • キャラクターは、モデルを置くだけでは動かず、Rig・Animator・Animation Clip・制御スクリプトの組み合わせが必要です。
  • XR で使う場合は、頭や手の追従、アバターの最適化、入力との連携も意識すると実践的です。

実装 / 手順

  1. CharacterController を付けます。
  2. 入力値を取得して移動量を作ります。
  3. 回転やカメラ向きも必要に応じて追加します。

サンプルコード

using UnityEngine;

[RequireComponent(typeof(CharacterController))]
public class SimpleCharacterMover : MonoBehaviour
{
    [SerializeField] private float moveSpeed = 2.0f;
    private CharacterController controller;

    private void Awake()
    {
        controller = GetComponent<CharacterController>();
    }

    private void Update()
    {
        float h = Input.GetAxis("Horizontal");
        float v = Input.GetAxis("Vertical");
        Vector3 move = new Vector3(h, 0f, v);
        controller.Move(move * moveSpeed * Time.deltaTime);
    }
}

※ 実機確認が必要な項目は、Editor だけで判断せず、対象デバイスでも必ず動作確認してください。

難易度:Level 2(初心者)
対象プラットフォーム:PC,Unity,Visual Studio
関連キーワード:移動,CharacterController,スクリプト,aca

Level 1-2 向けバナー