//
// Generated by Microsoft (R) D3DX9 Shader Compiler 9.12.589.0000
//
// Parameters:
//
//   samplerCUBE g_ambient_cube;
//   float3 g_camera_position;
//   float4 g_depth_buffer_uvs;
//   sampler2D g_depth_sampler;
//   samplerCUBE g_environment_sampler;
//   sampler2D g_foam_normal_sampler;
//   sampler2D g_foam_sampler;
//   float4 g_fog_color;
//   float g_fog_depth;
//   float4 g_global_tint_color;
//   float4 g_luminance_factor;
//   float3 g_luminance_tint;
//   float g_reflectivity;
//   float g_refraction_bias;
//   sampler2D g_refraction_sampler;
//   float g_refraction_scale;
//   sampler2D g_scene_sampler;
//   float4 g_shadow_color;
//   float g_specular_level;
//   float g_specular_power;
//   float3 g_sun_light_color;
//   float3 g_sun_light_direction;
//   sampler2D g_water_normal_sampler;
//   sampler2D g_water_surface_sampler;
//   float4 g_water_tint;
//   float4 g_world_to_fog_constants;
//
//
// Registers:
//
//   Name                     Reg   Size
//   ------------------------ ----- ----
//   g_camera_position        c0       1
//   g_sun_light_direction    c1       1
//   g_sun_light_color        c2       1
//   g_global_tint_color      c3       1
//   g_shadow_color           c4       1
//   g_fog_color              c5       1
//   g_world_to_fog_constants c6       1
//   g_reflectivity           c7       1
//   g_refraction_scale       c8       1
//   g_fog_depth              c9       1
//   g_water_tint             c10      1
//   g_specular_level         c11      1
//   g_specular_power         c12      1
//   g_refraction_bias        c13      1
//   g_depth_buffer_uvs       c14      1
//   g_luminance_factor       c15      1
//   g_luminance_tint         c16      1
//   g_ambient_cube           s0       1
//   g_depth_sampler          s1       1
//   g_scene_sampler          s2       1
//   g_water_surface_sampler  s3       1
//   g_water_normal_sampler   s4       1
//   g_foam_sampler           s5       1
//   g_foam_normal_sampler    s6       1
//   g_refraction_sampler     s7       1
//   g_environment_sampler    s8       1
//
//
// Default values:
//
//   g_camera_position
//     c0   = { 0, 0, 0, 0 };
//
//   g_sun_light_direction
//     c1   = { 0, 0, 0, 0 };
//
//   g_sun_light_color
//     c2   = { 0, 0, 0, 0 };
//
//   g_global_tint_color
//     c3   = { 0, 0, 0, 0 };
//
//   g_shadow_color
//     c4   = { 0, 0, 0, 0 };
//
//   g_fog_color
//     c5   = { 0, 0, 0, 0 };
//
//   g_world_to_fog_constants
//     c6   = { 0, 0, 0, 0 };
//
//   g_reflectivity
//     c7   = { 0.8, 0, 0, 0 };
//
//   g_refraction_scale
//     c8   = { 0.01, 0, 0, 0 };
//
//   g_fog_depth
//     c9   = { 0.0001, 0, 0, 0 };
//
//   g_water_tint
//     c10  = { 0.1, 0.2, 0.1, 1 };
//
//   g_specular_level
//     c11  = { 0.7, 0, 0, 0 };
//
//   g_specular_power
//     c12  = { 200, 0, 0, 0 };
//
//   g_refraction_bias
//     c13  = { 0.2, 0, 0, 0 };
//
//   g_depth_buffer_uvs
//     c14  = { 0, 0, 0, 0 };
//
//   g_luminance_factor
//     c15  = { 0, 0, 0, 0 };
//
//   g_luminance_tint
//     c16  = { 1, 1, 1, 0 };
//

    //ps_2_x
	ps_3_0
    def c17, 0.5, 2, 0.5, 0.300000012
    def c18, 0.800000012, 0.00999999978, 9.99999975e-006, 0.25
    def c19, 2, -1, 1, 1.5
    def c20, -1.44269502, 0, 0, 0
	def c23, 0.5, 0, 0, 0
    //dcl v0.x
    //dcl t0
    //dcl t1
    //dcl t2
    //dcl t3
    //dcl t5.xyz
    //dcl t6.xyz
    //dcl t7.xyz
	
	dcl_color v0
	dcl_texcoord0 v1
    dcl_texcoord1 v2
	dcl_texcoord2 v3
	dcl_texcoord3 v4
	dcl_texcoord5 v5.xyz
	dcl_texcoord6 v6.xyz
	dcl_texcoord7 v7.xyz
	dcl vPos.xy
	
    dcl_cube s0
    dcl_2d s1
    dcl_2d s2
    dcl_2d s3
    dcl_2d s4
    dcl_2d s5
    dcl_2d s6
    dcl_2d s7
    dcl_cube s8
    mov r0.x, v2.z
    mov r0.y, v2.w
    texld_pp r2, r0, s7
    texld_pp r1, v2, s6
    texld_pp r0, v1, s4
    mul_pp r2.x, r2.w, r2.x
    mad_pp r2.xy, c19.x, r2, c19.y
    rcp r2.w, v4.w
    mul_pp r3.xy, r2.w, v4
    mul_pp r1.x, r1.w, r1.x
    mov_pp r1.z, r1.y
    mad_pp r1.xz, c19.x, r1, c19.y
    mul r1.w, -r1.x, r1.x
    mad_pp r1.w, r1.z, -r1.z, r1.w
    mul_pp r0.x, r0.w, r0.x
    mov_pp r0.z, r0.y
    add_sat r0.w, r1.w, c19.z
    mad_pp r0.xz, c19.x, r0, c19.y
    rsq r1.w, r0.w
    mul r0.w, -r0.x, r0.x
    mad_pp r0.w, r0.z, -r0.z, r0.w
    rcp_pp r1.y, r1.w
    add_sat r0.w, r0.w, c19.z
    mul r1.xyz, r1, c17
    rsq r0.w, r0.w
    rcp_pp r0.y, r0.w
    mad r0.xyz, r0, c17, r1
    mul r0.w, r0.x, r0.x
    mad r0.w, r0.z, r0.z, r0.w
    mad r0.w, r0.y, r0.y, r0.w
    mad_sat r3.x, r3.x, c14.x, c14.z
    mad_sat r3.y, r3.y, c14.y, c14.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, c23.xx
    add	r3.xy, r11.xy, r11.zw
	
    rsq r0.w, r0.w
    mul r0.xyz, r0, r0.w
    add r1.xyz, -v3, c0
    nrm_pp r10.xyz, r1
    mul r0.w, r0.x, -r10.x
    mad r0.w, -r10.y, r0.z, r0.w
    mad r0.w, -r10.z, r0.y, r0.w
    mad r4.xy, r2, c8.x, r3
    add r0.w, r0.w, r0.w
    mad r2.yz, r0, -r0.w, -r10.wzyx
    mad r2.x, r0.x, -r0.w, -r10.x
    mul_pp r1.xyz, r0.z, v7
    mad_pp r1.xyz, r0.x, v6, r1
    mad_pp r0.xyz, r0.y, v5, r1
    nrm_pp r9.xyz, r0
    mov r5.x, v1.z
    mov r5.y, v1.w
    mov_pp r1.yz, r9.wzyx
    mov_pp r1.x, r9.x
    texld r8, r4, s2
    texld r6, r4, s1
    texld r7, r3, s2
    texld r0, r3, s1
    texld_pp r3, r2, s8
    texld r4, v1, s3
    texld r2, r5, s5
    texld_pp r1, r1, s0
    mov r5.yz, r8.zxyw
    mov r5.w, r8.z
    mov r5.x, r6.x
    mov r0.yz, r7.zxyw
    mov r0.w, r7.z
    add r1.w, -r6.x, v4.z
    cmp r5, r1.w, r0, r5
    add r1.w, r5.x, -v4.z
    pow r0.w, r1.w, c19.w
    mul_sat r1.w, r0.w, c9.x
    dp3 r7.x, r9, r10
    add_sat r0.w, r7.x, c13.x
    lrp r6.xy, r1.w, c10, r5.yzxw
    lrp r6.z, r1.w, c10.z, r5.w
    max r1.w, r0.w, c17.w
    lrp r5.xyz, c7.x, r3, r4
    min r0.w, r1.w, c18.x
    lrp r4.xyz, r0.w, r6, r5
    lrp_pp r3.xyz, v0.x, r4, r2
    dp3_sat r5.x, r9, c1
    add_pp r0.w, r7.x, r7.x
    mul_pp r2.xyz, r5.x, c2
    mad_pp r4.xyz, r9, -r0.w, r10
    add r1.w, -r5.x, c19.z
    dp3_sat r4.x, c1, -r4
    mul_pp r2.xyz, r3, r2
    max r0.w, r4.x, c18.z
    mad_pp r1.xyz, r1.w, c4, r1
    mov r4.x, c18.w
    mul r2.w, r4.x, c12.x
    mad r1.xyz, r1, r3, r2
    pow r1.w, r0.w, r2.w
    add r0.w, r0.x, -v4.z
    mul r0.xyz, r1.w, c2
    mul_pp r0.xyz, r5.x, r0
    mad r1.w, c6.x, v3.w, c6.y
    mad_pp r0.xyz, r0, c11.x, r1
    mul r1.w, r1.w, c20.x
    mov r1.xyz, c5
    mad r0.xyz, r0, c3, -r1
    exp_sat r1.w, r1.w
    mad_pp r1.xyz, r1.w, r0, c5
    mul r0.w, r0.w, c18.y
    dp3 r0.x, r1, c15
    mul r1.w, r0.w, r0.w
    mul_sat_pp r2.x, r0.w, r1.w
    mad r0.xyz, r0.x, c16, -r1
    mul_pp r0.w, r2.x, c3.w
    mad_pp r0.xyz, c15.w, r0, r1
    mov_pp oC0, r0

// approximately 117 instruction slots used (11 texture, 106 arithmetic)
 