-
카테고리
-
세부 분야
게임 프로그래밍
-
해결 여부
미해결
void start() 호출 이유
21.02.07 17:17 작성 조회수 133
0
Managers mg = Managers.Instance;
player.cs 파일에서 이 부분을 중단점으로 잡고 디버그를 해서
한줄씩 계속 진행을 해봤었는데
mg 가 값을 받고 난 뒤
Player.Start() 구문을 빠져나간 뒤 다시 Manager.Start()로
들어가더군요.
Player.Start()는 제가 이해하기로는 unity ui 상에서
Player라는 컴포넌트가 있으니까 실행이 되는 걸로
이해했습니다.
그런데 Manager.Start()는 왜 다시 또 실행이 되는 건가요?
제 나름대로는 Init()에서 Manager 컴포넌트를 만들어서라고 추측 하긴 했습니다만 그렇다면 만든 지점에서
Start로 넘어가야 하는게 아닌가 해서 이해가 안됩니다.
답변을 작성해보세요.
0
0
Rookiss
지식공유자2021.02.07
https://docs.unity3d.com/Manual/ExecutionOrder.html
당장 오브젝트를 만들었다고 바로 Start가 호출되는게 아니고,
게임 씬에 오브젝트가 배치되고 난 다음에 유니티가 호출을 해주게 됩니다.
오브젝트가 여러개가 있다면 Start 호출 순서는 또 달라질 수 있습니다.
답변 2