A toon shader compatible with the Universal Rendering Pipeline.
Developed and verified with Unity 2020.3.0f1 LTS and URP package 10.3.2
Toon Shader Capabilities
Toon Shader (Lite) Capabilities
Inverted Hull Outline
Installation
Documentation
Examples
Performance Benchmark
Used Assets
- Opaque/Transparent with blending modes:
- Alpha/Premultiply/Additive/Multiply
- Alpha Clipping
- Culling
- Back/Front/Off
- 2 or 3-step ramp with configurable thresholds and smoothness
- Ramp textures
- Normal Maps
- Main light
- Additional lights
- per-vertex or per-pixel, depending on URP settings
- optional specular highlights
- Casting and receiving shadows
- Configurable shadow color (both in multiplicative and "pure" modes)
- Emission
- Rim lighting (Fresnel effect) and specular highlights with HDR color support (e.g. for bloom)
- Anisotropic specular (e.g. for hair)
- Fog
- SSAO
- Environment Lighting
- Baked lights and shadows
- Dynamically receive via light probes
- Contribute to bake process ("meta" pass)
- Vertex Color
- SRP Batcher compatibility
- GPU Instancing
- 2-step ramp with configurable threshold and smoothness
- Main light (per-vertex or per-pixel)
- Casting shadows
- Configurable shadow color
- Fog
- Vertex Color
- SRP Batcher compatibility
- GPU Instancing
A simple and performant outline shader. Renders outlines of objects on certain layers via a Renderer Feature.
- Open Package Manager through Window/Package Manager
- Click "+" and choose "Add package from git URL..."
- Insert the URL: https://github.com/Delt06/urp-toon-shader.git?path=Packages/com.deltation.toon-shader
Add the following line to Packages/manifest.json
:
"com.deltation.toon-shader": "https://github.com/Delt06/urp-toon-shader.git?path=Packages/com.deltation.toon-shader",
Lit vs. URP Toon Shader vs. Toony Colors Pro (Hybrid)
The results are obtained with Mali Offline Compiler.
Shader Type | Vertex Shader Cycles (L/S) | Fragment Shader Cycles (L/S) |
---|---|---|
Lit | 9 | 15 |
URP Toon Shader | 12 | 10 |
Toony Colors Pro (Hybrid) | 7 | 15 |
L/S = Load/Store.
Hardware: Mali-G78 r1p1
Architecture: Valhall
Driver: r25p0-00rel0
Lit:
Global Keywords: FOG_LINEAR _ADDITIONAL_LIGHTS _ADDITIONAL_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _SHADOWS_SOFT
Local Keywords: _EMISSION
URP Toon Shader:
Global Keywords: FOG_LINEAR _ADDITIONAL_LIGHTS _ADDITIONAL_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _SHADOWS_SOFT
Local Keywords: _ADDITIONAL_LIGHTS_ENABLED _ENVIRONMENT_LIGHTING_ENABLED _FOG _FRESNEL _RAMP_TRIPLE _SPECULAR
Toony Colors Pro (Hybrid)
Global Keywords: FOG_LINEAR TCP2_HYBRID_URP _ADDITIONAL_LIGHTS _ADDITIONAL_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _SHADOWS_SOFT
Local Keywords: TCP2_REFLECTIONS_FRESNEL TCP2_RIM_LIGHTING_LIGHTMASK TCP2_SHADOW_LIGHT_COLOR
- UnityFx.Outline
- Animated Mech Pack by Quaternius
- RPG Character Pack by Quaternius
- Environment Pack: Free Forest Sample by Supercyan
- Character Pack: Free Sample by Supercyan
- The Free Medieval and War Props by Inguz Media
- Stone by Vsify
- Hair Shader 1.0 by RRFreelance / PiXelBurner
- Toony Tiny City Demo by Marcelo Barrio
- Anime Character : Arisa by ζ΄ζ°ΈηΏ Dai Yong Xiang