sk-client/Assets/Art/EffectsOld/x1_shaders/YXZ_MixMasking3tex2_alphabl...

110 lines
2.7 KiB
Plaintext

// Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)'
Shader "YXZ/Effect/Mix Masking(1tex-Moving-noAlpha 2tex-Moving-Alpha 3mask-noMoving)_alphablend" {
Properties {
_MainTex ("MainTex", 2D) = "white" {}
_MainTex2 ("MainTex2", 2D) = "white" {}
_NoiseTex ("NoiseTex", 2D) = "white" {}
_TintColor ("TintColor", Color) = (1,1,1,1)
_TintColor2 ("TintColor", Color) = (1,1,1,1)
_Exposure ("Exposure", Range(1,10)) = 1
_Speed ("Speed xy:MainTex zw:MainTex2", Vector) = (10,0,10,0)
// _SpeedY ("SpeedY", Float) = 0
// _SpeedX2 ("SpeedX2", Float) = 10.0
// _SpeedY2 ("SpeedY2", Float) = 0
[KeywordEnum(OFF,ON)]_CA_SoftParticles("No soft particles", Float) = 0
_InvFade ("Soft Particles Factor", Range(0.01,5.0)) = 5.0
}
CGINCLUDE
#include "UnityCG.cginc"
UNITY_DECLARE_DEPTH_TEXTURE(_CameraDepthTexture);
float _InvFade;
#include "ca_softparticles.cginc"
sampler2D _MainTex;
sampler2D _MainTex2;
sampler2D _NoiseTex;
half4 _MainTex_ST;
half4 _MainTex2_ST;
half4 _NoiseTex_ST;
float _Exposure;
fixed4 _TintColor;
fixed4 _TintColor2;
fixed4 _Speed;
// float _SpeedY;
// float _SpeedX2;
// float _SpeedY2;
struct v2f {
half4 pos : SV_POSITION;
half4 uv : TEXCOORD0;
half2 uv1 :TEXCOORD1;
fixed4 color : COLOR;
CA_SOFTPARTICLES_COORDS(2)
};
v2f vert(appdata_full v)
{
v2f o;
o.pos = UnityObjectToClipPos (v.vertex);
o.uv.xy = TRANSFORM_TEX(v.texcoord, _MainTex);
o.uv.zw = TRANSFORM_TEX(v.texcoord, _MainTex2);
o.uv1 = TRANSFORM_TEX(v.texcoord, _NoiseTex);
o.color = v.color;
CA_TRANSFER_SOFTPARTICLES(o, o.pos);
return o;
}
fixed4 frag( v2f i ) : COLOR
{
float4 sp = _Time;
float2 delta;
delta.x = sp.x * _Speed.x;
delta.y = sp.x * _Speed.y;
float2 delta2;
delta2.x = sp.x * _Speed.z;
delta2.y = sp.x * _Speed.w;
fixed4 col = tex2D (_MainTex, i.uv.xy + delta) * _TintColor;
// col.a = 1;
fixed4 col1 = tex2D (_MainTex2, i.uv.zw + delta2)* _TintColor2;
fixed4 Noise = tex2D (_NoiseTex, i.uv1);
CA_SOFTPARTICLES_FADE(i, Noise.a);
return (col + col1) * Noise * _Exposure * i.color;
}
ENDCG
SubShader {
Tags { "RenderType" = "Opaque" "IgnoreProjector"="True" "Reflection" = "LaserScope" "Queue" = "Transparent+110"}
Cull Off
ZWrite Off
Blend SrcAlpha OneMinusSrcAlpha
ColorMask RGB
Fog { Color (0,0,0,0) }
Pass {
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#pragma fragmentoption ARB_precision_hint_fastest
#pragma multi_compile _CA_SOFTPARTICLES_OFF _CA_SOFTPARTICLES_ON
ENDCG
}
}
FallBack Off
}