호출시점에 따라서 초기화가 안되었는데 다른 스크립트가 먼저 실행될 경우도있다.
이 경우 프로퍼티를 사용하여 지연된 초기화를 구현할 수 있다.
다만 사용할때마다 null 체크를 하기때문에
자주 사용되는 값일 경우에는 확실하게 초기화를 하거나, bool 값으로 따로 초기화 플래그를 세우는게 나을 듯 하다.
[SerializeField]
private GameObject _Castle;
public GameObject Castle {
get
{
if (_Castle == null)
{
_Castle = GameObject.FindGameObjectWithTag("Castle");
}
return _Castle;
}
set {
_Castle = value;
}
}
'🌍 Unity > 유니티 프로그래밍' 카테고리의 다른 글
유니티 오브젝트 바라보게 하기 (1) | 2019.01.07 |
---|---|
유니티 로딩 화면 구현 ( Unity Loading system ) (0) | 2019.01.03 |
유니티 스크립터블 오브젝트 ( Unity Scriptableobject ) (0) | 2018.12.19 |
유니티 구글 스프레드 시트 연동 (0) | 2018.12.13 |
유니티 Unity ABC 파일 alembic 파일 넣기 (0) | 2018.11.13 |