Learn a bunch about shading by making an excessively fancy tree leaf shader! Our subject is a spherical tree that will get custom radial Normals, mixed colors, and much more. We'll try to keep it compatible with Instancing and Scattering, but this tutorial isn't about those.
You do not need a huge amount of shader node knowledge to follow along, but this is probably above absolute beginners. There's lots of good foundational information like how to balance lights, map ranges, and mix colors. Also advanced stuff like lifting Normal Map details and applying them to Custom Normals via Surface Gradients!
Topics:
- Balancing the Sun Light
- How World Lighting affects shading
- Basic and advanced Radial/Sphereical Normals
- Faking Sun Angle in the material
- Making fake shading (Lambert Shading)
- Lots of color mixing and effects
- Leaf Texture (alpha and Normal Map)
- Randomized UVs
- Getting Random Per Island in Eevee via Geometry Nodes
- Compensating for Object transforms in Object based Normals
- Mixing Noise into Normals for variety
- Using Surface Gradients to combine Normal Maps and Custom Normals
- Faking tree density with Object Coords
- Using AO to darken and brighten things
- Distance from Camera based masks
- Tons of other random stuff.
Blog post for this project:
http://www.aversionofreality.com/blog/2022/8/7/stylized-tree-shader
File Download on Gumroad ($2+):
https://aversionofreality.gumroad.com/l/tree_files
Support me on Patreon:
https://www.patreon.com/aversionofreality
Social Links:
https://twitter.com/AversionReality
https://www.facebook.com/aversionofreality
https://www.artstation.com/aversionofreality
Timestamps:
00:00 - Intro
03:44 - Starting Setup
06:12 - Balancing Lights
13:54 - Basic Radial Normals
18:43 - World Lighting
27:06 - Sun Angle
30:30 - Lambert Shading
47:50 - Mixing Colors
59:16 - Gloss?
1:03:30 - Leaf Alpha Texture
1:06:52 - Randomizing UV tiles
1:10:10 - GN Random Per Island
1:12:42 - Advanced Radial Normals
1:24:12 - Object Normal Transforms
1:37:40 - Normal Noise
1:44:17 - Surface Gradients
1:51:00 - Rendering Normal Maps
1:57:38 - Faking Density
2:07:27 - Ambient Occlusion
2:11:35 - Applying AO via Soft Light
2:14:43 - Noise Density
2:15:49 - Distance Masks
2:23:06 - Conclusion