-
Notifications
You must be signed in to change notification settings - Fork 802
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Added UniversalToon.shader ,UnvivarsalToonHead.cginc and UniversalToo…
…nBody.cginc.
- Loading branch information
Showing
7 changed files
with
1,196 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,315 @@ | ||
//Unitychan Toon Shader ver.2.0 | ||
//v.2.0.7.5 | ||
//nobuyuki@unity3d.com | ||
//toshiyuki@unity3d.com (LWRP) | ||
//https://github.com/unity3d-jp/UnityChanToonShaderVer2_Project | ||
//(C)Unity Technologies Japan/UCL | ||
Shader "Universal Render Pipeline/Toon" { | ||
Properties { | ||
[HideInInspector] _simpleUI ("SimpleUI", Int ) = 0 | ||
[HideInInspector] _utsVersion ("Version", Float ) = 2.07 | ||
[HideInInspector] _utsTechnique ("Technique", int ) = 0 //DWF | ||
[Enum(OFF,0,FRONT,1,BACK,2)] _CullMode("Cull Mode", int) = 2 //OFF/FRONT/BACK | ||
_MainTex ("BaseMap", 2D) = "white" {} | ||
[HideInInspector] _BaseMap ("BaseMap", 2D) = "white" {} | ||
_BaseColor ("BaseColor", Color) = (1,1,1,1) | ||
//v.2.0.5 : Clipping/TransClipping for SSAO Problems in PostProcessing Stack. | ||
//If you want to go back the former SSAO results, comment out the below line. | ||
[HideInInspector] _Color ("Color", Color) = (1,1,1,1) | ||
// | ||
[Toggle(_)] _Is_LightColor_Base ("Is_LightColor_Base", Float ) = 1 | ||
_1st_ShadeMap ("1st_ShadeMap", 2D) = "white" {} | ||
//v.2.0.5 | ||
[Toggle(_)] _Use_BaseAs1st ("Use BaseMap as 1st_ShadeMap", Float ) = 0 | ||
_1st_ShadeColor ("1st_ShadeColor", Color) = (1,1,1,1) | ||
[Toggle(_)] _Is_LightColor_1st_Shade ("Is_LightColor_1st_Shade", Float ) = 1 | ||
_2nd_ShadeMap ("2nd_ShadeMap", 2D) = "white" {} | ||
//v.2.0.5 | ||
[Toggle(_)] _Use_1stAs2nd ("Use 1st_ShadeMap as 2nd_ShadeMap", Float ) = 0 | ||
_2nd_ShadeColor ("2nd_ShadeColor", Color) = (1,1,1,1) | ||
[Toggle(_)] _Is_LightColor_2nd_Shade ("Is_LightColor_2nd_Shade", Float ) = 1 | ||
_NormalMap ("NormalMap", 2D) = "bump" {} | ||
_BumpScale ("Normal Scale", Range(0, 1)) = 1 | ||
[Toggle(_)] _Is_NormalMapToBase ("Is_NormalMapToBase", Float ) = 0 | ||
//v.2.0.4.4 | ||
[Toggle(_)] _Set_SystemShadowsToBase ("Set_SystemShadowsToBase", Float ) = 1 | ||
_Tweak_SystemShadowsLevel ("Tweak_SystemShadowsLevel", Range(-0.5, 0.5)) = 0 | ||
//v.2.0.6 | ||
_BaseColor_Step ("BaseColor_Step", Range(0, 1)) = 0.5 | ||
_BaseShade_Feather ("Base/Shade_Feather", Range(0.0001, 1)) = 0.0001 | ||
_ShadeColor_Step ("ShadeColor_Step", Range(0, 1)) = 0 | ||
_1st2nd_Shades_Feather ("1st/2nd_Shades_Feather", Range(0.0001, 1)) = 0.0001 | ||
[HideInInspector] _1st_ShadeColor_Step ("1st_ShadeColor_Step", Range(0, 1)) = 0.5 | ||
[HideInInspector] _1st_ShadeColor_Feather ("1st_ShadeColor_Feather", Range(0.0001, 1)) = 0.0001 | ||
[HideInInspector] _2nd_ShadeColor_Step ("2nd_ShadeColor_Step", Range(0, 1)) = 0 | ||
[HideInInspector] _2nd_ShadeColor_Feather ("2nd_ShadeColor_Feather", Range(0.0001, 1)) = 0.0001 | ||
//v.2.0.5 | ||
_StepOffset ("Step_Offset (ForwardAdd Only)", Range(-0.5, 0.5)) = 0 | ||
[Toggle(_)] _Is_Filter_HiCutPointLightColor ("PointLights HiCut_Filter (ForwardAdd Only)", Float ) = 1 | ||
// | ||
_Set_1st_ShadePosition ("Set_1st_ShadePosition", 2D) = "white" {} | ||
_Set_2nd_ShadePosition ("Set_2nd_ShadePosition", 2D) = "white" {} | ||
// | ||
_HighColor ("HighColor", Color) = (0,0,0,1) | ||
//v.2.0.4 HighColor_Tex | ||
_HighColor_Tex ("HighColor_Tex", 2D) = "white" {} | ||
[Toggle(_)] _Is_LightColor_HighColor ("Is_LightColor_HighColor", Float ) = 1 | ||
[Toggle(_)] _Is_NormalMapToHighColor ("Is_NormalMapToHighColor", Float ) = 0 | ||
_HighColor_Power ("HighColor_Power", Range(0, 1)) = 0 | ||
[Toggle(_)] _Is_SpecularToHighColor ("Is_SpecularToHighColor", Float ) = 0 | ||
[Toggle(_)] _Is_BlendAddToHiColor ("Is_BlendAddToHiColor", Float ) = 0 | ||
[Toggle(_)] _Is_UseTweakHighColorOnShadow ("Is_UseTweakHighColorOnShadow", Float ) = 0 | ||
_TweakHighColorOnShadow ("TweakHighColorOnShadow", Range(0, 1)) = 0 | ||
//ハイカラーマスク. | ||
_Set_HighColorMask ("Set_HighColorMask", 2D) = "white" {} | ||
_Tweak_HighColorMaskLevel ("Tweak_HighColorMaskLevel", Range(-1, 1)) = 0 | ||
[Toggle(_)] _RimLight ("RimLight", Float ) = 0 | ||
_RimLightColor ("RimLightColor", Color) = (1,1,1,1) | ||
[Toggle(_)] _Is_LightColor_RimLight ("Is_LightColor_RimLight", Float ) = 1 | ||
[Toggle(_)] _Is_NormalMapToRimLight ("Is_NormalMapToRimLight", Float ) = 0 | ||
_RimLight_Power ("RimLight_Power", Range(0, 1)) = 0.1 | ||
_RimLight_InsideMask ("RimLight_InsideMask", Range(0.0001, 1)) = 0.0001 | ||
[Toggle(_)] _RimLight_FeatherOff ("RimLight_FeatherOff", Float ) = 0 | ||
//リムライト追加プロパティ. | ||
[Toggle(_)] _LightDirection_MaskOn ("LightDirection_MaskOn", Float ) = 0 | ||
_Tweak_LightDirection_MaskLevel ("Tweak_LightDirection_MaskLevel", Range(0, 0.5)) = 0 | ||
[Toggle(_)] _Add_Antipodean_RimLight ("Add_Antipodean_RimLight", Float ) = 0 | ||
_Ap_RimLightColor ("Ap_RimLightColor", Color) = (1,1,1,1) | ||
[Toggle(_)] _Is_LightColor_Ap_RimLight ("Is_LightColor_Ap_RimLight", Float ) = 1 | ||
_Ap_RimLight_Power ("Ap_RimLight_Power", Range(0, 1)) = 0.1 | ||
[Toggle(_)] _Ap_RimLight_FeatherOff ("Ap_RimLight_FeatherOff", Float ) = 0 | ||
//リムライトマスク. | ||
_Set_RimLightMask ("Set_RimLightMask", 2D) = "white" {} | ||
_Tweak_RimLightMaskLevel ("Tweak_RimLightMaskLevel", Range(-1, 1)) = 0 | ||
//ここまで. | ||
[Toggle(_)] _MatCap ("MatCap", Float ) = 0 | ||
_MatCap_Sampler ("MatCap_Sampler", 2D) = "black" {} | ||
//v.2.0.6 | ||
_BlurLevelMatcap ("Blur Level of MatCap_Sampler", Range(0, 10)) = 0 | ||
_MatCapColor ("MatCapColor", Color) = (1,1,1,1) | ||
[Toggle(_)] _Is_LightColor_MatCap ("Is_LightColor_MatCap", Float ) = 1 | ||
[Toggle(_)] _Is_BlendAddToMatCap ("Is_BlendAddToMatCap", Float ) = 1 | ||
_Tweak_MatCapUV ("Tweak_MatCapUV", Range(-0.5, 0.5)) = 0 | ||
_Rotate_MatCapUV ("Rotate_MatCapUV", Range(-1, 1)) = 0 | ||
//v.2.0.6 | ||
[Toggle(_)] _CameraRolling_Stabilizer ("Activate CameraRolling_Stabilizer", Float ) = 0 | ||
[Toggle(_)] _Is_NormalMapForMatCap ("Is_NormalMapForMatCap", Float ) = 0 | ||
_NormalMapForMatCap ("NormalMapForMatCap", 2D) = "bump" {} | ||
_BumpScaleMatcap ("Scale for NormalMapforMatCap", Range(0, 1)) = 1 | ||
_Rotate_NormalMapForMatCapUV ("Rotate_NormalMapForMatCapUV", Range(-1, 1)) = 0 | ||
[Toggle(_)] _Is_UseTweakMatCapOnShadow ("Is_UseTweakMatCapOnShadow", Float ) = 0 | ||
_TweakMatCapOnShadow ("TweakMatCapOnShadow", Range(0, 1)) = 0 | ||
//MatcapMask | ||
_Set_MatcapMask ("Set_MatcapMask", 2D) = "white" {} | ||
_Tweak_MatcapMaskLevel ("Tweak_MatcapMaskLevel", Range(-1, 1)) = 0 | ||
[Toggle(_)] _Inverse_MatcapMask ("Inverse_MatcapMask", Float ) = 0 | ||
//v.2.0.5 | ||
[Toggle(_)] _Is_Ortho ("Orthographic Projection for MatCap", Float ) = 0 | ||
//v.2.0.7 Emissive | ||
[KeywordEnum(SIMPLE,ANIMATION)] _EMISSIVE("EMISSIVE MODE", Float) = 0 | ||
_Emissive_Tex ("Emissive_Tex", 2D) = "white" {} | ||
[HDR]_Emissive_Color ("Emissive_Color", Color) = (0,0,0,1) | ||
_Base_Speed ("Base_Speed", Float ) = 0 | ||
_Scroll_EmissiveU ("Scroll_EmissiveU", Range(-1, 1)) = 0 | ||
_Scroll_EmissiveV ("Scroll_EmissiveV", Range(-1, 1)) = 0 | ||
_Rotate_EmissiveUV ("Rotate_EmissiveUV", Float ) = 0 | ||
[Toggle(_)] _Is_PingPong_Base ("Is_PingPong_Base", Float ) = 0 | ||
[Toggle(_)] _Is_ColorShift ("Activate ColorShift", Float ) = 0 | ||
[HDR]_ColorShift ("ColorSift", Color) = (0,0,0,1) | ||
_ColorShift_Speed ("ColorShift_Speed", Float ) = 0 | ||
[Toggle(_)] _Is_ViewShift ("Activate ViewShift", Float ) = 0 | ||
[HDR]_ViewShift ("ViewSift", Color) = (0,0,0,1) | ||
[Toggle(_)] _Is_ViewCoord_Scroll ("Is_ViewCoord_Scroll", Float ) = 0 | ||
// | ||
//Outline | ||
[KeywordEnum(NML,POS)] _OUTLINE("OUTLINE MODE", Float) = 0 | ||
_Outline_Width ("Outline_Width", Float ) = 0 | ||
_Farthest_Distance ("Farthest_Distance", Float ) = 100 | ||
_Nearest_Distance ("Nearest_Distance", Float ) = 0.5 | ||
_Outline_Sampler ("Outline_Sampler", 2D) = "white" {} | ||
_Outline_Color ("Outline_Color", Color) = (0.5,0.5,0.5,1) | ||
[Toggle(_)] _Is_BlendBaseColor ("Is_BlendBaseColor", Float ) = 0 | ||
[Toggle(_)] _Is_LightColor_Outline ("Is_LightColor_Outline", Float ) = 1 | ||
//v.2.0.4 | ||
[Toggle(_)] _Is_OutlineTex ("Is_OutlineTex", Float ) = 0 | ||
_OutlineTex ("OutlineTex", 2D) = "white" {} | ||
//Offset parameter | ||
_Offset_Z ("Offset_Camera_Z", Float) = 0 | ||
//v.2.0.4.3 Baked Nrmal Texture for Outline | ||
[Toggle(_)] _Is_BakedNormal ("Is_BakedNormal", Float ) = 0 | ||
_BakedNormal ("Baked Normal for Outline", 2D) = "white" {} | ||
//GI Intensity | ||
_GI_Intensity ("GI_Intensity", Range(0, 1)) = 0 | ||
//For VR Chat under No effective light objects | ||
_Unlit_Intensity ("Unlit_Intensity", Range(0.001, 4)) = 1 | ||
//v.2.0.5 | ||
[Toggle(_)] _Is_Filter_LightColor ("VRChat : SceneLights HiCut_Filter", Float ) = 0 | ||
//Built-in Light Direction | ||
[Toggle(_)] _Is_BLD ("Advanced : Activate Built-in Light Direction", Float ) = 0 | ||
_Offset_X_Axis_BLD (" Offset X-Axis (Built-in Light Direction)", Range(-1, 1)) = -0.05 | ||
_Offset_Y_Axis_BLD (" Offset Y-Axis (Built-in Light Direction)", Range(-1, 1)) = 0.09 | ||
[Toggle(_)] _Inverse_Z_Axis_BLD (" Inverse Z-Axis (Built-in Light Direction)", Float ) = 1 | ||
} | ||
SubShader { | ||
Tags { | ||
"RenderType"="Opaque" | ||
} | ||
Pass { | ||
Name "Outline" | ||
Tags { | ||
"LightMode" = "SRPDefaultUnlit" | ||
} | ||
Cull Front | ||
|
||
CGPROGRAM | ||
#pragma vertex vert | ||
#pragma fragment frag | ||
#include "UnityCG.cginc" | ||
//#pragma fragmentoption ARB_precision_hint_fastest | ||
//#pragma multi_compile_shadowcaster | ||
//#pragma multi_compile_fog | ||
#pragma only_renderers d3d9 d3d11 glcore gles gles3 metal xboxone ps4 switch | ||
#pragma target 3.0 | ||
//V.2.0.4 | ||
#pragma multi_compile _IS_OUTLINE_CLIPPING_NO | ||
#pragma multi_compile _OUTLINE_NML _OUTLINE_POS | ||
//アウトライン処理はUTS_Outline.cgincへ. | ||
#include "../../Toon/Shader/UCTS_Outline.cginc" | ||
ENDCG | ||
} | ||
//ToonCoreStart | ||
Pass { | ||
Name "FORWARD" | ||
Tags { | ||
"LightMode"="LightweightForward" | ||
} | ||
|
||
Cull[_CullMode] | ||
|
||
HLSLPROGRAM | ||
#pragma prefer_hlslcc gles | ||
#pragma exclude_renderers d3d11_9x | ||
#pragma target 3.0 | ||
|
||
#pragma vertex vert | ||
#pragma fragment frag | ||
//#define UNITY_PASS_FORWARDBASE | ||
#if 1 | ||
|
||
|
||
//v.2.0.4 | ||
#pragma multi_compile _IS_CLIPPING_OFF | ||
#pragma multi_compile _IS_PASS_FWDBASE | ||
#endif | ||
// ------------------------------------- | ||
// Material Keywords | ||
// ------------------------------------- | ||
// Material Keywords | ||
#pragma shader_feature _NORMALMAP | ||
#pragma shader_feature _ALPHATEST_ON | ||
#pragma shader_feature _ALPHAPREMULTIPLY_ON | ||
#pragma shader_feature _EMISSION | ||
#pragma shader_feature _METALLICSPECGLOSSMAP | ||
#pragma shader_feature _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A | ||
#pragma shader_feature _OCCLUSIONMAP | ||
|
||
#pragma shader_feature _SPECULARHIGHLIGHTS_OFF | ||
#pragma shader_feature _ENVIRONMENTREFLECTIONS_OFF | ||
#pragma shader_feature _SPECULAR_SETUP | ||
#pragma shader_feature _RECEIVE_SHADOWS_OFF | ||
|
||
// ------------------------------------- | ||
// Lightweight Pipeline keywords | ||
#pragma multi_compile _ _MAIN_LIGHT_SHADOWS | ||
#pragma multi_compile _ _MAIN_LIGHT_SHADOWS_CASCADE | ||
#pragma multi_compile _ _ADDITIONAL_LIGHTS_VERTEX _ADDITIONAL_LIGHTS | ||
#pragma multi_compile _ _ADDITIONAL_LIGHT_SHADOWS | ||
#pragma multi_compile _ _SHADOWS_SOFT | ||
|
||
#pragma multi_compile _ _MIXED_LIGHTING_SUBTRACTIVE | ||
// ------------------------------------- | ||
// Unity defined keywords | ||
#pragma multi_compile _ DIRLIGHTMAP_COMBINED | ||
#pragma multi_compile _ LIGHTMAP_ON | ||
#pragma multi_compile_fog | ||
|
||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" | ||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl" | ||
#include "Packages/com.unity.render-pipelines.universal/Shaders/LitInput.hlsl" | ||
#include "Packages/com.unity.render-pipelines.universal/Shaders/LitForwardPass.hlsl" | ||
|
||
#include "UniversalToonHead.cginc" | ||
#include "UniversalToonBody.cginc" | ||
|
||
ENDHLSL | ||
|
||
} | ||
|
||
Pass | ||
{ | ||
Name "ShadowCaster" | ||
Tags{"LightMode" = "ShadowCaster"} | ||
|
||
ZWrite On | ||
ZTest LEqual | ||
Cull[_Cull] | ||
|
||
HLSLPROGRAM | ||
// Required to compile gles 2.0 with standard srp library | ||
#pragma prefer_hlslcc gles | ||
#pragma exclude_renderers d3d11_9x | ||
#pragma target 2.0 | ||
|
||
// ------------------------------------- | ||
// Material Keywords | ||
#pragma shader_feature _ALPHATEST_ON | ||
|
||
//-------------------------------------- | ||
// GPU Instancing | ||
#pragma multi_compile_instancing | ||
#pragma shader_feature _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A | ||
|
||
#pragma vertex ShadowPassVertex | ||
#pragma fragment ShadowPassFragment | ||
|
||
#include "Packages/com.unity.render-pipelines.universal/Shaders/LitInput.hlsl" | ||
#include "Packages/com.unity.render-pipelines.universal/Shaders/ShadowCasterPass.hlsl" | ||
ENDHLSL | ||
} | ||
|
||
Pass | ||
{ | ||
Name "DepthOnly" | ||
Tags{"LightMode" = "DepthOnly"} | ||
|
||
ZWrite On | ||
ColorMask 0 | ||
Cull[_Cull] | ||
|
||
HLSLPROGRAM | ||
// Required to compile gles 2.0 with standard srp library | ||
#pragma prefer_hlslcc gles | ||
#pragma exclude_renderers d3d11_9x | ||
#pragma target 2.0 | ||
|
||
#pragma vertex DepthOnlyVertex | ||
#pragma fragment DepthOnlyFragment | ||
|
||
// ------------------------------------- | ||
// Material Keywords | ||
#pragma shader_feature _ALPHATEST_ON | ||
#pragma shader_feature _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A | ||
|
||
//-------------------------------------- | ||
// GPU Instancing | ||
#pragma multi_compile_instancing | ||
|
||
#include "Packages/com.unity.render-pipelines.universal/Shaders/LitInput.hlsl" | ||
#include "Packages/com.unity.render-pipelines.universal/Shaders/DepthOnlyPass.hlsl" | ||
ENDHLSL | ||
} | ||
|
||
//ToonCoreEnd | ||
} | ||
CustomEditor "UnityChan.UTS2GUI" | ||
} |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Oops, something went wrong.