【学習】C# スクリプトの作成とアタッチ(MonoBehaviour の基本)

広告

これまでの学習では、

  • GameObject を配置した
  • Transform で位置や大きさを設定した

という形でシーンを編集してきました。

前回の「ちなみに」でも触れたとおり、GameObject は C# の側からも扱えるオブジェクトです。配置や見た目はエディタで決めたうえで、動きや判定はコードで制御します。

C# スクリプトをアタッチする

という仕組みが必要です。

今回は C# スクリプトの作成 と GameObject へのアタッチ を学び、Start と Update の役割を理解します。

今日学ぶこと

  • MonoBehaviour … Unity のスクリプトの基底クラス
  • Start … ゲーム開始時に1回だけ実行される
  • Update … 毎フレーム実行される
  • アタッチ … スクリプトを GameObject に紐付ける

スクリプトを作成する

  1. Project ウィンドウで右クリック
  2. Create → C# Script を選択
  3. ファイル名を入力(例:PlayerController)
  4. 作成された .cs ファイルをダブルクリックして Visual Studio で開く

デフォルトのスクリプトの中身

新規作成したスクリプトには、次のようなコードが入っています。

using UnityEngine;

public class PlayerController : MonoBehaviour
{
    void Start()
    {
    }

    void Update()
    {
    }
}
要素説明
MonoBehaviourUnity のスクリプトの基底クラス。これを継承すると Unity から呼び出せる
Start()ゲーム開始時(オブジェクトが有効になったとき)に1回だけ実行される
Update()毎フレーム(約 1/60 秒ごと)に実行される

スクリプトをアタッチする

スクリプトを GameObject に紐付けることを アタッチ といいます。

  1. Project ウィンドウのスクリプトファイルを、Hierarchy の GameObject にドラッグ&ドロップ
  2. または、GameObject を選択した状態で Add Component をクリックし、スクリプト名で検索して追加
  3. アタッチされると、Inspector にスクリプトのコンポーネントが表示される

アタッチした GameObject が有効な間、Start と Update が呼ばれます。


Start で初期化する

Start は、オブジェクトが登場したときに1回だけ実行されます。初期化処理を書きます。

void Start()
{
    Debug.Log("ゲームが始まりました");
}

Debug.Log は Console ウィンドウにメッセージを出力します。再生して確認できます。


Update で毎フレーム処理する

Update は、毎フレーム実行されます。キャラクターの移動や入力の取得など、継続的な処理を書きます。

void Update()
{
    // 毎フレーム実行される
}

注意:Update の中に重い処理を書くと、ゲームが重くなります。


完成コード例

using UnityEngine;

public class PlayerController : MonoBehaviour
{
    void Start()
    {
        Debug.Log("プレイヤーが登場しました");
    }

    void Update()
    {
        // ここに毎フレームの処理を書く
    }
}

プログラムの流れ

ゲーム開始(再生ボタン)
        ↓
Start() が1回実行される
        ↓
Update() が毎フレーム実行される(繰り返し)
        ↓
ゲーム終了(停止ボタン)

重要ポイント

MonoBehaviour を継承したスクリプトを GameObject にアタッチすると、Unity が Start と Update を呼び出します。

  • Start … 初期化。1回だけ実行
  • Update … 毎フレーム実行。移動や入力処理に使う
  • アタッチ … スクリプトを GameObject にドラッグして紐付ける
  • Debug.Log … Console にログを出力。動作確認に便利

発展アイデア

スクリプトの基本が分かったら、次のステップです。

  • 変数と Inspector での編集 … public 変数で Inspector から値を設定する
  • 入力の取得 … Update でキー入力を受け取り、キャラを動かす

C# スクリプトの作成とアタッチは Unity プログラミングの第一歩 です。次は変数と Inspector の連携を学びましょう。

訪問数 3 回, 今日の訪問数 3回

広告

Unity

Posted by hidepon