유니티 갑자기 Null Exception 떨어지는 경우 확인해보기

2020. 7. 3. 21:14유니티정보

반응형
728x170

안녕하세요 유니티 비기너입니다.

이번 시간에는 정상 작동하던 스크립트에서 Null Exception이

발생하는 원인 중 하나에 대해 알아보겠습니다.

 

프로젝트를 진행하다 보면 스크립트의 늘어나게 되고

스크립트가 타 스크립트를 값을 참조하게 되는 경우들이 존재합니다.

 

그러다 작업을 진행하다가 정상 동작을 하던 스크립트가 갑자기

NullReferenceException 발생하게 되면

다음과 같은 경우가 문제일 가능성이 있습니다.

 

 

원인 파악

스크립트들은 스크립트가 적용된 오브젝트가 활성화되어있을 때 그림과 같이 무작위로 실행됩니다.

다음 그림과 같이 1번 스크립트가 2번 스크립트의 값을 참조하는 경우

아직 활성화되지 않은 2번 스크립트를 참조하려 했기 때문에

NullReferenceException이 발생하는 경우가 발생합니다.

 

그러므로 다음과 같은 동작을 수행하여 처리가 가능합니다.

 

처리 방식

Edit < Project Settings를 선택하여 창을 엽니다.

 

Scripts Execution Order 탭에서 스크립트의 순서를 지정합니다. (Default Time이 낮을수록 우선 실행됩니다)

위와 같은 방법을 활용하여 실행 순서로 인해 발생하는 NullReferenceException을 해결하실 수 있습니다.

 

스크립트 순서를 설정하여도 계속해서 Null이 발생하신다면

참조하는 값들이 제대로 할당되어있는지 꼼꼼하게 재확인하는 것을 추천드립니다.

 

이상으로 스크립트 실행 순서를 조작하는 방법에 대해 알아보았습니다.

감사합니다.

 

 

반응형
그리드형