728x90
반응형
The object of type 'Menu' has been destroyed but you are still trying to access it. Your script should either check if it is null or you should not destroy the object.
라는 오류가 뜰 때 해결 방법
1. 스크립트가 파괴될 때
private void OnDestroy()
{
StopAllCoroutines();
CancelInvoke();
}
를 해준다.
코루틴은 새로운 장면을 로드한 뒤에도 계속 실행됨
2. 그냥 귀찮을 때
while문이나 for문을 이용해도 문제 없을 때 반복문을 사용
3. 만약 나처럼 바보같이 두 개의 scene에서 같은 스크립트를 오브젝트에 붙여 사용했다면
같은 스크립트를 다수의 scene에 사용하는 경우(public없이 스크립트 자체만 사용할때)
한 scene에 붙은 오브젝트를 끄고
한 오브젝트 start()부분에
DontDestroyOnLoad(this);
을 해두자...
하.... 개고생..
아마 Invoke()도 이렇게하면 해결 될 듯...
728x90
반응형
'Unity' 카테고리의 다른 글
[Unity] 유니티 tip 100 정리(Unity tip 100) - total 21 tips (0) | 2019.04.19 |
---|---|
[Unity]원하는 함수/코루틴 차례 대로 실행 시키기 - 간단한 방법 (0) | 2019.04.10 |
[Unity] Emission을 Script로 접근하기 (0) | 2019.04.04 |
[Unity] Post Processing 기능 정리 (0) | 2019.04.03 |
[Unity]멀티 디스플레이 VR적용하기(Multi Display - Window+VR) (0) | 2019.04.03 |