Navigation Mesh 경로 찾기는 어떻게 작동합니까?


27

navmesh가 작동하는 방식, 구현 방법 및 다른 유형의 경로 시스템보다 나은 이유를 이해하고 싶습니다.


이것은 내 아침 인터넷 방황 중에 나타 났습니다 : aigamedev.com/open/reviews/alienswarm-node-graph 읽을 가치가 있습니다 :-)
coderanger

이 튜토리얼은이 게시물을 방문한 Unity 사용자에게 유용 할 수 있습니다. binpress.com/tutorial/unity3d-ai-navmesh-navigation/119
MichaelHouse

답변:


6

웨이 포인트 길 찾기와 동일하지만 웨이 폴리곤이있는 웨이 포인트 대신 네비 메쉬에 대해 몇 가지를 유추 할 수 있습니다.

  • 웨이 폴리곤은 엔티티가 안전하게 걸을 수있는 영역입니다
    • 다른 영역은 고려하지 않아야합니다
    • 웨이 포인트는 그들 사이의 공간으로 믿음의 도약을해야합니다. 벽에 붙어있는 NPC를 기억하십니까? 두 개의 웨이 포인트가 직접 연결되지 않은 곳에있었습니다.
  • 잠재적으로 노드 수가 적습니다 (다각형이 더 크기 때문에)
    • 따라서 가장 빠릅니다
    • 따라서 잠재적으로 더 작은 메모리 요구 사항이 있습니다.
  • 더 현실적입니다 (다각형의 영역에 이론적으로 무한한 점이 포함되기 때문에)
    • 다각형 에서 NPC 간의 충돌을 피하기 위해 플록 킹 동작 을 수행 할 수 있습니다.

2

일반적으로 이들은 일종의 향상된 A * 알고리즘과 함께 사용됩니다 (3D 경로 찾기를위한 점프 또는 플라이 링크 고려). 그런 식으로 그것은 실제로 다른 시스템과 다른 시스템이 아니며, 높은 폴리 (잘 말해서, 비교적 말이 많은) 환경이나 지형에서 직접 일반 경로 찾기 네트워크를 생성하는 방법입니다. 어떤 이유로 든 우리는 이것을 비콘이라고 부르지 만 아이디어는 동일합니다. 어떤 종류의 자동화 된 프로세스는 각 맵에서 실행되며 합리적인 시간 범위 내에서 A *를 실행할 수있는 간단한 연결 세트를 생성합니다. 원시 기본 데이터에 대한 경로 찾기를 시도하면 메시 밀도로 인해 게임에 너무 느립니다.


이것은 단순화 된 메쉬에서 수행 된 것을 제외하고는 웨이 포인트 그래프가 아닙니까? navmeshes를 사용하면 다각형에서 경로를 지정할 수 있다고 생각했습니다.
Fire

단순화 된 그래프를 사용하면 장거리 경로를 지정할 수 있으며 단거리는 일반적으로 다른 방식으로 처리됩니다. Valve의 시스템은 서로 다른 방식으로 (슈퍼 노드 라우팅과 로컬 제약 조건) 메시 데이터를 사용합니다.
coderanger

간단한 연결 집합은 navmesh가 아닌가? 다각형에서 경로를 지정하기 때문에 navmesh라고 불렀습니다.
Fire

로컬 탐색과 전역 탐색이 여기에 관련이 없다고 생각합니다.
Fire

1
인접한 다각형 세트는 여전히 설정된 웨이 포인트와 같은 그래프이며 동일한 방식으로 A *를 수행 할 수 있습니다. 유일한 차이점은 이동하려는 다각형을 알고 나면 선을 다르게 그립니다.
coderanger

0

당신이 그것을 할 수있는 많은 방법이 있습니다. A * 등은 좋은 선택이지만 문서에는 부족합니다. 맵 주위에 노드를 거의 무작위로 배치하고 서로를 볼 수있는 노드를 확인하고 작은 노드 웹을 구축 할 수 있습니다. 가장 최적은 아니지만 이해하기 쉽습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.