128 lines
7.4 KiB
Plaintext
128 lines
7.4 KiB
Plaintext
// Shader created with Shader Forge v1.40
|
|
// Shader Forge (c) Freya Holmer - http://www.acegikmo.com/shaderforge/
|
|
// Note: Manually altering this data may prevent you from opening it in Shader Forge
|
|
/*SF_DATA;ver:1.40;sub:START;pass:START;ps:flbk:,iptp:0,cusa:False,bamd:0,cgin:,cpap:True,lico:1,lgpr:1,limd:0,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:0,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:9361,x:32843,y:32323,varname:node_9361,prsc:2|emission-9625-OUT;n:type:ShaderForge.SFN_Tex2d,id:8124,x:32236,y:32494,ptovrint:False,ptlb:Texture,ptin:_Texture,varname:node_8124,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False|UVIN-7639-OUT;n:type:ShaderForge.SFN_Color,id:1802,x:32206,y:32284,ptovrint:False,ptlb:Color,ptin:_Color,varname:node_1802,prsc:2,glob:False,taghide:False,taghdr:True,tagprd:False,tagnsco:False,tagnrm:False,c1:0.5,c2:0.5,c3:0.5,c4:1;n:type:ShaderForge.SFN_VertexColor,id:7019,x:32247,y:32719,varname:node_7019,prsc:2;n:type:ShaderForge.SFN_Multiply,id:9625,x:32621,y:32406,varname:node_9625,prsc:2|A-1802-RGB,B-8124-RGB,C-2966-RGB,D-7019-RGB;n:type:ShaderForge.SFN_Tex2d,id:2966,x:32337,y:32088,ptovrint:False,ptlb:Mask,ptin:_Mask,varname:node_2966,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,ntxv:0,isnm:False;n:type:ShaderForge.SFN_TexCoord,id:8937,x:31722,y:32477,varname:node_8937,prsc:2,uv:0,uaff:False;n:type:ShaderForge.SFN_Time,id:1390,x:31235,y:32330,varname:node_1390,prsc:2;n:type:ShaderForge.SFN_ValueProperty,id:5695,x:31252,y:32147,ptovrint:False,ptlb:U_Move,ptin:_U_Move,varname:node_5695,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:0;n:type:ShaderForge.SFN_ValueProperty,id:3792,x:31187,y:32598,ptovrint:False,ptlb:V_Move,ptin:_V_Move,varname:node_3792,prsc:2,glob:False,taghide:False,taghdr:False,tagprd:False,tagnsco:False,tagnrm:False,v1:0;n:type:ShaderForge.SFN_Multiply,id:8010,x:31502,y:32113,varname:node_8010,prsc:2|A-5695-OUT,B-1390-T;n:type:ShaderForge.SFN_Multiply,id:7219,x:31520,y:32443,varname:node_7219,prsc:2|A-1390-T,B-3792-OUT;n:type:ShaderForge.SFN_Append,id:4374,x:31728,y:32165,varname:node_4374,prsc:2|A-8010-OUT,B-7219-OUT;n:type:ShaderForge.SFN_Add,id:7639,x:31950,y:32375,varname:node_7639,prsc:2|A-4374-OUT,B-8937-UVOUT;proporder:8124-1802-2966-5695-3792;pass:END;sub:END;*/
|
|
|
|
Shader "magesbox/UV_Move_Add" {
|
|
Properties {
|
|
_Texture ("Texture", 2D) = "white" {}
|
|
[HDR]_Color ("Color", Color) = (0.5,0.5,0.5,1)
|
|
_Mask ("Mask", 2D) = "white" {}
|
|
_U_Move ("U_Move", Float ) = 0
|
|
_V_Move ("V_Move", Float ) = 0
|
|
}
|
|
SubShader {
|
|
Tags {
|
|
"IgnoreProjector"="True"
|
|
"Queue"="Transparent"
|
|
"RenderType"="Transparent"
|
|
}
|
|
Pass {
|
|
Name "FORWARD"
|
|
Tags {
|
|
"LightMode"="ForwardBase"
|
|
}
|
|
Blend One One
|
|
Cull Off
|
|
ZWrite Off
|
|
|
|
CGPROGRAM
|
|
#pragma vertex vert
|
|
#pragma fragment frag
|
|
#pragma multi_compile_instancing
|
|
#include "UnityCG.cginc"
|
|
#pragma multi_compile_fwdbase
|
|
#pragma multi_compile_fog
|
|
#pragma target 3.0
|
|
uniform sampler2D _Texture; uniform float4 _Texture_ST;
|
|
uniform sampler2D _Mask; uniform float4 _Mask_ST;
|
|
UNITY_INSTANCING_BUFFER_START( Props )
|
|
UNITY_DEFINE_INSTANCED_PROP( float4, _Color)
|
|
UNITY_DEFINE_INSTANCED_PROP( float, _U_Move)
|
|
UNITY_DEFINE_INSTANCED_PROP( float, _V_Move)
|
|
UNITY_INSTANCING_BUFFER_END( Props )
|
|
struct VertexInput {
|
|
UNITY_VERTEX_INPUT_INSTANCE_ID
|
|
float4 vertex : POSITION;
|
|
float2 texcoord0 : TEXCOORD0;
|
|
float4 vertexColor : COLOR;
|
|
};
|
|
struct VertexOutput {
|
|
float4 pos : SV_POSITION;
|
|
UNITY_VERTEX_INPUT_INSTANCE_ID
|
|
float2 uv0 : TEXCOORD0;
|
|
float4 vertexColor : COLOR;
|
|
UNITY_FOG_COORDS(1)
|
|
};
|
|
VertexOutput vert (VertexInput v) {
|
|
VertexOutput o = (VertexOutput)0;
|
|
UNITY_SETUP_INSTANCE_ID( v );
|
|
UNITY_TRANSFER_INSTANCE_ID( v, o );
|
|
o.uv0 = v.texcoord0;
|
|
o.vertexColor = v.vertexColor;
|
|
o.pos = UnityObjectToClipPos( v.vertex );
|
|
UNITY_TRANSFER_FOG(o,o.pos);
|
|
return o;
|
|
}
|
|
float4 frag(VertexOutput i, float facing : VFACE) : COLOR {
|
|
UNITY_SETUP_INSTANCE_ID( i );
|
|
float isFrontFace = ( facing >= 0 ? 1 : 0 );
|
|
float faceSign = ( facing >= 0 ? 1 : -1 );
|
|
////// Lighting:
|
|
////// Emissive:
|
|
float4 _Color_var = UNITY_ACCESS_INSTANCED_PROP( Props, _Color );
|
|
float _U_Move_var = UNITY_ACCESS_INSTANCED_PROP( Props, _U_Move );
|
|
float4 node_1390 = _Time;
|
|
float _V_Move_var = UNITY_ACCESS_INSTANCED_PROP( Props, _V_Move );
|
|
float2 node_7639 = (float2((_U_Move_var*node_1390.g),(node_1390.g*_V_Move_var))+i.uv0);
|
|
float4 _Texture_var = tex2D(_Texture,TRANSFORM_TEX(node_7639, _Texture));
|
|
float4 _Mask_var = tex2D(_Mask,TRANSFORM_TEX(i.uv0, _Mask));
|
|
float3 emissive = (_Color_var.rgb*_Texture_var.rgb*_Mask_var.rgb*i.vertexColor.rgb);
|
|
float3 finalColor = emissive;
|
|
fixed4 finalRGBA = fixed4(finalColor,1);
|
|
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 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"
|
|
}
|