An outline shader + toon shader. All of the objects use a simple toon shader that lerps between a shadow color and a lit color based on the diffuse light. The outline shader runs before post-processing effects and draws outlines based on change in color and change in depth normal. The color edge sensitivity increases with depth, so objects close to the camera get the most detail and objects far away only get normal edges. Finally, a random dot texture is projected onto the screen using each pixel's world position.
![Outline Shader](img/techart/Outlines1.png)
![Outline Shader](img/techart/Outlines2.png)