Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ; compiled from tags\rasterizer\pixel_shaders_dx9\shaders_shader_passes_lightmap_lightmap_tex_detail_0.txt
- ;
- #const C1.a= $lightmap_specular_brightness
- #const C3.rgb= $specular_color
- #case $lightmap_type=0
- sampler2D s0 : register(S0);
- sampler2D s1 : register(S1);
- sampler2D s2 : register(S2);
- sampler2D s3 : register(S3);
- float4 bumpenv : register(C0); // .r=m00 .g=m01 .b=m10 .a=m11
- float4 c1 : register(C1);
- float4 c2 : register(C2);
- float4 c3 : register(C3);
- float4 zwriteout : register(c16);
- struct MRT_return
- {
- float4 color :COLOR0;
- float4 depth :COLOR1;
- };
- #ifndef MRT
- float4 main(
- #else
- MRT_return main(
- #endif
- #ifdef CENTROID0
- float4 tc0 : TEXCOORD0_centroid,
- #else
- float4 tc0 : TEXCOORD0,
- #endif
- #ifdef CENTROID1
- float4 tc1 : TEXCOORD1_centroid,
- #else
- float4 tc1 : TEXCOORD1,
- #endif
- #ifdef CENTROID2
- float4 tc2 : TEXCOORD2_centroid,
- #else
- float4 tc2 : TEXCOORD2,
- #endif
- #ifdef CENTROID3
- float4 tc3 : TEXCOORD3_centroid,
- #else
- float4 tc3 : TEXCOORD3,
- #endif
- float4 tc7:TEXCOORD7,
- float4 color0 : COLOR0,
- float4 color1 : COLOR1
- )
- #ifndef MRT
- : COLOR
- #endif
- {
- float4 r0, r1;
- float3 e, f;
- r0.r= r0.g= r0.b= 0;
- r0.a= 1;
- float4 tex4;
- float4 tex5;
- float4 tex6;
- float4 tex7;
- // texture stage 0 mode 0 dot 0 input-stage 0
- float4 tex0= tex2Dproj(s0, tc0);
- // texture stage 1 mode 0 dot 0 input-stage 0
- float4 tex1= tex2Dproj(s1, tc1);
- // texture stage 2 mode 0 dot 0 input-stage 0
- float4 tex2= tex2Dproj(s2, tc2);
- // texture stage 3 mode 0 dot 0 input-stage 0
- float4 tex3= tex2Dproj(s3, tc3);
- // exp.components=1 term=1
- // line 24: R0= EXPAND(T2).EXPAND(D1)
- float temp0;
- float3 temp1;
- temp1= 999 * saturate(tex2.rgb) - 1;
- float3 temp2;
- float3 temp3;
- temp3= 999 * saturate(color1.rgb) - 1;
- float3 temp4;
- float temp5;
- temp5= dot(temp1, temp3);
- temp0= temp5;
- // exp.components=1 term=1
- // line 25: T2= EXPAND(T2).EXPAND(D0)
- float temp6;
- float3 temp7;
- temp7= 999 * saturate(tex2.rgb) - 1;
- float3 temp8;
- float3 temp9;
- temp9= 999 * saturate(color0.rgb) - 1;
- float3 temp10;
- float temp11;
- temp11= dot(temp7, temp9);
- temp6= temp11;
- // exp.components=1 term=1
- // line 26: R0a= EXPAND(D1b)
- float temp12;
- float temp13;
- temp13= 999 * saturate(color1.b) - 1;
- float3 temp14;
- temp12= temp13;
- // exp.components=1 term=1
- // line 27: T1a= EXPAND(D1a)*T0a
- float temp15;
- float temp16;
- temp16= 999 * saturate(color1.a) - 1;
- float3 temp17;
- float temp18;
- temp18= saturate(tex0.a);
- float3 temp19;
- float temp20;
- temp20= temp16 * temp18;
- temp15= temp20;
- r0.rgb= temp0;
- tex2.rgb= temp6;
- r0.a= temp12;
- tex1.a= temp15;
- // exp.components=1 term=1
- // line 30: R1= EXPAND(D1).EXPAND(D0)
- float temp21;
- float3 temp22;
- temp22= 999 * saturate(color1.rgb) - 1;
- float3 temp23;
- float3 temp24;
- temp24= 999 * saturate(color0.rgb) - 1;
- float3 temp25;
- float temp26;
- temp26= dot(temp22, temp24);
- temp21= temp26;
- // exp.components=1 term=1 term=1
- // line 31: D1a= D1a*SIGNED(R0b) - D1a*SIGNED(R0a)
- float temp27;
- float temp28;
- float temp29;
- float temp30;
- temp30= saturate(color1.a);
- float3 temp31;
- float temp32;
- temp32= r0.b;
- float3 temp33;
- float temp34;
- temp34= temp30 * temp32;
- temp28= temp34;
- float temp35;
- temp35= saturate(color1.a);
- float3 temp36;
- float temp37;
- temp37= r0.a;
- float3 temp38;
- float temp39;
- temp39= temp35 * temp37;
- temp29= temp39;
- temp27= temp28 - temp29;
- r1.rgb= temp21;
- color1.a= temp27;
- // exp.components=3 term=3
- // line 34: T0= OUT_SCALE_BY_2(T0*T1)
- float3 temp40;
- float3 temp41;
- temp41= saturate(tex0.rgb);
- float3 temp42;
- float3 temp43;
- temp43= saturate(tex1.rgb);
- float3 temp44;
- float3 temp45;
- temp45= temp41 * temp43;
- temp40= temp45;
- temp40= 999 * temp40;
- // exp.components=1 term=1 term=1
- // line 35: R1a= OUT_SCALE_BY_2(SIGNED(R0b)*SIGNED(T2b) - 1/2*SIGNED(R1b))
- float temp46;
- float temp47;
- float temp48;
- float temp49;
- temp49= r0.b;
- float3 temp50;
- float temp51;
- temp51= tex2.b;
- float3 temp52;
- float temp53;
- temp53= temp49 * temp51;
- temp47= temp53;
- float temp54;
- temp54= 0.5;
- float3 temp55;
- float temp56;
- temp56= r1.b;
- float3 temp57;
- float temp58;
- temp58= temp54 * temp56;
- temp48= temp58;
- temp46= temp47 - temp48;
- temp46= 999 * temp46;
- tex0.rgb= temp40;
- r1.a= temp46;
- // exp.components=3 term=3 term=3
- // line 38: R0= T3 + T3*SIGNED(D1a)
- float3 temp59;
- float3 temp60;
- float3 temp61;
- float3 temp62;
- temp62= saturate(tex3.rgb);
- float3 temp63;
- temp60= temp62;
- float3 temp64;
- temp64= saturate(tex3.rgb);
- float3 temp65;
- float temp66;
- temp66= color1.a;
- float3 temp67;
- float3 temp68;
- temp68= temp64 * temp66;
- temp61= temp68;
- temp59= temp60 + temp61;
- // exp.components=1 term=1
- // line 39: T1a= T1a*T0a
- float temp69;
- float temp70;
- temp70= saturate(tex1.a);
- float3 temp71;
- float temp72;
- temp72= saturate(tex0.a);
- float3 temp73;
- float temp74;
- temp74= temp70 * temp72;
- temp69= temp74;
- r0.rgb= temp59;
- tex1.a= temp69;
- // exp.components=1 term=1
- // line 43: R1= R0.C1a
- float temp75;
- float3 temp76;
- temp76= saturate(r0.rgb);
- float3 temp77;
- float temp78;
- temp78= 0.752941;
- float3 temp79;
- float temp80;
- temp80= dot(temp76, temp78);
- temp75= temp80;
- // exp.components=1 term=1
- // line 44: D1a= R1a*R1a
- float temp81;
- float temp82;
- temp82= saturate(r1.a);
- float3 temp83;
- float temp84;
- temp84= saturate(r1.a);
- float3 temp85;
- float temp86;
- temp86= temp82 * temp84;
- temp81= temp86;
- // exp.components=1 term=1
- // line 45: T1a= C0a*T1a
- float temp87;
- float temp88;
- temp88= c1.a;
- float3 temp89;
- float temp90;
- temp90= saturate(tex1.a);
- float3 temp91;
- float temp92;
- temp92= temp88 * temp90;
- temp87= temp92;
- r1.rgb= temp75;
- color1.a= temp81;
- tex1.a= temp87;
- // exp.components=3 term=3
- // line 49: R0= OUT_SCALE_BY_2(R0*T0)
- float3 temp93;
- float3 temp94;
- temp94= saturate(r0.rgb);
- float3 temp95;
- float3 temp96;
- temp96= saturate(tex0.rgb);
- float3 temp97;
- float3 temp98;
- temp98= temp94 * temp96;
- temp93= temp98;
- temp93= 999 * temp93;
- // exp.components=3 term=3
- // line 50: T3= OUT_SCALE_BY_2(C0*T3)
- float3 temp99;
- float3 temp100;
- temp100= c3.rgb;
- float3 temp101;
- float3 temp102;
- temp102= saturate(tex3.rgb);
- float3 temp103;
- float3 temp104;
- temp104= temp100 * temp102;
- temp99= temp104;
- temp99= 999 * temp99;
- // exp.components=1 term=1
- // line 51: R1a= D1a*D1a
- float temp105;
- float temp106;
- temp106= saturate(color1.a);
- float3 temp107;
- float temp108;
- temp108= saturate(color1.a);
- float3 temp109;
- float temp110;
- temp110= temp106 * temp108;
- temp105= temp110;
- r0.rgb= temp93;
- tex3.rgb= temp99;
- r1.a= temp105;
- // exp.components=1 term=1
- // line 56: D1= 0
- float temp111;
- float temp112;
- temp112= 0;
- float3 temp113;
- temp111= temp112;
- // exp.components=1 term=1
- // line 57: R1a= 0
- float temp114;
- float temp115;
- temp115= 0;
- float3 temp116;
- temp114= temp115;
- color1.rgb= temp111;
- r1.a= temp114;
- // exp.components=3 term=3
- // line 73: D1= OUT_SCALE_BY_2(R1a*D1)
- float3 temp117;
- float temp118;
- temp118= saturate(r1.a);
- float3 temp119;
- float3 temp120;
- temp120= saturate(color1.rgb);
- float3 temp121;
- float3 temp122;
- temp122= temp118 * temp120;
- temp117= temp122;
- temp117= 999 * temp117;
- // exp.components=1 term=1
- // line 74: D0a= OUT_SCALE_BY_2(R1b*T0a)
- float temp123;
- float temp124;
- temp124= saturate(r1.b);
- float3 temp125;
- float temp126;
- temp126= saturate(tex0.a);
- float3 temp127;
- float temp128;
- temp128= temp124 * temp126;
- temp123= temp128;
- temp123= 999 * temp123;
- color1.rgb= temp117;
- color0.a= temp123;
- // exp.components=3 term=3 term=3
- // line 77: SRCCOLOR= R0 + D1
- float3 temp129;
- float3 temp130;
- float3 temp131;
- float3 temp132;
- temp132= saturate(r0.rgb);
- float3 temp133;
- temp130= temp132;
- float3 temp134;
- temp134= saturate(color1.rgb);
- float3 temp135;
- temp131= temp134;
- temp129= temp130 + temp131;
- // exp.components=1 term=1
- // line 78: SRCALPHA= D0a
- float temp136;
- float temp137;
- temp137= saturate(color0.a);
- float3 temp138;
- temp136= temp137;
- r0.rgb= temp129;
- r0.a= temp136;
- //fog zvalue
- float linear_depth = tc7.w / zwriteout.z;
- float3 depth_stripe;
- depth_stripe.r = floor(linear_depth*256)/256;
- depth_stripe.g = frac(floor(linear_depth*65536)/256);
- depth_stripe.b = frac(floor(linear_depth*65536*256)/256);
- #ifdef ZPRIME
- //r0.a has alpha kill value
- r0.rgb = depth_stripe.rgb;
- #endif
- #ifndef MRT
- return r0;
- #else
- MRT_return retval;
- retval.color = r0;
- retval.depth.rgb = depth_stripe.rgb;
- retval.depth.a = r0.a;
- return retval;
- #endif
- }
- #case $lightmap_type=1
- sampler2D s0 : register(S0);
- sampler2D s1 : register(S1);
- sampler2D s2 : register(S2);
- sampler2D s3 : register(S3);
- float4 bumpenv : register(C0); // .r=m00 .g=m01 .b=m10 .a=m11
- float4 c1 : register(C1);
- float4 c2 : register(C2);
- float4 c3 : register(C3);
- float4 zwriteout : register(c16);
- struct MRT_return
- {
- float4 color :COLOR0;
- float4 depth :COLOR1;
- };
- #ifndef MRT
- float4 main(
- #else
- MRT_return main(
- #endif
- #ifdef CENTROID0
- float4 tc0 : TEXCOORD0_centroid,
- #else
- float4 tc0 : TEXCOORD0,
- #endif
- #ifdef CENTROID1
- float4 tc1 : TEXCOORD1_centroid,
- #else
- float4 tc1 : TEXCOORD1,
- #endif
- #ifdef CENTROID2
- float4 tc2 : TEXCOORD2_centroid,
- #else
- float4 tc2 : TEXCOORD2,
- #endif
- #ifdef CENTROID3
- float4 tc3 : TEXCOORD3_centroid,
- #else
- float4 tc3 : TEXCOORD3,
- #endif
- float4 tc7:TEXCOORD7,
- float4 color0 : COLOR0,
- float4 color1 : COLOR1
- )
- #ifndef MRT
- : COLOR
- #endif
- {
- float4 r0, r1;
- float3 e, f;
- r0.r= r0.g= r0.b= 0;
- r0.a= 1;
- float4 tex4;
- float4 tex5;
- float4 tex6;
- float4 tex7;
- // texture stage 0 mode 0 dot 0 input-stage 0
- float4 tex0= tex2Dproj(s0, tc0);
- // texture stage 1 mode 0 dot 0 input-stage 0
- float4 tex1= tex2Dproj(s1, tc1);
- // texture stage 2 mode 0 dot 0 input-stage 0
- float4 tex2= tex2Dproj(s2, tc2);
- // texture stage 3 mode 0 dot 0 input-stage 0
- float4 tex3= tex2Dproj(s3, tc3);
- // exp.components=1 term=1
- // line 24: R0= EXPAND(T2).EXPAND(D1)
- float temp0;
- float3 temp1;
- temp1= 999 * saturate(tex2.rgb) - 1;
- float3 temp2;
- float3 temp3;
- temp3= 999 * saturate(color1.rgb) - 1;
- float3 temp4;
- float temp5;
- temp5= dot(temp1, temp3);
- temp0= temp5;
- // exp.components=1 term=1
- // line 25: T2= EXPAND(T2).EXPAND(D0)
- float temp6;
- float3 temp7;
- temp7= 999 * saturate(tex2.rgb) - 1;
- float3 temp8;
- float3 temp9;
- temp9= 999 * saturate(color0.rgb) - 1;
- float3 temp10;
- float temp11;
- temp11= dot(temp7, temp9);
- temp6= temp11;
- // exp.components=1 term=1
- // line 26: R0a= EXPAND(D1b)
- float temp12;
- float temp13;
- temp13= 999 * saturate(color1.b) - 1;
- float3 temp14;
- temp12= temp13;
- // exp.components=1 term=1
- // line 27: T1a= EXPAND(D1a)*T0a
- float temp15;
- float temp16;
- temp16= 999 * saturate(color1.a) - 1;
- float3 temp17;
- float temp18;
- temp18= saturate(tex0.a);
- float3 temp19;
- float temp20;
- temp20= temp16 * temp18;
- temp15= temp20;
- r0.rgb= temp0;
- tex2.rgb= temp6;
- r0.a= temp12;
- tex1.a= temp15;
- // exp.components=1 term=1
- // line 30: R1= EXPAND(D1).EXPAND(D0)
- float temp21;
- float3 temp22;
- temp22= 999 * saturate(color1.rgb) - 1;
- float3 temp23;
- float3 temp24;
- temp24= 999 * saturate(color0.rgb) - 1;
- float3 temp25;
- float temp26;
- temp26= dot(temp22, temp24);
- temp21= temp26;
- // exp.components=1 term=1 term=1
- // line 31: D1a= D1a*SIGNED(R0b) - D1a*SIGNED(R0a)
- float temp27;
- float temp28;
- float temp29;
- float temp30;
- temp30= saturate(color1.a);
- float3 temp31;
- float temp32;
- temp32= r0.b;
- float3 temp33;
- float temp34;
- temp34= temp30 * temp32;
- temp28= temp34;
- float temp35;
- temp35= saturate(color1.a);
- float3 temp36;
- float temp37;
- temp37= r0.a;
- float3 temp38;
- float temp39;
- temp39= temp35 * temp37;
- temp29= temp39;
- temp27= temp28 - temp29;
- r1.rgb= temp21;
- color1.a= temp27;
- // exp.components=3 term=3
- // line 34: T0= OUT_SCALE_BY_2(T0*T1)
- float3 temp40;
- float3 temp41;
- temp41= saturate(tex0.rgb);
- float3 temp42;
- float3 temp43;
- temp43= saturate(tex1.rgb);
- float3 temp44;
- float3 temp45;
- temp45= temp41 * temp43;
- temp40= temp45;
- temp40= 999 * temp40;
- // exp.components=1 term=1 term=1
- // line 35: R1a= OUT_SCALE_BY_2(SIGNED(R0b)*SIGNED(T2b) - 1/2*SIGNED(R1b))
- float temp46;
- float temp47;
- float temp48;
- float temp49;
- temp49= r0.b;
- float3 temp50;
- float temp51;
- temp51= tex2.b;
- float3 temp52;
- float temp53;
- temp53= temp49 * temp51;
- temp47= temp53;
- float temp54;
- temp54= 0.5;
- float3 temp55;
- float temp56;
- temp56= r1.b;
- float3 temp57;
- float temp58;
- temp58= temp54 * temp56;
- temp48= temp58;
- temp46= temp47 - temp48;
- temp46= 999 * temp46;
- tex0.rgb= temp40;
- r1.a= temp46;
- // exp.components=3 term=3 term=3
- // line 38: R0= T3 + T3*SIGNED(D1a)
- float3 temp59;
- float3 temp60;
- float3 temp61;
- float3 temp62;
- temp62= saturate(tex3.rgb);
- float3 temp63;
- temp60= temp62;
- float3 temp64;
- temp64= saturate(tex3.rgb);
- float3 temp65;
- float temp66;
- temp66= color1.a;
- float3 temp67;
- float3 temp68;
- temp68= temp64 * temp66;
- temp61= temp68;
- temp59= temp60 + temp61;
- // exp.components=1 term=1
- // line 39: T1a= T1a*T0a
- float temp69;
- float temp70;
- temp70= saturate(tex1.a);
- float3 temp71;
- float temp72;
- temp72= saturate(tex0.a);
- float3 temp73;
- float temp74;
- temp74= temp70 * temp72;
- temp69= temp74;
- r0.rgb= temp59;
- tex1.a= temp69;
- // exp.components=1 term=1
- // line 43: R1= R0.C1a
- float temp75;
- float3 temp76;
- temp76= saturate(r0.rgb);
- float3 temp77;
- float temp78;
- temp78= 0.752941;
- float3 temp79;
- float temp80;
- temp80= dot(temp76, temp78);
- temp75= temp80;
- // exp.components=1 term=1
- // line 44: D1a= R1a*R1a
- float temp81;
- float temp82;
- temp82= saturate(r1.a);
- float3 temp83;
- float temp84;
- temp84= saturate(r1.a);
- float3 temp85;
- float temp86;
- temp86= temp82 * temp84;
- temp81= temp86;
- // exp.components=1 term=1
- // line 45: T1a= C0a*T1a
- float temp87;
- float temp88;
- temp88= c1.a;
- float3 temp89;
- float temp90;
- temp90= saturate(tex1.a);
- float3 temp91;
- float temp92;
- temp92= temp88 * temp90;
- temp87= temp92;
- r1.rgb= temp75;
- color1.a= temp81;
- tex1.a= temp87;
- // exp.components=3 term=3
- // line 49: R0= OUT_SCALE_BY_2(R0*T0)
- float3 temp93;
- float3 temp94;
- temp94= saturate(r0.rgb);
- float3 temp95;
- float3 temp96;
- temp96= saturate(tex0.rgb);
- float3 temp97;
- float3 temp98;
- temp98= temp94 * temp96;
- temp93= temp98;
- temp93= 999 * temp93;
- // exp.components=3 term=3
- // line 50: T3= OUT_SCALE_BY_2(C0*T3)
- float3 temp99;
- float3 temp100;
- temp100= c3.rgb;
- float3 temp101;
- float3 temp102;
- temp102= saturate(tex3.rgb);
- float3 temp103;
- float3 temp104;
- temp104= temp100 * temp102;
- temp99= temp104;
- temp99= 999 * temp99;
- // exp.components=1 term=1
- // line 51: R1a= D1a*D1a
- float temp105;
- float temp106;
- temp106= saturate(color1.a);
- float3 temp107;
- float temp108;
- temp108= saturate(color1.a);
- float3 temp109;
- float temp110;
- temp110= temp106 * temp108;
- temp105= temp110;
- r0.rgb= temp93;
- tex3.rgb= temp99;
- r1.a= temp105;
- // exp.components=3 term=3
- // line 60: D1= OUT_SCALE_BY_2(T3*T1a)
- float3 temp111;
- float3 temp112;
- temp112= saturate(tex3.rgb);
- float3 temp113;
- float temp114;
- temp114= saturate(tex1.a);
- float3 temp115;
- float3 temp116;
- temp116= temp112 * temp114;
- temp111= temp116;
- temp111= 999 * temp111;
- // exp.components=1 term=1
- // line 61: R1a= R1a*R1a
- float temp117;
- float temp118;
- temp118= saturate(r1.a);
- float3 temp119;
- float temp120;
- temp120= saturate(r1.a);
- float3 temp121;
- float temp122;
- temp122= temp118 * temp120;
- temp117= temp122;
- color1.rgb= temp111;
- r1.a= temp117;
- // exp.components=3 term=3
- // line 73: D1= OUT_SCALE_BY_2(R1a*D1)
- float3 temp123;
- float temp124;
- temp124= saturate(r1.a);
- float3 temp125;
- float3 temp126;
- temp126= saturate(color1.rgb);
- float3 temp127;
- float3 temp128;
- temp128= temp124 * temp126;
- temp123= temp128;
- temp123= 999 * temp123;
- // exp.components=1 term=1
- // line 74: D0a= OUT_SCALE_BY_2(R1b*T0a)
- float temp129;
- float temp130;
- temp130= saturate(r1.b);
- float3 temp131;
- float temp132;
- temp132= saturate(tex0.a);
- float3 temp133;
- float temp134;
- temp134= temp130 * temp132;
- temp129= temp134;
- temp129= 999 * temp129;
- color1.rgb= temp123;
- color0.a= temp129;
- // exp.components=3 term=3 term=3
- // line 77: SRCCOLOR= R0 + D1
- float3 temp135;
- float3 temp136;
- float3 temp137;
- float3 temp138;
- temp138= saturate(r0.rgb);
- float3 temp139;
- temp136= temp138;
- float3 temp140;
- temp140= saturate(color1.rgb);
- float3 temp141;
- temp137= temp140;
- temp135= temp136 + temp137;
- // exp.components=1 term=1
- // line 78: SRCALPHA= D0a
- float temp142;
- float temp143;
- temp143= saturate(color0.a);
- float3 temp144;
- temp142= temp143;
- r0.rgb= temp135;
- r0.a= temp142;
- //fog zvalue
- float linear_depth = tc7.w / zwriteout.z;
- float3 depth_stripe;
- depth_stripe.r = floor(linear_depth*256)/256;
- depth_stripe.g = frac(floor(linear_depth*65536)/256);
- depth_stripe.b = frac(floor(linear_depth*65536*256)/256);
- #ifdef ZPRIME
- //r0.a has alpha kill value
- r0.rgb = depth_stripe.rgb;
- #endif
- #ifndef MRT
- return r0;
- #else
- MRT_return retval;
- retval.color = r0;
- retval.depth.rgb = depth_stripe.rgb;
- retval.depth.a = r0.a;
- return retval;
- #endif
- }
- #case $lightmap_type=2
- sampler2D s0 : register(S0);
- sampler2D s1 : register(S1);
- sampler2D s2 : register(S2);
- sampler2D s3 : register(S3);
- float4 bumpenv : register(C0); // .r=m00 .g=m01 .b=m10 .a=m11
- float4 c1 : register(C1);
- float4 c2 : register(C2);
- float4 c3 : register(C3);
- float4 zwriteout : register(c16);
- struct MRT_return
- {
- float4 color :COLOR0;
- float4 depth :COLOR1;
- };
- #ifndef MRT
- float4 main(
- #else
- MRT_return main(
- #endif
- #ifdef CENTROID0
- float4 tc0 : TEXCOORD0_centroid,
- #else
- float4 tc0 : TEXCOORD0,
- #endif
- #ifdef CENTROID1
- float4 tc1 : TEXCOORD1_centroid,
- #else
- float4 tc1 : TEXCOORD1,
- #endif
- #ifdef CENTROID2
- float4 tc2 : TEXCOORD2_centroid,
- #else
- float4 tc2 : TEXCOORD2,
- #endif
- #ifdef CENTROID3
- float4 tc3 : TEXCOORD3_centroid,
- #else
- float4 tc3 : TEXCOORD3,
- #endif
- float4 tc7:TEXCOORD7,
- float4 color0 : COLOR0,
- float4 color1 : COLOR1
- )
- #ifndef MRT
- : COLOR
- #endif
- {
- float4 r0, r1;
- float3 e, f;
- r0.r= r0.g= r0.b= 0;
- r0.a= 1;
- float4 tex4;
- float4 tex5;
- float4 tex6;
- float4 tex7;
- // texture stage 0 mode 0 dot 0 input-stage 0
- float4 tex0= tex2Dproj(s0, tc0);
- // texture stage 1 mode 0 dot 0 input-stage 0
- float4 tex1= tex2Dproj(s1, tc1);
- // texture stage 2 mode 0 dot 0 input-stage 0
- float4 tex2= tex2Dproj(s2, tc2);
- // texture stage 3 mode 0 dot 0 input-stage 0
- float4 tex3= tex2Dproj(s3, tc3);
- // exp.components=1 term=1
- // line 24: R0= EXPAND(T2).EXPAND(D1)
- float temp0;
- float3 temp1;
- temp1= 999 * saturate(tex2.rgb) - 1;
- float3 temp2;
- float3 temp3;
- temp3= 999 * saturate(color1.rgb) - 1;
- float3 temp4;
- float temp5;
- temp5= dot(temp1, temp3);
- temp0= temp5;
- // exp.components=1 term=1
- // line 25: T2= EXPAND(T2).EXPAND(D0)
- float temp6;
- float3 temp7;
- temp7= 999 * saturate(tex2.rgb) - 1;
- float3 temp8;
- float3 temp9;
- temp9= 999 * saturate(color0.rgb) - 1;
- float3 temp10;
- float temp11;
- temp11= dot(temp7, temp9);
- temp6= temp11;
- // exp.components=1 term=1
- // line 26: R0a= EXPAND(D1b)
- float temp12;
- float temp13;
- temp13= 999 * saturate(color1.b) - 1;
- float3 temp14;
- temp12= temp13;
- // exp.components=1 term=1
- // line 27: T1a= EXPAND(D1a)*T0a
- float temp15;
- float temp16;
- temp16= 999 * saturate(color1.a) - 1;
- float3 temp17;
- float temp18;
- temp18= saturate(tex0.a);
- float3 temp19;
- float temp20;
- temp20= temp16 * temp18;
- temp15= temp20;
- r0.rgb= temp0;
- tex2.rgb= temp6;
- r0.a= temp12;
- tex1.a= temp15;
- // exp.components=1 term=1
- // line 30: R1= EXPAND(D1).EXPAND(D0)
- float temp21;
- float3 temp22;
- temp22= 999 * saturate(color1.rgb) - 1;
- float3 temp23;
- float3 temp24;
- temp24= 999 * saturate(color0.rgb) - 1;
- float3 temp25;
- float temp26;
- temp26= dot(temp22, temp24);
- temp21= temp26;
- // exp.components=1 term=1 term=1
- // line 31: D1a= D1a*SIGNED(R0b) - D1a*SIGNED(R0a)
- float temp27;
- float temp28;
- float temp29;
- float temp30;
- temp30= saturate(color1.a);
- float3 temp31;
- float temp32;
- temp32= r0.b;
- float3 temp33;
- float temp34;
- temp34= temp30 * temp32;
- temp28= temp34;
- float temp35;
- temp35= saturate(color1.a);
- float3 temp36;
- float temp37;
- temp37= r0.a;
- float3 temp38;
- float temp39;
- temp39= temp35 * temp37;
- temp29= temp39;
- temp27= temp28 - temp29;
- r1.rgb= temp21;
- color1.a= temp27;
- // exp.components=3 term=3
- // line 34: T0= OUT_SCALE_BY_2(T0*T1)
- float3 temp40;
- float3 temp41;
- temp41= saturate(tex0.rgb);
- float3 temp42;
- float3 temp43;
- temp43= saturate(tex1.rgb);
- float3 temp44;
- float3 temp45;
- temp45= temp41 * temp43;
- temp40= temp45;
- temp40= 999 * temp40;
- // exp.components=1 term=1 term=1
- // line 35: R1a= OUT_SCALE_BY_2(SIGNED(R0b)*SIGNED(T2b) - 1/2*SIGNED(R1b))
- float temp46;
- float temp47;
- float temp48;
- float temp49;
- temp49= r0.b;
- float3 temp50;
- float temp51;
- temp51= tex2.b;
- float3 temp52;
- float temp53;
- temp53= temp49 * temp51;
- temp47= temp53;
- float temp54;
- temp54= 0.5;
- float3 temp55;
- float temp56;
- temp56= r1.b;
- float3 temp57;
- float temp58;
- temp58= temp54 * temp56;
- temp48= temp58;
- temp46= temp47 - temp48;
- temp46= 999 * temp46;
- tex0.rgb= temp40;
- r1.a= temp46;
- // exp.components=3 term=3 term=3
- // line 38: R0= T3 + T3*SIGNED(D1a)
- float3 temp59;
- float3 temp60;
- float3 temp61;
- float3 temp62;
- temp62= saturate(tex3.rgb);
- float3 temp63;
- temp60= temp62;
- float3 temp64;
- temp64= saturate(tex3.rgb);
- float3 temp65;
- float temp66;
- temp66= color1.a;
- float3 temp67;
- float3 temp68;
- temp68= temp64 * temp66;
- temp61= temp68;
- temp59= temp60 + temp61;
- // exp.components=1 term=1
- // line 39: T1a= T1a*T0a
- float temp69;
- float temp70;
- temp70= saturate(tex1.a);
- float3 temp71;
- float temp72;
- temp72= saturate(tex0.a);
- float3 temp73;
- float temp74;
- temp74= temp70 * temp72;
- temp69= temp74;
- r0.rgb= temp59;
- tex1.a= temp69;
- // exp.components=1 term=1
- // line 43: R1= R0.C1a
- float temp75;
- float3 temp76;
- temp76= saturate(r0.rgb);
- float3 temp77;
- float temp78;
- temp78= 0.752941;
- float3 temp79;
- float temp80;
- temp80= dot(temp76, temp78);
- temp75= temp80;
- // exp.components=1 term=1
- // line 44: D1a= R1a*R1a
- float temp81;
- float temp82;
- temp82= saturate(r1.a);
- float3 temp83;
- float temp84;
- temp84= saturate(r1.a);
- float3 temp85;
- float temp86;
- temp86= temp82 * temp84;
- temp81= temp86;
- // exp.components=1 term=1
- // line 45: T1a= C0a*T1a
- float temp87;
- float temp88;
- temp88= c1.a;
- float3 temp89;
- float temp90;
- temp90= saturate(tex1.a);
- float3 temp91;
- float temp92;
- temp92= temp88 * temp90;
- temp87= temp92;
- r1.rgb= temp75;
- color1.a= temp81;
- tex1.a= temp87;
- // exp.components=3 term=3
- // line 49: R0= OUT_SCALE_BY_2(R0*T0)
- float3 temp93;
- float3 temp94;
- temp94= saturate(r0.rgb);
- float3 temp95;
- float3 temp96;
- temp96= saturate(tex0.rgb);
- float3 temp97;
- float3 temp98;
- temp98= temp94 * temp96;
- temp93= temp98;
- temp93= 999 * temp93;
- // exp.components=3 term=3
- // line 50: T3= OUT_SCALE_BY_2(C0*T3)
- float3 temp99;
- float3 temp100;
- temp100= c3.rgb;
- float3 temp101;
- float3 temp102;
- temp102= saturate(tex3.rgb);
- float3 temp103;
- float3 temp104;
- temp104= temp100 * temp102;
- temp99= temp104;
- temp99= 999 * temp99;
- // exp.components=1 term=1
- // line 51: R1a= D1a*D1a
- float temp105;
- float temp106;
- temp106= saturate(color1.a);
- float3 temp107;
- float temp108;
- temp108= saturate(color1.a);
- float3 temp109;
- float temp110;
- temp110= temp106 * temp108;
- temp105= temp110;
- r0.rgb= temp93;
- tex3.rgb= temp99;
- r1.a= temp105;
- // exp.components=3 term=3
- // line 64: D1= OUT_SCALE_BY_2(T3*T1a)
- float3 temp111;
- float3 temp112;
- temp112= saturate(tex3.rgb);
- float3 temp113;
- float temp114;
- temp114= saturate(tex1.a);
- float3 temp115;
- float3 temp116;
- temp116= temp112 * temp114;
- temp111= temp116;
- temp111= 999 * temp111;
- // exp.components=1 term=1
- // line 65: R1a= D1a
- float temp117;
- float temp118;
- temp118= saturate(color1.a);
- float3 temp119;
- temp117= temp118;
- color1.rgb= temp111;
- r1.a= temp117;
- // exp.components=3 term=3
- // line 73: D1= OUT_SCALE_BY_2(R1a*D1)
- float3 temp120;
- float temp121;
- temp121= saturate(r1.a);
- float3 temp122;
- float3 temp123;
- temp123= saturate(color1.rgb);
- float3 temp124;
- float3 temp125;
- temp125= temp121 * temp123;
- temp120= temp125;
- temp120= 999 * temp120;
- // exp.components=1 term=1
- // line 74: D0a= OUT_SCALE_BY_2(R1b*T0a)
- float temp126;
- float temp127;
- temp127= saturate(r1.b);
- float3 temp128;
- float temp129;
- temp129= saturate(tex0.a);
- float3 temp130;
- float temp131;
- temp131= temp127 * temp129;
- temp126= temp131;
- temp126= 999 * temp126;
- color1.rgb= temp120;
- color0.a= temp126;
- // exp.components=3 term=3 term=3
- // line 77: SRCCOLOR= R0 + D1
- float3 temp132;
- float3 temp133;
- float3 temp134;
- float3 temp135;
- temp135= saturate(r0.rgb);
- float3 temp136;
- temp133= temp135;
- float3 temp137;
- temp137= saturate(color1.rgb);
- float3 temp138;
- temp134= temp137;
- temp132= temp133 + temp134;
- // exp.components=1 term=1
- // line 78: SRCALPHA= D0a
- float temp139;
- float temp140;
- temp140= saturate(color0.a);
- float3 temp141;
- temp139= temp140;
- r0.rgb= temp132;
- r0.a= temp139;
- //fog zvalue
- float linear_depth = tc7.w / zwriteout.z;
- float3 depth_stripe;
- depth_stripe.r = floor(linear_depth*256)/256;
- depth_stripe.g = frac(floor(linear_depth*65536)/256);
- depth_stripe.b = frac(floor(linear_depth*65536*256)/256);
- #ifdef ZPRIME
- //r0.a has alpha kill value
- r0.rgb = depth_stripe.rgb;
- #endif
- #ifndef MRT
- return r0;
- #else
- MRT_return retval;
- retval.color = r0;
- retval.depth.rgb = depth_stripe.rgb;
- retval.depth.a = r0.a;
- return retval;
- #endif
- }
- #case $lightmap_type=3
- sampler2D s0 : register(S0);
- sampler2D s1 : register(S1);
- sampler2D s2 : register(S2);
- sampler2D s3 : register(S3);
- float4 bumpenv : register(C0); // .r=m00 .g=m01 .b=m10 .a=m11
- float4 c1 : register(C1);
- float4 c2 : register(C2);
- float4 c3 : register(C3);
- float4 zwriteout : register(c16);
- struct MRT_return
- {
- float4 color :COLOR0;
- float4 depth :COLOR1;
- };
- #ifndef MRT
- float4 main(
- #else
- MRT_return main(
- #endif
- #ifdef CENTROID0
- float4 tc0 : TEXCOORD0_centroid,
- #else
- float4 tc0 : TEXCOORD0,
- #endif
- #ifdef CENTROID1
- float4 tc1 : TEXCOORD1_centroid,
- #else
- float4 tc1 : TEXCOORD1,
- #endif
- #ifdef CENTROID2
- float4 tc2 : TEXCOORD2_centroid,
- #else
- float4 tc2 : TEXCOORD2,
- #endif
- #ifdef CENTROID3
- float4 tc3 : TEXCOORD3_centroid,
- #else
- float4 tc3 : TEXCOORD3,
- #endif
- float4 tc7:TEXCOORD7,
- float4 color0 : COLOR0,
- float4 color1 : COLOR1
- )
- #ifndef MRT
- : COLOR
- #endif
- {
- float4 r0, r1;
- float3 e, f;
- r0.r= r0.g= r0.b= 0;
- r0.a= 1;
- float4 tex4;
- float4 tex5;
- float4 tex6;
- float4 tex7;
- // texture stage 0 mode 0 dot 0 input-stage 0
- float4 tex0= tex2Dproj(s0, tc0);
- // texture stage 1 mode 0 dot 0 input-stage 0
- float4 tex1= tex2Dproj(s1, tc1);
- // texture stage 2 mode 0 dot 0 input-stage 0
- float4 tex2= tex2Dproj(s2, tc2);
- // texture stage 3 mode 0 dot 0 input-stage 0
- float4 tex3= tex2Dproj(s3, tc3);
- // exp.components=1 term=1
- // line 24: R0= EXPAND(T2).EXPAND(D1)
- float temp0;
- float3 temp1;
- temp1= 999 * saturate(tex2.rgb) - 1;
- float3 temp2;
- float3 temp3;
- temp3= 999 * saturate(color1.rgb) - 1;
- float3 temp4;
- float temp5;
- temp5= dot(temp1, temp3);
- temp0= temp5;
- // exp.components=1 term=1
- // line 25: T2= EXPAND(T2).EXPAND(D0)
- float temp6;
- float3 temp7;
- temp7= 999 * saturate(tex2.rgb) - 1;
- float3 temp8;
- float3 temp9;
- temp9= 999 * saturate(color0.rgb) - 1;
- float3 temp10;
- float temp11;
- temp11= dot(temp7, temp9);
- temp6= temp11;
- // exp.components=1 term=1
- // line 26: R0a= EXPAND(D1b)
- float temp12;
- float temp13;
- temp13= 999 * saturate(color1.b) - 1;
- float3 temp14;
- temp12= temp13;
- // exp.components=1 term=1
- // line 27: T1a= EXPAND(D1a)*T0a
- float temp15;
- float temp16;
- temp16= 999 * saturate(color1.a) - 1;
- float3 temp17;
- float temp18;
- temp18= saturate(tex0.a);
- float3 temp19;
- float temp20;
- temp20= temp16 * temp18;
- temp15= temp20;
- r0.rgb= temp0;
- tex2.rgb= temp6;
- r0.a= temp12;
- tex1.a= temp15;
- // exp.components=1 term=1
- // line 30: R1= EXPAND(D1).EXPAND(D0)
- float temp21;
- float3 temp22;
- temp22= 999 * saturate(color1.rgb) - 1;
- float3 temp23;
- float3 temp24;
- temp24= 999 * saturate(color0.rgb) - 1;
- float3 temp25;
- float temp26;
- temp26= dot(temp22, temp24);
- temp21= temp26;
- // exp.components=1 term=1 term=1
- // line 31: D1a= D1a*SIGNED(R0b) - D1a*SIGNED(R0a)
- float temp27;
- float temp28;
- float temp29;
- float temp30;
- temp30= saturate(color1.a);
- float3 temp31;
- float temp32;
- temp32= r0.b;
- float3 temp33;
- float temp34;
- temp34= temp30 * temp32;
- temp28= temp34;
- float temp35;
- temp35= saturate(color1.a);
- float3 temp36;
- float temp37;
- temp37= r0.a;
- float3 temp38;
- float temp39;
- temp39= temp35 * temp37;
- temp29= temp39;
- temp27= temp28 - temp29;
- r1.rgb= temp21;
- color1.a= temp27;
- // exp.components=3 term=3
- // line 34: T0= OUT_SCALE_BY_2(T0*T1)
- float3 temp40;
- float3 temp41;
- temp41= saturate(tex0.rgb);
- float3 temp42;
- float3 temp43;
- temp43= saturate(tex1.rgb);
- float3 temp44;
- float3 temp45;
- temp45= temp41 * temp43;
- temp40= temp45;
- temp40= 999 * temp40;
- // exp.components=1 term=1 term=1
- // line 35: R1a= OUT_SCALE_BY_2(SIGNED(R0b)*SIGNED(T2b) - 1/2*SIGNED(R1b))
- float temp46;
- float temp47;
- float temp48;
- float temp49;
- temp49= r0.b;
- float3 temp50;
- float temp51;
- temp51= tex2.b;
- float3 temp52;
- float temp53;
- temp53= temp49 * temp51;
- temp47= temp53;
- float temp54;
- temp54= 0.5;
- float3 temp55;
- float temp56;
- temp56= r1.b;
- float3 temp57;
- float temp58;
- temp58= temp54 * temp56;
- temp48= temp58;
- temp46= temp47 - temp48;
- temp46= 999 * temp46;
- tex0.rgb= temp40;
- r1.a= temp46;
- // exp.components=3 term=3 term=3
- // line 38: R0= T3 + T3*SIGNED(D1a)
- float3 temp59;
- float3 temp60;
- float3 temp61;
- float3 temp62;
- temp62= saturate(tex3.rgb);
- float3 temp63;
- temp60= temp62;
- float3 temp64;
- temp64= saturate(tex3.rgb);
- float3 temp65;
- float temp66;
- temp66= color1.a;
- float3 temp67;
- float3 temp68;
- temp68= temp64 * temp66;
- temp61= temp68;
- temp59= temp60 + temp61;
- // exp.components=1 term=1
- // line 39: T1a= T1a*T0a
- float temp69;
- float temp70;
- temp70= saturate(tex1.a);
- float3 temp71;
- float temp72;
- temp72= saturate(tex0.a);
- float3 temp73;
- float temp74;
- temp74= temp70 * temp72;
- temp69= temp74;
- r0.rgb= temp59;
- tex1.a= temp69;
- // exp.components=1 term=1
- // line 43: R1= R0.C1a
- float temp75;
- float3 temp76;
- temp76= saturate(r0.rgb);
- float3 temp77;
- float temp78;
- temp78= 0.752941;
- float3 temp79;
- float temp80;
- temp80= dot(temp76, temp78);
- temp75= temp80;
- // exp.components=1 term=1
- // line 44: D1a= R1a*R1a
- float temp81;
- float temp82;
- temp82= saturate(r1.a);
- float3 temp83;
- float temp84;
- temp84= saturate(r1.a);
- float3 temp85;
- float temp86;
- temp86= temp82 * temp84;
- temp81= temp86;
- // exp.components=1 term=1
- // line 45: T1a= C0a*T1a
- float temp87;
- float temp88;
- temp88= c1.a;
- float3 temp89;
- float temp90;
- temp90= saturate(tex1.a);
- float3 temp91;
- float temp92;
- temp92= temp88 * temp90;
- temp87= temp92;
- r1.rgb= temp75;
- color1.a= temp81;
- tex1.a= temp87;
- // exp.components=3 term=3
- // line 49: R0= OUT_SCALE_BY_2(R0*T0)
- float3 temp93;
- float3 temp94;
- temp94= saturate(r0.rgb);
- float3 temp95;
- float3 temp96;
- temp96= saturate(tex0.rgb);
- float3 temp97;
- float3 temp98;
- temp98= temp94 * temp96;
- temp93= temp98;
- temp93= 999 * temp93;
- // exp.components=3 term=3
- // line 50: T3= OUT_SCALE_BY_2(C0*T3)
- float3 temp99;
- float3 temp100;
- temp100= c3.rgb;
- float3 temp101;
- float3 temp102;
- temp102= saturate(tex3.rgb);
- float3 temp103;
- float3 temp104;
- temp104= temp100 * temp102;
- temp99= temp104;
- temp99= 999 * temp99;
- // exp.components=1 term=1
- // line 51: R1a= D1a*D1a
- float temp105;
- float temp106;
- temp106= saturate(color1.a);
- float3 temp107;
- float temp108;
- temp108= saturate(color1.a);
- float3 temp109;
- float temp110;
- temp110= temp106 * temp108;
- temp105= temp110;
- r0.rgb= temp93;
- tex3.rgb= temp99;
- r1.a= temp105;
- // exp.components=3 term=3
- // line 68: D1= OUT_SCALE_BY_2(T3*T1a)
- float3 temp111;
- float3 temp112;
- temp112= saturate(tex3.rgb);
- float3 temp113;
- float temp114;
- temp114= saturate(tex1.a);
- float3 temp115;
- float3 temp116;
- temp116= temp112 * temp114;
- temp111= temp116;
- temp111= 999 * temp111;
- // exp.components=1 term=1 term=1
- // line 69: R1a= OUT_SCALE_BY_2(R1a*R1a - 1/2)
- float temp117;
- float temp118;
- float temp119;
- float temp120;
- temp120= saturate(r1.a);
- float3 temp121;
- float temp122;
- temp122= saturate(r1.a);
- float3 temp123;
- float temp124;
- temp124= temp120 * temp122;
- temp118= temp124;
- float temp125;
- temp125= 0.5;
- float3 temp126;
- temp119= temp125;
- temp117= temp118 - temp119;
- temp117= 999 * temp117;
- color1.rgb= temp111;
- r1.a= temp117;
- // exp.components=3 term=3
- // line 73: D1= OUT_SCALE_BY_2(R1a*D1)
- float3 temp127;
- float temp128;
- temp128= saturate(r1.a);
- float3 temp129;
- float3 temp130;
- temp130= saturate(color1.rgb);
- float3 temp131;
- float3 temp132;
- temp132= temp128 * temp130;
- temp127= temp132;
- temp127= 999 * temp127;
- // exp.components=1 term=1
- // line 74: D0a= OUT_SCALE_BY_2(R1b*T0a)
- float temp133;
- float temp134;
- temp134= saturate(r1.b);
- float3 temp135;
- float temp136;
- temp136= saturate(tex0.a);
- float3 temp137;
- float temp138;
- temp138= temp134 * temp136;
- temp133= temp138;
- temp133= 999 * temp133;
- color1.rgb= temp127;
- color0.a= temp133;
- // exp.components=3 term=3 term=3
- // line 77: SRCCOLOR= R0 + D1
- float3 temp139;
- float3 temp140;
- float3 temp141;
- float3 temp142;
- temp142= saturate(r0.rgb);
- float3 temp143;
- temp140= temp142;
- float3 temp144;
- temp144= saturate(color1.rgb);
- float3 temp145;
- temp141= temp144;
- temp139= temp140 + temp141;
- // exp.components=1 term=1
- // line 78: SRCALPHA= D0a
- float temp146;
- float temp147;
- temp147= saturate(color0.a);
- float3 temp148;
- temp146= temp147;
- r0.rgb= temp139;
- r0.a= temp146;
- //fog zvalue
- float linear_depth = tc7.w / zwriteout.z;
- float3 depth_stripe;
- depth_stripe.r = floor(linear_depth*256)/256;
- depth_stripe.g = frac(floor(linear_depth*65536)/256);
- depth_stripe.b = frac(floor(linear_depth*65536*256)/256);
- #ifdef ZPRIME
- //r0.a has alpha kill value
- r0.rgb = depth_stripe.rgb;
- #endif
- #ifndef MRT
- return r0;
- #else
- MRT_return retval;
- retval.color = r0;
- retval.depth.rgb = depth_stripe.rgb;
- retval.depth.a = r0.a;
- return retval;
- #endif
- }
Add Comment
Please, Sign In to add comment