일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- c++용어정리
- leveleditor
- 각도변환
- unrealengineai
- 프로그래밍
- DX
- 언리얼비헤이어비어트리
- c++
- 게임개발
- c++class
- c++porinter
- 프로그래밍일기
- 수학용어정리
- bttask
- 언리얼엔진공부
- 언리얼엔진
- livrary
- ipc(inter process communication)
- 영단어정리
- 월드아웃라이너
- 언리얼ai
- 자료형타입
- 25.06.11dir
- 게임엔진튜토리얼
- 자료구조정리
- directx
- uaiperception
- 언리얼엔진5
- 자료구조
- c언어정리
- Today
- Total
루리코딩 세상
Unreal Engine AI 설정 활용 방안 본문
언리얼 엔진에서 지원하는 강력한 기능 중에는 AI를 활용하는 방안이 있다.
이를 이용해서 플레이어와 AI간의 상호작용으로 더욱더 실감나는 게임을 만들기 위해서는
언리얼 엔진의 블루프린트 클래스와 프로그래밍을 적극적으로 활용해야한다.
먼저 블루 프린트 클래스를 활용해서 프로그래밍을 하기 전에 어떤 동작을 AI에게 주면 좋을지에 대해서 나눠보자.
움직이는 동작 관련() | ||
전진( 걷기, 뛰기, 전력질주 ) ( Walk, Run, Sprint ) |
순찰 상태 ( Patrol ) |
점프 상태 ( Jump ) |
정지해있는 상태 ( Idle ) |
||
전투 동작 관련(애니메이션 동작 관련) | ||
무기를 들고 있는 행동 ( Idle->Holster ) |
무기를 꺼내는 장착하는 행동 ( Begin-Equip ) |
무기를 휘두르는 행동 ( Attack ) |
방어를 위한 행동 | 범위 내 감지하는 행동 ( Perception ) |
플레이어를 추적하는 행동 ( Approach ) |
기타 동작 관련 | ||
피격 당하는 행동 ( Damaged ) |
콘텐츠 고급 에셋에는 인공 지능 클래스는
블랙보드(Blackboard)
비헤이비어 트리(Behavior Tree)
인바이런먼트 쿼리(Environment Query System, EQS) 세 종류를 확인가능하다.
각각의 기능을 정리하면 아래와 같다.
1. 🧠 블랙보드 (Blackboard)
AI의 기억장치, 즉 "생각하는 공간"입니다.
- 무엇인가?
AI가 현재 상태나 목표를 기억할 수 있도록 도와주는 데이터 저장소입니다. - 예시 변수:
- TargetActor (공격 대상)
- MoveLocation (이동 위치)
- AIState (현재 행동 상태 – 대기, 추적 등)
- 어디서 쓰이나요?
비헤이비어 트리, 데코레이터, 서비스, 태스크 등 여러 노드에서 조건 판단 및 값 공유에 사용됩니다.
☑ 블랙보드는 AI의 뇌처럼 "어디로 갈까? 누구를 공격하지?" 등의 결정을 위한 기준이 됩니다.
2. 🌲 비헤이비어 트리 (Behavior Tree)
AI의 행동 순서도, 즉 "무엇을 어떻게 할 것인지"를 설계합니다.
- 무엇인가?
AI가 어떤 상황에서 어떤 행동을 해야 하는지 논리적 흐름을 설계하는 도구입니다. - 구성 요소:
- Root → Composite (Sequence/Selector) → Decorator/Task/Service
- 기본 노드 종류:
- Sequence: 순차 실행 (모두 성공해야 성공)
- Selector: 조건 분기 (하나라도 성공하면 성공)
- Task: 실제 행동 (이동, 공격 등)
- Decorator: 조건 확인 (예: 적이 보일 때만 실행)
- Service: 상태 갱신 (예: 타겟 계속 확인)
☑ 비헤이비어 트리는 AI가 상황에 따라 무엇을 할지 스마트하게 결정하는 경로도입니다.
3. 🔍 인바이런먼트 쿼리 시스템 (Environment Query System, EQS)
AI가 주변 환경을 탐색하고 판단하는 시스템, 즉 "주변을 살펴보고 어디가 좋은지 판단"합니다.
- 무엇인가?
AI가 환경을 스캔해서 최적의 위치를 선택하거나 대상 탐색을 도와주는 쿼리 기반 탐색 도구입니다. - 활용 예시:
- 장애물 없는 가장 가까운 위치 찾기
- 플레이어와 일정 거리 유지하는 위치 선정
- 은신처나 유리한 포지션 찾기
- 쿼리 항목:
- Generate Location (위치 생성)
- Test Distance (거리 검사)
- Test Visibility (시야 검사) 등
☑ EQS는 AI가 환경을 고려한 전략적 위치 선택에 적합하며, 고급 AI에 매우 유용합니다.
인공 지능 클래스의 블랙보드
인공 지능의 비헤이비어 트리 행동을 어떻게 동작 할 것인지에 대하여 설정하는 과정이다.
AI-Behavior Tree - 블랙보드 에셋을 알맞는 부모 클래스-블랙보드 에셋으로 설정해주어야 작동한다.
블루 프린트 클래스 중 AIcontroller (부모 클래스)
'이론 > Unreal Engine' 카테고리의 다른 글
언리얼 엔진 그리고 C++ (0) | 2025.05.30 |
---|---|
무기 장착해주기, SkeletalMesh 활용하기 (0) | 2025.05.28 |
캐릭터 블루프린터 클래스 메시 적용하기 : Character Blue Print Class (0) | 2025.05.16 |
Outliner 아웃라이너 : Tree View (0) | 2025.05.16 |
Unreal Editor : Level (0) | 2025.05.15 |