참고 문서
answers.unrealengine.com/questions/911059/loguobjectbase-warning-null-object.html?sort=oldest
상황
에디터를 열어만 놓아도, 이 로그가 계속 쭈우우욱 떴다. 프레임 당 계속 찍히는 것 같다.
코드 상에서 NULL을 참조하고 있는 것 같긴 한데, 어느 부분의 코드에서 뜨는 오류인지 몰랐다.
LogUObjectBase: Warning: NULL object
해결
코드를 IsValidLowLevel로 검색하니까, 쉽게 찾을 수 있었다. (원인을 때려 맞춘 느낌?)
오류 로그의 원인이 이게 아니라면, 원인을 찾기 힘들 듯하다.
업데이트로 돌아가는 함수에서 NULL을 참조하고 있었다.
if 조건문에서 Player가 False일 때, Player->IsValueLowLevel()을 참조하기 때문에 NULL 오류가 떴던 것이다.
void UCPP_PlayerAnim::NativeUpdateAnimation(float DeltaSeconds)
{
Super::NativeUpdateAnimation(DeltaSeconds);
if (Player == false && Player->IsValidLowLevel() == false)
{
return;
}
}
위의 코드에서 아래 코드로 바꾸었다.
if (Player == false || Player->IsValidLowLevel() == false)
{
return;
}
실수로 || 대신 &&을 써버려서 생긴 오류 로그였다.
에디터 창에서 게임 실행을 안하고 있어도, 함수들은 계속 실행되나보다.
'Unreal' 카테고리의 다른 글
[Unreal C++] 데이터 테이블 만들고, 사용하기 (CSV 파일) (0) | 2021.05.10 |
---|---|
[Unreal BP & C++] 엔진에서 제공하는 데미지 프레임워크 (1) | 2021.05.06 |
[Unreal Error] Destroy()가 false를 반환하는 경우 (0) | 2021.04.29 |
[Unreal Error] GetWorld()가 Null 값을 반환하는 경우 (0) | 2021.04.23 |
[Unreal C++] 액터 오브젝트에 컴포넌트 추가하기 (0) | 2021.04.20 |