コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【Unity】他のシーンのゲームオブジェクト参照を Inspector で設定できる「Guid Based Reference」紹介

はじめに

「Guid Based Reference」を Unity プロジェクトに導入することで
他のシーンのゲームオブジェクト参照を Inspector で設定できるようになります

使用例

f:id:baba_s:20180902164739p:plain

例えば SceneA の「Cube」というゲームオブジェクトを SceneB から参照したい場合、

f:id:baba_s:20180902164744p:plain

「Cube」に「Guid Component」をアタッチします

using UnityEngine;

public class Example : MonoBehaviour
{
    public GuidReference m_guidReference;

    private void Start()
    {
        Debug.Log( m_guidReference.gameObject.name );
    }
}

そして、上記のようなスクリプトを作成して

f:id:baba_s:20180902164907p:plain

SceneB のゲームオブジェクトにアタッチします

f:id:baba_s:20180902164914p:plain

あとは、作成したスクリプトの「Guid Reference」の欄に
SceneA の「Cube」をアタッチすることで、
SceneB から SceneA の「Cube」を参照できるようになります