• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    해결됨

GameManager 의 Start()가 스페이스 누를때마다 반복실행됩니다.

22.05.17 21:02 작성 조회수 210

0

Coin 점수를 누적시키는 코드를 따라하고 있었어요
 
 
 
 
 
어느시점에서 GameManasger의 Start()가 실행되는지 확인을 위해서 플레이어 스크립트의 플레이어스크립트 샷 부분에 프린트를 찍었습니다.
 
PlayerScript
 
콘솔의 결과가 다음과 같습니다.
 
왜 그런걸까요?
 
 
 

답변 1

답변을 작성해보세요.

0

최성호님의 프로필

최성호

질문자

2022.05.18

참 죄송하네요, 어처구니 없는 실수였습니다.

스페이스를 누를 때 마다 GameManager의 Awake() 가 호출된다는 것은

GameManager 객체가 계속  새롭게 생성된다는 뜻이고

코드상으로 무슨 문제가 있나보다 했더니

단순히 스페이스바를 누를 때 생성되는 Shot 프리팹에 GameManager스크립트가 Add되어 있었던 것입니다.

어쩌다가 이런 일이 일어났는지는 잘 모르겠네요~ 강의 순서상으로도 Shot 프리팹을 만들때에는 

GameManager를 만들기 전이고,  GameManager 빈 게임 오브젝트에 Create & Add 버튼으로 만든걸로 기억하는데... 왜 Shot 프리팹에 붙어 있었는지....