//
// Generated by Microsoft (R) D3DX9 Shader Compiler 9.12.589.0000
//
// Parameters:
//
//   sampler2D g_alpha_sampler;
//   samplerCUBE g_ambient_cube;
//   float3 g_camera_position;
//   row_major float4x4 g_decal_projection_transform;
//   sampler2D g_diffuse_sampler;
//   float4 g_global_tint_color;
//   float4 g_light_constants[8];
//   float4 g_luminance_factor;
//   float3 g_luminance_tint;
//   sampler2D g_scene_geometry_sampler;
//   float4 g_screen_transform;
//   float4 g_shadow_color;
//   sampler2D g_specular_sampler;
//   float4 g_specular_values;
//   float3 g_sun_light_color;
//   float3 g_sun_light_direction;
//
//
// Registers:
//
//   Name                         Reg   Size
//   ---------------------------- ----- ----
//   g_light_constants            c0       8
//   g_decal_projection_transform c8       4
//   g_camera_position            c12      1
//   g_sun_light_direction        c13      1
//   g_sun_light_color            c14      1
//   g_global_tint_color          c15      1
//   g_shadow_color               c16      1
//   g_screen_transform           c17      1
//   g_specular_values            c18      1
//   g_luminance_factor           c19      1
//   g_luminance_tint             c20      1
//   g_ambient_cube               s0       1
//   g_scene_geometry_sampler     s1       1
//   g_diffuse_sampler            s2       1
//   g_alpha_sampler              s3       1
//   g_specular_sampler           s4       1
//
//
// Default values:
//
//   g_light_constants
//     c0   = { 0, 0, 0, 0 };
//     c1   = { 0, 0, 0, 0 };
//     c2   = { 0, 0, 0, 0 };
//     c3   = { 0, 0, 0, 0 };
//     c4   = { 0, 0, 0, 0 };
//     c5   = { 0, 0, 0, 0 };
//     c6   = { 0, 0, 0, 0 };
//     c7   = { 0, 0, 0, 0 };
//
//   g_decal_projection_transform
//     c8   = { 0, 0, 0, 0 };
//     c9   = { 0, 0, 0, 0 };
//     c10  = { 0, 0, 0, 0 };
//     c11  = { 0, 0, 0, 0 };
//
//   g_camera_position
//     c12  = { 0, 0, 0, 0 };
//
//   g_sun_light_direction
//     c13  = { 0, 0, 0, 0 };
//
//   g_sun_light_color
//     c14  = { 0, 0, 0, 0 };
//
//   g_global_tint_color
//     c15  = { 0, 0, 0, 0 };
//
//   g_shadow_color
//     c16  = { 0, 0, 0, 0 };
//
//   g_screen_transform
//     c17  = { 0, 0, 0, 0 };
//
//   g_specular_values
//     c18  = { 1, 20, 0, 0 };
//
//   g_luminance_factor
//     c19  = { 0, 0, 0, 0 };
//
//   g_luminance_tint
//     c20  = { 1, 1, 1, 0 };
//

    ps_3_0
    def c21, 1, -1, 0.5, 9.99999975e-006
    def c22, 0.25, 0, 0, 0
	def c25, 0.5, 0, 0, 0
    //dcl t2.xyz
    //dcl t3
	dcl_texcoord2 v0.xyz
	dcl_texcoord3 v1
	dcl vPos.xy
    dcl_cube s0
    dcl_2d s1
    dcl_2d s2
    dcl_2d s3
    dcl_2d s4
    add r2.xyz, -v0, c2
    rcp r1.w, v1.w
    mul_pp r0.xy, r1.w, v1
    mad r0.x, r0.x, c17.x, c17.z
    mad r0.y, r0.y, c17.y, c17.w
	
	mov r11.xy, vPos.xy
	rcp r11.z, c210.x
	rcp r11.w, c210.y
	mul r11.xy, r11.xy, r11.zw
	mul r11.zw, r11.zw, c25.xx
    add	r0.xy, r11.xy, r11.zw
	
    texld r0, r0, s1
    cmp r0.w, r0.y, c21.x, c21.y
    mad_pp r1.x, r0.w, r0.y, c21.y
    mov_pp r1.y, r0.z
    dp3 r5.x, r2, r2
    dp2add r2.w, r1, -r1, c21.x
    add r4.xyz, -v0, c12
    rsq r2.w, r2.w
    nrm_pp r3.xyz, r4
    rcp r2.w, r2.w
    mul_pp r1.z, r0.w, r2.w
    rsq r0.w, r5.x
    dp3_pp r4.x, r3, r1
    mul_pp r2.xyz, r2, r0.w
    add_pp r2.w, r4.x, r4.x
    mad_pp r3.xyz, r1, -r2.w, r3
    dp3_sat r5.x, r2, -r3
    max r4.w, r5.x, c21.w
    mov r0.z, c18.y
    mul r3.w, r0.z, c22.x
    dp3_sat_pp r5.x, r1, r2
    pow r2.w, r4.w, r3.w
    rcp r0.w, r0.w
    mul r4.xyz, r2.w, c3
    mov r2.x, c3.w
    mad_sat_pp r0.w, r0.w, c2.w, r2.x
    add r2.xyz, -v0, c0
    mul r2.w, r5.x, r0.w
    dp3 r5.x, r2, r2
    mul r6.xyz, r4, r2.w
    rsq r0.w, r5.x
    mul_pp r4.xyz, r2, r0.w
    dp3_sat r5.x, r4, -r3
    mul r2.xyz, r2.w, c3
    max r4.w, r5.x, c21.w
    dp3_sat_pp r7.x, r1, r4
    pow r2.w, r4.w, r3.w
    rcp r0.w, r0.w
    mul r5.xyz, r2.w, c1
    mov r4.x, c1.w
    mad_sat_pp r0.w, r0.w, c0.w, r4.x
    add r4.xyz, -v0, c4
    mul r2.w, r7.x, r0.w
    dp3 r7.x, r4, r4
    mad_pp r6.xyz, r5, r2.w, r6
    rsq r0.w, r7.x
    mul_pp r4.xyz, r4, r0.w
    dp3_sat r5.x, r4, -r3
    mad_pp r2.xyz, c1, r2.w, r2
    max r4.w, r5.x, c21.w
    dp3_sat_pp r7.x, r1, r4
    pow r2.w, r4.w, r3.w
    rcp r0.w, r0.w
    mul r4.xyz, r2.w, c5
    mov r5.x, c5.w
    mad_sat_pp r0.w, r0.w, c4.w, r5.x
    add r5.xyz, -v0, c6
    mul r2.w, r7.x, r0.w
    dp3 r7.x, r5, r5
    mad_pp r4.xyz, r4, r2.w, r6
    rsq r0.w, r7.x
    mul_pp r5.xyz, r5, r0.w
    rcp r0.w, r0.w
    dp3_sat r6.x, r5, -r3
    mad_pp r2.xyz, c5, r2.w, r2
    max r4.w, r6.x, c21.w
    dp3_sat_pp r6.x, r1, r5
    pow r2.w, r4.w, r3.w
    dp3_sat r5.x, c13, -r3
    mov r3.x, c7.w
    mad_sat_pp r0.w, r0.w, c6.w, r3.x
    mul r3.xyz, r2.w, c7
    mul r0.w, r6.x, r0.w
    mad_pp r4.xyz, r3, r0.w, r4
    max r2.w, r5.x, c21.w
    mad_pp r2.xyz, c7, r0.w, r2
    pow r0.w, r2.w, r3.w
    mul r3.xyz, r0.w, c14
    dp3_sat_pp r6.x, r1, c13
    mov_pp r1.yz, r1.wzyx
    mad_pp r4.xyz, r3, r6.x, r4
    add r3.xyz, v0, -c12
    mul r3.xyz, r1.w, r3
    mad r0.xyz, r3, r0.x, c12
    mul r3.xy, r0.y, c9
    mul r3.z, r0.y, c9.w
    mad r3.xy, r0.x, c8, r3
    mad r3.z, r0.x, c8.w, r3.z
    mad r0.xy, r0.z, c10, r3
    mad r0.z, r0.z, c10.w, r3.z
    add r0.xy, r0, c11
    add r0.z, r0.z, c11.w
    mad_pp r5.xyz, c14, r6.x, r2
    rcp r0.w, r0.z
    mul r0.xy, r0, r0.w
    add r4.w, -r6.x, c21.x
    mad r6.xy, r0, c21.z, c21.z
    texld_pp r2, r6, s2
    texld_pp r3, r1, s0
    texld_pp r0, r6, s4
    texld_pp r1, r6, s3
    mul_pp r5.xyz, r5, r2
    mad_pp r3.xyz, r4.w, c16, r3
    mad r2.xyz, r3, r2, r5
    mul_pp r0.w, r0.y, c18.x
    mad_pp r0.xyz, r4, r0.w, r2
    mov_pp r1.w, r1.y
    mul_pp r0.w, c15.w, c15.w
    mov r1.xyz, c15
    mul_pp r0, r0, r1
    dp3 r1.x, r0, c19
    mad r1.xyz, r1.x, c20, -r0
    mad_pp r0.xyz, c19.w, r1, r0
    mov_pp oC0, r0

// approximately 132 instruction slots used (5 texture, 127 arithmetic)
 