오늘 한일
- 애니메이션 연결 문제 해결
- 캐릭터 만들고 움직이기, 컨트롤러, 총기 구현
문제
선이 이어지지 않음
이유
첫 번째 SET Character 노드와 두 번째 SET Character Movement 노드를 자연스럽게 이어주려면, 중간에 캐릭터 안에서 컴포넌트를 꺼내오는 노드가 하나 필요합니다.
Character Movement(캐릭터 움직임 기능)는 캐릭터(Character)라는 커다란 주머니 안에 들어있는 하나의 부품(컴포넌트)입니다.
🔑 핵심 원리 : 컴포넌트 패턴 (Component Pattern)
이 구조는 언리얼 엔진의 핵심 아키텍처인 액터(Actor)와 컴포넌트(Component)의 종속 관계 때문에 발생합니다.
-
Character (액터/객체):
Character Movement를 소유하고 있는 최상위 부모 객체입니다. -
Character Movement (컴포넌트): 캐릭터의 이동 로직을 담당하며, 반드시 Character 액터 내부에 포함되어야만 존재하는 하위 컴포넌트입니다.
💻 메모리 및 참조(Reference)의 흐름
-
SET Character- 캐스팅을 통해 참조된 Character 객체 인스턴스의 메모리 주소를 변수에 저장합니다.
-
Get Character Movement (Target)- 저장된 Character 인스턴스를 참조(
Target)하여, 해당 객체가 컴포넌트 리스트에 가지고 있는UCharacterMovementComponent객체의 주소값(포인터)을 Get(역참조) 합니다.
- 저장된 Character 인스턴스를 참조(
-
SET Character Movement- 접근에 성공한
UCharacterMovementComponent인스턴스의 메모리 주소를 최종적으로 변수에 할당(Assign)합니다.
- 접근에 성공한
💡 전문 용어 한 줄 요약 상위 객체(Character 인스턴스)의 메모리 주소를 거쳐야만, 그 하위에 종속된 멤버 컴포넌트(Character Movement)의 메모리 주소에 접근(Get)할 수 있기 때문에 인스턴스를
Target으로 연결해 주는 것입니다.
해결
/Unreal9기/첨부파일모음/Pasted-image-20260612102918.png)
/Unreal9기/첨부파일모음/Pasted-image-20260612103003.png)
문제
어떻게 저 get을 만들어서 이을 수 있는가
해결
- get character를 가져오고
/Unreal9기/첨부파일모음/Pasted-image-20260612104614.png)
-
우클릭 후 Convert to Validated Get 누르기
/Unreal9기/첨부파일모음/Pasted-image-20260612104656.png)
-
연결
/Unreal9기/첨부파일모음/Pasted-image-20260612104737.png)
계획
- 기초반 학습자료 8강까지 학습&정리
- 과제5번(도전 포함)까지 완료
- TA용어 찾아보고 정리
- 심화반 학습자료 3강까지인데 가능하면 읽어보기