Modifiers는 작은 스크립트로서 Seeker에 연결되어 경로가 호출자에게 반환되기 전이나 후에 경로를 전처리 및 후처리할 수 있습니다.

Modifiers는 Seeker 컴포넌트가 부착된 동일한 GameObject에 스크립트를 부착하기만 하면 사용 가능합니다. 코드를 수정하지 않아도 자동으로 작동합니다.

예를 들어, Raycast Modifier는 경로에서 불필요한 노드를 제거하여 더 짧지만 여전히 유효한 경로를 만들 수 있습니다. 또는 Smooth Modifier는 경로를 세분화하고 부드럽게 하여 더 미적으로 매력적으로 보이게 합니다.

아래는 그리드 그래프에서 가장 일반적인 Modifier 유형/Modifier 조합의 비교입니다.

 

SimpleSmoothModifier
RaycastModifier
FunnelModifier
RadiusModifier
StartEndModifier
AlternativePath
Modifiers
참조
참고
모든 이동 스크립트가 Modifiers를 사용하는 것은 아닙니다. AIPath와 AILerp 이동 스크립트는 모든 Modifiers를 지원하지만, RichAI 이동 스크립트는 대부분의 Modifiers를 무시합니다 (경로를 부드럽게 하거나 단순화하는 모든 Modifier를 무시합니다). 그리고  FollowerEntity 이동 스크립트는 Modifiers를 전혀 사용하지 않습니다. RichAI와 FollowerEntity 스크립트는 자체 경로 평활화 코드를 포함하고 있습니다. RichAI 이동 스크립트를 사용할 때도 다른 Modifiers를 부착할 수 있습니다.

 

Simple Smooth Modifier

simple smooth modifier 는 경로를 부드럽게 하기 위한 Modifier입니다. 이는 경로를 세분화하고 정점을 서로 가까이 이동시키거나 스플라인, 즉 베지어 곡선을 사용할 수 있습니다.
아래는 Smooth Modifier를 껐을 때와 켰을 때의 경로를 보여주는 두 개의 이미지입니다. 부드러워진 경로가 코너를 약간 자르는 것을 볼 수 있는데, 이는 Smooth Modifier가 경로를 부드럽게 할 때 월드 지형을 고려하지 않기 때문에 발생할 수 있는 문제입니다. 

변수 문서는 Simple Smooth Modifier 문서를 참조하세요.

Funnel Modifier

funnel modifier는 내브메쉬(navmeshes)나 그리드 그래프에서 경로를 간단하게 만드는 Modifier입니다. 이름에서 알 수 있듯이 이 Modifier는 경로에 깔때기 알고리즘을 적용합니다. 이는 경로 탐색기가 계산한 경로 통로 내부에서 가장 짧은 경로를 반환합니다.

"Modules"를 클릭하고 "Modifiers"로 이동하면 모든 Modifiers의 목록을 볼 수 있습니다.

Raycast Modifier

raycast modifier 는 일련의 직선 검사를 통해 경로를 간단하게 만듭니다. 이 Modifier는 주로 그리드 그래프에서 유용하지만, 게임에 따라 점 그래프를 사용할 때도 유용할 수 있습니다.

 

Custom modifiers

사용자 정의 경로 Modifier를 작성하는 것도 가능합니다.

Writing Modifiers 참조

'유니티 에셋 > A* Pathfinding project pro' 카테고리의 다른 글

Local Avoidance > Custom Local Avoidance Movement Script  (0) 2024.05.25
Local Avoidance  (0) 2024.05.25
Searching for paths  (0) 2024.05.24
Movement scripts > Writing a movement script  (0) 2024.05.24
Movement scripts  (0) 2024.05.23

+ Recent posts