언리얼 NavMesh

roberto·2025년 4월 22일
  • AI가 이동가능한 영역을 지정
  • 액터 배치
  • NavMeshVolume을 맵에 배치한 모습
  • 단축키 P를 통해 이동가능지역 시각화 가능
  • NavMeshVolume은 동적생성은 불가능하다.

    static / Dynamic / Dynamic Modifier Only 세가지 옵션을 통해 동적인 오브젝트 제어 가능

  • NavMeshVolume은 동적으로 생성이 불가능하기 때문에 광범위한 레벨에서 레벨 전체를 Volume으로 잡는 것은 비효율적
  • 그렇기 때문에 Navigation Invoker를 사용하여 리소스를 절약할 수 있다.
#include "NavigationInvokerComponent.h"

float NavGenerationRadius;

float NavRemovalRadius;

UPROPERTY(BlueprintReadWrite, Category = Navigation, meta = (AllowPrivateAccess = "true"))
	UNavigationInvokerComponent* NavInvoker;

FORCEINLINE class UNavigationInvokerComponent* GetNavInvoker() const { return NavInvoker; }

NavInvoker = CreateDefaultSubobject<UNavigationInvokerComponent>(TEXT("NavInvoker"));
NavInvoker->SetGenerationRadii(NavGenerationRadius, NavRemovalRadius);


  • NavMeshInvoker를 추가한 객체 근처에만 네비메쉬가 적용되는 모습이다.
profile
아마도 개발 관련된 것만 올릴듯한 벨로그

0개의 댓글