//
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// Parameters:
//
//   float3 DecalDimensions;
//   float4 DecalTilingAndOffset;
//   row_major float4x4 DecalViewMatrix;
//   float ShadowPointLight;
//   row_major float4x4 WorldMatrix;
//   row_major float4x4 global_View;
//   float4 global_ViewInfo;
//   float4 global_ViewPos;
//   row_major float4x4 global_ViewProjection;
//
//
// Registers:
//
//   Name                  Reg   Size
//   --------------------- ----- ----
//   WorldMatrix           c0       4
//   DecalViewMatrix       c4       4
//   DecalDimensions       c8       1
//   DecalTilingAndOffset  c9       1
//   ShadowPointLight      c10      1
//   global_ViewInfo       c237     1
//   global_View           c239     3
//   global_ViewProjection c247     4
//   global_ViewPos        c251     1
//

    vs_3_0
    def c11, 1, 0, 0.5, 0
    dcl_position v0  // In<0,1,2>
    dcl_normal v1  // In<3,4,5>
    dcl_position o0
    dcl_texcoord o1
    dcl_texcoord1 o2.xyz
    dcl_texcoord2 o3
    dcl_texcoord3 o4.xy
    dcl_texcoord4 o5.xyz
    dcl_texcoord5 o6.xyz
    dcl_texcoord6 o7.xyz
    dcl_texcoord7 o8.x

#line 33 "c:\Develop\LSProjects\EyesOfAChild\Tools\Glasses\build\memory"
    mad r0, v0.xyzx, c11.xxxy, c11.yyyx
    dp4 r1.w, c3, r0  // ::worldPosition<3>
    dp4 r1.x, c0, r0  // ::worldPosition<0>
    dp4 r1.y, c1, r0  // ::worldPosition<1>
    dp4 r1.z, c2, r0  // ::worldPosition<2>

#line 36
    dp4 o0.x, c247, r1  // ::main<0>
    dp4 o0.y, c248, r1  // ::main<1>
    dp4 o0.z, c249, r1  // ::main<2>
    dp4 o0.w, c250, r1  // ::main<3>

#line 42
    dp4 o1.z, c6, r1  // ::main<6>
    dp4 o1.w, c7, r1  // ::main<7>

#line 62
    rcp r0.x, c8.x
    rcp r0.y, c8.y

#line 42
    dp4 r2.x, c4, r1  // ::decalSpacePosition<0>
    dp4 r2.y, c5, r1  // ::decalSpacePosition<1>

#line 62
    mad r0.xy, r2, r0, c11.z  // ::unitTexCoords<0,1>

#line 42
    mov o1.xy, r2  // ::main<4,5>

#line 64
    add r0.z, -r0.y, c11.x
    mad o4.xy, r0.xzzw, c9, c9.zwzw  // ::main<15,16>

#line 48
    nrm r0.xyz, v1  // ::localNormalNormalized<0,1,2>

#line 51
    dp3 r2.x, c0, r0  // ::worldNormal<0>
    dp3 r2.y, c1, r0  // ::worldNormal<1>
    dp3 r2.z, c2, r0  // ::worldNormal<2>

#line 54
    nrm r0.xyz, r2  // ::worldNormalNormalized<0,1,2>

#line 68
    dp3 r2.y, c4, r0  // ::decalSpaceNormal<0>
    dp3 r2.z, c5, r0  // ::decalSpaceNormal<1>
    dp3 r2.x, c6, r0  // ::decalSpaceNormal<2>

#line 54
    mov o2.xyz, r0  // ::main<8,9,10>

#line 71
    mul r0.xyz, r2, c11.xyyw
    mad r0.xyz, r2.yzxw, c11.yxyw, -r0  // ::decalSpaceBinormal<1,2,0>

#line 74
    mul r3.xyz, r0.y, c6
    mad r3.xyz, r0.x, c5, r3  // ::worldBinormal<0,1,2>

#line 77
    dp3 r0.w, r3, r3
    rsq r0.w, r0.w
    mul o5.xyz, r0.w, r3  // ::main<17,18,19>

#line 82
    mul r3.xyz, r0, r2
    mad r0.xyz, r2.zxyw, r0.yzxw, -r3  // ::decalSpaceTangent<0,1,2>

#line 85
    mul r2.xyz, r0.y, c5
    mad r0.xyw, r0.x, c4.xyzz, r2.xyzz
    mad r0.xyz, r0.z, c6, r0.xyww  // ::worldTangent<0,1,2>

#line 88
    dp3 r0.w, r0, r0
    rsq r0.w, r0.w
    mul o6.xyz, r0.w, r0  // ::main<20,21,22>

#line 93
    add o7.xyz, -r1, c251  // ::main<23,24,25>

#line 100
    add r0.xyz, r1, -c251
    dp3 r0.x, r0, r0
    rsq r0.x, r0.x
    rcp r0.x, r0.x  // ::vertexDepth<0>

#line 105
    dp4 r0.y, c241, r1  // ::viewPosition<2>

#line 33
    mov o3, r1  // ::main<11,12,13,14>

#line 111
    rcp r0.z, c237.x

#line 98
    mad r0.x, r0.y, -r0.z, r0.x

#line 111
    mul r0.y, r0.z, r0.y  // ::depthNormalized<0>

#line 98
    mov r1.y, c11.y
    slt r0.z, r1.y, c10.x
    mad o8.x, r0.z, r0.x, r0.y  // ::main<26>

// approximately 60 instruction slots used
 