언리얼 엔진 5 셰이더와 이펙트 2/e [머티리얼을 활용한 고급 셰이딩 기술 50가지 레시피]
- 원서명Unreal Engine 5 Shaders and Effects Cookbook, Second Edition: Over 50 recipes to help you create materials and utilize advanced shading techniques (ISBN 9781837633081)
- 지은이브라이스 브렌라 라모스(Brais Brenlla Ramos)
- 옮긴이김기돈
- ISBN : 9791161758473
- 40,000원 (eBook 32,000원)
- 2024년 05월 31일 펴냄
- 페이퍼백 | 524쪽 | 188*235mm
- 시리즈 : 게임 개발 프로그래밍
책 소개
본문에 쓰인 컬러 이미지는 여기에서 내려 받으세요.
소스 코드 파일은 여기에서 내려 받으실 수 있습니다.
https://github.com/AcornPublishing/unreal-shader-effect-2e
요약
언리얼 엔진 5를 사용해서 자신만의 프로젝트 또는 게임에서 사용할 수 있는 셰이더와 이펙트를 만드는 방법을 알고 싶어하는 사람들을 대상으로 한 책이다. 언리얼 머티리얼 노드들을 설명하면서 특정 셰이더를 어떻게 만들고 적용하는 것뿐만이 아니라 재활용하면서 새로운 이펙트들을 만들어 가는 방법을 알려준다. 또한 프로젝트에서 사용할 머티리얼을 어떻게 하면 최적화할 수 있는지에 대한 최적화 방법도 배울 수 있다.
추천의 글
언리얼 엔진은 지난 25년 동안 발전해 AAA 스튜디오들을 위한 최고의 게임 엔진이 됐고 가장 흥미진진한 프로젝트에 힘을 실어줬다. 나는 에픽게임즈(Epic Games)의 건축 산업 관리자로서 엔진이 어떻게 게임을 넘어 확장되고 바야흐로 건축, 엔지니어링, 건설 산업뿐만 아니라 다른 영역의 차세대 콘텐츠 제작자에게까지 힘을 실어주는지 확인할 수 있었다.
이 책의 저자인 브라이스 브렌라(Brais Brenlla)는 이러한 새로운 제작자(크리에이터)의 한 가지 좋은 예가 되는 인물이다. 건설 환경 캡처 전문 회사인 애큐시티스(AccuCities)에 근무하는 저자는 언리얼 엔진의 힘을 활용해서 도시 계획 문제에 실시간 기술을 적용하는 최고의 사례 중 하나를 구축하는 데 성공했다. 60제곱킬로미터 이상의 면적을 지닌 런던 건물들을 언리얼 엔진에 로드해 작은 노트북에서도 모두 원할하게 작동할 수 있도록 만들었는데, 이렇게 큰 규모의 도시 프로젝트를 최적화하면서도 작은 규모의 오브젝트들에 대한 유연성을 유지하려면 효율적이고 정확한 작동을 위해서는 언리얼 엔진을 더 깊이 이해할 필요가 있다.
저자의 경험을 토대로, 이 책은 실제 환경에서 요구되는 다양한 머티리얼과 이펙트를 다루는 데 도움이 되는 풍부한 지식을 담고 있다. 기초부터 시작해 실시간 제작에서 매일 사용되는 몇 가지 기법을 곧바로 적용해보게 될 것이며, 이어서 엔진이 제공하는 더욱더 흥미로운 렌더링 기능 중 일부를 다루는 고급 개념들을 살펴본다. 이 모든 것은 접근 가능한 학습 곡선을 따라 진행하게 된다. 브라이스와 함께라면 안심해도 좋다.
이 책에서 다루는 내용
◆ 루멘과 나나이트의 기능을 활용해 놀라운 경험 제작하기
◆ 언리얼 엔진의 렌더링 파이프라인을 능숙하게 활용해 리얼타임 그래픽 개발하기
◆ 물리 기반 렌더링 파이프라인을 활용해 여러 씬에서 사실적인 렌더링 구현하기
◆ 머티리얼 에디터를 활용해 복잡한 머티리얼과 텍스처를 빌드하고 높은 수준의 디테일 구현하기
◆ 여러 플랫폼에서 원활하게 실행되도록 머티리얼 최적화하기
◆ 인상적인 시각 효과를 제작하는 데 필요한 다양한 노드와 기능 이해하기
이 책의 대상 독자
언리얼 엔진, 렌더링, 실시간 그래픽 또는 단순히 멋진 비주얼을 만드는 데 열정이 있는 사람이라면 누구나 이 책의 내용을 따라갈 수 있다. 이는 렌더링 파이프라인의 기초부터 고급 기술에 이르기까지 부드러운 학습 곡선을 유지한 덕분에 가능하다. 이 여정은 배경지식과 관계없이 해당 주제에 능숙해질 수 있도록 풍부한 정보를 제공한다.
이 책의 구성
1장. ‘물리 기반 렌더링의 이해’에서는 언리얼 엔진에서 머티리얼(그리고 조명) 작업을 수행하는 데 필요한 기초 개념을 소개한다.
2장. ‘불투명한 머티리얼 커스터마이징과 텍스처 사용’에서는 언리얼에서 사용 가능한 가장 일반적인 머티리얼을 생성하는 방법을 알아본다.
3장. ‘반투명 오브젝트 만들기’에서는 유리나 물과 같은 물질을 만들 수 있는 매우 중요한 유형인 반투명 셰이더를 다루는 방법을 배운다.
4장. ‘나나이트, 루멘 및 기타 언리얼 엔진 5 기능 활용하기’에서는 최신 버전의 엔진에 포함된 몇 가지 새로운 렌더링 기능을 소개한다.
5장. ‘고급 머티리얼 기법으로 작업하기’에서는 머티리얼 에디터에서 사용할 수 있는 몇 가지 고급기능을 알아본다.
6장. ‘모바일 플랫폼을 위한 머티리얼 최적화’에서는 모바일 장치를 목표로 할 때 머티리얼을 최적화하는 방법을 살펴본다.
7장. ‘유용한 노드 알아보기 범주화하기’에서는 어려운 몇 가지 멋진 노드를 활용하는 방법을 배운다.
8장. ‘전통적인 머티리얼을 넘어서’에서는 머티리얼의 적용 대상과 관련된 논리에 도전하는 몇 가지 유형의 셰이더를 활용해본다.
9장. ‘포스트 프로세스 이펙트 추가하기’에서는 언리얼의 포스트 프로세싱 파이프라인을 활용해 전체 장면에 동시에 영향을 미치는 셰이더를 생성해본다.
상세이미지
목차
목차
- 1장. 물리 기반 렌더링의 이해
- 기술적인 요구 사항
- 작업 환경 세팅
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 머티리얼 에디터에서 작업하기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 첫 번째 물리 기반 머티리얼 제작
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 간단한 유리 시각화
- 준비
- 예제 구현
- 예제 분석
- IBL과 루멘을 사용해 월드 밝히기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 프로젝트에서 스태틱 라이트 사용
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 머티리얼 비용 확인
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 2장. 불투명한 머티리얼 커스터마이징과 텍스처 사용
- 기술적인 요구 사항
- 머티리얼에서 마스크 사용
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 머티리얼 인스턴싱
- 준비
- 예제 구현
- 예제 분석
- 부연 설명
- 참고 사항
- 작은 오브젝트 텍스처링
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 프레넬과 세부 텍스처링 노드 추가
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 준절차적 머티리얼 생성
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 오브젝트로부터의 거리에 따른 텍스처 블렌딩
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 3장. 반투명 오브젝트 만들기
- 기술적인 요구 사항
- 반투명 유리 만들기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 홀로그램 표현
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 서브서피스 스캐터링으로 작업
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 물에서 굴절 사용
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 라이트 함수를 사용한 투영
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 바다 셰이더 애니메이팅
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 4장. 나나이트, 루멘 및 기타 언리얼 엔진 5 기능 활용하기
- 기술적인 요구 사항
- 나나이트 및 퀵셀 메가스캔 에셋 활용
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 소프트웨어 및 하드웨어 레이 트레이싱 사용
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 스크린 스페이스와 플레이너 리플렉션 다시 보기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 사실적인 유리와 버추얼 텍스처를 사용한 건축 시각화 장면 만들기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 투명 코팅 셰이딩 모델을 통한 목재 니스 칠하기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 5장. 고급 머티리얼 기법으로 작업하기
- 기술적인 요구 사항
- 버텍스 컬러를 사용해 머티리얼의 모양 조정하기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 씬에 데칼 추가하기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 패럴랙스 오클루전 매핑으로 벽돌 벽 만들기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 머티리얼에서 메시 디스턴스 필드 활용하기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 이미시브 머티리얼로 씬 밝히기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 나침반으로 방향 잡기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 블루프린트 로직을 통해 미니맵의 모양 구현하기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 6장. 모바일 플랫폼을 위한 머티리얼 최적화
- 기술적인 요구 사항
- 커스터마이즈드 UV를 통한 퍼포먼스 향상
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 모바일 플랫폼용 머티리얼 제작
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- VR에서 사용할 포워드 셰이딩 렌더러
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 텍스처 아틀라스를 통한 머티리얼 최적화
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 복잡한 머티리얼을 더 단순한 텍스처로 굽기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- HLOD 툴로 여러 메시 결합하기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 일반적인 머티리얼 최적화 기술 적용하기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 7장. 유용한 노드 알아보기
- 기술적인 요구 사항
- 동일한 모델에 무작위성 추가하기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 가려진 영역에 먼지 추가하기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 여러 모델에서 텍스처 좌표 일치시키기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 내부 큐브맵을 사용해 건물 내부 텍스처링하기
- 준비
- 예제 구현
- 예제 분석
- 완전히 절차적인 노이즈 패턴 사용하기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 세부 텍스처링으로 디테일 추가하기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 8장. 전통적인 머티리얼을 넘어서
- 기술적인 요구 사항
- 게임 내 TV에서 동영상 재생하기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- CCTV 카메라를 통해 장면 캡처하기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 상호작용되는 오브젝트 강조하기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 레이어드 머티리얼을 사용해 오브젝트 위에 눈 만들기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 파라미터 컬렉션 에셋을 사용해 화창한 레벨을 눈 내리는 레벨로 변경하기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 커브 아틀라스를 사용해 계절 바꾸기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 랜드스케이프 머티리얼 블렌딩하기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 9장. 포스트 프로세스 이펙트 추가하기
- 기술적인 요구 사항
- 포스트 프로세스 볼륨 사용하기
- 준비
- 예제 구현
- 예제 분석
- 부연 설명
- 컬러 그레이딩으로 씬의 분위기 변경하기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 포스트 프로세스 머티리얼을 사용해 공포 영화 분위기 조성하기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 시네마틱 카메라로 작업하기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 시퀀서를 사용해 사실적인 장면 렌더링하기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항
- 카툰 셰이더 이펙트 만들기
- 준비
- 예제 구현
- 예제 분석
- 참고 사항