Destroy() 지연 파괴에 관하여
140
작성한 질문수 4
QuestSystem구현 강의에서
12:51쯤에 Destroy(quest, Time.deltaTime)을 사용했는데
바로 파괴해도 될 것 같은데 한 프레임을 쉬는 이유가 있나요?
즉시 파괴할 경우 이벤트나 다른 참조하는 곳에서 error가 날까봐 그런건가요?
답변 1
1
수강해주셔서 감사합니다.
지연 파괴를 해주는 이유는 다른 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





