일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- URP
- Cell Look
- 게임 수학
- 개인 바이트
- AppSW
- VR
- 메모리 누수
- Rim Light
- Specular
- C언어
- Cartoon Rendering
- 벡터
- 프로그래밍 기초
- URP로 변경
- Virtual Byte
- Private Bytes
- 3d
- working set
- Three(Two) Tone Shading
- Windows Build
- ASW(Application SpaceWarp)
- 가상 바이트
- OculusMotionVectorPass
- Toon Shader
- 작업 집합
- ColorGradingLutPass
- Cell Shader
- Today
- Total
WinCNT
Unity 2022.2부터 Navigation이 AI Navigation로 바뀌었다길래 사용해봤다 본문
Unity 2022.2부터 Navigation이 AI Navigation로 바뀌었다길래 사용해봤다
WinCNT_SSS 2023. 11. 14. 09:52서론
유니티를 2021.3에서 2022.3으로 버전하던 도중, 버전 업 가이드에 Navigation and Pathfinding이 바뀌었다는 문구가 있었다
Navigation and Pathfinding is moving from the Unity core to the AI Navigation package
조금 조사해보니 예전부터 사용된 빌트 인 네이게이션 시스템도 있는 것 같고, Unity 2022.2 이전이지만 실험적 패캐지로써 사용하는 경우도 있는 것 같았다
(심지어 따로 깃허브에서 소스를 받아서 쓰는 경우도 있었음)
필자의 경우 Unity를 버전 업하니 com.unity.ai.navigation가 1.0.0-exp.4에서 1.1.4로 변경되었다
문제는 그로 인해 사용법과 인터페이스도 좀 바뀐 것 같다
찾아보니 다행히 공식 문서에 잘 나와있었지만, 필자도 처음에는 당황했었기에 혹시나 필자와 같은 사람들이 있을까 해서 매우 간단하게 정리해보고자 한다
그래서 뭐가 바뀌었는데?
사실 이 내용을 정리하게 된 계기이다
버전 업을 하고 Navigation 항목을 확인해보니 다음과 같이 바뀌어있었다
아마 패키지의 manifest.json을 확인해보니 com.unity.ai.navigation가 1.0.0-exp.4에서 1.1.4로 변경된 영향으로 보인다
문제는 인터넷에 올라온 많은 예제들은 대부분 항목이 4개(Agents, Areas, Bake, Object)인 예제였다
아니! 새로운 버전에서는 어떻게 Bake하는 거냐고~!
그래서 결국 Bake는 어떻게 함?
버전 1.1.4부터 Navigation 창의 Bake 탭은 컴포넌트로 완전히 대체되었다!
여태까지는 Object 탭에서 Mesh Renderer나 Terrains 게임 오브젝트를 선택해서 Navigation Static에 체크를 하고 Bake 탭에서 Bake 버튼을 눌러서 NavMesh를 만들었다
하지만 Unity 2022.2 이후부터는 이 방식이 Legacy가 되었다
이제부터는 NavMesh를 위해서는 패키지 com.unity.ai.navigation가 필요하며, AI Navigation 1.1.4부터는 Object와 Bake 탭이 삭제되었다
이제 NavMesh를 Bake하기 위해서는, 게임 오브젝트에 NavMeshSurface라는 컴포넌트를 추가한 다음, 그 컴포넌트에 있는 Bake 버튼으로 NavMesh를 생성하는 방식을 택해야한다
또한 이제 Navigation Static에 체크할 필요가 없어졌다(Static에서 선택도 안 되게 변경됨)
NavMeshSurface 컴포넌트의 Use Geometry와 Object Collection에 해당하는 Object면 NavMesh의 대상이 된다
Non-Static이라도 문제 없이 Bake된다
정답은 언제나 공식 문서
기존까지의 방법이 작성된 문서는 그냥 아예 Lecacy라는 딱지가 붙어있다
Unity - Manual: Legacy navigation and pathfinding
이제부터 봐야하는 건 AI Navigation package의 매뉴얼이다
AI Navigation | AI Navigation | 1.1.4
AI Navigation에는 NavMeshObstacle나 OffMeshLink 등 NavMesh 생성에 필요한 여러 컴포넌트들에 대한 설명도 자세히 나와 있었다
이 부분은 버전 업에 의해 크게 변경된 부분은 없는 것 같아서 생략하려고 한다
그리고 관련 자료를 못 찾아서 혼자서 맨땅에 헤딩하면서 시도했었는데, 이 글을 거의 다 정리하니 일본 쪽에서는 현재 버전에 대한 정리 사이트가 있었다…Nav흑흑
【Unity】NavMeshを使ってキャラクターを自動で移動させる
결과
아래는 NavMesh 생성을 위해 이리저리 테스트 해본 결과이다
마무리
Unity 버전 업 작업에서 비롯된 간단한 검증 작업 중 하나인지라 NavMesh 자체에 대한 정리가 살짝 약한 것 같기는 하다
직접적인 NavMesh 관련 작업이 생긴다면 그 때가서 좀 더 정리해볼까 싶다
아무튼 이번 글은 이걸로 끝!
참고 사이트
AI Navigation | AI Navigation | 1.1.4
【Unity】NavMeshを使ってキャラクターを自動で移動させる
'Unity > Unity 관련' 카테고리의 다른 글
Unity에서 커스텀 ShaderGUI를 구현해보자! 그 두번째 (0) | 2024.02.09 |
---|---|
UniTask를 인스톨하고 살짝 사용해봤다! (0) | 2023.11.30 |
Github Actions 사용해보기! (0) | 2023.10.31 |
Unity에서 커스텀 ShaderGUI를 구현해보자! 그 첫번째 (0) | 2023.10.11 |
CMD와 ADB로 만들었던 스크립트를 PowerShell로 바꿔보자! (0) | 2023.10.10 |