UE5) 네비게이션 관련 이것저것
네비 모디파이어 컴포넌트
특정 액터에 콜리전이 없지만 내비에 영향을 주고 싶다면,
내비 모디파이어 컴포넌트를 달아주는것으로 내비영역에 영향을 줄 수 있음.
이 컴포넌트는 해당 액터에 콜리전이 없을 경우에 동작함.
크라우드 회피, RVO 회피
크라우드 회피를 이용할 경우,
네비 에이전트 마스크가 디폴트(가장 최 상위)만 적용되는 듯 함.
RVO 회피의 경우 에이전트 마스크가 정상 동작하나,
회피중 네비메시 밖으로 나가는 경우가 생기거나
크라우드 회피보다 낑기고 버벅거림이 심하다는 문제가 있음.
크라우드 회피 적용
- 기존 AI컨트롤러의 생성자를 재 정의 해야 함
AFactoryAIController::AFactoryAIController(const FObjectInitializer& ObjectInitializer)
: Super(ObjectInitializer.SetDefaultSubobjectClass<UCrowdFollowingComponent>(TEXT("PathFollowingComponent")))
{
}
이것으로 기본으로 붙어있는 Path Following 대신 크라우드를 사용 가능
이걸로 끝임.
주의할 점으로, RVO 회피는 크라우드 회피를 덮어쓰기 때문에 비 활성화 할 것.
서브레벨의 네비게이션
버전마다 결과가 다르니 참고만 할 것.
네비게이션 시스템 옵션에서,
바운드 레벨에서 내비 데이터 스폰 -> 참
서브레벨 내비 데이터 버리기 -> 거짓
네비 타입은 반드시 Dynamic
추가로 여러 옵션의 네비 바운드를 두고 싶다면,
네비 시스템 옵션에서 지원 에이전트를 추가하면
네비 볼륨 세부옵션에 어떤 에이전트를 사용할 것인지 선택할 수 있게 된다.
에이전트를 추가했을 경우, 반드시 기본 에이전트 이름을 추가한 에이전트중 하나의 이름으로 변경해주어야 함