언리얼 엔진 5로 제작하는 실시간 VFX [나이아가라를 활용한 VFX 단계별 실습]
- 원서명Build Stunning Real-time VFX with Unreal Engine 5: Start your journey into Unreal particle systems to create realistic visual effects using Niagara (ISBN 9781801072410)
- 지은이흐리시케쉬 안두를레카(Hrishikesh Andurlekar)
- 옮긴이이지성, 송정은
- ISBN : 9791161758220
- 35,000원
- 2024년 02월 29일 펴냄
- 페이퍼백 | 380쪽 | 188*235mm
- 시리즈 : 게임 개발 프로그래밍
책 소개
소스 코드 파일은 여기에서 내려 받으실 수 있습니다.
https://github.com/AcornPublishing/vfx-ue5
요약
코딩 없이 언리얼 엔진 5의 나이아가라로 화려한 비주얼 이펙트(VFX)를 제작할 수 있는 훌륭한 실습서이다. 이 책에서는 파티클 시스템의 기초부터 나이아가라 시스템, 모듈 재정의, 동적 입력, 사용자 정의 모듈, 버전 관리, 이벤트 핸들러, 디버깅 워크플로, 블루프린트로 나이아가라 시스템 제어 등의 핵심 주제를 다룬다. 또한, 프로젝트를 단계별로 상세하게 진행하여 나이아가라를 처음 배우는 초보자도 쉽게 따라할 수 있다.
추천의 글
흐리시케쉬 안두를레카의 책을 추천하는 글을 쓰게 돼 영광입니다. 저자는 CG 감독부터 실시간 기술 전문가까지 다양한 직종을 거쳐왔으며, 우리가 서로 알고 지낸 시간도 어느덧 18년이 넘었습니다. 지난 몇 년간 실시간 기술은 성숙기를 거치며 게임에서 비주얼 이펙트(VFX, Visual Effect)로 옮겨갔습니다. 저는 운 좋게도 영화의 컴퓨터 그래픽스 작업과 게임 및 가상현실(VR, Virtual Reality)의 인터랙티브 그래픽스 작업을 했었고, 이 기술을 현재의 게임과 비주얼 이펙트 산업에도 적용할 수 있어 다행이라 생각합니다.
게임에서 멋진 효과를 만들 수 있게 된 후, 실시간 게임 엔진은 영화의 비주얼 이펙트 생성 방식에 혁신을 불러왔습니다. 이제 비주얼 이펙트 아티스트는 언리얼과 같은 최신 게임 엔진의 성능과 속도 덕분에 실시간으로 훌륭한 비주얼 이펙트를 만들게 됐고, 긴 렌더링 시간이나 비용이 많이 드는 포스트 프로덕션(post-production) 과정도 사라졌습니다.
이 기술로 사실적인 가상 세트(virtual set)부터 복잡한 파티클 이펙트까지 모든 것을 만들 수있습니다. 따라서 영화 제작자는 지금까지 불가능했던 스케일로 몰입감과 현실감 넘치는 세계를 만들 수 있게 됐습니다. 또한 비주얼 이펙트 아티스트는 실시간 게임 엔진을 사용해 자신의 작업 결과를 바로 확인하면서 여러 번 디자인을 수정하기가 수월해졌습니다.
안나푸르나 스튜디오(Annapurna Studios)에서는 영화 제작에 실시간 기술을 이용함으로써 인도에서 가장 큰 LED 볼륨을 구축했습니다. 제가 속한 팀에서는 이 기술을 채택하면서부터 아티스트가 기술의 기본기를 갖추는 데 도움을 줄 교육 콘텐츠가 필요하다고 생각했습니다.
이 책은 입문자가 실시간 비주얼 이펙트를 어려움 없이 시작할 수 있도록 도움을 줍니다. 내용을 따라 차근차근 작업을 진행하며 툴 사용법을 익히다 보면 콘텐츠 제작의 준비 단계까지 도달하게 될 것입니다. 언리얼에 친숙한 아티스트라 해도 나이아가라(Niagara)를 사용하는 것이 부담스러울 수 있지만, 이 책과 함께라면 기본기를 다지는 데 문제가 없을 것입니다. 저자는 인터페이스를 쉽게 설명했을 뿐만 아니라 사용자 정의 모듈과 이벤트 핸들러 같은 고급 개념까지도 다룹니다.
언리얼 엔진(Unreal Engine)은 감독이 실시간으로 세트를 실험할 수 있는 방법을 제공하고 있는데, 버추얼 프로덕션 분야의 신참들은 이러한 워크플로를 간과할 때가 많습니다. 이러한 실시간 실험은 블루프린트를 사용할 수 있고, 이 책에서는 게임이나 버추얼 프로덕션 스튜디오의 런타임에 파티클 시스템을 조정할 수 있는 워크플로도 소개합니다.
나이아가라의 파티클 이펙트라는 꽤 어려운 주제를 단계별로 이해하기 쉽게 풀어준 저자의 노고에 감사의 마음을 전합니다. 그가 앞으로 세상에 내놓을 많은 책이 모두 성공하길 기원합니다.
이제 나이아가라를 향한 멋진 여정을 시작해봅시다.
이 책에서 다루는 내용
◆ 벡터 수학 능력 향상
◆ 나이아가라에서의 네임스페이스 액세스 및 생성
◆ 블루프린트 액터에 나이아가라 시스템 추가
◆ 동적 입력을 사용한 파티클 시스템 생성
◆ 팀원들이 사용 가능한 사용자 정의 모듈 게시
◆ 나이아가라 로컬 모듈 생성
◆ 이벤트 핸들러를 사용한 파티클 이미터의 통신 활성화
◆ 블루프린트 public 변수를 사용한 나이아가라 시스템 제어
이 책의 대상 독자
실시간으로 복잡한 파티클 시뮬레이션을 만드는 데 사용되는 강력한 비주얼 이펙트 툴인 언리얼 엔진의 나이아가라를 처음 배우려는 사람을 대상으로 한다. 또한 게임 개발자, 비주얼 이펙트 아티스트 혹은 취미로 즐기는 사람 등 다양한 독자를 고려해 나이아가라 시스템과 그 특징 및 기능을 폭넓게 소개한다. 이 책은 명쾌한 설명, 실용적 예시, 단계별 가이드를 제공해 언리얼 엔진으로 멋진 파티클 시뮬레이션과 비주얼 이펙트를 만드는 데 많은 도움을 줄 것이다.
이 책의 구성
1장. ‘언리얼 엔진의 파티클 시스템 프레임워크 시작하기’에서는 언리얼 엔진에서 파티클 시스템이거쳐온 과정을 간략히 설명한다.
2장. ‘파티클 시스템의 개념 이해하기’에서는 기본적인 파티클 시스템의 개념을 배운다.
3장. ‘나이아가라 개념 및 아키텍처 탐색하기’에서는 나이아가라만의 특징적인 개념을 익히고, 아키텍처, 관련 용어, 워크플로 전반을 대략적으로 살펴본다.
4장. ‘첫 번째 나이아가라 시스템 구축하기’에서는 UI를 소개하고 나이아가라 시스템을 처음 만드는 데 도움을 줄 것이다.
5장. ‘이미터-시스템의 재정의’에서는 모듈 및 파라미터 재정의와 워크플로 팁을 살펴본다.
6장. ‘동적 입력 살펴보기’에서는 동적 입력을 사용해 어떻게 파라미터 입력을 확장하고 복잡한 동작을 구현하는지 배운다.
7장. ‘사용자 정의 나이아가라 모듈 생성하기’에서는 사용자 정의 모듈로 나이아가라 성능을 확장하는 방법을 살펴본다.
8장. ‘로컬 모듈과 버전 관리’에서는 빠르고 간단한 모듈 개발 기술과 버전을 추적하는 방법을 설명한다.
9장. ‘이벤트와 이벤트 핸들러’에서는 이벤트와 이벤트 핸들러를 사용해 이미터 간의 상호작용을 알아본다.
10장. ‘나이아가라의 디버깅 워크플로’에서는 디버거 패널, 디버그 드로잉, 디버그 콘솔 명령으로 작업하는 방법을 자세히 다룬다.
11장. ‘블루프린트로 나이아가라 파티클 제어하기’에서는 나이아가라 시스템이 포함된 블루프린트로 사용이 간편한 에셋을 만들고 public 변수로 나이아가라 시스템을 제어하는 방법을 배운다.
상세이미지
목차
목차
- 1부. 언리얼 엔진 5의 나이아가라와 파티클 시스템 소개
- 1장. 언리얼 엔진의 파티클 시스템 프레임워크 시작하기
- 기술적인 요구 사항
- 언리얼의 파티클 시스템
- 캐스케이드 파티클 시스템
- 이미터 생성
- 나이아가라 개발 배경
- 나이아가라의 사용 사례
- 요약
- 2장. 파티클 시스템의 개념 이해하기
- 기술적인 요구 사항
- 주요 파티클 개념 살펴보기
- 기능
- 모듈 그룹
- 벡터 수학과 행렬 및 나이아가라에 적용
- 벡터란 무엇인가?
- 벡터 연산
- 크기와 단위벡터
- 나이아가라의 벡터 연산 표현
- 행렬 연산
- 파티클 시스템 툴의 이해
- 애프터번
- 리얼플로우
- 트랩코드 파티큘러
- 파티클 일루젼
- n파티클
- 팝콘FX
- 후디니
- 요약
- 3장. 나이아가라 개념 및 아키텍처 탐색하기
- 기술적인 요구 사항
- 나이아가라 아키텍처
- 나이아가라의 계층적 하이브리드 구조
- 스택 그룹
- 요약
- 4장. 첫 번째 나이아가라 시스템 구축하기
- 기술적인 요구 사항
- 나이아가라 에디터 UI 탐색
- 나이아가라 에디터
- 프리뷰 패널
- 파라미터 패널
- 시스템 개요 패널
- 로컬 모듈 패널
- 선택 패널
- 이미터 생성
- 목표한 이펙트를 만드는 과정
- 분수의 움직임을 랜덤한 방향으로 활성화
- 파티클을 이동 중인 방향으로 늘이기
- 스프라이트의 색상 변경하기
- 바닥과의 충돌 활성화
- 파티클을 빛나게 만들기
- 나이아가라 시스템 생성하기
- 레벨에 나이아가라 시스템 추가하기
- 블루프린트 액터에 나이아가라 시스템 추가하기
- 요약
- 5장. 이미터-시스템의 재정의
- 기술적인 요구 사항
- 모듈 재정의
- 파라미터 재정의
- 요약
- 2부. 나이아가라 비주얼 이펙트 탐구
- 6장. 동적 입력 살펴보기
- 기술적인 요구 사항
- 동적 입력이란 무엇인가?
- 동적 입력을 사용해 랜덤한 색상으로 파티클 생성하기
- 요약
- 7장. 사용자 정의 나이아가라 모듈 생성하기
- 기술적인 요구 사항
- 새 모듈 생성하기
- 나이아가라 모듈 스크립트 에디터
- 나이아가라 모듈을 편집해 사용자 정의 이펙트 생성하기
- 모듈 작동 방식 이해하기
- PresenceDetector 파티클 이펙트 생성하기
- 나이아가라 시스템을 포함하는 블루프린트 클래스 생성하기
- 요약
- 8장. 로컬 모듈과 버전 관리
- 기술적인 요구 사항
- 로컬 모듈 탐색
- 모듈을 사용해 번개 이펙트 만들기
- 모듈 게시 및 버전 관리
- 요약
- 9장. 이벤트와 이벤트 핸들러
- 기술적인 요구 사항
- 이벤트와 이벤트 핸들러란 무엇인가?
- 튜토리얼 - 폭죽을 만드는 방법
- 소멸 이벤트
- 충돌 이벤트
- 위치 이벤트
- 요약
- 10장. 나이아가라의 디버깅 워크플로
- 기술적인 요구 사항
- 나이아가라 디버거 패널 탐색
- 파티클 시스템 재생 옵션 툴바
- 디버그 HUD
- FX 아웃라이너
- 디버그 드로잉
- 성능 프로파일링
- 디버그 콘솔 명령
- 요약
- 11장. 블루프린트로 나이아가라 파티클 제어하기
- 기술적인 요구 사항
- 사용자 파라미터 모듈 탐색
- 블루프린트 액터에서 나이아가라 사용자 노출 설정 호출하기
- 튜토리얼 - 블루프린트 액터를 사용해 나이아가라 시스템 수정하기
- 나이아가라 시스템 생성
- 메시 샘플링
- 텍스처 샘플링
- 로고의 흰색 영역에서만 파티클 발생
- SubUV로 애니메이션된 스프라이트를 파티클에 추가해 불꽃 애니메이션 생성
- 사용자 노출 파라미터를 모듈 파라미터에 연결하기
- 블루프린트 액터 생성하기
- 평면 지오메트리의 머티리얼 생성하기
- 블루프린트 public 변수를 나이아가라 사용자 노출 파라미터에 연결
- public 변수를 카테고리로 구성하기
- 블루프린트 액터 테스트하기
- 요약
도서 오류 신고
정오표
정오표
[ p.342 : 1행 ]
그림 11.51에서는
->
3. Apply Sampled RGBA to Particle Color 프로퍼티의 체크를 해제한다.
그림 11. 51에서는