files
This commit is contained in:
@@ -0,0 +1,174 @@
|
||||
uniform sampler2D _MainTex;
|
||||
uniform half4 _MainTex_ST;
|
||||
uniform fixed4 _Color;
|
||||
|
||||
uniform half _Glossiness;
|
||||
uniform half _GlossinessTop;
|
||||
uniform half _GlossinessBottom;
|
||||
|
||||
uniform float _Top;
|
||||
uniform float _Bottom;
|
||||
|
||||
uniform float _PowerTop;
|
||||
uniform fixed4 _ColorTop;
|
||||
uniform sampler2D _MainTexTop;
|
||||
uniform fixed4 _MainTexTop_ST;
|
||||
uniform half _ShininessTop;
|
||||
uniform sampler2D _BumpMapTop;
|
||||
uniform half _BumpScaleTop;
|
||||
|
||||
uniform float _PowerBottom;
|
||||
uniform fixed4 _ColorBottom;
|
||||
uniform sampler2D _MainTexBottom;
|
||||
uniform fixed4 _MainTexBottom_ST;
|
||||
uniform half _ShininessBottom;
|
||||
uniform sampler2D _BumpMapBottom;
|
||||
uniform half _BumpScaleBottom;
|
||||
|
||||
struct Input {
|
||||
float4 vertex;
|
||||
half3 objNormal;
|
||||
DC_UVFREE_WORLD_POS
|
||||
DC_UVFREE_VCOLOR
|
||||
INTERNAL_DATA
|
||||
};
|
||||
|
||||
void vert (inout appdata_full v, out Input o) {
|
||||
UNITY_INITIALIZE_OUTPUT(Input,o);
|
||||
DC_UVFREE_TRANSFER(o,_MainTex)
|
||||
}
|
||||
|
||||
void surf (Input i, inout UV_FREE_STANDARD_OUTPUT o) {
|
||||
|
||||
DC_UVFREE_SETUP(i.objNormal)
|
||||
|
||||
fixed4 c = _Color;
|
||||
DC_UVFREE_UV_APPLY(i,_MainTex)
|
||||
DC_UVFREE_APPLY_MAIN_TEX(c)
|
||||
c*=_Color;
|
||||
|
||||
fixed3 n = fixed3(0.5,0.5,1);
|
||||
DC_UVFREE_SCALE_NORMAL_APPLY(n,_BumpMap,_MainTex,_BumpScale);
|
||||
|
||||
DC_UVFREE_MS
|
||||
DC_UVFREE_OCC
|
||||
|
||||
// X
|
||||
// #if _UVFREE_UP_LEFT || _UVFREE_DOWN_RIGHT
|
||||
if(uv_normal.x>0){
|
||||
// #if _UVFREE_UP_LEFT
|
||||
if(_Top==3){
|
||||
fixed4 top_c = fixed4(1,1,1,1);half ratio;
|
||||
DC_UVFREE_UV_APPLY(i,_MainTexTop);
|
||||
DC_UVFREE_TEX_APPLY_LOD(top_c,_MainTexTop,_MainTexTop);
|
||||
DC_UVFREE_LERP_RATIO_X(c,(top_c*_ColorTop),_PowerTop,ratio);
|
||||
|
||||
fixed3 top_n = fixed3(1,1,1);
|
||||
DC_UVFREE_SCALE_NORMAL_APPLY(top_n,_BumpMapTop,_MainTexTop,_BumpScaleTop);
|
||||
DC_UVFREE_LERP(n,top_n,ratio);
|
||||
|
||||
DC_UVFREE_MS_UP
|
||||
DC_UVFREE_OCC_UP
|
||||
}
|
||||
// #endif
|
||||
} else {
|
||||
// #if _UVFREE_DOWN_RIGHT
|
||||
if(_Bottom==3){
|
||||
fixed4 bottom_c = fixed4(1,1,1,1);half ratio;
|
||||
DC_UVFREE_UV_APPLY(i,_MainTexBottom);
|
||||
DC_UVFREE_TEX_APPLY_LOD(bottom_c,_MainTexBottom,_MainTexBottom);
|
||||
DC_UVFREE_LERP_RATIO_X(c,(bottom_c*_ColorBottom),_PowerBottom,ratio);
|
||||
|
||||
fixed3 bottom_n = fixed3(1,1,1);
|
||||
DC_UVFREE_SCALE_NORMAL_APPLY(bottom_n,_BumpMapBottom,_MainTexBottom,_BumpScaleBottom);
|
||||
DC_UVFREE_LERP(n,bottom_n,ratio);
|
||||
|
||||
DC_UVFREE_MS_DOWN
|
||||
DC_UVFREE_OCC_DOWN
|
||||
}
|
||||
// #endif
|
||||
}
|
||||
// #endif
|
||||
// Z
|
||||
// #if _UVFREE_UP_FRONT || _UVFREE_DOWN_BACK
|
||||
if(uv_normal.z>0){
|
||||
// #if _UVFREE_UP_FRONT
|
||||
if(_Top==2){
|
||||
fixed4 top_c = fixed4(1,1,1,1);half ratio;
|
||||
DC_UVFREE_UV_APPLY(i,_MainTexTop);
|
||||
DC_UVFREE_TEX_APPLY_LOD(top_c,_MainTexTop,_MainTexTop);
|
||||
DC_UVFREE_LERP_RATIO_Z(c,(top_c*_ColorTop),_PowerTop,ratio);
|
||||
|
||||
fixed3 top_n = fixed3(1,1,1);
|
||||
DC_UVFREE_SCALE_NORMAL_APPLY(top_n,_BumpMapTop,_MainTexTop,_BumpScaleTop);
|
||||
DC_UVFREE_LERP(n,top_n,ratio);
|
||||
|
||||
DC_UVFREE_MS_UP
|
||||
DC_UVFREE_OCC_UP
|
||||
}
|
||||
// #endif
|
||||
} else {
|
||||
// #if _UVFREE_DOWN_BACK
|
||||
if(_Bottom==2){
|
||||
fixed4 bottom_c = fixed4(1,1,1,1);half ratio;
|
||||
DC_UVFREE_UV_APPLY(i,_MainTexBottom);
|
||||
DC_UVFREE_TEX_APPLY_LOD(bottom_c,_MainTexBottom,_MainTexBottom);
|
||||
DC_UVFREE_LERP_RATIO_Z(c,(bottom_c*_ColorBottom),_PowerBottom,ratio);
|
||||
|
||||
fixed3 bottom_n = fixed3(1,1,1);
|
||||
DC_UVFREE_SCALE_NORMAL_APPLY(bottom_n,_BumpMapBottom,_MainTexBottom,_BumpScaleBottom);
|
||||
DC_UVFREE_LERP(n,bottom_n,ratio);
|
||||
|
||||
DC_UVFREE_MS_DOWN
|
||||
DC_UVFREE_OCC_DOWN
|
||||
}
|
||||
// #endif
|
||||
}
|
||||
// #endif
|
||||
// Y
|
||||
// #if _UVFREE_UP_TOP || _UVFREE_DOWN_BOTTOM
|
||||
if(uv_normal.y>0)
|
||||
{
|
||||
// #if _UVFREE_UP_TOP
|
||||
if(_Top==1){
|
||||
fixed4 top_c = _ColorTop;half ratio;
|
||||
DC_UVFREE_UV_APPLY(i,_MainTexTop);
|
||||
DC_UVFREE_TEX_APPLY_LOD(top_c,_MainTexTop,_MainTexTop);
|
||||
DC_UVFREE_LERP_RATIO_Y(c,(top_c*_ColorTop),_PowerTop,ratio);
|
||||
|
||||
fixed3 top_n = fixed3(1,1,1);
|
||||
DC_UVFREE_SCALE_NORMAL_APPLY(top_n,_BumpMapTop,_MainTexTop,_BumpScaleTop);
|
||||
DC_UVFREE_LERP(n,top_n,ratio);
|
||||
|
||||
DC_UVFREE_MS_UP
|
||||
DC_UVFREE_OCC_UP
|
||||
}
|
||||
// #endif
|
||||
|
||||
} else {
|
||||
|
||||
// #if _UVFREE_DOWN_BOTTOM
|
||||
if(_Bottom==1){
|
||||
fixed4 bottom_c = fixed4(1,1,1,1);half ratio;
|
||||
DC_UVFREE_UV_APPLY(i,_MainTexBottom);
|
||||
DC_UVFREE_TEX_APPLY_LOD(bottom_c,_MainTexBottom,_MainTexBottom);
|
||||
DC_UVFREE_LERP_RATIO_Y(c,(bottom_c*_ColorBottom),_PowerBottom,ratio);
|
||||
|
||||
fixed3 bottom_n = fixed3(1,1,1);
|
||||
DC_UVFREE_SCALE_NORMAL_APPLY(bottom_n,_BumpMapBottom,_MainTexBottom,_BumpScaleBottom);
|
||||
DC_UVFREE_LERP(n,bottom_n,ratio);
|
||||
|
||||
DC_UVFREE_MS_DOWN
|
||||
DC_UVFREE_OCC_DOWN
|
||||
}
|
||||
// #endif
|
||||
}
|
||||
// #endif
|
||||
|
||||
DC_UVFREE_FINAL(i,c.rgb)
|
||||
DC_UVFREE_APPLY_MS
|
||||
// DC_UVFREE_APPLY_OCC
|
||||
o.Albedo = c.rgb;
|
||||
o.Normal = n.rgb;
|
||||
o.Alpha = c.a;
|
||||
}
|
||||
Reference in New Issue
Block a user