250220 TIL

박소희·2025년 2월 20일

Unity_7기

목록 보기
31/94

미니 게임을 시작하면 UI를 띄우고 Time.timeScale = 0; 으로 게임을 멈춰놓는다.
카메라가 플레이어의 일정 위치를 보여주게 설정해놨는데, 멈춰놓으니 계속 (0,0,0)좌표와 설정 해놓은 위치를 계속 왔다갔다 거린다..
-> player의 위치를 찾았으니 player == null인 것도 아니다.
-> TimeScale이 0일때, update는 실행되고, fixedUpdate는 실행되지 않는다.
-> 그래서 카메라를 조정하는 코드를 Time.timeScale == 0 일때 fixedUpdate에서 실행되도록 했다.
-> 제대로 작동은 했지만 이렇게 하는게 맞는 건지는 잘 모르겟다.

대화문을 출력하는 객체는 npc, chest 두 개가 있다. 그런데 chest의 대화문이 npc에서 나오는 문제가 발생했다. 대화문을 관리하는 DialogueManager에서는 각 객체의 자식에서 tmp 컴포넌트를 찾아 그 텍스트를 띄우도록 해놨다.
-> 같은 스크립트를 두 객체가 써서 처음 설정한 텍스트가 계속 띄워지는 거였다.
-> 그래서 대화문이 시작될 때 띄울 텍스트를 교체하는 식으로 해결했다.

강의

UI도 추상클래스 만들어 놓고, 쓰는 경우별로 스크립트를 나눠 쓰는 것이 좋아보인다.

0개의 댓글