//
// Generated by Microsoft (R) D3DX9 Shader Compiler 9.15.779.0000
//
// Parameters:
//
//   float3 LightDir_Dir0;
//   float4x4 g_mViewInverse;
//   float4x4 g_mWorld;
//   float4x4 g_mWorldIT;
//   float4x4 g_mWorldViewProjection;
//
//
// Registers:
//
//   Name                   Reg   Size
//   ---------------------- ----- ----
//   g_mWorldViewProjection c0       4
//   g_mWorld               c4       3
//   g_mWorldIT             c7       3
//   g_mViewInverse         c10      3
//   LightDir_Dir0          c13      1
//
//
// Default values:
//
//   g_mWorldViewProjection
//     c0   = { 0, 0, 0, 0 };
//     c1   = { 0, 0, 0, 0 };
//     c2   = { 0, 0, 0, 0 };
//     c3   = { 0, 0, 0, 0 };
//
//   g_mWorld
//     c4   = { 0, 0, 0, 0 };
//     c5   = { 0, 0, 0, 0 };
//     c6   = { 0, 0, 0, 0 };
//
//   g_mWorldIT
//     c7   = { 0, 0, 0, 0 };
//     c8   = { 0, 0, 0, 0 };
//     c9   = { 0, 0, 0, 0 };
//
//   g_mViewInverse
//     c10  = { 0, 0, 0, 0 };
//     c11  = { 0, 0, 0, 0 };
//     c12  = { 0, 0, 0, 0 };
//
//   LightDir_Dir0
//     c13  = { 1, -1, 1, 0 };
//

    vs_3_0
    def c14, 1, 0, 6, 4
    def c15, 0.5, 0.699999988, 0.100000001, 0
    def c16, 0.00999999978, 0.0199999996, 0, 0
	def c200, 1.0, 90.0, 0.0625, 0.5
    dcl_position v0
    dcl_normal v1
	dcl_2d s0
	dcl_position o0
    dcl_texcoord o1
	dcl_texcoord1 o2
	dcl_texcoord2 o3
	dcl_texcoord3 o4
    mad r1, v0.xyzx, c14.xxxy, c14.yyyx
    dp4 r10.x, r1, c0
    mov r2.x, c10.w
    mov r2.y, c11.w
    mov r2.z, c12.w
    dp4 r3.x, r1, c4
    dp4 r3.y, r1, c5
    dp4 r3.z, r1, c6
    mad r0, v1.xyzx, c14.xxxy, c14.yyyx
    add r3.xyz, r2, -r3
    dp4 r2.x, r0, c7
    dp4 r2.y, r0, c8
    dp4 r2.z, r0, c9
    dp3 r4.x, r3, r3
    dp3 r0.x, -c13, r2
    rsq r2.w, r4.x
    add r0.w, r0.x, r0.x
    mul r3.xyz, r3, r2.w
    mad r0.xyz, r2, -r0.w, -c13
    dp4 r10.y, r1, c1
    dp3 r0.y, r0, r3
    dp3 r0.x, r2, c13
    mov r0.zw, c14.z
    dp4 r10.z, r1, c2
    lit r0, r0
    dp4 r10.w, r1, c3
    add r0.w, r0.z, r0.z
    mad r0.w, r0.y, c15.x, r0.w
    mul r0.z, r0.y, c14.w
    add r0.w, r0.w, c15.y
    min r1.w, r0.z, c14.x
    dp3 r0.x, r2, r3
    mul o1.x, r0.w, r1.w
    mov o1.yz, c14.y
    add r0.w, -r0.x, c14.x
    max r0.x, r0.w, c15.z
    mov r0.yz, c15.xxww
    mov o2.xyz, r0
    add r0.w, r0.x, c16.x
    add o4.xyz, r0, c16.yzzw
    mov o3.xyz, r0.wyzw
	
	texldl r11, c200.z, s0	
	mul r11.x, r11.x, r11.y//c200.x
	add r10.x, r10.x, r11.x
	mov o0, r10

// approximately 41 instruction slots used
 