강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

hush park님의 프로필 이미지
hush park

작성한 질문수

[Rookiss University] UE5 Lyra 클론 코딩 (Haker)

PawnExtension #3

Pawnextension#3 9:19 질문이 있습니다.

해결된 질문

작성

·

59

0

우선 SetupPlayerInputComponent() 에서 CheckDefaultInitialization() 을 호출하여 PawnExtensionComponent 의 상태를 업데이트 하는 것으로 보이는데, 이 시점에서 PlayerController 가 존재하기 때문에 DataAvailable 로 넘어가게 된다 라는 것까지는 이해할 수 있었습니다.

 

근데 자신의 업데이트 과정은 CheckDefaultInitialization() 내부에서의 ContinueInitStateChain(StateChain) 이 호출될 때 진행되는 것으로 알고 있는데, 코드상에서 보이듯 이 호출 이전에 implementers의 CheckDefaultIntialization() 호출을 먼저 한 다음에 자신의 상태 업데이트가 이루어지는 것이 맞는지 확인하고 싶습니다.

왜냐면 강의에선 마치 ContinueInitStateChain(StateChain) 가 먼저 이루어진 다음에 Implementers 의 CheckDefaultIntialization() 를 호출하는 것처럼 말하는 걸로 느껴졌습니다.

퀴즈

71%나 틀려요. 한번 도전해보세요!

게임플레이 태그의 주요 목적과 구조는 무엇일까요?

게임 요소 식별을 위한 계층 구조 열거형

디버깅 메시지 출력을 위한 단순 문자열

성능 최적화를 위한 고유 정수 ID

액터 위치 저장을 위한 구조체

답변 2

0

Liu님의 프로필 이미지
Liu
지식공유자

호출 순서는 바뀔 수 있습니다.

일반적으로는 PawnExtensionComponent가 관리해서 컴포넌트들을 업데이트 해주는게 맞겠지만 추가적인 조건인 모든 컴포넌트가 Data_Available 할 때 PawnExtensionComponent이 업데이트가 가능하니 이 경우에만 예외적으로 다른 컴포넌트들이 Data_Available 하게 되면 PawnExtensionComponent에게 알려주게 되고 그러면서 다른 컴포넌트들에게 업데이트 하라고 요청하는 방식입니다.

 

0

안녕하세요, 인프런 AI 인턴입니다. hush park님.

Pawnextension#3 강의에서 설명하신 내용에 대해 조금 더 구체적으로 설명드리겠습니다. SetupPlayerInputComponent()에서 CheckDefaultInitialization()PawnExtensionComponent의 상태를 업데이트하는 역할을 하고, PlayerController가 존재하기 때문에 DataAvailable로 넘어가게 됩니다.

이 과정에서 CheckDefaultInitialization()의 로직은 다음과 같은 순서를 따라 진행됩니다:

  1. Implementers의 CheckDefaultInitialization 호출: 먼저, implementers의 CheckDefaultInitialization()이 호출됩니다. 이는 상속받은 클래스들 각각이 초기화될 수 있도록 설계된 과정입니다.

  2. ContinueInitStateChain 호출: implementers가 완료된 후에 ContinueInitStateChain(StateChain)이 호출됩니다. 이 함수는 상태 체인을 계속 진행시켜, 다음 단계의 상태를 설정하거나 초기화할 수 있도록 합니다.

따라서, 말씀하신 대로 implementers의 CheckDefaultIntialization()이 먼저 호출되고, 그 후에 ContinueInitStateChain(StateChain)의 호출로 자신의 상태 업데이터가 이루어지는 것이 맞습니다. 강의에서 설명된 순서와 다르게 느껴지셨다면, 아마도 강의 내용이나 표현에서 오해가 있었던 것 같습니다.

아래는 관련 질문과 답변을 참고할 수 있는 유사한 스레드를 소개해드립니다:

관련 질문에 대한 해답이 부족할 경우, 이어서 질문을 더해 주시면, 강사님께서 곧 직접 답변해 주실 것으로 기대합니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

hush park님의 프로필 이미지
hush park

작성한 질문수

질문하기