//
// Generated by Microsoft (R) HLSL Shader Compiler 6.3.9600.17672
//
//   using 3Dmigoto v1.2.27 on Mon Feb 08 02:32:45 2016
//
//
// Buffer Definitions: 
//
// cbuffer WorldBuffer
// {
//
//   struct WorldStruct
//   {
//       
//       row_major float4x4 ViewProject;// Offset:    0
//       
//       struct WorldStruct_PerInstanceData
//       {
//           
//           row_major float4x4 World;  // Offset:   64
//           row_major float4x4 WorldViewProject;// Offset:  128
//
//       } PerInstance[256];            // Offset:   64
//
//   } WorldParameters;                 // Offset:    0 Size: 32832
//
// }
//
// cbuffer StreamDeclBuffer
// {
//
//   float4 NormalScaleOffset;          // Offset:    0 Size:    16
//   float4 TexcoordScales;             // Offset:   16 Size:    16
//
// }
//
//
// Resource Bindings:
//
// Name                                 Type  Format         Dim Slot Elements
// ------------------------------ ---------- ------- ----------- ---- --------
// WorldBuffer                       cbuffer      NA          NA    0        1
// StreamDeclBuffer                  cbuffer      NA          NA    3        1
//
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// NORMAL                   0   xyz         0     NONE   float   xyz 
// TEXCOORD                 0   xyzw        1     NONE   float   xy  
// TEXCOORD                 1   xyzw        2     NONE   float   xy  
// POSITION                 0   xyz         3     NONE   float   xyz 
// SV_InstanceID            0   x           4   INSTID    uint   x   
// SV_VertexID              0   x           5   VERTID    uint       
//
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// PSIZE                    0   x           0     NONE    uint       
// POSITION                 0   xyzw        1     NONE   float   xyzw
// TEXCOORD                 0   xyzw        2     NONE   float   xyzw
// TEXCOORD                 2   xyz         3     NONE   float   xyz 
//
vs_5_0
dcl_globalFlags refactoringAllowed
dcl_constantbuffer cb0[2048], dynamicIndexed
dcl_constantbuffer cb3[2], immediateIndexed
dcl_input v0.xyz
dcl_input v1.xy
dcl_input v2.xy
dcl_input v3.xyz
dcl_input_sgv v4.x, instance_id
dcl_output o1.xyzw
dcl_output o2.xyzw
dcl_output o3.xyz
dcl_temps 3
ishl r0.x, v4.x, l(3)
mul r1.xyzw, v3.yyyy, cb0[r0.x + 5].xyzw
mad r1.xyzw, v3.xxxx, cb0[r0.x + 4].xyzw, r1.xyzw
mad r1.xyzw, v3.zzzz, cb0[r0.x + 6].xyzw, r1.xyzw
add o1.xyzw, r1.xyzw, cb0[r0.x + 7].xyzw
mul o2.xy, v1.xyxx, cb3[1].xxxx
mul o2.zw, v2.xxxy, cb3[1].yyyy
mul r0.yzw, cb0[r0.x + 4].yyzx, cb0[r0.x + 6].zzxy
mad r0.yzw, cb0[r0.x + 6].yyzx, cb0[r0.x + 4].zzxy, -r0.yyzw
mad r1.xyz, cb3[0].xxxx, v0.xyzx, cb3[0].yyyy
mul r0.yzw, r0.yyzw, r1.yyyy
mul r2.xyz, cb0[r0.x + 5].zxyz, cb0[r0.x + 6].yzxy
mad r2.xyz, cb0[r0.x + 5].yzxy, cb0[r0.x + 6].zxyz, -r2.xyzx
mad r0.yzw, r1.xxxx, r2.xxyz, r0.yyzw
dp3 r1.x, cb0[r0.x + 4].xyzx, r2.xyzx
lt r1.x, r1.x, l(0.000000)
movc r1.x, r1.x, l(-1.000000), l(1.000000)
mul r2.xyz, cb0[r0.x + 4].zxyz, cb0[r0.x + 5].yzxy
mad r2.xyz, cb0[r0.x + 4].yzxy, cb0[r0.x + 5].zxyz, -r2.xyzx
mad r0.xyz, r1.zzzz, r2.xyzx, r0.yzwy
mul r0.xyz, r0.xyzx, r1.xxxx
dp3 r0.w, r0.xyzx, r0.xyzx
rsq r0.w, r0.w
mul o3.xyz, r0.wwww, r0.xyzx
ret 
// Approximately 25 instruction slots used
