게임피쳐 문의 드립니다.
안녕하세요.
카운터스트라이크 소스 분석중

AAModularCharacter 내에 PreInitializeComponents, BeginPlay, EndPlay 등 함수에 UGameFrameworkComponentManager 를 통한 작업들을 보았는데 이것들이 정확히 어떠한 행동을 위한것인지 알기가 어려워 문의 드립니다.
혹시 간략하게나마 게임 피쳐에서 어떤 이벤트가 발생했을때 얘가 이러이러한 역활을 한다
이런식으로라도 혹시 알 수 있을까요?
답변 2
0
UGameFrameworkComponentManager를 통해서 이벤트를 알려주게 되고
특정 클래스에서 해당 이벤트를 캐치하겠다고 델리게이트를 걸어놓으면 이벤트가 호출될 때 델리게이트를 통해 함수가 발동됩니다.
그러면 그 함수를 통해서 내가 원하는 로직을 구현하면 됩니다.
대표적으로 저희 프레임워크에서는 나 BeginPlay 호출되었어!! 라고 이벤트를 보내면 WorldExtension에서 해당 이벤트를 통해서 등록을 진행합니다.
이벤트 콜백패턴이라고 생각하시면 됩니다~
0
안녕하세요, 인프런 AI 인턴입니다.
김영훈님, 질문 주셔서 감사합니다.
AAModularCharacter에서 사용되는 PreInitializeComponents, BeginPlay, EndPlay와 같은 함수들은 게임 개발에서 객체의 라이프사이클 중 특정 시점에서 호출됩니다. 이 함수들 내에서 UGameFrameworkComponentManager::AddGameFrameworkComponentReceiver(this); 같은 코드를 사용하는 것은 모듈러 컴포넌트의 관리와 관련된 작업입니다.
PreInitializeComponents: 객체의 구성 요소를 초기화하기 전의 시점에서 호출됩니다. 이 시점에는 객체의 부모 클래스의 초기화 로직이 먼저 수행된 후 등록됩니다. 이를 통해 다양한 외부 모듈이 객체에 자동으로 구성 요소를 추가하거나, 확장 이벤트에 따라 초기화를 계속할 수 있게 만듭니다.BeginPlay: 게임이 시작될 때 호출되는 함수로, 주로 초기화가 완료된 후 게임의 로직을 설정하는 데 사용됩니다.EndPlay: 게임이 종료되거나 객체가 제거될 때 호출되며, 주로 사용하던 리소스를 정리하거나 종료 작업을 수행합니다.
이러한 함수들은 모듈러 시스템에서 이벤트 기반의 확장을 가능하게 하며, 외부 모듈이나 기능이 특정 시점에 작동하도록 할 수 있습니다. 이를 통해 게임 엔진 내 다양한 기능이나 모듈이 객체의 생명 주기 동안 특정 시점에 개입하여 다양한 작업을 수행할 수 있습니다.
추가적인 도움이 필요하시거나 더 궁금한 점이 있다면 언제든지 질문해 주세요! 감사합니다.
살구 클럽에 대한 질문있습ㄴ디ㅏ
0
18
1
플레이어를 왜 ECS로 만드는 건가요?
0
12
1
교안 158페이지 문의드립니다
0
28
2
코딩살구클럽 관련 건의사항
0
67
1
코살에 19942 다이어트 문제에 N의 범위가 빠져있슴니다
0
29
1
OAuth방식 강의 문의
0
23
1
싱글턴패턴
0
19
2
강의자료 pdf
0
17
1
Reticle이 안나옵니다.
0
17
1
진행 방법 질문드립니다!
0
62
2
Singleton 관련 질문입니다.
1
37
2
코드 관련 질문
0
23
2
수강기간 연장 가능하실까요?
0
24
2
섹션7 수업자료 업로드 부탁드립니다.
0
26
2
2-I) 왜 이 문제가 그래프이론 카테고리에 있는지 잘 모르겠습니다.
0
60
2
AddGameFrameworkComponentReceiver vs AddExtensionHandler
0
25
0
Dictionary Key를 int에서 string으로 변경한 이유에 대한 문의
0
20
1
2주차 개념#12 트리 순회
0
29
2
네트워크 전체 흐름 복습 질문
1
34
3
맥북으로 RDP 연결 질문
0
30
2
백준 사이트 서비스 종료
0
122
3
수강 연장 가능하면 요청 드립니다.
0
29
2
저는 저 노란색 미리보기 창이 안뜹니다
0
21
1
카운터스트라이크 소스에서 WorldSetting
0
60
2





