목표
필수 기능 구현 마무리
학습 내용
트러블 슈팅
문제:
미니 게임(Flappy Bird) 진입 시 Start Panel이 나타나지 않고 곧장 게임이 진행되며, 아무런 입력이 먹히지 않는 현상 발생
원인:
미니 게임의 UI 매니저 스크립트에 있는 Start()에서 if(StartPanel != null) startPanenl.SetActive(false); 로 비활성화하고 있으며, 미니 게임 매니저 스크립트에 있는 Start() 에서는 미니 게임 UI 매니저 안에 있는 ShowStratPanel() 메소드를 호출하며 스타트 판넬을 활성화하고 있다.
해결 방법:
두 스크립트의 중 미니 게임 매니저의 실행 순서가 우선이면 문제가 없을 수도 있으나, 근본적인 이유는 아닐 수 있다.
1. 유니티의 Script Execution Order 설정에서 MiniGameManager 의 실행 순서를 MiniGameUIManager 보다 나중으로 설정해라.
2. MiniGameUIManager의 if(StartPanel != null) startPanenl.SetActive(false); 를 삭제해라
적용한 방법:
2번의 방법으로 if(StartPanel != null) startPanenl.SetActive(false); 코드를 삭제하니 정상적으로 작동이 되었다.
회고
미니 게임 씬으로 진입 했을 때 모든 패널이 비활성화 된 상태로 초기화 해놓고, 미니 게임 매니저에서 게임이 시작하면 스타트 패널을 활성화하는 흐름을 생각했으나 두 스크립트 간의 실행 순서가 달랐기에 일어난 문제였던 것 같다. 유니티에서는 스크립트 간의 실행 순서가 다르며 그것도 생각하고 기능을 작성해야 한다는 것을 처음 알게 되었다.
이번엔 문제가 되었던 코드를 없애는 것으로 해결했지만, 다음엔 코드 간의 실행 순서도 생각해서 구조를 짜봐야겠다.
'내일배움캠프 Unity > 본 캠프' 카테고리의 다른 글
| [내일배움캠프][TIL] 23일차, 팀 과제 진행 (2025-10-30) (0) | 2025.10.30 |
|---|---|
| [내일배움캠프][TIL] 22일차, 팀 과제 시작 (2025-10-29) (0) | 2025.10.29 |
| [내일배움캠프][TIL] 19일차, 개인 과제 진행 (2025-10-24) (0) | 2025.10.24 |
| [내일배움캠프][TIL] 18일차, 유니티 입문 강의 시청 (2025-10-23) (1) | 2025.10.23 |
| [내일배움캠프][TIL] 17일차, 유니티 입문 주차 시작 (2025-10-22) (0) | 2025.10.22 |