ysj018 / urp-toon-shader

πŸŒ” Toon shader for Unity's Universal Rendering Pipeline.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

URP Toon Shader for Unity

A toon shader compatible with the Universal Rendering Pipeline.

Developed and verified with Unity 2020.3.0f1 LTS and URP package 10.3.2

Main

Table of Contents

Toon Shader Capabilities
Toon Shader (Lite) Capabilities
Inverted Hull Outline
Installation
Documentation
Examples
Performance Benchmark
Used Assets

Toon Shader Capabilities

Toon Icon

Surface

  • Opaque/Transparent with blending modes:
    • Alpha/Premultiply/Additive/Multiply
  • Alpha Clipping
  • Culling
    • Back/Front/Off

Color

  • 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

Performance

  • SRP Batcher compatibility
  • GPU Instancing

Toon Shader (Lite) Capabilities

Toon Lite Icon

Color

  • 2-step ramp with configurable threshold and smoothness
  • Main light (per-vertex or per-pixel)
  • Casting shadows
  • Configurable shadow color
  • Fog
  • Vertex Color

Performance

  • SRP Batcher compatibility
  • GPU Instancing

Inverted Hull Outline

A simple and performant outline shader. Renders outlines of objects on certain layers via a Renderer Feature.

Inverted Hull Outline

Installation

Option 1

Option 2

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",

Documentation

Forest Demo Breakdown

Examples

Toony Tiny City Demo

Anime Character: Arisa

warrior

fur

Performance Benchmark

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.

Configuration

Hardware: Mali-G78 r1p1
Architecture: Valhall
Driver: r25p0-00rel0

Enabled keywords

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

Used Assets

About

πŸŒ” Toon shader for Unity's Universal Rendering Pipeline.

License:MIT License


Languages

Language:HLSL 36.9%Language:ShaderLab 35.8%Language:C# 27.3%