DontDestroyOnLoad
DontDestroyOnLoad
- 새로운 Scene이 로드될 때, 자동으로 파괴되지 않는 target 오브젝트를 생성
- 새 레벨이 로드되면 Scene의 모든 오브젝트들은 파괴되고, 새 레벨의 오브젝트들이 로드된다.
- 레벨 스위치 중에 오브젝트를 보존하기 위해 DontDestroyOnLoad 사용
- 해당 오브젝트가 component이거나 gameobject인 경우, 그 오브젝트가 포함된 전체 hierarchy는 파괴되지 않는다.
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour {
// scene이 로드될 때 불린다
void Awake() {
// 이때, ExampleClass는 파괴되지 않는다
DontDestroyOnLoad(transform.gameObject);
}
}
- 여전히 이 오브젝트는 Destroy 함수를 통해 파괴할 수 있다
- 싱글턴 패턴 구현의 한 방법
- 객체 중복 생성 방지는 프로그래머의 몫