언리얼 엔진 5 게임 AI 개발 가이드 [블루프린트와 C++로 구현하는 지능형 NPC와 게임 AI 시스템]
- 원서명Artificial Intelligence in Unreal Engine 5: Unleash the power of AI for next-gen game development with UE5 by using Blueprints and C++ (ISBN 9781836205852)
- 지은이마르코 세치(Marco Secchi)
- 옮긴이이지성, 송정은
- ISBN : 9791161758664
- 38,000원
- 2026년 02월 26일 펴냄
- 페이퍼백 | 456쪽 | 188*235mm
- 시리즈 : 게임 개발 프로그래밍
책 소개
요약
언리얼 엔진 5의 AI 시스템으로 차세대 게임을 설계하라!
이 책은 초중급 개발자를 대상으로 AI의 기본 개념부터 내비게이션 시스템, 비헤이비어 트리, 인지 시스템, EQS, 스테이트 트리, 매스 시스템, 스마트 오브젝트까지 언리얼 엔진의 최신 AI 기능을 다룬다. 단계별 실습을 통해 실제 프로젝트에 적용할 수 있는 기법을 익혀, 보다 흥미롭고 몰입감 있는 게임 AI를 구현해보자.
한국어판 추천의 글
실무와 이론을 잇는 언리얼 엔진 5 AI 개발의 완벽한 지침서
대학에서 학생들과 언리얼 엔진 기반의 게임 프로젝트 수업을 진행하다 보면 늘 마주하는 현실적인 어려움이 있습니다. 한 학기라는 제한된 물리적 시간 안에서 게임의 전체적인 메커니즘을 완성해야 하다 보니, 게임의 핵심인 ‘지능적인 AI’ 시스템을 깊이 있게 다루기에는 늘 시간이 부족했습니다. 게다가 정규 수업 외에 학생들이 스스로 학습할 수 있는 적절한 수준의 교재를 추천해주기도 마땅치 않아 아쉬워하곤 했습니다.
이 책은 바로 그러한 교육 현장의 갈증을 완벽히 해소해줄 수 있는 보석 같은 지침서입니다. 단순히 캐릭터를 이동시키는 수준을 넘어, 언리얼 엔진 5에서 새롭게 도입된 최신 기술들을 체계적으로 다룹니다. 특히 수업 시간에 개념 위주로만 훑고 지나가기 쉬운 내비게이션 최적화, 정교한 비헤이비어 트리 설계, 주변 환경을 인식하는 인지 시스템(AI Perception)은 물론, 차세대 기술인 매스 프레임워크와 스마트 오브젝트까지 단계별 예제를 통해 학생 스스로가 충분히 실습하며 학습할 수 있도록 구성돼 있습니다.
무엇보다 이 책의 가장 큰 가치는 번역가의 풍부한 실무 역량이 문장 곳곳에 깊이 녹아들어있다는 점입니다. 현업 프로그래머로서의 실무 지식과 다수의 전문 서적을 번역한 노하우가 결합돼, 자칫 난해할 수 있는 기술 용어와 개념들을 독자의 눈높이에서 아주 매끄럽고 명쾌하게 전달합니다. 원서의 내용을 국내 개발 환경과 최신 언리얼 버전(5.5)에 맞춰 세심하게 다듬은 대목에서는 독자를 향한 번역가의 전문성과 배려가 고스란히 느껴집니다.
언리얼 엔진의 기초를 넘어 ‘살아 있는 가상 세계’를 구현하고자 하는 학생들과, 수업에서 다 채우지 못한 기술적 깊이를 스스로 채우고 싶은 예비 개발자들에게 이 책을 기쁜 마음으로 추천합니다.
― 강상용(한국폴리텍대학 메타버스콘텐츠과 교수)
차세대 게임 개발의 핵심, 언리얼 엔진 5 AI 마스터를 위한 필독서
오늘날 게임 개발에서 인공지능(AI, Artificial Intelligence)은 단순한 보조 도구를 넘어, 플레이어에게 몰입감 넘치는 경험을 제공하는 핵심 요소가 됐습니다. 과거의 AI가 정해진 규칙에 따라 움직이는 단순한 대상에 불과했다면, 현대의 AI는 환경과 능동적으로 상호작용하고 상황에 따라 전략적으로 판단하는 지능형 에이전트로 진화하고 있습니다.
이러한 시대적 흐름 속에서 이 책은 언리얼 엔진 5의 방대하고 강력한 AI 시스템을 체계적으로 학습할 수 있도록 이끄는 매우 실천적인 안내서입니다. 특히 게임 AI만을 집중적으로 다룬 전문 서적이 드문 국내 환경에서, 이 책의 출간은 개발자들에게 가뭄의 단비 같은 소식이 될 것입니다.
이 책의 가장 큰 장점은 단계별 실습을 통해 이론과 실무를 자연스럽게 연결한다는 점입니다. 내비게이션 시스템의 기초부터 비헤이비어 트리를 활용한 의사결정 설계, 인지 시스템을 통한 반응성 향상, 그리고 최신 기술인 스테이트 트리와 매스 프레임워크까지 깊이 있게 다루고 있습니다.
또한 이 책은 독자에게 무조건적인 학습을 강요하는 대신에 필요한 사전 지식과 학습 방향을 명확히 제시함으로써 현실적인 성장 경로를 안내합니다. 덕분에 초중급 개발자에게는 도약의 발판이 되고, 숙련된 개발자에게는 AI 시스템을 체계적으로 정리하고 확장할 수 있는 훌륭한 참고서가 돼줄 것입니다.
게임 AI를 단순히 어렵고 복잡한 영역이 아니라 설계하고 조율할 수 있는 기술로 인식하게해주는 이 책을 언리얼 엔진 5로 한 단계 높은 수준의 게임을 만들고자 하는 모든 개발자에게 흔쾌히 추천합니다.
― 이창현(이창현코딩연구소 대표)
이 책에서 다루는 내용
◆ 비디오 게임을 위한 AI 개발의 기초 이해
◆ 언리얼 엔진 AI 프레임워크의 핵심 액터 심층 분석
◆ 매력적이고 몰입감 있는 AI 캐릭터의 설계 및 구현
◆ 비헤이비어 트리, 내비게이션 시스템, 매스 엔티티 등 다양한 AI 기능을 활용한 생동감 넘치는 AI 경험 구축
◆ 언리얼 엔진 전용 디버깅 도구를 활용한 AI 시스템 디버깅 기법
◆ 사용자 정의 노드와 함수를 통한 AI 시스템 확장 방법
◆ 블루프린트와 C++를 사용한 AI 시스템 활용법
◆ 전술, 움직임 등 다양한 요소에 초점을 맞춘 게임 제작
목차
목차
- 1부 ― 게임에 AI 도입
- 1장 AI 게임 개발 시작
- __기술적인 요구 사항
- ____사전 지식
- ____하드웨어 사양
- ____소프트웨어 사양
- __AI 소개
- __게임 개발에 사용되는 AI의 이해
- __비디오 게임의 AI 기술 설명
- ____경로 탐색
- ____규칙 기반
- ____유한 상태 머신
- ____비헤이비어 트리
- ____머신러닝 AI
- ____강화학습
- ____생성형 AI
- __요약
- __크레디트
- 2장 언리얼 엔진 AI 시스템 소개
- __기술적인 요구 사항
- __언리얼 엔진 게임플레이 프레임워크 이해
- ____액터와 컴포넌트
- ____GF의 주요 요소
- ____GameplayStatics
- __언리얼 엔진 AI 시스템 소개
- ____내비게이션 시스템
- ____비헤이비어 트리
- ____매스 엔티티
- ____스테이트 트리
- ____스마트 오브젝트
- ____인바이런먼트 쿼리 시스템
- ____AI 인지 시스템
- ____AI 디버깅
- __고급 AI 기능 이해
- ____러닝 에이전트
- ____신경망 엔진
- ____ML 디포머
- ____ML 클로스 시뮬레이션
- __요약
- 2부 ― 내비게이션 시스템 이해하기
- 3장 언리얼 엔진 내비게이션 시스템 소개
- __기술적인 요구 사항
- __AI 이동 소개
- ____내비게이션 메시 이해
- ____내비메시 수정
- ____AI 에이전트
- __회피
- __경로 탐색 이해하기
- __프로젝트 템플릿으로 내비게이션 시스템 테스트하기
- ____프로젝트 설정하기
- ____내비메시 분석하기
- ____캐릭터 컨트롤러 분석하기
- ____프로젝트 테스트하기
- __요약
- 4장 내비게이션 메시 설정
- __기술적인 요구 사항
- __언리얼 애질리티 아레나 소개
- ____프로젝트 개요 설명
- ____프로젝트 시작
- __AI 에이전트 생성
- ____에이전트 생성
- ____내비게이션 로직 추가
- __기본 레벨 설정
- ____레벨 생성
- ____내비메시 추가
- ____에이전트 추가
- ____짐 테스트하기
- __내비게이션 모디파이어 추가
- ____레벨 생성
- ____모디파이어 추가
- ____레벨 개선
- ____사용자 정의 모디파이어 생성
- ____사용자 정의 모디파이어 적용하기
- ____레벨 테스트하기
- __내비게이션 링크 프록시 작업
- ____레벨 생성
- ____내비 링크 프록시 추가
- ____짐 테스트하기
- __요약
- 5장 에이전트 내비게이션 개선
- __기술적인 요구 사항
- __런타임에 내비게이션 메시 생성
- ____레벨 생성
- ____움직이는 플랫폼 추가
- ____동적 내비메시 생성
- __쿼리 필터를 사용한 내비게이션 조정
- ____레벨 생성
- ____쿼리 필터 클래스 생성
- ____에이전트 수정
- __에이전트 회피 구현
- ____레벨 생성
- ____에이전트 추가
- ____회피 기능 활성화
- ____최악의 시나리오 테스트
- __요약
- 6장 내비게이션 시스템 최적화
- __기술적인 요구 사항
- __내비메시 디버깅 도구 이해
- ____AI 디버깅 도구 활성화하기
- ____AI 디버깅 도구 검사하기
- __내비메시 해상도 분석
- __내비메시 생성 개선
- ____내비메시 해상도 조정
- ____내비메시 해상도 변경
- ____타일 크기 변경
- __추가적인 개선 사항
- ____해상도 조정
- ____메시 영향 비활성화하기
- __요약
- 3부 ― 의사결정 다루기
- 7장 비헤이비어 트리 소개
- __기술적인 요구 사항
- __비헤이비어 트리 설명
- ____비헤이비어 트리 구조
- ____언리얼 엔진에서의 비헤이비어 트리란?
- ____비헤이비어 트리 노드 인스턴싱
- ____실행 순서
- __언리얼 엔진의 비헤이비어 트리 이해하기
- ____루트 노드
- ____태스크 노드
- ____컴포짓 노드
- ____데코레이터
- ____서비스
- __블랙보드 이해하기
- __요약
- 8장 비헤이비어 트리 설정
- __기술적인 요구 사항
- __언리얼 애질리티 아레나 확장하기
- ____프로젝트 개요 업데이트
- ____프로젝트 생성
- ____캐릭터 생성
- ____배터리 상태 처리하기
- ____캐릭터 구현
- __비헤이비어 트리 생성
- ____AI 컨트롤러 생성
- ____블랙보드 생성
- ____비헤이비어 트리 생성
- __비헤이비어 트리 태스크와 서비스 구현
- ____FindRandomLocation 태스크 구현
- ____SpeedControl 서비스 구현
- ____BatteryCheck 서비스 구현
- __에이전트에 비헤이비어 트리 설정하기
- ____비헤이비어 트리 편집하기
- ____AI 에이전트 블루프린트 생성
- ____짐에서 에이전트 테스트하기
- __요약
- 9장 비헤이비어 트리 확장
- __기술적인 요구 사항
- __비헤이비어 트리 구성을 위한 모범 사례 소개
- ____모범 사례
- ____거너 캐릭터 로직 구현
- ____BaseTarget 클래스 구현
- ____블루프린트 생성
- __데코레이터 이해하기
- ____BTAuxiliaryNode 클래스
- ____C++ 데코레이터 생성
- ____블루프린트 데코레이터 생성
- ____CheckTagOnActor 데코레이터 구현하기
- __서비스 이해하기
- ____C++ 서비스 생성하기
- ____블루프린트 서비스 생성하기
- ____SetAmmo 서비스 구현하기
- __태스크 이해하기
- ____C++ 태스크 생성하기
- ____블루프린트 태스크 생성하기
- ____PlayMontage 태스크 구현하기
- ____FindAvailableTarget 태스크 구현하기
- __비헤이비어 트리 디버깅하기
- ____블랙보드 생성
- ____비헤이비어 트리 생성
- ____AI 컨트롤러 생성
- ____짐에서 비헤이비어 트리 디버깅하기
- __요약
- 10장 인지 시스템으로 에이전트 향상시키기
- __기술적인 요구 사항
- __인지 시스템 소개
- ____AI 인지 시스템의 구성 요소
- ____AIPerceptionSenseConfig 타입
- ____자극 소스
- __에이전트에 인지 기능 추가하기
- ____BaseSecurityCam 클래스 생성
- ____BaseSecurityCamAIController 클래스 생성
- __인지 디버깅하기
- ____로머 비헤이비어 트리 개선
- ____BaseDummyAIController 개선
- ____보안 카메라 블루프린트 생성
- ____짐 생성
- ____인지 디버깅 활성화하기
- __인지 자극 생성하기
- ____타깃 액터 생성
- ____짐 테스트하기
- __요약
- 11장 인바이런먼트 쿼리 시스템 이해하기
- __기술적인 요구 사항
- __인바이런먼트 쿼리 시스템 소개
- ____제너레이터
- ____컨텍스트
- ____테스트
- __인바이런먼트 쿼리 설정
- ____짐 생성
- ____AI 컨트롤러 생성
- ____인바이런먼트 쿼리 생성
- __비헤이비어 트리 내에서 인바이런먼트 쿼리 다루기
- __EQS 정보 표시
- __요약
- 4부 ― 고급 주제 탐구
- 12장 스테이트 트리를 활용한 계층형 스테이트 머신 사용
- __기술적인 요구 사항
- __스테이트 트리 소개
- ____스테이트 트리 확장하기
- ____스테이트 트리 흐름 이해하기
- ____데이터 바인딩
- __스테이트 트리 생성 및 관리
- ____스테이트 트리 플러그인 활성화하기
- ____소음 발생 액터 구현하기
- __고급 스테이트 트리 기능 사용하기
- ____C++ AI 컨트롤러 생성
- ____AI 컨트롤러 블루프린트 구현하기
- ____스테이트 트리 구현하기
- ____AI 컨트롤러에 스테이트 트리 할당하기
- ____경비원 블루프린트 생성하기
- ____짐에서 테스트하기
- __요약
- 13장 매스를 활용한 데이터 지향 계산 구현하기
- __기술적인 요구 사항
- __매스 프레임워크 소개
- ____매스 프레임워크 플러그인
- ____매스 요소 이해하기
- ____매스 게임플레이
- __매스 설정
- ____플러그인 활성화
- ____매스 엔티티 환경설정 에셋 생성
- ____스폰 EQS 생성하기
- ____짐 생성
- ____짐 테스트하기
- __블루프린트 스폰
- ____관객 블루프린트 생성
- ____매스 엔티티 환경설정 에셋 생성
- ____프로세서 자동 등록 활성화하기
- ____짐 생성
- __요약
- 14장 스마트 오브젝트를 활용한 상호작용 요소 구현하기
- __기술적인 요구 사항
- __스마트 오브젝트 소개
- ____스마트 오브젝트 프레임워크의 주요 요소 소개
- __스마트 오브젝트 정의 데이터 에셋 생성
- ____플러그인 활성화하기
- ____작업대 정의 에셋 생성하기
- __스마트 오브젝트 로직 구현
- __스마트 오브젝트와 상호작용하기
- ____동전 던지기 태스크 생성하기
- ____인바이런먼트 쿼리 생성하기
- ____블랙보드 생성하기
- ____비헤이비어 트리 생성하기
- ____캐릭터 블루프린트 생성하기
- ____짐에서 스마트 오브젝트 테스트하기
- __요약
- __에필로그
- 부록 언리얼 엔진에서의 C++ 이해하기
- __기술적인 요구 사항
- __기본 개념 소개
- ____C++ 클래스 이해하기
- ____프로퍼티
- ____함수
- ____C++ 헤더 프리뷰
- __고급 기능 살펴보기
- ____캐스팅
- ____인터페이스
- ____델리게이트
- __핵심 메카닉 탐구하기
- ____가비지 컬렉션
- ____리플렉션 시스템
- __요약


