Version: 2019.2
내비메시 에이전트
오프 메시 링크

내비메시 장애물

Nav Mesh Obstacle 컴포넌트로 내비메시 에이전트가 월드를 탐색하는 동안 피해야 하는 움직이는 장애물(예: 물리 시스템에 의해 제어되는 배럴 또는 크레이트)을 설명할 수 있습니다. 장애물이 움직일 때 내비메시 에이전트는 장애물을 피하기 위해 최선을 다합니다. 장애물이 정지 상태일 때는 내비메시에 구멍을 팝니다. 그러면 내비메시 에이전트가 경로를 바꿔 장애물을 돌아가거나, 장애물로 인해 경로가 완전히 차단될 경우 다른 길을 찾습니다.

프로퍼티 기능
Shape 장애물 지오메트리의 모양입니다. 오브젝트 모양에 가장 적합한 것을 선택해야 합니다.
    Box
        Center 변환 포지션에 대한 박스의 상대적인 중심입니다.
        Size 상자의 크기입니다.
    Capsule
        Center 변환 포지션에 대한 캡슐의 상대적인 중심입니다.
        Radius 캡슐의 반지름입니다.
        Height 캡슐의 높이입니다.
Carve Carve 체크박스를 선택하면 내비메시 장애물이 내비메시에 구멍을 만듭니다.
    Move Threshold Unity는 내비메시 장애물이 Move Threshold를 통해 설정한 거리보다 많이 움직인 경우 움직인다고 간주합니다. 이 프로퍼티는 움직이는 파인 구멍을 업데이트하는 임계 거리를 설정하는 데 사용합니다.
    Time To Stationary 장애물이 정지되었다고 간주할 때까지 기다리는 시간(초)입니다.
    Carve Only Stationary 이 옵션을 활성화하면 장애물이 정지되어 있을 때만 구멍을 팝니다. 자세한 내용은 아래의 내비메시 장애물 이동 논리를 참조하십시오.

세부 정보

내비메시 장애물은 게임 중에 다음 두 가지 방법으로 내비메시 에이전트의 내비게이션에 영향을 미칠 수 있습니다.

방해

Carve 가 활성화되지 않은 경우 내비메시 장애물의 디폴트 동작은 콜라이더와 비슷합니다. 내비메시 에이전트는 내비메시 장애물과 충돌을 피하려고 하고, 내비메시 장애물과 가까우면 충돌합니다. 장애물 회피 동작은 매우 기본적이며 짧은 반경을 가집니다. 따라서 내비메시 에이전트는 내비메시 장애물이 많은 환경에서 장애물을 피해갈 길을 찾지 못할 수 있습니다. 이 모드는 장애물이 계속 움직이는 경우(예: 차량이나 플레이어 캐릭터)에 사용하면 가장 적합합니다.

카빙

Carve 가 활성화된 경우, 장애물은 정지 중일 때 내비메시에 구멍을 팝니다. 장애물은 이동할 때 방해물이 됩니다. 내비메시에 구멍을 파면 패스파인더는 내비메시 에이전트가 장애물이 많은 장소를 피해 돌아가도록 하거나, 현재 경로가 장애물에 막힐 경우 다른 길을 찾을 수 있습니다. 일반적으로 내비게이션을 막지만 플레이어나 기타 폭발 같은 게임 이벤트에 의해 이동될 수 있는 내비메시 장애물(예: 크레이트 또는 배럴)에 대해서는 카빙을 켜는 것이 좋습니다.

내비메시 장애물 이동 논리

Unity는 내비메시 장애물이 Carve > Move Threshold 에서 설정한 거리보다 많이 이동할 경우 이동 중인 것으로 간주합니다. 내비메시 장애물이 이동하면 파인 구멍도 이동합니다. 하지만 CPU 오버헤드를 줄이기 위해 필요한 경우에만 구멍을 다시 산출합니다. 이 산출의 결과는 다음 프레임 업데이트에 사용 가능합니다. 재산출 논리에는 다음 두 가지 옵션이 있습니다.

  • 내비메시 장애물이 정지 상태일 때만 카빙

  • 내비메시 장애물이 이동된 경우에 카빙

내비메시 장애물이 정지 상태일 때만 카빙

디폴트 동작입니다. 이 옵션을 활성화하려면 Nav Mesh Obstacle 컴포넌트의 Carve Only Stationary 체크박스를 선택해야 합니다. 이 모드에서 내비메시 장애물이 움직이면 파인 구멍이 제거됩니다. 내비메시 장애물의 이동이 멈추고 Carving Time To Stationary 에서 설정한 시간보다 오랫동안 정지해 있으면 정지 상태로 간주되고 파인 구멍이 다시 업데이트됩니다. 내비메시 장애물이 이동 중인 동안에는 내비메시 에이전트가 충돌 방지를 사용하여 장애물을 피하지만 장애물을 돌아갈 경로를 계획하지는 않습니다.

Carve Only Stationary 는 일반적으로 성능의 관점에서 최선의 선택이고 내비메시 장애물과 연관된 게임 오브젝트가 물리를 통해 제어되는 경우에 적합합니다.

내비메시 장애물이 이동된 경우에 카빙

이 모드를 활성화하려면 Nav Mesh Obstacle 컴포넌트의 Carve Only Stationary 체크박스를 선택 해제해야 합니다. 선택 해제하면 장애물이 Carving Move Threshold 에서 설정된 거리보다 많이 이동한 경우 파인 구멍이 업데이트됩니다. 이 모드는 예를 들어 보병대가 피하려고 하는 탱크처럼 크고 천천히 이동하는 장애물에 유용합니다.

참고: 내비메시 쿼리 메서드를 사용하는 경우 내비메시 장애물을 변경한 후 이 변경 사항이 내비메시에 영향을 미칠 때까지 1프레임이 지연됨을 감안해야 합니다.

참고 항목

  1. 내비메시 장애물 만들기 -내비메시 장애물 만들기에 대해 설명합니다.

  2. 내비게이션 시스템의 내부 작동 - 내비메시 장애물이 내비게이션의 일부로 사용되는 방법에 대해 자세히 알아볼 수 있습니다.

  3. 내비메시 장애물 스크립팅 레퍼런스 - 내비메시 장애물 스크립팅 API에 대한 전체 설명입니다.

내비메시 에이전트
오프 메시 링크