Hello and thank you for stopping by! I am using this repository to learn about Shaders in Unity and HLSL.
I am doing it old style so no ShaderGraph or any nodebase editor. The reason is quite simple. I want to understand the underlying mechanisms for different shader techniques, plus I really enjoy playing around with math and matrices, so I think standard HLSL is the way to go.
I am using Unity 2019.4.18f1.
The shaders are divided in different folders. At the moment I have shaders looking at the following
- Color
- Texture
- Culling
- ZBuffering
- Zwrite/Alpha Blending
- Matrix manipulations
- Vertex animations
- Drawing shapes on textures
- Rim
- Blur
- Distortion
- Face extruding
- Dissolve
- Lava (Jettelly based) - featuring parallax displacement
- Lava (Jettelly based) - featuring parallax occlusion mapping
- Outline
- Water shader (credits to Harry) (in progress)
- Texture Lerping
These challenges have been done while following Harry discord channel (see bottom for more information)
- Paper Lantern (surface shader with dissolve cutout texture to simulate burning) (in progress)
This is a bonus folder where I am starting to look at shaders from shadertoy and deconstruct them to understand them and create variants.
- Bubble image effect from Bubble shader
There are plenty of resources available out there which makes this learning fun and engaging at the same time
The Unity documentation is where to start. Together with the HLSL reference for the DirectX.
And finally here a list of amazing people sharing their knowledge with shaders. The list is mixed in terms of the level of techniques explained, but neverthless I think it useful to have a more broader idea of different uses for shaders.