본문 바로가기
-- 비엘북스의 책 --

언리얼 쉐이더 활용 테크닉

by vielbooks 2013. 3. 15.



<이미지를 클릭하면 책을 구매하실 수 있습니다>



책소개

언리얼 엔진의 쉐이더 입문서

언리얼 엔진에서 구현되는 쉐이더는 최고 수준의 퀄리티를 자랑한다. 이 책에서는 쉐이더는 처음 접하는 분들도 언리얼 엔진만의 수준 높은 쉐이더를 만들 수 있도록 최적의 가이드를 제시한다. 

이 책에는 언리얼 쉐이더 제작을 위해 알아두어야 할 텍스쳐 제작방법에서부터 노드를 이용한 쉐이더 제작과정 대해서 소개하고 있다. 간단한 노드를 이용하여 재질을 표현하는 방법부터 SSS 기반의 피부 쉐이더 구현까지, 기초부터 고급 쉐이더까지 다양하게 소개된다. 복잡하게 구성된 쉐이더를 각 단계별로 구분하여 하나하나 차근차근히 설명하여, 독자들은 완성된 쉐이더가 어떠한 방식으로 완성될 수 있는지에 대해서 알 수 있게 된다. 

또한 언리얼 쉐이더를 다양하게 경험해볼 수 있는 제작과정이 소개된다. 엑스레이와 그리드 스캔을 이용한 쉐이더, 복잡하지만 멋진 용암을 표현할 수 있는 용암쉐이더, 돌 위에서 흐르는 리큐드 쉐이더, 네온사인 및 금속 LED 쉐이더 등 화려하고 멋진 쉐이더의 모든 제작과정을 엿볼 수 있다

상세이미지

저자 소개

저자 : 이재현

2000년 민커뮤니케이션에서 패키지 및 온라인 게임 개발을 시작했으며, 2004년 레드덕에서 3D 캐릭터 파트장으로 활동하며, AVA(아바)를 개발하면서 언리얼 엔진3를 접하게 되었다. AVA를 개발하면서 캐릭터, 총기 제작 및 쉐이더 제작에 관여하였으며, 오픈을 기점으로 퇴사하였다. 2008년 네오위즈 게임즈에 입사하여 [Dizzel] 프로젝트에 참여, 소수 멤버로 구성된 [DQ] 팀 결성 및 프로젝트에 참여하였고, 2010년 엔씨소프트를 거쳐서 현재는 레드덕의 수석 3D아티스트 로 활동 중이다.

목차

Part_01_시작하기
1. 모델러가 되기 위한 준비
- 실무 모델러가 되기 위해 알아야 할 것들

2. 폴리곤 모델링의 방식과 이해
- 메쉬 모델링과 폴리곤 모델링의 차이
- 폴리곤 모델링의 장점
- 폴리곤 모델링의 방식

3. UV 설정
- 형태 찍기
- 부위 떼어내기
- 전개 라인 만들기 / 펼치기
- 배치하기

4. 텍스쳐 제작을 위한 기초 이해
- 텍스쳐 제작을 위한 빛의 이해
: 드로잉 텍스쳐에서 빛의 기준
: 표면이 거칠고 광택이 적은 물체
: 표면이 부드러운 광택이 보통인 물체
: 표면이 매끄럽고 고광택 물체

- 실사 소스를 제작하기 위해 알아야 할 것
: 그림자와 스펙큘러 제거하기

- 실사 소스를 이용한 텍스쳐 제작
: Normal Map 사용하기
: Normal Map 사용하지 않기

- 언리얼 쉐이더 제작을 위한 주요 맵의 속성
: Diffuse Map(디퓨즈맵)
: Specular Map(스펙큘러맵)
: Specular Power Map(Specular 파워 맵)
: Emissive-Self Illumination(이미시브 맵)과 동일 효과
: Opacity Map(오퍼시티맵)
: Opacity Mask Map(오퍼시티 마스크맵)
: Normal Map(Normal맵)
: Mask Map(마스크맵)
: Cube Map(큐브맵)
: 최종 결과 맵

5. 언리얼 엔진을 위한 노말맵(Normal Map) 이해와 활용
- 노말맵의 추출
: 하이폴리곤을 이용한 노말의 추출
: RTT(Render To Texture)의 설정
: RTT 오류 수정
: 음영값에서 노말맵 추출하기

- 노말맵의 수정과 보완

6. AO맵(Ambient Occlusion Map)의 이해와 활용
- AO맵의 추출
: 렌더러 변경
: 메터리얼 세팅
: AO 설정
: 렌더 설정
: RTT를 이용한 맵 굽기
: 오류의 해결
- AO맵의 활용

Part_02_언리얼의 기초 활용
1. 언리얼을 위한 제작 플로우
- 주요 프로그램
- 3ds Max에서 UDK로 보내는 과정

2. 언리얼에서 Mesh를 불러오기 위해 알아야 할 것
- Static Mesh는 무엇이며 Export 하는 방법은?
- Skeleton Mesh는 무엇이며 Export 하는 방법은?

3. 언리얼 콘텐츠 제작을 위해 알아야 할 기초사항
- 텍스쳐를 불러오기 위해 알아야 할 것
- 쉐이더를 만들기 위해 알아야 할 것
- Materials

4. 간단한 물체를 이용하여 콘텐츠 제작하기
- 패키지를 만들기 전에 알아야 할 것
- 패키지 만들기

Part_03_ 언리얼 쉐이더의 이해
1. Diffuse, Specular, Normal에 대한 이해와 활용
- Diffuse Map
- Specular Map
- Normal Map

2. Specular와 Specular Power
- 왜 Specular를 사용할까?
- 가죽가방에 Specular Power 적용하기

3. Multiply의 사용법
- Constants와 연계
- Specular 강조하기
- 이미지 겹치기

4. Normal Map 강조하기

5. Linear Interpolate를 이용한 재질 섞기
- Fresnel(프레넬)과 Emissive(이미시브)
- Diffuse와 Diffuse

6. Texture Coordinate의 이해와 사용법
- Tiling
- UV 채널
- Lerp(Linear Interpolate)를 이용한 방법
- Multiply를 이용한 방법

7. CubeMap를 이용한 반사질감 표현하기
- Cube Map의 제작방법
- Cube Map 사용하기
- 정반사와 난반사의 CubeMap
- 반사의 강도 조절하기

8. Opacity와 Opacity Mask의 활용
- Opacity의 이해
- Opacity와 Opacity Mask의 차이
- Opacity와 Opacity Mask의 사용법
- Opacity와 Opacity Mask의 활용예제

9. Distortion(디스토션)의 이해
- Distortion 구조의 이해 
- Distortion 활용하기

Part_04_ 언리얼 쉐이더의 제작 및 활용
1. 패너(Panner)를 이용한 이동하는 쉐이더 만들기
2. 로테이터(Rotator)를 이용한 회전하는 쉐이더 만들기
3. X-ray와 Grid를 이용한 3차원 스캐닝 효과 만들기
4. UV-Screen 활용하기
5. 흐르는 용암 만들기
6. 물약 만들기
7. 공간 왜곡을 위한 쉐이더 만들기
8. 바위 위의 표면을 타고 흐르는 물 효과 만들기
9. 바람에 날리는 풀 효과 만들기
10. 네온사인 효과 만들기
11. 금속에 삽입된 LED 효과 표현하기
12. 시퀀스 이미지 활용하기
13. 여러 질감이 섞인 멀티 메터리얼 세팅하기

Part_05_ 사실적인 쉐이더로 얼굴 표현하기(피부/ 눈동자/ 헤어)
1. 사실적인 SSS Shader 제작하기
- SSS(Sub Surface Scattering) 이해하기
- SSS Shader 제작의 기초
- SSS Shader 제작 활용
- SSS Shader 제작 응용

2. SSSSS를 이용한 Skin Shader(스킨 쉐이더) 제작하기
- DX11 SSSSS의 이해
- 데이터 준비 과정
- DX11 SSSS를 이용한 사실적인 캐릭터 제작
: Diffuse, Specular, Normal, Transmission 노드
: SSS 노드
: Wet Specular 노드
: Rimlight 노드

3. Parallax를 이용한 사실적인 Eye Shader 제작하기
- Parallax Mapping 사용을 위한 준비
: 모델링 데이터의 준비
: 텍스쳐의 준비
- 사실적인 Eye Shader의 제작
: 눈동자의 외부 쉐이더
: 눈동자의 내부 쉐이더

4. 사실적인 Fur Shader 제작하기
- Fur Shader 제작을 위한 준비
- Fur Shader 제작하기

Part_06_ SceneCaptureReflectActor를 응용한 물 반사 효과 만들기
1. 사실적인 물의 반사 표현
- 물의 반사 효과 표현하기
: BSP를 이용한 간단한 웅덩이 만들기
: 기본적인 물 쉐이더 만들기
- 사실적인 물 표현을 위해 메터리얼 보완하기
: 굴적 적용하기
: 캐릭터에 반응하는 물 만들기
- 실전 활용 사례
: 에디트 모드
: 게임뷰 모드 


Appendix_#01
1. 캐릭터 멀티 메터리얼(파츠에 대한 분리)
- 멀티 메터리얼 설정과 적용
- 파츠 관리 및 적용
2. LOD 제작 및 UDK에서의 Import
- LOD 데이터 만들기
- UDK에서 LOD 적용하기

3. 캐릭터 제작에서 UDK 적용까지의 흐름 제대로 알기
- 모델링
- ‘죽음의 기사’ 로우폴리곤 제작과 Bake
- ‘죽음의 기사’ Texture 제작
- ‘망토’ Texture map
- ‘죽음의 기사’ UDK 세팅하기
- 메쉬에 메터리얼 적용

4. 쉽고 효율적인 배경 제작을 위한 툴 활용 방법
- Luxology ImageSynth V@의 구성 및 간단한 사용법
- nDo의 구성 및 간단한 사용법

5. Hard Surface Modeling을 효율적으로, Quad Chamfer
6. 3ds Max 툴 팁
- RTT를 이용하여 Texture Bake할 때 특정 공간이 렌더링되지 않을때 
- Unwrap 사용 시 Relax가 오작동할 때
- 정상적인 AO 방식으로 추출해도 결과물이 나오지 않을 때
- AO 렌더링할 때 붉은 반점 또는 렌더링의 오류 영역이 발생할 때
- Normal이 정상적이지 않을 때
- RTT 또는 특정 결과에 대한 렌더링할 때 자주 발생하는 메모리 아웃
- 캐릭터 제작을 위한 UV 설정 기준은?
- 드로잉 텍스쳐를 제작할 때 환경설정은?

7. ZBrush 툴 팁
- SubTool을 이용할 때 Center가 맞지 않을 때
- L.Sym 을 사용하지 않고 SubTool의 오브젝트 피봇을 정렬시키고자 할 때
- 제작된 아이템을 반대로 붙어 넣었을 때
- 작업 중간에 실수로 Symmetry를 끈 상태에서 작업 진행 후 대칭의 결과가 필요할 때
- 구멍 뚫린 메쉬에 Divide를 적용하면 줄어드는 현상이 발생할 때
- 분리된 두 ZBrush 파일을 하나로 합칠 때
- 단축키 설정 및 시작에 등록할 때
- 작업화면을 벗어난 경우 화면으로 복귀할 때
- 작업이 끝난 하이 폴리곤을 Bake하기 위해 외부 툴로 내보낼 때

Appendix_#02_언리얼 엔진의 기능 소개
1. 언리얼 엔진이란?
2. 언리얼 에디터
3. 브라우저
4. ActorX 
닫기

출판사 리뷰

언리얼 엔진의 쉐이더 입문서
언리얼 엔진에서 구현되는 쉐이더는 최고 수준의 퀄리티를 자랑합니다. 복잡한 프로그래밍을 하지 않아도 UDK에서 제공하는 노드만으로도 멋진 쉐이더를 완성할 수 있습니다. 이 책에서는 쉐이더는 처음 접하는 분들도 언리얼 엔진만의 수준 높은 쉐이더를 만들 수 있도록 최적의 가이드를 제시합니다. 

해외 UDK 아티스트들의 유튜브 영상은 이제 그만!
해외의 UDK 아티스트들이 유튜브에 올려놓은 수준 높은 쉐이더 제작 영상들은 영어에 자유롭지 못한 한국의 개발자들이 내용을 완벽히 이해하기엔 다소 어려움이 많았던 것도 사실입니다. 이 책에서 소개하는 언리얼 쉐이더를 이해한다면 자신만의 크리에이티브한 쉐이더를 제작할 수 있게 될 것입니다.

언리얼 엔진 개발자를 위한 쉐이더 노드의 개념부터 고급 활용 테크닉까지 수록
이 책에는 언리얼 쉐이더 제작을 위해 알아두어야 할 텍스쳐 제작방법에서부터 노드를 이용한 쉐이더 제작과정 대해서 소개하고 있습니다. 간단한 노드를 이용하여 재질을 표현하는 방법부터 SSS 기반의 피부 쉐이더 구현까지, 기초부터 고급 쉐이더까지 다양하게 소개됩니다.

노드 기반의 쉐이더 제작기법을 중점적으로 소개
노드 기반의 시스템은 상당히 진보적이고 체계적인 구현 시스템입니다. 기존의 3ds Max나 Maya, Nuke 등에서는 이미 도입되어 있는 시스템으로, 복잡한 프로그래밍이나 프로그래머의 도움없이도 UDK에서 제공되는 노드의 조합만으로도 상당히 멋진 쉐이더를 구현할 수 있습니다. 이 책에서는 노드로 완성하는 쉐이더 제작기법을 중점적으로 소개합니다.

복잡한 쉐이더 노드를 단계적으로 설명
쉐이더의 퀄리티가 높을 수록 복잡한 노드로 구성됩니다. 이 책에서는 복잡하게 구성된 쉐이더를 각 단계별로 구분하여 하나하나 차근차근히 설명합니다. 독자들은 완성된 쉐이더가 어떠한 방식으로 완성될 수 있는지에 대해서 알 수 있게 됩니다.

다양한 쉐이더 제작과정이 소개
이 책에서는 언리얼 쉐이더를 다양하게 경험해볼 수 있는 제작과정이 소개됩니다. 엑스레이와 그리드 스캔을 이용한 쉐이더, 복잡하지만 멋진 용암을 표현할 수 있는 용암쉐이더, 돌 위에서 흐르는 리큐드 쉐이더, 네온사인 및 금속 LED 쉐이더 등 화려하고 멋진 쉐이더의 모든 제작과정을 엿볼 수 있게 됩니다.

... 펼처보기

추천평

언리얼 쉐이더로 하고 싶은 것, 해야 하는 것이 여기에 있습니다. 지금, 실무를 시작하려거나 표현력의 업그레이드를 바라는 분들이 펼쳐 두시길 권합니다. 개발실에서 시작과 진행의 난관을 극복해 줄 친구가 될 것이라 믿습니다.
- 김성규(레드덕 / CAO)

지식과 기술이 보편화됨에 따라 누구나 일정 수준의 결과물은 열정만으로 이룰 수 있습니다. 하지만 부족한 기초로는 그 이상을 뛰어 넘기 어렵습니다. 이 책은 기본 개념을 바탕으로 높은 수준의 쉐이더 제작의 방향을 제시하고 있습니다.
- 성낙호 (레드덕 / AVA chief programmer / Metro Conflict Director)

UnrealEngine3로 현재 게임을 만들고 있는 개발자들, UnrealEngine3로 게임을 만들고 싶은 개발자들, Technical Director 를 꿈꾸는 개발자라면 꼭 읽어봐야 하는 책이라고 생각합니다. 지금까지 실무에서 쌓아온 자신만의 노하우를 아낌없이 공유해주신 저자 분에게 감사드립니다.
- 박정백 (드래곤플라이 / 스페셜포스 2팀 / 프로그래머 겸 PD / 부장)

그래픽스 프로그래머에게 컴퓨터 그래픽스 기술에 대한 이해을 겸비한 실력 있는 3D 그래픽 디자이너와 함께 작업 한다는 것은 굉장한 경험입니다. 특히, 공동작업의 결과가 환상적일 때의 그 기분은 이루 말할 수 없습니다. 같이 즐겁게 기술에 대한 대화도 나누고, 항상 멋진 작품으로 놀라게 해주었던 재현님의 제작경험과 그 지식을 담은 이 책을 추천합니다. 그리고 이 책을 통해 함께 멋진 작품을 만들어 나갈 동료 분들이 더욱 많아질 것을 생각하니 무척 기대됩니다
- 허창민 (드래곤플라이 / 스페셜포스2팀 / 랜더링 프로그래머 / 수석 프로그래머) 

이 책은 CG업계에서 오랜 기간 실력으로 인정받고 계신 ‘이재현’ 님이 집필하신 책으로 3D모델링의 기본 개념부터 게임엔진의 활용까지 반드시 필요한 내용으로만 구성되어 있습니다. 이 책에서는 보는 것만으로도 즐거움을 주는 수준 높은 예제와 결과물을 제공하고 있습니다. 렌더링에 가까운 퀄리티를 실시간으로 구현하는 UDK의 활용으로 3D캐릭터를 공부하는 분부터 좀 더 수준 높은 퀄리티를 원하는 현직 3D 아티스트들까지도 큰 자극을 주는 책이 될 것입니다. 이 책을 통하여 많은 3D 아티스트들의 다양하고 멋진 결과물들이 구현되기를 기대합니다.
- 김승민 ((주)위플게임즈 3D캐릭터 파트장 / CGNI 게임그래픽학원 강사 겸 원장) 

이 책은 그 동안 실무자 및 게임 그래픽 지망생들이 궁금해하는 언리얼 쉐이더 제작에 대해 속 시원한 해답을 줄 것입니다. 저자의 오랜 실무경험을 바탕으로 아티스트로서의 맵 소스 제작 노하우가 친절하게 소개되어 있으며, 메터리얼 제작을 위해 물질 고유의 특성을 이해하고 더욱 자유롭게 표현하는데 좋은 길잡이가 될 것입니다.
- 임재길 (네오위즈 / 블레스 스튜디오 / 캐릭터 모델링 파트장) 

함께 근무하면서도 배울 것이 많았던 저자님의 노하우가 담긴 이 책은 실로 디자이너를 꿈꾸는 분들에게만 국한된 안내서가 아닌 실무자들도 유용하게 볼 수 있는 지식서입니다. 다년간의 업무경험과 노하우를 바탕으로 오랜 시간을 거쳐 만들어진 이 책은 많은 디자이너들을 올바른 방향으로 안내해줄 수 있을 것으로 기대합니다. 많은 분들이 이 책을 통해 좀더 그들의 꿈에 가까이 다가갈 수 있길 바랍니다.- 유아리 (넥슨 / 마미노기 영웅전 팀 / 모델러)

댓글