프로젝트

Unity 비활성화된 Object에 접근하기

짱이 되었어 2022. 11. 1. 12:27

unity에서 비활성화한 object를 script에서 불러와보자.

우선, 비활성화한 object 위에 상위 object를 만들어야 한다. 이때 상위 object는 활성화된 상태여야 한다.

(비활성화된 object를 script에서 바로 불러올 수 없다.)

 

이후, script에서 상위 오브젝트(활성화 상태)를 가져온다.

접근하고자 하는 오브젝트 = GameObject.Find("상위 오브젝트").transform.Find("접근하고자 하는 오브젝트").gameObject;

 

 

예시

A: 활성화된 상위 Object

B: 접근하고자 하는 Object (비활성화 상태)

using System.Collections;
using System.Collections.Generic;
using UnityEngine;


public class ExampleScript : MonoBehaviour {
    public GameObject b;
    
    private void Awake() {
    	b = GameObject.Find("A").transform.Find("B").gameObject;	// 비활성화 상태
    }
    
    public void OnActive() {
    	b.SetActive(true);
    }
}