Benefit from the latest rendering tech developments, currently covered only in papers and talks from Siggraph, in a way any developer or technical artist using Unity can take advantage of. This book starts by introducing how shader programming works in general, the common principles of different platforms (OpenGL, Vulkan, and DirectX), and the shading languages Unity uses: Cg, GLSL, and ShaderLab.
Physically Based Shader Development for Unity 2017 discusses artistic choices, presenting various techniques (such as translucency and subsurface scattering) and BRDFs (Oren-Nayar, Cook-Torrance, and Ashikhmin-Shirley), and what they can be used for. Finally you’ll cover the importance of optimizing your code by developing approximations, which achieve similar end results, but are computationally cheaper.
By the end of your journey you’ll be able to develop the look of your game or Unity-rendered animated short so that it looks both unique and impressively realistic, thanks to your own custom lighting system.
What You Will Learn
- Master shader programming
- Gain all you need to know about physically based shading
- Take almost full control of the shader subsystem
- Discover what you can achieve with that control
- Implement a custom physically based lighting system and examine the logic behind every choice
Who This Book Is For
Most game developers (both indie and AA) that use Unity and technical artists who are responsible for the final look of a game.
Table of Contents
Part I: Introduction to Shaders In Unity
Chapter 1: How Shader Development Works
Chapter 2: Your First Unity Shader
Chapter 3: The Graphics Pipeline
Chapter 4: Transforming Coordinate Spaces
Chapter 5: Your First Unity Lighting Shader
Chapter 6: Specular Implementation
Chapter 7: Surface Shaders
Part II: Physically Based Shading
Chapter 8: What Is Physically Based Shading?
Chapter 9: Making a Shader Physically Based
Chapter 10: Post-Processing Effects
Chapter 11: BRDFs Who’s Who
Chapter 12: Implementing a BRDF
Chapter 13: Hooking Into the Standard Shader
Chapter 14: Implementing Advanced Techniques
Part III: Shader Development Advice
Chapter 15: Making Shaders Artists Will Use
Chapter 16: Complexity and Ubershaders
Chapter 17: When Shading Goes Wrong
Chapter 18: Keeping Up with the Industry