miduo_client/Assets/ManagedResources/EffectResUI/Practice/Materials/Shader/fresnel.shader

164 lines
15 KiB
Plaintext

// Shader created with Shader Forge v1.38
// Shader Forge (c) Neat Corporation / Joachim Holmer - http://www.acegikmo.com/shaderforge/
// Note: Manually altering this data may prevent you from opening it in Shader Forge
/*SF_DATA;ver:1.38;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,lico:1,lgpr:1,limd:1,spmd:1,trmd:0,grmd:0,uamb:True,mssp:True,bkdf:False,hqlp:False,rprd:False,enco:False,rmgx:True,imps:True,rpth:0,vtps:0,hqsc:True,nrmq:1,nrsp:0,vomd:0,spxs:False,tesm:0,olmd:1,culm:2,bsrc:3,bdst:0,dpts:2,wrdp:False,dith:0,atcv:False,rfrpo:True,rfrpn:Refraction,coma:15,ufog:True,aust:True,igpj:True,qofs:0,qpre:3,rntp:2,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.01,fgrn:0,fgrf:300,stcl:False,atwp:False,stva:128,stmr:255,stmw:255,stcp:6,stps:0,stfa:0,stfz:0,ofsf:0,ofsu:0,f2p0:False,fnsp:False,fnfb:False,fsmp:False;n:type:ShaderForge.SFN_Final,id:4013,x:33673,y:32695,varname:node_4013,prsc:2|emission-6590-OUT,alpha-1350-A;n:type:ShaderForge.SFN_Color,id:1304,x:32890,y:32670,ptovrint:False,ptlb:fresnelyanse,ptin:_fresnelyanse,varname:node_1304,prsc:2,glob:False,taghide:False,taghdr:True,tagprd:False,tagnsco:False,tagnrm:False,c1:0.09803921,c2:0.3267796,c3:1,c4:1;n:type:ShaderForge.SFN_Fresnel,id:1951,x:32680,y:32661,varname:node_1951,prsc:2|EXP-3546-OUT;n:type:ShaderForge.SFN_Multiply,id:4458,x:33110,y:32816,varname:node_4458,prsc:2|A-1304-RGB,B-5169-OUT;n:type:ShaderForge.SFN_ValueProperty,id:3546,x:32457,y:32681,ptovrint:False,ptlb:fresneldaxiao,ptin:_fresneldaxiao,varname:node_3546,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:0.5;n:type:ShaderForge.SFN_Multiply,id:5169,x:32890,y:32831,varname:node_5169,prsc:2|A-1951-OUT,B-7567-OUT;n:type:ShaderForge.SFN_ValueProperty,id:7567,x:32669,y:32865,ptovrint:False,ptlb:fresnelqiangdu,ptin:_fresnelqiangdu,varname:node_7567,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:2;n:type:ShaderForge.SFN_Tex2d,id:4941,x:32669,y:32966,ptovrint:False,ptlb:liudongwenli01,ptin:_liudongwenli01,varname:node_4941,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False|UVIN-5492-OUT;n:type:ShaderForge.SFN_Tex2d,id:5735,x:32669,y:33148,ptovrint:False,ptlb:liudongwenli02,ptin:_liudongwenli02,varname:node_5735,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False|UVIN-3576-OUT;n:type:ShaderForge.SFN_TexCoord,id:6131,x:32204,y:33030,varname:node_6131,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Panner,id:7689,x:32447,y:32966,varname:node_7689,prsc:2,spu:0.3,spv:0.6|UVIN-6131-UVOUT;n:type:ShaderForge.SFN_Panner,id:4125,x:32447,y:33109,varname:node_4125,prsc:2,spu:-0.2,spv:0.6|UVIN-6131-UVOUT;n:type:ShaderForge.SFN_Multiply,id:2964,x:32874,y:33078,varname:node_2964,prsc:2|A-4941-R,B-5735-R;n:type:ShaderForge.SFN_Multiply,id:6590,x:33373,y:32805,varname:node_6590,prsc:2|A-1666-OUT,B-4458-OUT,C-4436-OUT;n:type:ShaderForge.SFN_ValueProperty,id:1666,x:33110,y:32670,ptovrint:False,ptlb:zhengtiqiangdu,ptin:_zhengtiqiangdu,varname:node_1666,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:1;n:type:ShaderForge.SFN_ValueProperty,id:8001,x:32904,y:33266,ptovrint:False,ptlb:liudongqiangdu,ptin:_liudongqiangdu,varname:node_8001,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:3;n:type:ShaderForge.SFN_Multiply,id:4436,x:33181,y:33084,varname:node_4436,prsc:2|A-2964-OUT,B-8001-OUT;n:type:ShaderForge.SFN_VertexColor,id:1350,x:33148,y:33220,varname:node_1350,prsc:2;n:type:ShaderForge.SFN_ValueProperty,id:5621,x:32079,y:32217,ptovrint:False,ptlb:U_Speed_01,ptin:_U_Speed_01,varname:_U_Speed,prsc:0,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:0.1;n:type:ShaderForge.SFN_ValueProperty,id:2083,x:32079,y:32528,ptovrint:False,ptlb:V_Speed_01,ptin:_V_Speed_01,varname:_V_Speed,prsc:0,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:0.1;n:type:ShaderForge.SFN_Time,id:1435,x:32079,y:32337,varname:node_1435,prsc:2;n:type:ShaderForge.SFN_Append,id:7995,x:32613,y:32393,varname:node_7995,prsc:1|A-9717-OUT,B-6435-OUT;n:type:ShaderForge.SFN_Multiply,id:4336,x:32262,y:32217,varname:node_4336,prsc:2|A-5621-OUT,B-1435-T;n:type:ShaderForge.SFN_Multiply,id:1421,x:32262,y:32509,varname:node_1421,prsc:2|A-1435-T,B-2083-OUT;n:type:ShaderForge.SFN_TexCoord,id:961,x:31717,y:32645,varname:node_961,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Add,id:6435,x:32429,y:32437,varname:node_6435,prsc:2|A-8727-G,B-1421-OUT;n:type:ShaderForge.SFN_Add,id:9717,x:32429,y:32281,varname:node_9717,prsc:2|A-4336-OUT,B-8727-R;n:type:ShaderForge.SFN_Rotator,id:5151,x:31895,y:32645,varname:node_5151,prsc:0|UVIN-961-UVOUT,ANG-4392-OUT;n:type:ShaderForge.SFN_Multiply,id:4392,x:31717,y:32809,varname:node_4392,prsc:2|A-2148-OUT,B-4970-OUT;n:type:ShaderForge.SFN_Pi,id:4970,x:31584,y:32856,varname:node_4970,prsc:2;n:type:ShaderForge.SFN_ValueProperty,id:2148,x:31551,y:32749,ptovrint:False,ptlb:Rotator_01,ptin:_Rotator_01,varname:_Rotator,prsc:0,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:0;n:type:ShaderForge.SFN_ComponentMask,id:8727,x:32079,y:32645,varname:node_8727,prsc:2,cc1:0,cc2:1,cc3:-1,cc4:-1|IN-5151-UVOUT;n:type:ShaderForge.SFN_TexCoord,id:1469,x:32429,y:32107,varname:node_1469,prsc:2,uv:1,uaff:True;n:type:ShaderForge.SFN_Append,id:1664,x:32613,y:32236,varname:node_1664,prsc:2|A-1469-Z,B-1469-W;n:type:ShaderForge.SFN_Add,id:5492,x:32795,y:32293,varname:node_5492,prsc:2|A-1664-OUT,B-7995-OUT;n:type:ShaderForge.SFN_ValueProperty,id:4084,x:31711,y:33584,ptovrint:False,ptlb:U_Speed_02,ptin:_U_Speed_02,varname:_U_Speed_copy,prsc:0,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:0.1;n:type:ShaderForge.SFN_ValueProperty,id:2045,x:31711,y:33895,ptovrint:False,ptlb:V_Speed_02,ptin:_V_Speed_02,varname:_V_Speed_copy,prsc:0,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:0.1;n:type:ShaderForge.SFN_Time,id:1492,x:31711,y:33704,varname:node_1492,prsc:2;n:type:ShaderForge.SFN_Append,id:6838,x:32245,y:33760,varname:node_6838,prsc:1|A-2456-OUT,B-5099-OUT;n:type:ShaderForge.SFN_Multiply,id:1474,x:31894,y:33584,varname:node_1474,prsc:2|A-4084-OUT,B-1492-T;n:type:ShaderForge.SFN_Multiply,id:7070,x:31894,y:33876,varname:node_7070,prsc:2|A-1492-T,B-2045-OUT;n:type:ShaderForge.SFN_TexCoord,id:1615,x:31349,y:34012,varname:node_1615,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Add,id:5099,x:32061,y:33804,varname:node_5099,prsc:2|A-3380-G,B-7070-OUT;n:type:ShaderForge.SFN_Add,id:2456,x:32061,y:33648,varname:node_2456,prsc:2|A-1474-OUT,B-3380-R;n:type:ShaderForge.SFN_Rotator,id:1398,x:31527,y:34012,varname:node_1398,prsc:0|UVIN-1615-UVOUT,ANG-1314-OUT;n:type:ShaderForge.SFN_Multiply,id:1314,x:31349,y:34176,varname:node_1314,prsc:2|A-2628-OUT,B-1054-OUT;n:type:ShaderForge.SFN_Pi,id:1054,x:31216,y:34223,varname:node_1054,prsc:2;n:type:ShaderForge.SFN_ValueProperty,id:2628,x:31183,y:34116,ptovrint:False,ptlb:Rotator_02,ptin:_Rotator_02,varname:_Rotator_copy,prsc:0,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:0;n:type:ShaderForge.SFN_ComponentMask,id:3380,x:31711,y:34012,varname:node_3380,prsc:2,cc1:0,cc2:1,cc3:-1,cc4:-1|IN-1398-UVOUT;n:type:ShaderForge.SFN_TexCoord,id:6102,x:32061,y:33474,varname:node_6102,prsc:2,uv:1,uaff:True;n:type:ShaderForge.SFN_Append,id:298,x:32245,y:33603,varname:node_298,prsc:2|A-6102-Z,B-6102-W;n:type:ShaderForge.SFN_Add,id:3576,x:32427,y:33660,varname:node_3576,prsc:2|A-298-OUT,B-6838-OUT;proporder:1304-3546-7567-4941-5735-1666-8001-5621-2083-4084-2045-2148-2628;pass:END;sub:END;*/
Shader "Shader Forge/fresnel_flow" {
Properties {
[HDR]_fresnelyanse ("fresnelyanse", Color) = (0.09803921,0.3267796,1,1)
_fresneldaxiao ("fresneldaxiao", Float ) = 0.5
_fresnelqiangdu ("fresnelqiangdu", Float ) = 2
_liudongwenli01 ("liudongwenli01", 2D) = "white" {}
_liudongwenli02 ("liudongwenli02", 2D) = "white" {}
_zhengtiqiangdu ("zhengtiqiangdu", Float ) = 1
_liudongqiangdu ("liudongqiangdu", Float ) = 3
_U_Speed_01 ("U_Speed_01", Float ) = 0.1
_V_Speed_01 ("V_Speed_01", Float ) = 0.1
_U_Speed_02 ("U_Speed_02", Float ) = 0.1
_V_Speed_02 ("V_Speed_02", Float ) = 0.1
_Rotator_01 ("Rotator_01", Float ) = 0
_Rotator_02 ("Rotator_02", Float ) = 0
[HideInInspector]_Cutoff ("Alpha cutoff", Range(0,1)) = 0.5
}
SubShader {
Tags {
"IgnoreProjector"="True"
"Queue"="Transparent"
"RenderType"="Transparent"
}
Pass {
Name "FORWARD"
Tags {
"LightMode"="ForwardBase"
}
Blend SrcAlpha One
Cull Off
ZWrite Off
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
#pragma multi_compile_fwdbase
#pragma multi_compile_fog
#pragma only_renderers d3d9 d3d11 glcore gles gles3 metal vulkan
#pragma target 3.0
uniform float4 _fresnelyanse;
uniform float _fresneldaxiao;
uniform float _fresnelqiangdu;
uniform sampler2D _liudongwenli01; uniform float4 _liudongwenli01_ST;
uniform sampler2D _liudongwenli02; uniform float4 _liudongwenli02_ST;
uniform float _zhengtiqiangdu;
uniform float _liudongqiangdu;
uniform fixed _U_Speed_01;
uniform fixed _V_Speed_01;
uniform fixed _Rotator_01;
uniform fixed _U_Speed_02;
uniform fixed _V_Speed_02;
uniform fixed _Rotator_02;
struct VertexInput {
float4 vertex : POSITION;
float3 normal : NORMAL;
float2 texcoord0 : TEXCOORD0;
float4 texcoord1 : TEXCOORD1;
float4 vertexColor : COLOR;
};
struct VertexOutput {
float4 pos : SV_POSITION;
float2 uv0 : TEXCOORD0;
float4 uv1 : TEXCOORD1;
float4 posWorld : TEXCOORD2;
float3 normalDir : TEXCOORD3;
float4 vertexColor : COLOR;
UNITY_FOG_COORDS(4)
};
VertexOutput vert (VertexInput v) {
VertexOutput o = (VertexOutput)0;
o.uv0 = v.texcoord0;
o.uv1 = v.texcoord1;
o.vertexColor = v.vertexColor;
o.normalDir = UnityObjectToWorldNormal(v.normal);
o.posWorld = mul(unity_ObjectToWorld, v.vertex);
o.pos = UnityObjectToClipPos( v.vertex );
UNITY_TRANSFER_FOG(o,o.pos);
return o;
}
float4 frag(VertexOutput i, float facing : VFACE) : COLOR {
float isFrontFace = ( facing >= 0 ? 1 : 0 );
float faceSign = ( facing >= 0 ? 1 : -1 );
i.normalDir = normalize(i.normalDir);
i.normalDir *= faceSign;
float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz);
float3 normalDirection = i.normalDir;
////// Lighting:
////// Emissive:
float4 node_1435 = _Time;
float node_5151_ang = (_Rotator_01*3.141592654);
float node_5151_spd = 1.0;
float node_5151_cos = cos(node_5151_spd*node_5151_ang);
float node_5151_sin = sin(node_5151_spd*node_5151_ang);
float2 node_5151_piv = float2(0.5,0.5);
fixed2 node_5151 = (mul(i.uv0-node_5151_piv,float2x2( node_5151_cos, -node_5151_sin, node_5151_sin, node_5151_cos))+node_5151_piv);
float2 node_8727 = node_5151.rg;
float2 node_5492 = (float2(i.uv1.b,i.uv1.a)+float2(((_U_Speed_01*node_1435.g)+node_8727.r),(node_8727.g+(node_1435.g*_V_Speed_01))));
float4 _liudongwenli01_var = tex2D(_liudongwenli01,TRANSFORM_TEX(node_5492, _liudongwenli01));
float4 node_1492 = _Time;
float node_1398_ang = (_Rotator_02*3.141592654);
float node_1398_spd = 1.0;
float node_1398_cos = cos(node_1398_spd*node_1398_ang);
float node_1398_sin = sin(node_1398_spd*node_1398_ang);
float2 node_1398_piv = float2(0.5,0.5);
fixed2 node_1398 = (mul(i.uv0-node_1398_piv,float2x2( node_1398_cos, -node_1398_sin, node_1398_sin, node_1398_cos))+node_1398_piv);
float2 node_3380 = node_1398.rg;
float2 node_3576 = (float2(i.uv1.b,i.uv1.a)+float2(((_U_Speed_02*node_1492.g)+node_3380.r),(node_3380.g+(node_1492.g*_V_Speed_02))));
float4 _liudongwenli02_var = tex2D(_liudongwenli02,TRANSFORM_TEX(node_3576, _liudongwenli02));
float3 emissive = (_zhengtiqiangdu*(_fresnelyanse.rgb*(pow(1.0-max(0,dot(normalDirection, viewDirection)),_fresneldaxiao)*_fresnelqiangdu))*((_liudongwenli01_var.r*_liudongwenli02_var.r)*_liudongqiangdu));
float3 finalColor = emissive;
fixed4 finalRGBA = fixed4(finalColor,i.vertexColor.a);
UNITY_APPLY_FOG(i.fogCoord, finalRGBA);
return finalRGBA;
}
ENDCG
}
Pass {
Name "ShadowCaster"
Tags {
"LightMode"="ShadowCaster"
}
Offset 1, 1
Cull Off
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
#include "Lighting.cginc"
#pragma fragmentoption ARB_precision_hint_fastest
#pragma multi_compile_shadowcaster
#pragma multi_compile_fog
#pragma only_renderers d3d9 d3d11 glcore gles gles3 metal vulkan
#pragma target 3.0
struct VertexInput {
float4 vertex : POSITION;
};
struct VertexOutput {
V2F_SHADOW_CASTER;
};
VertexOutput vert (VertexInput v) {
VertexOutput o = (VertexOutput)0;
o.pos = UnityObjectToClipPos( v.vertex );
TRANSFER_SHADOW_CASTER(o)
return o;
}
float4 frag(VertexOutput i, float facing : VFACE) : COLOR {
float isFrontFace = ( facing >= 0 ? 1 : 0 );
float faceSign = ( facing >= 0 ? 1 : -1 );
SHADOW_CASTER_FRAGMENT(i)
}
ENDCG
}
}
FallBack "Diffuse"
CustomEditor "ShaderForgeMaterialInspector"
}