[Unreal] CreateDefault(Subobject) 사용 시 터지는 문제해결
CreateDefault(Subobject) 사용 시 에러가 발생하고 터지는 문제가 발생했다. 생성자가 아닌 다른 위치에서 생성해서 발생한 문제였다.
목차
[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
'⭐ Unreal Engine > UE Debugging Log' 카테고리의 다른 글
댓글
이 글 공유하기
다른 글
-
[Unreal] 애니메이션이 연속 재생되는 문제해결 (점프 실행 시 공중에서 팔닥거림 해결)
[Unreal] 애니메이션이 연속 재생되는 문제해결 (점프 실행 시 공중에서 팔닥거림 해결)
2023.09.18 -
[Unreal] game files required to initialize the global shader library are missing from
[Unreal] game files required to initialize the global shader library are missing from
2023.09.06 -
[UE5] Root Motion이 제대로 작동하지 않을때. Retargeting 제대로 하는 방법
[UE5] Root Motion이 제대로 작동하지 않을때. Retargeting 제대로 하는 방법
2023.08.13 -
[Unreal] Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x00000000000000c8 문제해결
[Unreal] Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x00000000000000c8 문제해결
2023.08.03