3.1-3 플레이어 메시 적용
BP_TPSPlayer를 열어보면 4개의 컴포넌트가 이미 포함되어 있습니다.
Capsule Component : 콜리전 담당
Arrow : 방향을 나타내는 화살표
Mesh : 외관을 표시하는 메시
Character Movement : 이동과 물리시뮬레이션을 담당
ThirdPerson캐릭터 불러와서 적용시키기
컨텐트드로워 +Add후 다음과 같이 ThirdPerson 블루프린트를 선택하고
AddtoProject를 누르면 블루프린트만 임포트됩니다. 프로젝트만들때 선택하면 C++클래스까지 포함됩니다.
이제 Mesh카테고리에서 Skeletal Mesh Asset을 클릭해서 SK_Mannequin을 선택할수 있습니다.



언리얼은 C++클래스를 컴파일하면 UClass가 먼저 만들어지고 언리얼에디터가 실행하면 생성자코드를 실행하여 클래스기본객체 CDO인스턴스를 생성합니다.
https://blog.naver.com/jokorat/222835529448
[Unreal] UCLASS, 언리얼 오브젝트
1. 기본포맷 ClassName.generated.h : 언리얼 헤더 툴(Unreal Header Tool:UHT), 모든 #include에...
blog.naver.com
C++코드에서 메시 불러오기
매니의 메시경로를 복사하기 위해 Characters>Mannequin_UE4>Meshes 폴더로 들어가 SK_Mannequin을 Ctrl-C해서 코드에서 사용하다. 예제와 같이 좀 정리해야한다 아니면 ' ' 작은 다옴표 안에만 사용한다.
교재의 AnimationPack이 UE4 매니 스켈레톤을 사용해기 때문입니다 .UE5를 사용하고 싶으신분은 리타게팅을 하시면 됩니다.


ConstructorHelpers::FObjectFinder<USkeletalMesh> 를 이용해 CDO 인스턴스를 로딩할수 있습니다.
FClassFinder가 아닌 FObjectFinder라는데 주의하셔야 합니다. 인스턴스를 잘 불려졌다면 GetMesh()에 지정해줘야 합니다. Character Class는 자신의 skeletalMeshComponent를 GetMesh()로 접근할수 있습니다.
#include "TPSPlayer.h"
#include "TPSProject.h"
// Sets default values
ATPSPlayer::ATPSPlayer()
{
PRINT_LOG(TEXT("%s"), TEXT("TPSPlayer Loading"));
ConstructorHelpers::FObjectFinder<USkeletalMesh> tempMesh(
TEXT("SkeletalMesh'/Game/Characters/Mannequins/Meshes/SKM_Manny.SKM_Manny'"));
if (tempMesh.Succeeded()) {
GetMesh()->SetSkeletalMesh(tempMesh.Object);
GetMesh()->SetRelativeLocationAndRotation(FVector(0, 0, -90), FRotator(0, -90, 0));
}
}