inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[유니티 레벨 업!] 모듈식으로 개발하는 퀘스트&업적 시스템

Quest System 구현

Destroy() 지연 파괴에 관하여

140

코리니

작성한 질문수 4

0

QuestSystem구현 강의에서

12:51쯤에 Destroy(quest, Time.deltaTime)을 사용했는데

바로 파괴해도 될 것 같은데 한 프레임을 쉬는 이유가 있나요?

즉시 파괴할 경우 이벤트나 다른 참조하는 곳에서 error가 날까봐 그런건가요?

unity

답변 1

1

Developer G

수강해주셔서 감사합니다.

지연 파괴를 해주는 이유는 다른 Script에서 null check를 통과하여 Quest의 Cancel 상태를 확인할 시간을 주기 위해서입니다. 보통은 Cancel을 onQuestCanceled event나 onQuestStateChanged event로 확인하겠지만 그럴 수 없는 경우를 대비한 작업입니다. 강의에서는 이번 Frame에서만 상태를 확인할 수 있게 한 Frame만 쉬어줬는데 짧다고 여겨질 경우 여유를 두고 2~3 Frame 정도를 쉬어줘도 됩니다. 물론 이런 대비가 불필요하다고 여겨지시면 지연 파괴 부분을 없애셔도 아무 문제 없습니다.

감사합니다.

Task 구현 28:36 Equals 에서 잘 모르는 부분이 있습니다.

0

23

2

Quest System의 확장성에 대한 질문

0

106

1

공부 방향에 대해 궁금한 점이 있습니다.

0

143

2

End()와 Complete() 함수를 따로 구현한 의도

0

166

2

Target의 value에 Object 자료형 관련 질문입니다!

0

149

2

TaskGroupState에 대하여 질문이 있습니다

0

112

2

Elite와 Normal Germ의 IsTarget()질문입니다.

0

100

2

퀘스트 시스템을 확장하면서 생긴 의문점 입니다.

0

166

2

퀘스트 클리어해도 동일 퀘스트가 노출됩니다

1

129

3

퀘스트 누적 클리어 횟수에 대해 여쭤보고싶습니다.

0

85

1

프로퍼티 사용 질문입니다.

0

118

1

Task 에서 Object 타입 사용

0

120

2

파일 저장방식, 퀘스트 실패에 관하여 여쭤보고싶습니다.

0

218

1

Action & Delegate

0

179

2

강의에서 리워드 관련 언급은 없으셔서 질문드립니다.

0

276

1

궁금한게있습니다

0

294

1

스크립터블 오브젝트 Instantiate?

0

437

1

원하는 타이밍에 퀘스트를 등록하고 싶다면 어떻게 해야할까요

0

339

1

Quest Cancel() 메소드

0

263

2

Task의 IsEqual

0

227

1

실전예제 UI 자료

0

194

1

스크립터블 오브젝트

1

325

1

Task 예시

1

167

1

퀘스트의 상태인 QuestState를 다른 스크립트에서 받을 수 있나요

1

307

2