Table of Contents

Part_01. 쉐이더란 무엇인가 - 쉐이더란 무엇인가 - 왜 쉐이더를 그래픽 아티스트가 배워야 하는가 Part_02. 쉐이더를 익히기 위한 기반 지식들 - 렌더링 파이프라인 - 모니터에 표현되는 색과 빛의 기본원리 Part_03. 코딩의 기본/ 유니티 쉐이더 구성 - 코딩의 기초 - 유니티 쉐이더의 작성 요령 Part_04. 기초적인 서피스 쉐이더를 제작해봅시다. - 오브젝트에 메터리얼과 쉐이더를 적용해봅시다. - 쉐이더 코드를 열어서 이름을 바꿔 봅시다. - 쉐이더 Properties를 제작해봅시다. - 색상을 출력하고 연산해 봅시다 - 변수 이용해보기 - 외부에서 값을 입력받아 출력해보기 - 좀 더 깔끔하게 지워봅시다! Part_05. Surface Shader를 이용해 텍스처를 제어해봅시다. - 텍스쳐 한 장 출력하는 것 외의 부분을 삭제해 봅시다. - 텍스쳐의 입력과 출력 - 이미지를 흑백으로 만들어 봅시다. - lerp 함수를 사용해봅시다. Part_06. UV를 이용하는 법을 배워봅시다. - UV의 기본개념 - UV를 시각적으로 확인해봅시다. - UV에 숫자를 더해봅시다. - _Time으로 UV가 흘러가도록 해봅시다. - UV를 이용해서 불 이펙트를 만들어봅시다. - 좀 더 멋진 방법으로 불을 만들어 봅시다 Part_07. 버텍스 컬러를 이용해봅시다. - 버텍스 컬러를 적용해봅시다. - 버텍스 컬러를 출력해봅시다. - 버텍스 컬러를 마스킹 기능으로 사용해봅시다. Part_08. SurfaceOutputStandard 사용하기 - 스탠다드 쉐이더 - 메탈릭(Metallic), 스무스니스(Smoothness) - 노멀맵(Normal Map) - 오클루젼(Occlusion) - 7장의 배경에 기능을 추가해봅시다. Part_09. 램버트(Lambert) / 블린 퐁(Blinn Phong) - 유니티에 내장된 라이팅 구조 - 램버트(Lambert) 라이팅 만들기 - 블린 퐁(Blinn-Phong) 라이팅 만들기 Part_10. 디지털 라이팅 이론 - 디지털 라이트의 분류 - 디지털 라이트의 원리 - 벡터 - 벡터의 특성 - 노멀벡터 - 벡터의 연산 - 벡터 연산을 이용한 디지털 조명 연산 Part_11. 커스텀 라이트 1 _램버트 라이트 - 커스텀 라이트 기본형 만들기 - 램버트(Lambert) 라이트 연산만들기 - 하프램버트(Half Lambert) 라이트 연산만들기 - 램버트(Lambert) 라이트 완성해보기 Part_12. 림 라이트 - 프레넬(Fresnel) 공식을 구현해봅시다. - 림 라이트를 완성해봅시다. - 홀로그램을 만들어 봅시다. Part_13. 커스텀 라이트 2 _블린퐁 스페큘러 - 블린-퐁 반사 이론 - 블린-퐁 스페큘러 만들어 보기 - 글로스 맵으로 스페큘러 강도 조절해보기 - 림 라이트를 커스텀 라이트로 옮겨 보기 - 림 라이트를 이용한 가짜 스페큘러 만들기 Part_14. 커스텀 라이트3 _NPR 렌더링 - NPR 렌더링이란 - 외곽선 만들기 이론 - 2Pass와 면 뒤집기 - 버텍스 쉐이더(Vertex Shader)를 이용한 오브젝트 확장하기 - 끊어지는 음영만들기 - Fresnel을 이용해서 외곽선을 만들어 봅시다. - Diffuse Warped 기법 - Diffuse Warped 기법을 응용해봅시다. Part_15. 큐브맵 리플렉션(Cubmap Reflection) - 큐브맵을 적용해봅시다. - 노멀맵이 적용된 큐브맵을 적용해봅시다. - 마스크 맵을 이용해서 반사영역을 조절해봅시다. Part_16. 알파(Alpha) - Z-버퍼(Z Buffer) - 반투명 : 알파 블렌드(Alpha Blend) - 알파 블렌딩을 만들어봅시다. - 알파 소팅(Alpha Sorting)의 문제 - 알파 테스팅(Alpha Testing) / 컷아웃(Cutout) Part_17. 커스텀 제어 알파 블렌딩 - 커스텀 제어 가능한 알파 블렌딩 - 블렌드 펙터 연산 - 유니티 내장 파티클 쉐이더와 비슷하게 만들어 봅시다 Part_18. 응용하기 - 2Pass를 이용한 깨끗한 알파 블렌딩 - 타이밍에 맞게 반짝이는 기능 - 타들어가며 없어지는 기능 - 흔들리는 풀 - 맷캡(Matcap) - 굴절 만들기 - 물 만들기 - 물에 흔들림을 추가해 봅시다. - 물에 굴절을 추가해 봅시다. - 트라이플레너(Triplanar) Part_19. 부록 및 퍼포먼스 이슈 - 커스텀 라이팅과 구조체 - 추가 옵션 파라메터 - 서피스 쉐이더 인풋 구조 - #pragma target - 데이터 타입 - 쉐이더 LOD(Shader Level of Detail)