⭐ Unreal Engine/UE Debugging Log
[Unreal] CreateDefault(Subobject) 사용 시 터지는 문제해결
Designerd
2023. 8. 14. 16:43
글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자입니다
목차
[Unreal] CreateDefault(Subobject) 사용 시 터지는 문제해결
문제 상황
CreateDefault(Subobject) 사용할 때는 생성자 위치에서 생성해야 한다.
Begin Play에 생성할 경우 동적할당으로 생성하게 되어 터지게 된다.
코드 변경
변경 전
void ACAttachment_Bow::BeginPlay()
{
...
//Player cast하기
PlayerCharacterCast = Cast<ACPlayer>(OwnerCharacter);
CheckNull(PlayerCharacterCast);
CHelpers::CreateComponent<USplineComponent>(this, &ArrowPathSpline, "ArrowPathSpline", Root);
ArcEndSphere = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("StaticMeshComponent"));
ArrowPathSplineMesh = CreateDefaultSubobject<USplineMeshComponent>(TEXT("ArrowPathSplineMesh"));
}
변경 후
ACAttachment_Bow::ACAttachment_Bow()
{
...
//Player cast하기
PlayerCharacterCast = Cast<ACPlayer>(OwnerCharacter);
CheckNull(PlayerCharacterCast);
CHelpers::CreateComponent<USplineComponent>(this, &ArrowPathSpline, "ArrowPathSpline", Root);
ArcEndSphere = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("StaticMeshComponent"));
ArrowPathSplineMesh = CreateDefaultSubobject<USplineMeshComponent>(TEXT("ArrowPathSplineMesh"));
}
링크
https://daisy0461.tistory.com/72
H
실행화면