책 이미지

책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 개발/방법론 > 게임 프로그래밍
· ISBN : 9791161752891
· 쪽수 : 356쪽
· 출판일 : 2019-04-30
책 소개
목차
1부. 유니티 셰이더 소개
1장. 셰이더 개발 과정
__셰이더란?
____빛의 시뮬레이션으로서의 셰이더
____원근법을 활용한 렌더링
____렌더링 과정
____GPU에서 동작하는 코드로서의 셰이더
____셰이더 실행
____여러 가지 종류의 셰이더
____좌표 체계
____빛의 종류
____점 광원
____방향 광원
____면 광원
__렌더링 방정식
____빛의 특성
________반사된 빛
____렌더러 종류
________포워드
________디퍼드
________포워드+(타일 포워드 셰이딩)
________미래 렌더러
____셰이더 시각 그래프
__요약
2장. 첫 유니티 셰이더
__유니티 소개
____준비
____유니티 UI
____첫 번째 씬 생성
____셰이더 수정
________셰이더의 경로와 이름
________특성
________하위 셰이더
________태그
________패스
________CGPROGRAM(그리고 ENDCG)
________Pragma 선언
________Includes
________입력과 출력 구조체
________변수 선언
________정점 함수와 프레그먼트 함수
__셰이더 수정
____하얀색에서 빨간색으로
____속성 추가
__요약
3장. 그래픽스 파이프라인
__그래픽스 API 기본을 배워야 하는 이유
__그래픽스 파이프라인의 일반적인 구조
__레스터라이저
__언릿 셰이더의 구조
__정점 데이터 구조체
__정점 함수
__프래그먼트 데이터 구조체
__프래그먼트 함수
__정점 색상 지원 추가
____Appdata에 추가
____v2f에 추가
____정점 함수에 색상 할당
____프레그먼트 함수에서 색상 값 사용하기
____최종 결과
__요약
4장. 좌표 공간 변환
__좌표 공간: 누가 누구인가?
____객체 공간
____월드 공간
____공간과 공간 간의 변환
____카메라 공간
____절단 공간
____정규 기기 좌표
____화면 공간
__내장 함수가 내포하는 것들
__셰이더 "표준 라이브러리" 코드 위치
__요약
5장. 최초 라이팅 셰이더
__라이팅 셰이더
____근사란?
____디퓨즈 근사
____스펙큘러 근사
____디퓨즈와 스펙큘러의 조합
__기본 라이팅 계산
____디퓨즈
__최초 유니티 라이팅 셰이더
____디퓨즈 항 구현하기
____텍스처 속성 추가
____엠비언트 값 추가
__요약
6장. 스펙큘러 구현
__기본 라이팅 계산(파트 II)
____스펙큘러
____최초 유니티 라이팅 셰이더 (파트 II)
________스펙큘러 구현
__더 많은 광원 지원하기
__요약
7장. 서피스 셰이더
__서피스 셰이더는 무엇인가?
____기본 서피스 셰이더
____Pragmas
____신규 데이터 구조체
____서피스 함수
____라이팅 모델이란?
____서피스 셰이더의 데이터 흐름
__서피스 셰이더 편집
____두 번째 알베도 맵 추가하기
____노멀맵 추가하기
____그림자 작동 확인하기
____다른 내장 라이팅 모델 사용
__커스텀 라이팅 모델 작성
____라이팅 모델 함수 시그니처
____SurfaceOutput 데이터 구조체
____서피스 함수
____속성 블록
____커스텀 라이팅 함수
__요약
2부. 물리 기반 셰이딩
8장. 물리 기반 셰이딩이란?
__전자기파의 일종인 빛
__미세면 이론 개요
__굴절과 다른 beasts
__프레넬 반사율
__빛을 측정하는 방법
____입체각
____파워
____일레디안스
__재질을 표현하는 방법
____양방향 반사 분포 함수
________양성
________상반성
________에너지 보존
__미세면 이론
________프레넬
________정규 분포 함수
________기하 함수
__렌더링 방정식(파트 2)
__실시간 렌더링 해킹에 필요한 것들
__HDR과 톤 매핑
__선형 색상 공간
__왜 물리 기반 셰이딩이 유용한가?
__요약
9장. 물리 기반 셰이더 제작하기
__퐁 분석하기
____양수성 확인
____상반성 확인
____에너지 보존법칙 확인
__개선된 퐁
__요약
10장. 후처리 효과
__후처리 효과 동작 원리
__왜 후처리 효과가 유용한가?
__후처리 효과 설정
____HDR과 선형 설정
____스크립트 설정
__선형 변환
__렌더 텍스처 간략 오버뷰
__단순 톤 매핑
__후처리 스택 v1
__후처리 스택 v2
__요약
11장. BRDF 누가 누구인가?
__BRDF 익스프롤러
__BRDF 파라미터화
__BRDF 익스플로러의 출력 해석
____퐁
____MERL 데이터베이스
____BRDF 비교하기
____실시간 렌더링에 사용하는 BRDF 불완전 리스트
________어시크먼 셜리
________쿡 토렌스
________오렌 네이어
________월드
________디즈니
__요약
12장. BRDF 구현하기
__어떤 BRDF를 구현할 것인가?
__레퍼런스 찾기
____쿡토렌스
____디즈니
__출발은 논문에서부터
____쿡토렌스 (혹은 미세면) BRDF
____디즈니 BRDF
__구현
____속성
____커스텀 라이트 함수 구현
____유틸리티 함수
____쿡토렌스 구현
____수정된 GGX 분포항
____슐릭 프레넬 항
____수정된 슐릭 기하항
____쿡토렌스 함수에 넣기
____디즈니 디퓨즈
____디즈니 디퓨즈의 다른 구현
____전부 한곳에 담기
__요약
13장. 표준 셰이더 후킹
__표준 셰이더 역공학
____셰이더 키워드
____표준 셰이더 구조체
____쉐이드 키워드 추적
____대체 표준 셰이더 구현
________BRDF 함수 구현
________BRDF 셰이더 작성하기
________BRDF 셰이더를 위한 GUI 제작
__요약
14장. 고급 기술 구현
__기술을 탐색할만 한 곳
__반투명 구현
____속성
____구현
__실시간 반사
____큐브맵이란?
____반사 브로브란?
____큐브맵 평가
____큐브맵 프로세싱 프로그램
__요약
3부. 셰이더 개발에 대한 조언
15장. 아티스트가 사용할 셰이더 제작
__디즈니 BRDF의 UX
__일반적인 문제 #1: 너무나도 많은 세팅
__일반적인 문제 #2: 불분명한 세팅 값의 효과
__일반적인 문제 #3: 세팅 값 의존성
__일반적인 문제 #4: 텍스처에 불분명한 정보 유입
__일반적인 문제 #5: 이상한 범위
__좋은 예시: 블렌더의 디즈니 BRDF
__요약
16장. 복잡도와 우버셰이더
__우버셰이더란?
__표준 셰이더
__셰이더에서 복잡도 문제를 일으키는 요인
__우버셰이더 가챠(Gotcha)
__우버셰이더 장점
__요약
17장. 셰이더가 정상작동하지 않을 때
__일반적인 트릭
__디버깅 도구
__생성된 셰이더 코드 살펴보기
__퍼포먼스 프로파일링
__요약
18장. 최신 트렌드 따라잡기
__컨퍼런스
__서적
__온라인 커뮤니티
__웹사이트
__소셜 미디어
__결론