Unreal 엔진

[UE/Err] 'GetRandomPointInNavigableRadius': is not a member of 'UNavigationSystemBase'

원소랑 2019. 11. 24. 21:39

.

AI Navigation Mesh 관련 코드에서 컴파일 에러가 발생합니다. 버전업이 되면서 deprecated 된 걸로 보입니다.

\BMRandomMoveTo.cpp(25): error C2039: 'GetRandomPointInNavigableRadius': is not a member of 'UNavigationSystemBase'

이런 에러.

#include "AI/Navigation/NavigationSystem.h"

위 헤더 대신에 아래 헤더를 include 해줍니다.

#include "NavigationSystem/Public/NavigationSystem.h"

그리고, "GetRandomPointInNavigableRadius" 메소드는 NavigationSystem 에서 빠지고, 과거 버전으로 옮겨졌습니다.

UNavigationSystemV1 클래스로 이동된 함수이니, 캐스팅을 하거나, 해당 객체로 호출하도록 해주어야 합니다. 저는 일단 캐스팅으로 에러는 수정한 상태인데, 정상동작 여부는 동작을 다 만들고 테스트 가능할 것 같습니다.

책의 샘플 코드이기 때문에 땜질한다 쳐도 중요한 건, Deprecated 된 함수라는 것.

https://docs.unrealengine.com/en-US/API/Runtime/NavigationSystem/UNavigationSystemV1/GetRandomPointInNavigableRadius/2/index.html

 

UNavigationSystemV1::GetRandomPointInNavigableRadius

 

docs.unrealengine.com

헤더 경로

\UE_4.23\Engine\Source\Runtime\NavigationSystem\Public\NavigationSystem.h

.

.

.

728x90
반응형