621 lines
20 KiB
Plaintext
621 lines
20 KiB
Plaintext
//////////////////////////////////////////////////////
|
|
// MK Toon Built-in Particles Unlit //
|
|
// //
|
|
// Created by Michael Kremmel //
|
|
// www.michaelkremmel.de //
|
|
// Copyright © 2021 All rights reserved. //
|
|
//////////////////////////////////////////////////////
|
|
|
|
Shader "MK/Toon/Built-in/Particles/Unlit"
|
|
{
|
|
Properties
|
|
{
|
|
/////////////////
|
|
// Options //
|
|
/////////////////
|
|
[Enum(MK.Toon.Surface)] _Surface ("", int) = 1
|
|
_Blend ("", int) = 0
|
|
[Toggle] _AlphaClipping ("", int) = 0
|
|
[HideInInspector] [Enum(MK.Toon.RenderFace)] _RenderFace ("", int) = 2
|
|
|
|
/////////////////
|
|
// Input //
|
|
/////////////////
|
|
[MainColor] _AlbedoColor ("", Color) = (1,1,1,1)
|
|
_AlphaCutoff ("", Range(0, 1)) = 0.5
|
|
[MainTexture] _AlbedoMap ("", 2D) = "white" {}
|
|
|
|
/////////////////
|
|
// Stylize //
|
|
/////////////////
|
|
_Contrast ("", Float) = 1.0
|
|
[MKToonSaturation] _Saturation ("", Float) = 1.0
|
|
[MKToonBrightness] _Brightness ("", Float) = 1
|
|
[Enum(MK.Toon.ColorGrading)] _ColorGrading ("", int) = 0
|
|
[Toggle] _VertexAnimationStutter ("", int) = 0
|
|
[Enum(MK.Toon.VertexAnimation)] _VertexAnimation ("", int) = 0
|
|
_VertexAnimationIntensity ("", Range(0, 1)) = 0.05
|
|
_VertexAnimationMap ("", 2D) = "white" {}
|
|
[MKToonVertexAnimationFrequency] _VertexAnimationFrequency ("", Vector) = (2.5, 2.5, 2.5, 1)
|
|
[Enum(MK.Toon.Dissolve)] _Dissolve ("", int) = 0
|
|
_DissolveMapScale ("", Float) = 1
|
|
_DissolveMap ("", 2D) = "white" {}
|
|
_DissolveAmount ("", Range(0.0, 1.0)) = 0.5
|
|
_DissolveBorderSize ("", Range(0.0, 1.0)) = 0.25
|
|
_DissolveBorderRamp ("", 2D) = "white" {}
|
|
[HDR] _DissolveBorderColor ("", Color) = (1, 1, 1, 1)
|
|
|
|
/////////////////
|
|
// Advanced //
|
|
/////////////////
|
|
[HideInInspector] [Enum(MK.Toon.BlendFactor)] _BlendSrc ("", int) = 1
|
|
[HideInInspector] [Enum(MK.Toon.BlendFactor)] _BlendDst ("", int) = 0
|
|
[Enum(MK.Toon.ZWrite)] _ZWrite ("", int) = 1.0
|
|
[Enum(MK.Toon.ZTest)] _ZTest ("", int) = 4.0
|
|
[MKToonRenderPriority] _RenderPriority ("", Range(-50, 50)) = 0.0
|
|
|
|
[Enum(MK.Toon.Stencil)] _Stencil ("", Int) = 1
|
|
[MKToonStencilRef] _StencilRef ("", Range(0, 255)) = 0
|
|
[MKToonStencilReadMask] _StencilReadMask ("", Range(0, 255)) = 255
|
|
[MKToonStencilWriteMask] _StencilWriteMask ("", Range(0, 255)) = 255
|
|
[Enum(MK.Toon.StencilComparison)] _StencilComp ("", Int) = 8
|
|
[Enum(MK.Toon.StencilOperation)] _StencilPass ("", Int) = 0
|
|
[Enum(MK.Toon.StencilOperation)] _StencilFail ("", Int) = 0
|
|
[Enum(MK.Toon.StencilOperation)] _StencilZFail ("", Int) = 0
|
|
|
|
/////////////////
|
|
// Particles //
|
|
/////////////////
|
|
[Toggle] _Flipbook ("", Float) = 0.0
|
|
[Toggle] _SoftFade ("", Float) = 0.0
|
|
[MKToonSoftFadeNearDistance] _SoftFadeNearDistance ("", Float) = 0.0
|
|
[MKToonSoftFadeFarDistance] _SoftFadeFarDistance ("", Float) = 1.0
|
|
_SoftFadeModeParams("", Vector) = (0,0,0,0)
|
|
[Enum(MK.Toon.ColorBlend)] _ColorBlend ("", Float) = 0.0
|
|
[Toggle] _CameraFade ("", Float) = 0.0
|
|
_CameraFadeParams("", Vector) = (0,0,0,0)
|
|
[MKToonCameraFadeNearDistance] _CameraFadeNearDistance ("", Float) = 1.0
|
|
[MKToonCameraFadeFarDistance] _CameraFadeFarDistance ("", Float) = 2.0
|
|
|
|
/////////////////
|
|
// Editor Only //
|
|
/////////////////
|
|
[HideInInspector] _Initialized ("", int) = 0
|
|
[HideInInspector] _OptionsTab ("", int) = 1
|
|
[HideInInspector] _InputTab ("", int) = 1
|
|
[HideInInspector] _StylizeTab ("", int) = 0
|
|
[HideInInspector] _AdvancedTab ("", int) = 0
|
|
[HideInInspector] _ParticlesTab ("", int) = 0
|
|
}
|
|
SubShader
|
|
{
|
|
Tags {"RenderType"="Opaque" "PerformanceChecks"="False" "IgnoreProjector" = "True" "PreviewType" = "Plane"}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// Editor Only
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
Pass
|
|
{
|
|
Name "SceneSelectionPass"
|
|
Tags { "LightMode" = "SceneSelectionPass" }
|
|
|
|
BlendOp Add
|
|
Blend One Zero
|
|
ZWrite On
|
|
Cull Off
|
|
|
|
CGPROGRAM
|
|
#pragma target 5.0
|
|
|
|
#pragma multi_compile_instancing
|
|
//#pragma instancing_options procedural:vertInstancingSetup
|
|
|
|
#pragma vertex vertEditorPass
|
|
#pragma fragment fragSceneHighlightPass
|
|
|
|
#include "UnityStandardParticleEditor.cginc"
|
|
ENDCG
|
|
}
|
|
|
|
Pass
|
|
{
|
|
Name "ScenePickingPass"
|
|
Tags{ "LightMode" = "Picking" }
|
|
|
|
BlendOp Add
|
|
Blend One Zero
|
|
ZWrite On
|
|
Cull Off
|
|
|
|
CGPROGRAM
|
|
#pragma target 5.0
|
|
|
|
#pragma multi_compile_instancing
|
|
//#pragma instancing_options procedural:vertInstancingSetup
|
|
|
|
#pragma vertex vertEditorPass
|
|
#pragma fragment fragScenePickingPass
|
|
|
|
#include "UnityStandardParticleEditor.cginc"
|
|
ENDCG
|
|
}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// FORWARD BASE
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
Pass
|
|
{
|
|
Stencil
|
|
{
|
|
Ref [_StencilRef]
|
|
ReadMask [_StencilReadMask]
|
|
WriteMask [_StencilWriteMask]
|
|
Comp [_StencilComp]
|
|
Pass [_StencilPass]
|
|
Fail [_StencilFail]
|
|
ZFail [_StencilZFail]
|
|
}
|
|
|
|
Tags { "LightMode" = "ForwardBase" }
|
|
Name "ForwardBase"
|
|
Cull [_RenderFace]
|
|
Blend [_BlendSrc] [_BlendDst]
|
|
ZWrite [_ZWrite]
|
|
ZTest [_ZTest]
|
|
ColorMask RGB
|
|
|
|
HLSLPROGRAM
|
|
#pragma target 5.0
|
|
#pragma shader_feature_local __ _MK_SOFT_FADE
|
|
#pragma shader_feature_local __ _MK_CAMERA_FADE
|
|
#pragma shader_feature_local __ _MK_COLOR_BLEND_ADDITIVE _MK_COLOR_BLEND_SUBTRACTIVE _MK_COLOR_BLEND_OVERLAY _MK_COLOR_BLEND_COLOR _MK_COLOR_BLEND_DIFFERENCE
|
|
#pragma shader_feature_local __ _MK_SURFACE_TYPE_TRANSPARENT
|
|
#pragma shader_feature_local __ _MK_ALPHA_CLIPPING
|
|
#pragma shader_feature_local __ _MK_VERTEX_ANIMATION_STUTTER
|
|
#pragma shader_feature_local __ _MK_VERTEX_ANIMATION_SINE _MK_VERTEX_ANIMATION_PULSE _MK_VERTEX_ANIMATION_NOISE
|
|
#pragma shader_feature_local __ _MK_VERTEX_ANIMATION_MAP
|
|
#pragma shader_feature_local __ _MK_DISSOLVE_DEFAULT _MK_DISSOLVE_BORDER_COLOR _MK_DISSOLVE_BORDER_RAMP
|
|
#pragma shader_feature_local __ _MK_ALBEDO_MAP
|
|
#pragma shader_feature_local __ _MK_BLEND_PREMULTIPLY _MK_BLEND_ADDITIVE _MK_BLEND_MULTIPLY
|
|
#pragma shader_feature_local __ _MK_COLOR_GRADING_ALBEDO _MK_COLOR_GRADING_FINAL_OUTPUT
|
|
|
|
#pragma fragmentoption ARB_precision_hint_fastest
|
|
#pragma vertex ForwardVert
|
|
#pragma fragment ForwardFrag
|
|
|
|
#pragma exclude_renderers d3d11_9x
|
|
#pragma multi_compile_fog
|
|
|
|
#pragma multi_compile_instancing
|
|
//#pragma instancing_options procedural:vertInstancingSetup
|
|
|
|
#define MK_LEGACY_RP
|
|
#define MK_PARTICLES
|
|
#define MK_UNLIT
|
|
|
|
#include "../../Lib/Forward/BaseSetup.hlsl"
|
|
|
|
ENDHLSL
|
|
}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// FORWARD ADD
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// DEFERRED
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// SHADOWCASTER
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
//Casting Shadows from Particles is not supported
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// META
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
//Not supported on particles
|
|
}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// SM 3.5
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
SubShader
|
|
{
|
|
Tags {"RenderType"="Opaque" "PerformanceChecks"="False" "IgnoreProjector" = "True" "PreviewType" = "Plane"}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// Editor Only
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
Pass
|
|
{
|
|
Name "SceneSelectionPass"
|
|
Tags { "LightMode" = "SceneSelectionPass" }
|
|
|
|
BlendOp Add
|
|
Blend One Zero
|
|
ZWrite On
|
|
Cull Off
|
|
|
|
CGPROGRAM
|
|
#pragma target 3.5
|
|
|
|
#pragma multi_compile_instancing
|
|
//#pragma instancing_options procedural:vertInstancingSetup
|
|
|
|
#pragma vertex vertEditorPass
|
|
#pragma fragment fragSceneHighlightPass
|
|
|
|
#include "UnityStandardParticleEditor.cginc"
|
|
ENDCG
|
|
}
|
|
|
|
Pass
|
|
{
|
|
Name "ScenePickingPass"
|
|
Tags{ "LightMode" = "Picking" }
|
|
|
|
BlendOp Add
|
|
Blend One Zero
|
|
ZWrite On
|
|
Cull Off
|
|
|
|
CGPROGRAM
|
|
#pragma target 3.5
|
|
|
|
#pragma multi_compile_instancing
|
|
//#pragma instancing_options procedural:vertInstancingSetup
|
|
|
|
#pragma vertex vertEditorPass
|
|
#pragma fragment fragScenePickingPass
|
|
|
|
#include "UnityStandardParticleEditor.cginc"
|
|
ENDCG
|
|
}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// FORWARD BASE
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
Pass
|
|
{
|
|
Stencil
|
|
{
|
|
Ref [_StencilRef]
|
|
ReadMask [_StencilReadMask]
|
|
WriteMask [_StencilWriteMask]
|
|
Comp [_StencilComp]
|
|
Pass [_StencilPass]
|
|
Fail [_StencilFail]
|
|
ZFail [_StencilZFail]
|
|
}
|
|
|
|
Tags { "LightMode" = "ForwardBase" }
|
|
Name "ForwardBase"
|
|
Cull [_RenderFace]
|
|
Blend [_BlendSrc] [_BlendDst]
|
|
ZWrite [_ZWrite]
|
|
ZTest [_ZTest]
|
|
ColorMask RGB
|
|
|
|
HLSLPROGRAM
|
|
#pragma target 3.5
|
|
#pragma shader_feature_local __ _MK_SOFT_FADE
|
|
#pragma shader_feature_local __ _MK_CAMERA_FADE
|
|
#pragma shader_feature_local __ _MK_COLOR_BLEND_ADDITIVE _MK_COLOR_BLEND_SUBTRACTIVE _MK_COLOR_BLEND_OVERLAY _MK_COLOR_BLEND_COLOR _MK_COLOR_BLEND_DIFFERENCE
|
|
#pragma shader_feature_local __ _MK_SURFACE_TYPE_TRANSPARENT
|
|
#pragma shader_feature_local __ _MK_ALPHA_CLIPPING
|
|
#pragma shader_feature_local __ _MK_VERTEX_ANIMATION_STUTTER
|
|
#pragma shader_feature_local __ _MK_VERTEX_ANIMATION_SINE _MK_VERTEX_ANIMATION_PULSE _MK_VERTEX_ANIMATION_NOISE
|
|
#pragma shader_feature_local __ _MK_VERTEX_ANIMATION_MAP
|
|
#pragma shader_feature_local __ _MK_DISSOLVE_DEFAULT _MK_DISSOLVE_BORDER_COLOR _MK_DISSOLVE_BORDER_RAMP
|
|
#pragma shader_feature_local __ _MK_ALBEDO_MAP
|
|
#pragma shader_feature_local __ _MK_BLEND_PREMULTIPLY _MK_BLEND_ADDITIVE _MK_BLEND_MULTIPLY
|
|
#pragma shader_feature_local __ _MK_COLOR_GRADING_ALBEDO _MK_COLOR_GRADING_FINAL_OUTPUT
|
|
|
|
#pragma fragmentoption ARB_precision_hint_fastest
|
|
#pragma vertex ForwardVert
|
|
#pragma fragment ForwardFrag
|
|
|
|
#pragma exclude_renderers d3d11_9x
|
|
#pragma multi_compile_fog
|
|
|
|
#pragma multi_compile_instancing
|
|
//#pragma instancing_options procedural:vertInstancingSetup
|
|
|
|
#define MK_LEGACY_RP
|
|
#define MK_PARTICLES
|
|
#define MK_UNLIT
|
|
|
|
#include "../../Lib/Forward/BaseSetup.hlsl"
|
|
|
|
ENDHLSL
|
|
}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// FORWARD ADD
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// DEFERRED
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// SHADOWCASTER
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
//Casting Shadows from Particles is not supported
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// META
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
//Not supported on particles
|
|
}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// SM 3.0
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
SubShader
|
|
{
|
|
Tags {"RenderType"="Opaque" "PerformanceChecks"="False" "IgnoreProjector" = "True" "PreviewType" = "Plane"}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// Editor Only
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
Pass
|
|
{
|
|
Name "SceneSelectionPass"
|
|
Tags { "LightMode" = "SceneSelectionPass" }
|
|
|
|
BlendOp Add
|
|
Blend One Zero
|
|
ZWrite On
|
|
Cull Off
|
|
|
|
CGPROGRAM
|
|
#pragma target 3.0
|
|
|
|
#pragma multi_compile_instancing
|
|
//#pragma instancing_options procedural:vertInstancingSetup
|
|
|
|
#pragma vertex vertEditorPass
|
|
#pragma fragment fragSceneHighlightPass
|
|
|
|
#include "UnityStandardParticleEditor.cginc"
|
|
ENDCG
|
|
}
|
|
|
|
Pass
|
|
{
|
|
Name "ScenePickingPass"
|
|
Tags{ "LightMode" = "Picking" }
|
|
|
|
BlendOp Add
|
|
Blend One Zero
|
|
ZWrite On
|
|
Cull Off
|
|
|
|
CGPROGRAM
|
|
#pragma target 3.0
|
|
|
|
#pragma multi_compile_instancing
|
|
//#pragma instancing_options procedural:vertInstancingSetup
|
|
|
|
#pragma vertex vertEditorPass
|
|
#pragma fragment fragScenePickingPass
|
|
|
|
#include "UnityStandardParticleEditor.cginc"
|
|
ENDCG
|
|
}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// FORWARD BASE
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
Pass
|
|
{
|
|
Stencil
|
|
{
|
|
Ref [_StencilRef]
|
|
ReadMask [_StencilReadMask]
|
|
WriteMask [_StencilWriteMask]
|
|
Comp [_StencilComp]
|
|
Pass [_StencilPass]
|
|
Fail [_StencilFail]
|
|
ZFail [_StencilZFail]
|
|
}
|
|
|
|
Tags { "LightMode" = "ForwardBase" }
|
|
Name "ForwardBase"
|
|
Cull [_RenderFace]
|
|
Blend [_BlendSrc] [_BlendDst]
|
|
ZWrite [_ZWrite]
|
|
ZTest [_ZTest]
|
|
ColorMask RGB
|
|
|
|
HLSLPROGRAM
|
|
#pragma target 3.0
|
|
#pragma shader_feature_local __ _MK_SOFT_FADE
|
|
#pragma shader_feature_local __ _MK_CAMERA_FADE
|
|
#pragma shader_feature_local __ _MK_COLOR_BLEND_ADDITIVE _MK_COLOR_BLEND_SUBTRACTIVE _MK_COLOR_BLEND_OVERLAY _MK_COLOR_BLEND_COLOR _MK_COLOR_BLEND_DIFFERENCE
|
|
#pragma shader_feature_local __ _MK_SURFACE_TYPE_TRANSPARENT
|
|
#pragma shader_feature_local __ _MK_ALPHA_CLIPPING
|
|
#pragma shader_feature_local __ _MK_VERTEX_ANIMATION_STUTTER
|
|
#pragma shader_feature_local __ _MK_VERTEX_ANIMATION_SINE _MK_VERTEX_ANIMATION_PULSE _MK_VERTEX_ANIMATION_NOISE
|
|
#pragma shader_feature_local __ _MK_VERTEX_ANIMATION_MAP
|
|
#pragma shader_feature_local __ _MK_DISSOLVE_DEFAULT _MK_DISSOLVE_BORDER_COLOR _MK_DISSOLVE_BORDER_RAMP
|
|
#pragma shader_feature_local __ _MK_ALBEDO_MAP
|
|
#pragma shader_feature_local __ _MK_BLEND_PREMULTIPLY _MK_BLEND_ADDITIVE _MK_BLEND_MULTIPLY
|
|
#pragma shader_feature_local __ _MK_COLOR_GRADING_ALBEDO _MK_COLOR_GRADING_FINAL_OUTPUT
|
|
|
|
#pragma fragmentoption ARB_precision_hint_fastest
|
|
#pragma vertex ForwardVert
|
|
#pragma fragment ForwardFrag
|
|
|
|
#pragma exclude_renderers d3d11_9x
|
|
#pragma multi_compile_fog
|
|
|
|
#pragma multi_compile_instancing
|
|
//#pragma instancing_options procedural:vertInstancingSetup
|
|
|
|
#define MK_LEGACY_RP
|
|
#define MK_PARTICLES
|
|
#define MK_UNLIT
|
|
|
|
#include "../../Lib/Forward/BaseSetup.hlsl"
|
|
|
|
ENDHLSL
|
|
}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// FORWARD ADD
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// DEFERRED
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// SHADOWCASTER
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
//Casting Shadows from Particles is not supported
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// META
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
//Not supported on particles
|
|
}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// SM 2.5
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
SubShader
|
|
{
|
|
Tags {"RenderType"="Opaque" "PerformanceChecks"="False" "IgnoreProjector" = "True" "PreviewType" = "Plane"}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// Editor Only
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
Pass
|
|
{
|
|
Name "SceneSelectionPass"
|
|
Tags { "LightMode" = "SceneSelectionPass" }
|
|
|
|
BlendOp Add
|
|
Blend One Zero
|
|
ZWrite On
|
|
Cull Off
|
|
|
|
CGPROGRAM
|
|
#pragma target 2.5
|
|
|
|
#pragma multi_compile_instancing
|
|
//#pragma instancing_options procedural:vertInstancingSetup
|
|
|
|
#pragma vertex vertEditorPass
|
|
#pragma fragment fragSceneHighlightPass
|
|
|
|
#include "UnityStandardParticleEditor.cginc"
|
|
ENDCG
|
|
}
|
|
|
|
Pass
|
|
{
|
|
Name "ScenePickingPass"
|
|
Tags{ "LightMode" = "Picking" }
|
|
|
|
BlendOp Add
|
|
Blend One Zero
|
|
ZWrite On
|
|
Cull Off
|
|
|
|
CGPROGRAM
|
|
#pragma target 2.5
|
|
|
|
#pragma multi_compile_instancing
|
|
//#pragma instancing_options procedural:vertInstancingSetup
|
|
|
|
#pragma vertex vertEditorPass
|
|
#pragma fragment fragScenePickingPass
|
|
|
|
#include "UnityStandardParticleEditor.cginc"
|
|
ENDCG
|
|
}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// FORWARD BASE
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
Pass
|
|
{
|
|
Stencil
|
|
{
|
|
Ref [_StencilRef]
|
|
ReadMask [_StencilReadMask]
|
|
WriteMask [_StencilWriteMask]
|
|
Comp [_StencilComp]
|
|
Pass [_StencilPass]
|
|
Fail [_StencilFail]
|
|
ZFail [_StencilZFail]
|
|
}
|
|
|
|
Tags { "LightMode" = "ForwardBase" }
|
|
Name "ForwardBase"
|
|
Cull [_RenderFace]
|
|
Blend [_BlendSrc] [_BlendDst]
|
|
ZWrite [_ZWrite]
|
|
ZTest [_ZTest]
|
|
ColorMask RGB
|
|
|
|
HLSLPROGRAM
|
|
#pragma target 2.5
|
|
#pragma shader_feature_local __ _MK_SOFT_FADE
|
|
#pragma shader_feature_local __ _MK_CAMERA_FADE
|
|
#pragma shader_feature_local __ _MK_COLOR_BLEND_ADDITIVE _MK_COLOR_BLEND_SUBTRACTIVE _MK_COLOR_BLEND_OVERLAY _MK_COLOR_BLEND_COLOR _MK_COLOR_BLEND_DIFFERENCE
|
|
#pragma shader_feature_local __ _MK_SURFACE_TYPE_TRANSPARENT
|
|
#pragma shader_feature_local __ _MK_ALPHA_CLIPPING
|
|
#pragma shader_feature_local __ _MK_VERTEX_ANIMATION_STUTTER
|
|
#pragma shader_feature_local __ _MK_VERTEX_ANIMATION_SINE _MK_VERTEX_ANIMATION_PULSE _MK_VERTEX_ANIMATION_NOISE
|
|
#pragma shader_feature_local __ _MK_DISSOLVE_DEFAULT _MK_DISSOLVE_BORDER_COLOR _MK_DISSOLVE_BORDER_RAMP
|
|
#pragma shader_feature_local __ _MK_ALBEDO_MAP
|
|
#pragma shader_feature_local __ _MK_BLEND_PREMULTIPLY _MK_BLEND_ADDITIVE _MK_BLEND_MULTIPLY
|
|
#pragma shader_feature_local __ _MK_COLOR_GRADING_ALBEDO _MK_COLOR_GRADING_FINAL_OUTPUT
|
|
|
|
#pragma fragmentoption ARB_precision_hint_fastest
|
|
#pragma vertex ForwardVert
|
|
#pragma fragment ForwardFrag
|
|
|
|
#pragma exclude_renderers d3d11_9x
|
|
#pragma multi_compile_fog
|
|
|
|
#pragma multi_compile_instancing
|
|
//#pragma instancing_options procedural:vertInstancingSetup
|
|
|
|
#define MK_LEGACY_RP
|
|
#define MK_PARTICLES
|
|
#define MK_UNLIT
|
|
|
|
#include "../../Lib/Forward/BaseSetup.hlsl"
|
|
|
|
ENDHLSL
|
|
}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// FORWARD ADD
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// DEFERRED
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// SHADOWCASTER
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
//Casting Shadows from Particles is not supported
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
// META
|
|
/////////////////////////////////////////////////////////////////////////////////////////////
|
|
//Not supported on particles
|
|
}
|
|
|
|
FallBack Off
|
|
CustomEditor "MK.Toon.Editor.Legacy.ParticlesUnlitEditor"
|
|
}
|