게임 엔진/Unreal

[Unreal/C++] Montage에서 SkeletalMeshComponent 가져오기

niamdank 2024. 2. 24. 16:36

다음과 같이 PreviewMesh를 이용하거나, Skeleton에서 FindCompatibleMesh로 매칭이 되는 스켈라탈 메쉬를 로드하여 가져와 SkeletalMeshComponent에 설정할 수 있다.

 

USkeletalMesh* pPreviewMesh = _pMontage->GetPreviewMesh();
if (pPreviewMesh == nullptr)
{
	pPreviewMesh = _pMontage->GetSkeleton()->FindCompatibleMesh();
}
USkeletalMeshComponent* pSkeletalMeshComp = NewObject<USkeletalMeshComponent>();
pSkeletalMeshComp->SetSkeletalMesh(pPreviewMesh);

if (IsValid(pSkeletalMeshComp))
{
	pSkeletalMeshComp->SetSkeletalMesh(nullptr);
	pSkeletalMeshComp->RemoveFromRoot();
}

 

※ 어쨌든 로드해 오는 것이기 때문에 일상적으로 사용할 수 없으며, 정확한 데이터가 나온다고 보장할 수 없다.