// VS for ambiant occlusion dot
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// Parameters:
//
//   float4 $s_projectionReciprocal;
//   float2 $s_surfaceSize;
//   float4x4 $s_worldProjectionMatrix;
//   float4x4 $s_worldViewMatrix;
//
//
// Registers:
//
//   Name                     Reg   Size
//   ------------------------ ----- ----
//   $s_surfaceSize           c0       1
//   $s_projectionReciprocal  c1       1
//   $s_worldProjectionMatrix c8       4
//   $s_worldViewMatrix       c12      4
//

    vs_3_0
    def c2, 0.100000001, 1, -1, 0
    dcl_position v0
    dcl_texcoord v1
    dcl_texcoord1 v2
    dcl_position o0
    dcl_texcoord o1
    dcl_texcoord1 o2
    dcl_texcoord2 o3.xyz
// Helix Mod Stereo Params:
dcl_2d s0
def c220, 0, 1, 0.0625, 0.5
// Add a new output to pass s_projectionReciprocal to the pixel shader:
dcl_texcoord3 o4
mov o4, c1
    mul r0.xyz, c13, v1.y
   mad r0.xyz, c12, v1.x, r0
    mad r0.xyz, c14, v1.z, r0
    add o1.xyz, r0, c15
    rcp o1.w, v1.w
    mul r0.xyz, c13, v2.y
    mad r0.xyz, c12, v2.x, r0
    mad o2.xyz, c14, v2.z, r0
    mul r0.xyz, c9.xyww, v0.y
    mad r0.xyz, c8.xyww, v0.x, r0
    mad r0.xyz, c10.xyww, v0.z, r0
    add r0.xyz, r0, c11.xyww
    max r0.z, r0.z, c2.x
    rcp r0.z, r0.z
    mul r0.xy, r0.z, r0
    mov r0.z, c2.y
// Add separation as a first attempt at fixing the clipping issue on the AO
// shadows by moving the bounding box. Adjust at this point to hopefully affect
// the output postition and texcoord2 equally:
texldl r31, c220.z, s0
add r0.x, r0.x, r31.x	
    mul o3.xyz, r0, c1
    rcp r1.x, c0.x
    rcp r1.y, c0.y
    mad o0.xy, r1, c2.zyzw, r0
    mov o0.zw, c2.xywy
    mov o2.w, v2.w

// approximately 22 instruction slots used
 