/URP_Toon

A Toon Shader in Unity Universal Render Pipeline.

Primary LanguageC#MIT LicenseMIT

URP Toon Shader

Introduction

Simple toon shader in unity universal pipeline.

image-UnityChan

Genshin Impact Style(Model and Texture from miHoYo)

image-Genshin_Sample

Properties

SurfaceOptions

image-SurfaceOptions

Base

image-Base

Shadow

image-Shadow

ShadowType

DoubleShade

Adjustable two-layer shadow.(Reference UTS)

RampMapShadow

Shadows based on rampmap.

SDF_FaceShadow (Reference Genshin Impact)

Used for face shadow, sample a precomputed shadow mask to generate shadows. Limit:symmetrical face uv.

image-SDFMask

Need to add a script to the object, set the forward and left direction(ObjectSpace).

image-SDFScript

About how to generate sdf shadow mask. Node:Generate mask in r16 format(antialiasing).

https://zhuanlan.zhihu.com/p/389668800

SSAO (Add "ScreenSpaceAmbientOcclusion" RenderFeature)

Control SSAO strength.

CastHairShadowMask (Add "RenderFrontHairShadowMaskFeature" RenderFeature)

Cast a shadow mask in screen space for face shadow.(Check it on front hair material or something)

ReceiveHairShadowMask

Sample "CastHairShadowMask" for shadow.(Check it on face material)

Specular

image-Specular

Rim

image-Rim

  • RimBlendShadow

image-BlendRim

1:RimBlendShadow=0 2:RimBlendShadow=1 3:RimBlendShadow=1 RimFlip=1

  • RimFlip

Flip RimBlendShadow

Outline

image-Outline

AdvancedOptions

image-AdvancedOptions

Multi Pass Batch

In the default URP, if render multiple pass shaders(outline), the Rendering order like this:
Object1.Pass1-
Objcet1.Pass2-
Object2.Pass1-
Object2.Pass2......
image-BeforeBatch
It will stop SPRBatch.
image-NotSupportBatch
We can change the Rendering order like this by using RenderFeature:
Object1.Pass1-
Objcet2.Pass1-
Object1.Pass2-
Object2.Pass2......
image-AfterBatch

Reference

https://github.com/unity3d-jp/UnityChanToonShaderVer2_Project
https://github.com/Jason-Ma-233/JasonMaToonRenderPipeline
https://github.com/you-ri/LiliumToonGraph
https://github.com/Kink3d/kShading
https://unity.cn/projects/china-unity-tech-week_linruofeng

Licenses

MIT

"Assets/UnityChan/License"

© Unity Technologies Japan/UCL