NavMeshAgent
NavMeshAgent는 NavMesh 주변을 항해하는 컴포넌트이다.
NavMesh
에이전트들을 배치한 곳 어디든 적이 갈 수 있는 지 그 여부를 알 수 있도록 월드 기하에 배치된 것이다.
Window - Ai - Navigation
Bake 버튼을 눌러보면 특정한 것에만 적용이 되는데 NavMesh는 정적 객체에만 적용될 수 있어서 그렇다.
이렇게 인스펙터에서 정적임을 체크해줘야 된다.
이후 Bake를 하면 Bake된 NavMesh가 바뀌어 있는 걸 볼 수 있다.
* 파란색 부분 - NavMesh (NavMeshAgent가 갈 수 있는 곳)
여기서 NavMesh간의 사이에 틈이 생겨 Agent들이 올라가거나 내려올 수 없는 경우가 생긴다.
Agent Radius를 늘리면 가장자리의 폭이 넓어지고
Agent Radius를 줄이면 가장자리의 폭이 좁아진다.
Agent Height는 머리가 사물에 부딪치게 할지 말지를 알려준다.
Max Slope는 경사로를 지나 갈 수 있는 최대 각도다.
Step Height는 걸어갈 수 있는 높이다.
스크립트 이동
NavMeshAgent를 쓰기 위해 Using UnityEngine.AI를 적어주고 NavMeshAgent의 SetDestination 함수를 사용하였다.
'유데미 강의 > C#과 Unity로 3D 게임 개발하기 : 좀비 러너 게임' 카테고리의 다른 글
총구 플래시 (0) | 2022.09.15 |
---|---|
적 체력과 데미지 (0) | 2022.09.15 |
총, 레이캐스팅 (0) | 2022.09.15 |
사정거리 만들기, OnDrawGizmosSelected(), 도발 공격 (0) | 2022.09.15 |
좀비 러너 게임 디자인 (0) | 2022.09.14 |