//shadows
// Generated by Microsoft (R) HLSL Shader Compiler 10.0.10011.16384
//
//   using 3Dmigoto v1.3.16 on Mon Aug 17 01:50:42 2020
//
//
// Buffer Definitions:
//
// cbuffer WorldViewGlobals
// {
//
//   row_major float4x4 g_ViewProjMatrix;// Index:    0 1 2 3          Components:    16
//   row_major float4x4 g_ViewProjSS;   // Index:    4 5 6 7          Components:    16 [unused]
//   row_major float4x4 g_ViewProjSSInverseTranspose;// Index:    8 9 10 11        Components:    16 [unused]
//   row_major float4x4 g_ViewMatrix;   // Index:   12 13 14 15       Components:    16 [unused]
//   row_major float4x4 g_NDCToWorld;   // Index:   16 17 18 19       Components:    16 [unused]
//   row_major float4x4 g_OverlaySamplingMatrix;// Index:   20 21 22 23       Components:    16 [unused]
//   row_major float4x4 g_ShadowMapSamplingMatrix;// Index:   24 25 26 27       Components:    16 [unused]
//   row_major float4x4 g_ShadowMapSamplingMatrixInverse;// Index:   28 29 30 31       Components:    16 [unused]
//   float4 g_vDynLightingGridInfo;     // Index:   32.xyzw           Components:     4 [unused]
//   float3 g_vLightDirection;          // Index:   33.xyz            Components:     3 [unused]
//   float g_ShadowZBias;               // Index:   33.w              Components:     1 [unused]
//   float4 g_MainPassDimensions;       // Index:   34.xyzw           Components:     4 [unused]
//   float4 g_FinalDimensions;          // Index:   35.xyzw           Components:     4 [unused]
//   float4 g_ShadowMapDimensions;      // Index:   36.xyzw           Components:     4 [unused]
//   int g_bSSOverlay;                  // Index:   37.x              Components:     1 [unused]
//   int g_bShadows;                    // Index:   37.y              Components:     1 [unused]
//   int g_nPixelsPerBlock;             // Index:   37.z              Components:     1 [unused]
//   uint g_nRTSamples;                 // Index:   37.w              Components:     1 [unused]
//   float g_fMipBias;                  // Index:   38.x              Components:     1 [unused]
//   float2 g_vNearFar;                 // Index:   38.yz             Components:     2 [unused]
//   float g_SceneExposure;             // Index:   38.w              Components:     1 [unused]
//   float g_InvSceneExposure;          // Index:   39.x              Components:     1 [unused]
//   float g_IntermediateExposure;      // Index:   39.y              Components:     1 [unused]
//   float g_InvIntermediateExposure;   // Index:   39.z              Components:     1 [unused]
//   float4 g_vFogParams;               // Index:   40.xyzw           Components:     4 [unused]
//   float4 g_vFogSkyColor_IntegralDensity;// Index:   41.xyzw           Components:     4 [unused]
//   float3 g_vFogLightColor;           // Index:   42.xyz            Components:     3 [unused]
//   float3 g_vWorldWrapTranslation;    // Index:   43.xyz            Components:     3 [unused]
//   float3 g_vEyePosition;             // Index:   44.xyz            Components:     3 [unused]
//   float3 g_vLightColor;              // Index:   45.xyz            Components:     3 [unused]
//   float4 g_EnvSHPremultipliedIrradiance[7];// Index:   46-52             Components:    28 [unused]
//   float4 g_EnvSHRadiance[7];         // Index:   53-59             Components:    28 [unused]
//   float3 g_vSkySH;                   // Index:   60.xyz            Components:     3 [unused]
//   float g_DoTonemap;                 // Index:   60.w              Components:     1 [unused]
//   float g_LightMapWeight;            // Index:   61.x              Components:     1 [unused]
//   float g_fModelTime;                // Index:   61.y              Components:     1 [unused]
//   float2 g_vPixelMultiplier;         // Index:   61.zw             Components:     2 [unused]
//   float4 g_FOWFullFogParchmentUVTransform;// Index:   62.xyzw           Components:     4 [unused]
//   float3 g_FOWCoastStripeColor;      // Index:   63.xyz            Components:     3 [unused]
//   float g_FOWCoastStripeThickness;   // Index:   63.w              Components:     1 [unused]
//   float3 g_FOWTintColor;             // Index:   64.xyz            Components:     3 [unused]
//   float g_fFOWBorderNoiseUVScale;    // Index:   64.w              Components:     1 [unused]
//   float3 g_vFOWBorderColor;          // Index:   65.xyz            Components:     3 [unused]
//   float g_fFOWBorderNoiseIntensity;  // Index:   65.w              Components:     1 [unused]
//   float3 g_FOWTerrainHatchColor;     // Index:   66.xyz            Components:     3 [unused]
//   float g_FOWTerrainHatchTextureCount;// Index:   66.w              Components:     1 [unused]
//   float4 g_FOWTerrainHatchUVTransform;// Index:   67.xyzw           Components:     4 [unused]
//   float3 g_FOWModelsHatchColor;      // Index:   68.xyz            Components:     3 [unused]
//   float g_FOWModelsHatchTextureCount;// Index:   68.w              Components:     1 [unused]
//   float4 g_FOWModelsHatchUVTransform;// Index:   69.xyzw           Components:     4 [unused]
//   float3 g_FOWModelsStrokeColor;     // Index:   70.xyz            Components:     3 [unused]
//   float g_FOWModelsStrokeOpacity;    // Index:   70.w              Components:     1 [unused]
//   float4 g_FOWFlowLineColor;         // Index:   71.xyzw           Components:     4 [unused]
//   float3 g_FOWFlowLinePositionBias;  // Index:   72.xyz            Components:     3 [unused]
//   float g_FOWFlowLineThickness;      // Index:   72.w              Components:     1 [unused]
//   float g_FOWModelsParchmentWeight;  // Index:   73.x              Components:     1 [unused]
//   float g_FOWModelsStrokeThickness;  // Index:   73.y              Components:     1 [unused]
//   float g_FOWStrokeOpacityMultiplier;// Index:   73.z              Components:     1 [unused]
//   row_major float4x4 g_TerrainHexToWorld;// Index:   74 75 76 77       Components:    16 [unused]
//   float g_TerrainFlatHeight;         // Index:   78.x              Components:     1 [unused]
//
// }
//
// Resource bind info for g_SplineData
// {
//
//   float $Element;                    // Index:    0.x              Components:     1
//
// }
//
//
// Resource Bindings:
//
// Name                                 Type  Format         Dim Slot Elements
// ------------------------------ ---------- ------- ----------- ---- --------
// g_SplineData                      texture  struct         r/o    0        1
// WorldViewGlobals                  cbuffer      NA          NA    1        1
//
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// POSITION                 0   xy          0     NONE    uint   xy
// RigidModelDynamics_Tint_Spline     0   xyzw        1     NONE   float   xyzw
// RigidModelDynamics_Tint_Spline     1   xyzw        2     NONE   float   xyzw
// RigidModelDynamics_Tint_Spline     2   xyzw        3     NONE   float   xyzw
// RigidModelDynamics_Tint_Spline     3   xyzw        4     NONE   float
// RigidModelDynamics_Tint_Spline     4   xyzw        5     NONE   float
// RigidModelDynamics_Tint_Spline     5   xyzw        6     NONE   float   xyzw
// RigidModelDynamics_Tint_Spline     6   xy          7     NONE   float
//
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_POSITION              0   xyzw        0      POS   float   xyzw
//
vs_5_0

dcl_constantbuffer cb12[0], immediateIndexed

dcl_globalFlags refactoringAllowed
dcl_constantbuffer cb1[4], immediateIndexed
dcl_resource_structured t0, 4
dcl_input v0.xy
dcl_input v1.xyzw
dcl_input v2.xyzw
dcl_input v3.xyzw
dcl_input v6.xyzw
dcl_output_siv o0.xyzw, position
dcl_temps 6
ushr r0.x, v0.x, l(16)
f16tof32 r0.x, r0.x
mad r0.x, r0.x, v6.y, v6.z
max r0.x, r0.x, l(0.000000)
min r0.x, r0.x, v6.w
round_ni r0.y, r0.x
add r0.x, -r0.y, r0.x
round_ne r0.z, v6.x
mad r0.y, r0.y, l(6.000000), r0.z
ftoi r0.y, r0.y
ld_structured_indexable(structured_buffer, stride=4)(mixed,mixed,mixed,mixed) r1.x, r0.y, l(0), t0.xxxx
iadd r2.xyzw, r0.yyyy, l(1, 2, 3, 4)
iadd r3.xyzw, r0.yyyy, l(5, 6, 7, 8)
ld_structured_indexable(structured_buffer, stride=4)(mixed,mixed,mixed,mixed) r1.z, r2.y, l(0), t0.xxxx
add r0.y, -r0.x, l(1.000000)
mul r0.z, r0.y, r0.y
ld_structured_indexable(structured_buffer, stride=4)(mixed,mixed,mixed,mixed) r1.y, r2.x, l(0), t0.xxxx
dp2 r0.w, r0.xxxx, r0.yyyy
ld_structured_indexable(structured_buffer, stride=4)(mixed,mixed,mixed,mixed) r2.x, r2.z, l(0), t0.xxxx
ld_structured_indexable(structured_buffer, stride=4)(mixed,mixed,mixed,mixed) r2.y, r2.w, l(0), t0.xxxx
ld_structured_indexable(structured_buffer, stride=4)(mixed,mixed,mixed,mixed) r2.z, r3.x, l(0), t0.xxxx
mul r4.xyz, r0.wwww, r2.xyzx
mad r4.xyz, r0.zzzz, r1.xyzx, r4.xyzx
add r0.zw, -r1.xxxy, r2.xxxy
mul r1.x, r0.x, r0.x
ld_structured_indexable(structured_buffer, stride=4)(mixed,mixed,mixed,mixed) r5.z, r3.w, l(0), t0.xxxx
ld_structured_indexable(structured_buffer, stride=4)(mixed,mixed,mixed,mixed) r5.x, r3.y, l(0), t0.xxxx
ld_structured_indexable(structured_buffer, stride=4)(mixed,mixed,mixed,mixed) r5.y, r3.z, l(0), t0.xxxx
mad r1.xyz, r1.xxxx, r5.xyzx, r4.xyzx
add r2.xy, -r2.xyxx, r5.xyxx
mul r2.xy, r0.xxxx, r2.xyxx
mad r0.xy, r0.yyyy, r0.zwzz, r2.xyxx
add r0.xy, r0.xyxx, r0.xyxx
dp2 r0.z, r0.xyxx, r0.xyxx
rsq r0.z, r0.z
mul r0.xy, r0.zzzz, r0.xyxx
mov r0.z, -r0.x
and r0.xw, v0.xxxy, l(0x0000ffff, 0, 0, 0x0000ffff)
f16tof32 r0.xw, r0.xxxw
mad r2.xy, r0.yzyy, r0.xxxx, r1.xyxx
add r2.z, r0.w, r1.z
mov r2.w, l(1.000000)
dp4 r0.x, r2.xyzw, v2.xyzw
mul r0.xyzw, r0.xxxx, cb1[1].xyzw
dp4 r1.x, r2.xyzw, v1.xyzw
dp4 r1.y, r2.xyzw, v3.xyzw
mad r0.xyzw, r1.xxxx, cb1[0].xyzw, r0.xyzw
mad r0.xyzw, r1.yyyy, cb1[2].xyzw, r0.xyzw
add o0.xyzw, r0.xyzw, cb1[3].xyzw
ret
// Approximately 50 instruction slots used
