NavMesh에셋으로 이동 가능한 레벨 만들기
적 인공지능을 만들기 위해 인공지능이 탐색에 사용할 네비게이션메시라는 맵을 NavMesh라는 에셋으로 만듭니다
1. 레벨에디터에서 툴바에 있는 만들기 버튼을 클릭합니다. NavMesh Bonus Volume을 클릭합니다.
2. NavMesh Bonus Volume을 이동가능한 수준의 걸어갈 수 있는 공간이 포함될때까지 이동및 크기 조정을 해야합니다. 디테일 패널에서 위치 X=-316, Y=2116, Z=460및 스케일 (20,44,7)로 설정 전 다음과 같이 설정했습니다.
레벨에디터에서 P를 누르면NavMesh가 올바르게 배치되었는지 확인할 수 있습니다.
AI 에셋 생성
우리는 적의 행동을 관리하기 위해 함께 동작하는 네 가지 타입의 에셋을 만들어야 합니다.
- 캐릭터 : 적캐릭터 블루프린트
- AI컨트롤러 : 캐릭터와 비헤이비어 트리간의 연결 역할을 하는 블루프린트
- 비헤이비어트리: 조건에 따라 어떤 행동을 하게하는 의사 결정 논리
- 블랙보드 : AI컨트롤러와 비헤이비어 트리 간에 공유되는 의사 결정에 사용되는 모든 데이터를 저장하는 컨테이너입니다.
1. 콘텐트 브라우저에서 ThirdPerson폴더에 새폴더를 만들고 Enemy로 이름을 변경합니다.
2. 생성한 적폴더를 열고 빈폴더 공간을 우클릭하고 블루프린트 클래스를 선택합니다.
3. 팝업 하단의모든클래스 그룹을 열고 ASP_를 입력후 Ue4ASP_Character를 선택하는건데 에셋의 호환문제로 임포트 안했기 때문에 기본 ThirdPersonCharacter를 선택하겠습니다. character로 검색하면 쉽게 찾을 수 있습니다.
4. 이름을 BP_EnemyCharacter로 바꾼다.
5. Enemy폴더 빈공간에 우클릭후 AIController를 입력한다. AIController클래스를 선택하고 BP_EnemyController로 이름을 지정한다.
6. 비헤이비어 트리 에셋을 만들려면 빈곳을 우클릭후 인공지능 위에 마우스를 올려 하위메뉴에서 비헤이비어트리를 선택한다. 이름을 BT_EnemyBehavior로 바꾼다.
7. 마지막으로 블랙보드 에셋을 만들자 우클릭후 인공지능 위에 마우스를 올려 하위메뉴에서 블랙보드를 선택한다. 이름을 BB_EnemyBlackboard로 정한다.
'블루프린팅 > 9. 인공지능' 카테고리의 다른 글
[09인공지능] AI 컨트롤러에서의 비헤이비어 트리 실행 (3) | 2023.06.04 |
---|---|
[09.인공지능] 내비게이션(탐색) 행동 만들기 (0) | 2023.05.31 |
[09인공지능] BP_EnemyChracter블루프린트 세팅 (0) | 2023.05.31 |
[09인공지능] 플레이 영역 확장 (0) | 2023.05.30 |
[3부]게임의 향상 [09] 인공지능으로 똑똑한 적 만들기 (0) | 2023.05.30 |