【Unity】他のクラスから自由に呼び出せるクラスを作成する

こんにちは。のっくんです。

Unityで他のクラスから参照できる変数やメソッドを作る方法をご紹介します。

過去に以下の記事で紹介しましたが、今回紹介する方法の方が簡単です。

【Unity】他オブジェクトのスクリプトの変数を参照する方法

以下のようにして呼び出される側のクラスを作ります。

public class HogeClass:MonoBehaviour
{
    static public HogeClass instance;
    public int fuga;

    private void Awake()
    {
        if(instance == null)
        {
            instance = this;
        }
    }

    public void hoge(){

    }
}

呼び出す時には以下のようにすればおk。

// メソッド呼び出し
HogeClass.instance.hoge();
// メンバー参照
HogeClass.instance.fuga;

こうすることでGameObjectをFindする手間が省けます。