// Water Ripples 1

cbuffer _Globals : register(b0)
{
  float1 ConstantVector1D_04_Value : packoffset(c0);
  float1 ConstantVector1D_01_Value : packoffset(c0.y);
  float1 ConstantVector1D_07_Value : packoffset(c0.z);
}

cbuffer _cbPerObject : register(b1)
{

  struct
  {
    row_major float4x4 go_mObjectToView;
    row_major float4x4 go_mObjectToViewPrev;
    float4 go_vPosScale;
    float4 go_vPosBias;
    float4 go_vTexScaleBias;
    float4 go_vObjectId;
    float4 go_Tesselation;
    float4 go_Flags;
    float4 go_vSimpleColor;
  } cbPerObject : packoffset(c0);

}

cbuffer _cbSharedPerViewData : register(b2)
{

  struct
  {
    row_major float4x4 mProjection;
    row_major float4x4 mProjectionPrev;
    row_major float4x4 mViewToViewport;
    row_major float4x4 mViewToWorld;
    row_major float4x4 mViewToWorldPrev;
    row_major float4x4 mFxWorldToSampleSpace;
    float4 vViewRemap;
    float4 vViewDepthRemap;
    float4 vEyeVectorUL;
    float4 vEyeVectorLR;
    float4 vEyeVectorDelta;
    float4 vPixelToEyeVectorScaleBias;
    float4 vViewSpaceUpVector;
    float4 vViewportSize;
    float4 vTesselationEnabled;
    float4 vEngineTime;
    uint nFrameCounter;
    float4 vShaderColor0;
    float4 vShaderColor1;
    float4 vShaderColor2;
    float4 vShaderColor3;
    float4 vShaderColor4;
    float4 vClipPlane;
    float4 vClipPlane0;
    float4 vClipPlane1;
    float4 vClipPlane2;
    float4 vClipPlane3;
    float4 vClipPlane4;
    float4 vClipPlane5;
    float4 vMippedDepthRemap;
    float4 vSpecularOcclusionSettings;
    float4 vSaturatedAmbientOcclusionSettings;
    float4 vLightModelSettings;
    float4 vHDRScale;
    float4 vTweakableShaderParams;
    float4 vAtmosphericScatteringParameters;
    float4 vAtmosphericScatteringParameters2;
    float4 vAtmosphericScatteringParameters3;
    float3 vAtmosphericScatteringMieBeta;
    float3 vAtmosphericScatteringRayleighBeta;
    float3 vAtmosphericScatteringShadowedMieBeta;
    float3 vAtmosphericScatteringShadowedRayleighBeta;
    float3 vAttenuatedSunColor;
    float3 vSunDirectionVS;
    row_major float4x4 mViewToGlobalShadowVSPT;
    float4 vWindDirectionAndStrength;
    float4 vWindDirectionAndStrengthPrev;
    float4 vWindInitialDirectionAndStrength;
    float4 vFxFadeParameters;
    float2 vFxSize;
    int nEnableGBufferSpecPowerAdjustment;
    int nNumCSMCascades;
    float fCSMFadeAdd;
    int nEnableClothBias;
    int2 viNumTiles;
    int nLightTileDebugFlags;
    int nEnableBoxReflections;
    int nSelectedBoxReflectionId;
    int nEnableAtmosphericScatteringBackdrop;
    int nEnableSampleFromUICameraBackbuffer;
    int nFallbackRoomMask;
    float4 vClearColor;
    float3 vGlobalLightDirectionVS;
    float3 vGlobalLightFrontColor;
    float3 vGlobalLightBackColor;
    float4 vShadowAtlasSize;
    float2 vShadowPoissonScale;
    int nShadowSpotKernel;
    int nShadowCSMKernel;
    float4 vJitter;
    float4 vUnjitter;
    int nHashedAlphaPeriod;
    int nIsRenderingOffscreen;
  } cbSharedPerViewData : packoffset(c0);

}

SamplerState samplerLinearClamp_s : register(s4);
SamplerState samplerLinearWrap_s : register(s5);
Texture2D<float4> mapTexture_01 : register(t0);
Texture3D<float4> srvNoise : register(t32);


// 3Dmigoto declarations
#define cmp -
Texture1D<float4> IniParams : register(t120);
Texture2D<float4> StereoParams : register(t125);


void main(
  float4 v0 : SV_POSITION0,
  float4 v1 : TEXCOORD0,
  float4 v2 : TEXCOORD1,
  float4 v3 : TEXCOORD2,
  float4 v4 : TEXCOORD3,
  float4 v5 : TEXCOORD4,
  float4 v6 : TEXCOORD5,
  uint v7 : TEXCOORD6,
  out float4 o0 : SV_TARGET0)
{
  float4 r0,r1,r2,r3;
  uint4 bitmask, uiDest;
  float4 fDest;

  
  
  
  r0.xyz = v1.xyz / -v1.zzz;
  r0.y = cbSharedPerViewData.mViewToWorld._m12 * -r0.y;
  r0.x = -r0.x * cbSharedPerViewData.mViewToWorld._m02 + r0.y;
  r0.x = -r0.z * cbSharedPerViewData.mViewToWorld._m22 + r0.x;
  r0.x = -v1.z * r0.x;
  r0.xy = -cbSharedPerViewData.vAtmosphericScatteringParameters.wz * r0.xx;
  r0.zw = cmp(r0.xy >= float2(0,0));
  r0.xy = float2(9.99999975e-006,9.99999975e-006) + abs(r0.xy);
  r0.zw = r0.zw ? float2(1,1) : float2(-1,-1);
  r0.xy = r0.zw * r0.xy;
  r0.zw = exp2(r0.xy);
  r0.zw = float2(-1,-1) + r0.zw;
  r1.x = cbSharedPerViewData.vAtmosphericScatteringParameters.x + cbSharedPerViewData.mViewToWorld._m32;
  r1.xy = -cbSharedPerViewData.vAtmosphericScatteringParameters.wz * r1.xx;
  r1.xy = exp2(r1.xy);
  r0.zw = r1.xy * r0.zw;
  r0.xy = r0.zw / r0.xy;
  r0.y = 1.10000002 * r0.y;
  r0.yzw = cbSharedPerViewData.vAtmosphericScatteringMieBeta.xyz * r0.yyy;
  r0.xyz = cbSharedPerViewData.vAtmosphericScatteringRayleighBeta.xyz * r0.xxx + r0.yzw;
  r0.w = cbSharedPerViewData.vAtmosphericScatteringParameters3.z * -v1.z;
  r0.w = 2.08136892 * r0.w;
  r0.xyz = r0.xyz * r0.www;
  r0.xyz = exp2(-r0.xyz);
  
  float4 stereo = StereoParams.Load(0);
  //r0.x -= stereo.x * (r0.w  - stereo.y) / cbSharedPerViewData.mProjection._m00;
  
  r1.xyz = cbSharedPerViewData.mViewToWorld._m10_m11_m12 * v1.yyy;
  r1.xyz = v1.xxx * cbSharedPerViewData.mViewToWorld._m00_m01_m02 + r1.xyz;
  r1.xyz = v1.zzz * cbSharedPerViewData.mViewToWorld._m20_m21_m22 + r1.xyz;
  r1.xyz = cbSharedPerViewData.mViewToWorld._m30_m31_m32 + r1.xyz;
  
  r1.xyz = ConstantVector1D_04_Value * r1.xyz;
  r2.xyz = float3(1.95000005,1.95000005,1.95000005) * r1.xyz;
  r0.w = srvNoise.SampleLevel(samplerLinearWrap_s, r2.xyz, 0).x;
  r1.w = srvNoise.SampleLevel(samplerLinearWrap_s, r1.xyz, 0).x;
  r0.w = r0.w * 0.5 + r1.w;
  r2.xyz = float3(3.95000005,3.95000005,3.95000005) * r1.xyz;
  r1.xyz = float3(7.94999981,7.94999981,7.94999981) * r1.xyz;
  r1.x = srvNoise.SampleLevel(samplerLinearWrap_s, r1.xyz, 0).x;
  r1.y = srvNoise.SampleLevel(samplerLinearWrap_s, r2.xyz, 0).x;
  r0.w = r1.y * 0.25 + r0.w;
  r0.w = r1.x * 0.125 + r0.w;
  r0.w = r0.w * 0.533333361 + -0.5;
  r0.w = dot(r0.ww, ConstantVector1D_01_Value);
  r1.xy = v2.xy + r0.ww;
  r1.xyzw = mapTexture_01.SampleBias(samplerLinearClamp_s, r1.xy, ConstantVector1D_07_Value).xyzw;
  r1.xyz = sqrt(r1.xyz);
  o0.w = saturate(v6.w * r1.w);
  r2.xyz = float3(-0.5,-0.5,-0.5) + r1.xyz;
  r2.xyz = r2.xyz + r2.xyz;
  r3.x = dot(v5.xyz, r2.xyz);
  r3.y = dot(v4.xyz, r2.xyz);
  r1.xy = r3.xy * float2(0.5,0.5) + float2(0.5,0.5);
  r0.xyz = r1.xyz * r0.xyz;
  r0.xyz = cbPerObject.go_Flags.yyy * r0.xyz;
  r0.xyz = cbSharedPerViewData.vHDRScale.yyy * r0.xyz;
  o0.xyz = min(float3(7936,7936,7936), r0.xyz);
  return;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
// Generated by Microsoft (R) HLSL Shader Compiler 10.0.10011.16384
//
//   using 3Dmigoto v1.3.11 on Fri Nov 16 13:00:30 2018
//
//
// Buffer Definitions:
//
// cbuffer $Globals
// {
//
//   float1 ConstantVector1D_04_Value;  // Offset:    0 Size:     4
//   float1 ConstantVector1D_01_Value;  // Offset:    4 Size:     4
//   float1 ConstantVector1D_07_Value;  // Offset:    8 Size:     4
//
// }
//
// cbuffer _cbPerObject
// {
//
//   struct S_cbPerObject
//   {
//
//       row_major float4x4 go_mObjectToView;// Offset:    0
//       row_major float4x4 go_mObjectToViewPrev;// Offset:   64
//       float4 go_vPosScale;           // Offset:  128
//       float4 go_vPosBias;            // Offset:  144
//       float4 go_vTexScaleBias;       // Offset:  160
//       float4 go_vObjectId;           // Offset:  176
//       float4 go_Tesselation;         // Offset:  192
//       float4 go_Flags;               // Offset:  208
//       float4 go_vSimpleColor;        // Offset:  224
//
//   } cbPerObject;                     // Offset:    0 Size:   240
//
// }
//
// cbuffer _cbSharedPerViewData
// {
//
//   struct S_cbSharedPerViewData
//   {
//
//       row_major float4x4 mProjection;// Offset:    0
//       row_major float4x4 mProjectionPrev;// Offset:   64
//       row_major float4x4 mViewToViewport;// Offset:  128
//       row_major float4x4 mViewToWorld;// Offset:  192
//       row_major float4x4 mViewToWorldPrev;// Offset:  256
//       row_major float4x4 mFxWorldToSampleSpace;// Offset:  320
//       float4 vViewRemap;             // Offset:  384
//       float4 vViewDepthRemap;        // Offset:  400
//       float4 vEyeVectorUL;           // Offset:  416
//       float4 vEyeVectorLR;           // Offset:  432
//       float4 vEyeVectorDelta;        // Offset:  448
//       float4 vPixelToEyeVectorScaleBias;// Offset:  464
//       float4 vViewSpaceUpVector;     // Offset:  480
//       float4 vViewportSize;          // Offset:  496
//       float4 vTesselationEnabled;    // Offset:  512
//       float4 vEngineTime;            // Offset:  528
//       uint nFrameCounter;            // Offset:  544
//       float4 vShaderColor0;          // Offset:  560
//       float4 vShaderColor1;          // Offset:  576
//       float4 vShaderColor2;          // Offset:  592
//       float4 vShaderColor3;          // Offset:  608
//       float4 vShaderColor4;          // Offset:  624
//       float4 vClipPlane;             // Offset:  640
//       float4 vClipPlane0;            // Offset:  656
//       float4 vClipPlane1;            // Offset:  672
//       float4 vClipPlane2;            // Offset:  688
//       float4 vClipPlane3;            // Offset:  704
//       float4 vClipPlane4;            // Offset:  720
//       float4 vClipPlane5;            // Offset:  736
//       float4 vMippedDepthRemap;      // Offset:  752
//       float4 vSpecularOcclusionSettings;// Offset:  768
//       float4 vSaturatedAmbientOcclusionSettings;// Offset:  784
//       float4 vLightModelSettings;    // Offset:  800
//       float4 vHDRScale;              // Offset:  816
//       float4 vTweakableShaderParams; // Offset:  832
//       float4 vAtmosphericScatteringParameters;// Offset:  848
//       float4 vAtmosphericScatteringParameters2;// Offset:  864
//       float4 vAtmosphericScatteringParameters3;// Offset:  880
//       float3 vAtmosphericScatteringMieBeta;// Offset:  896
//       float3 vAtmosphericScatteringRayleighBeta;// Offset:  912
//       float3 vAtmosphericScatteringShadowedMieBeta;// Offset:  928
//       float3 vAtmosphericScatteringShadowedRayleighBeta;// Offset:  944
//       float3 vAttenuatedSunColor;    // Offset:  960
//       float3 vSunDirectionVS;        // Offset:  976
//       row_major float4x4 mViewToGlobalShadowVSPT;// Offset:  992
//       float4 vWindDirectionAndStrength;// Offset: 1056
//       float4 vWindDirectionAndStrengthPrev;// Offset: 1072
//       float4 vWindInitialDirectionAndStrength;// Offset: 1088
//       float4 vFxFadeParameters;      // Offset: 1104
//       float2 vFxSize;                // Offset: 1120
//       int nEnableGBufferSpecPowerAdjustment;// Offset: 1128
//       int nNumCSMCascades;           // Offset: 1132
//       float fCSMFadeAdd;             // Offset: 1136
//       int nEnableClothBias;          // Offset: 1140
//       int2 viNumTiles;               // Offset: 1144
//       int nLightTileDebugFlags;      // Offset: 1152
//       int nEnableBoxReflections;     // Offset: 1156
//       int nSelectedBoxReflectionId;  // Offset: 1160
//       int nEnableAtmosphericScatteringBackdrop;// Offset: 1164
//       int nEnableSampleFromUICameraBackbuffer;// Offset: 1168
//       int nFallbackRoomMask;         // Offset: 1172
//       float4 vClearColor;            // Offset: 1184
//       float3 vGlobalLightDirectionVS;// Offset: 1200
//       float3 vGlobalLightFrontColor; // Offset: 1216
//       float3 vGlobalLightBackColor;  // Offset: 1232
//       float4 vShadowAtlasSize;       // Offset: 1248
//       float2 vShadowPoissonScale;    // Offset: 1264
//       int nShadowSpotKernel;         // Offset: 1272
//       int nShadowCSMKernel;          // Offset: 1276
//       float4 vJitter;                // Offset: 1280
//       float4 vUnjitter;              // Offset: 1296
//       int nHashedAlphaPeriod;        // Offset: 1312
//       int nIsRenderingOffscreen;     // Offset: 1316
//
//   } cbSharedPerViewData;             // Offset:    0 Size:  1320
//
// }
//
//
// Resource Bindings:
//
// Name                                 Type  Format         Dim Slot Elements
// ------------------------------ ---------- ------- ----------- ---- --------
// samplerLinearClamp                sampler      NA          NA    4        1
// samplerLinearWrap                 sampler      NA          NA    5        1
// mapTexture_01                     texture  float4          2d    0        1
// srvNoise                          texture  float4          3d   32        1
// $Globals                          cbuffer      NA          NA    0        1
// _cbPerObject                      cbuffer      NA          NA    1        1
// _cbSharedPerViewData              cbuffer      NA          NA    2        1
//
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_POSITION              0   xyzw        0      POS   float
// TEXCOORD                 0   xyzw        1     NONE   float   xyz
// TEXCOORD                 1   xyzw        2     NONE   float   xy
// TEXCOORD                 2   xyzw        3     NONE   float
// TEXCOORD                 3   xyzw        4     NONE   float   xyz
// TEXCOORD                 4   xyzw        5     NONE   float   xyz
// TEXCOORD                 5   xyzw        6     NONE   float      w
// TEXCOORD                 6   x           7     NONE    uint
//
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_TARGET                0   xyzw        0   TARGET   float   xyzw
//
ps_5_0
dcl_globalFlags refactoringAllowed
dcl_constantbuffer cb0[1], immediateIndexed
dcl_constantbuffer cb1[14], immediateIndexed
dcl_constantbuffer cb2[58], immediateIndexed
dcl_sampler s4, mode_default
dcl_sampler s5, mode_default
dcl_resource_texture2d (float,float,float,float) t0
dcl_resource_texture3d (float,float,float,float) t32
dcl_input_ps linear v1.xyz
dcl_input_ps linear v2.xy
dcl_input_ps linear v4.xyz
dcl_input_ps linear v5.xyz
dcl_input_ps linear v6.w
dcl_output o0.xyzw
dcl_temps 4
//
// Initial variable locations:
//   v0.x <- IN.HPosition.x; v0.y <- IN.HPosition.y; v0.z <- IN.HPosition.z; v0.w <- IN.HPosition.w;
//   v1.x <- IN.Position.x; v1.y <- IN.Position.y; v1.z <- IN.Position.z; v1.w <- IN.Position.w;
//   v2.x <- IN.TexCoords0.x; v2.y <- IN.TexCoords0.y; v2.z <- IN.TexCoords0.z; v2.w <- IN.TexCoords0.w;
//   v3.x <- IN.Normal.x; v3.y <- IN.Normal.y; v3.z <- IN.Normal.z; v3.w <- IN.Normal.w;
//   v4.x <- IN.Binormal.x; v4.y <- IN.Binormal.y; v4.z <- IN.Binormal.z; v4.w <- IN.Binormal.w;
//   v5.x <- IN.Tangent.x; v5.y <- IN.Tangent.y; v5.z <- IN.Tangent.z; v5.w <- IN.Tangent.w;
//   v6.x <- IN.VertexColor.x; v6.y <- IN.VertexColor.y; v6.z <- IN.VertexColor.z; v6.w <- IN.VertexColor.w;
//   v7.x <- IN.VertexID;
//   o0.x <- <Emissive_PS return value>.col.x; o0.y <- <Emissive_PS return value>.col.y; o0.z <- <Emissive_PS return value>.col.z; o0.w <- <Emissive_PS return value>.col.w
//
#line 95 "AtmosphericScatteringCommon.fx"
div r0.xyz, v1.xyzx, -v1.zzzz  // r0.x <- vEyeDirVS.x; r0.y <- vEyeDirVS.y; r0.z <- vEyeDirVS.z
mul r0.y, -r0.y, cb2[13].z
mad r0.x, -r0.x, cb2[12].z, r0.y
mad r0.x, -r0.z, cb2[14].z, r0.x  // r0.x <- vEyeDirWS.z

#line 35
mul r0.x, r0.x, -v1.z  // r0.x <- height_a

#line 39
mul r0.xy, r0.xxxx, -cb2[53].wzww  // r0.y <- ma; r0.x <- ra

#line 43
ge r0.zw, r0.xxxy, l(0.000000, 0.000000, 0.000000, 0.000000)
add r0.xy, |r0.xyxx|, l(0.000010, 0.000010, 0.000000, 0.000000)
movc r0.zw, r0.zzzw, l(0,0,1.000000,1.000000), l(0,0,-1.000000,-1.000000)
mul r0.xy, r0.xyxx, r0.zwzz  // r0.y <- ma; r0.x <- ra

#line 53
exp r0.zw, r0.xxxy
add r0.zw, r0.zzzw, l(0.000000, 0.000000, -1.000000, -1.000000)

#line 36
add r1.x, cb2[15].z, cb2[53].x  // r1.x <- height_b

#line 40
mul r1.xy, r1.xxxx, -cb2[53].wzww  // r1.y <- mb; r1.x <- rb

#line 53
exp r1.xy, r1.xyxx
mul r0.zw, r0.zzzw, r1.xxxy
div r0.xy, r0.zwzz, r0.xyxx  // r0.x <- fOpticalDepthR; r0.y <- fOpticalDepthM
mul r0.y, r0.y, l(1.100000)
mul r0.yzw, r0.yyyy, cb2[56].xxyz
mad r0.xyz, cb2[57].xyzx, r0.xxxx, r0.yzwy

#line 45
mul r0.w, -v1.z, cb2[55].z  // r0.w <- fLinearDepth

#line 55
mul r0.w, r0.w, l(2.081369)
mul r0.xyz, r0.wwww, r0.xyzx  // r0.x <- tau.x; r0.y <- tau.y; r0.z <- tau.z
exp r0.xyz, -r0.xyzx  // r0.x <- <CalculateAtmosphericAttenuation return value>.x; r0.y <- <CalculateAtmosphericAttenuation return value>.y; r0.z <- <CalculateAtmosphericAttenuation return value>.z

#line 214 "C:\p4\PRJ_PRO\main\runtime\main\neutral\_pro\effects\materialclasses\fxdraw\fx_draw_sa_sprite.materialclass\767dc738be4a1061f87398ff6d866f62.fx"
mul r1.xyz, v1.yyyy, cb2[13].xyzx
mad r1.xyz, v1.xxxx, cb2[12].xyzx, r1.xyzx
mad r1.xyz, v1.zzzz, cb2[14].xyzx, r1.xyzx
add r1.xyz, r1.xyzx, cb2[15].xyzx  // r1.x <- output.Vector.x; r1.y <- output.Vector.y; r1.z <- output.Vector.z

#line 230
mul r1.xyz, r1.xyzx, cb0[0].xxxx  // r1.x <- output.Out.x; r1.y <- output.Out.y; r1.z <- output.Out.z

#line 1202 "common.fx"
mul r2.xyz, r1.xyzx, l(1.950000, 1.950000, 1.950000, 0.000000)

#line 1196
sample_l_indexable(texture3d)(float,float,float,float) r0.w, r2.xyzx, t32.yzwx, s5, l(0.000000)  // r0.w <- <SampleNoise return value>.y
sample_l_indexable(texture3d)(float,float,float,float) r1.w, r1.xyzx, t32.yzwx, s5, l(0.000000)  // r1.w <- <SampleNoise return value>.x

#line 1205
mad r0.w, r0.w, l(0.500000), r1.w
mul r2.xyz, r1.xyzx, l(3.950000, 3.950000, 3.950000, 0.000000)
mul r1.xyz, r1.xyzx, l(7.950000, 7.950000, 7.950000, 0.000000)

#line 1196
sample_l_indexable(texture3d)(float,float,float,float) r1.x, r1.xyzx, t32.xyzw, s5, l(0.000000)  // r1.x <- <SampleNoise return value>.w
sample_l_indexable(texture3d)(float,float,float,float) r1.y, r2.xyzx, t32.yxzw, s5, l(0.000000)  // r1.y <- <SampleNoise return value>.z

#line 1205
mad r0.w, r1.y, l(0.250000), r0.w
mad r0.w, r1.x, l(0.125000), r0.w

#line 260 "C:\p4\PRJ_PRO\main\runtime\main\neutral\_pro\effects\materialclasses\fxdraw\fx_draw_sa_sprite.materialclass\767dc738be4a1061f87398ff6d866f62.fx"
mad r0.w, r0.w, l(0.533333), l(-0.500000)

#line 293
dp2 r0.w, r0.wwww, cb0[0].yyyy  // r0.w <- output.Out.x

#line 321
add r1.xy, r0.wwww, v2.xyxx  // r1.x <- output.Out.x; r1.y <- output.Out.y

#line 355
sample_b_indexable(texture2d)(float,float,float,float) r1.xyzw, r1.xyxx, t0.xyzw, s4, cb0[0].z  // r1.x <- <Sampler_01_Texture return value>.x; r1.y <- <Sampler_01_Texture return value>.y; r1.z <- <Sampler_01_Texture return value>.z; r1.w <- <Sampler_01_Texture return value>.w

#line 121
sqrt r1.xyz, r1.xyzx  // r1.x <- output.Out.x; r1.y <- output.Out.y; r1.z <- output.Out.z

#line 381
mul_sat o0.w, r1.w, v6.w

#line 414
add r2.xyz, r1.xyzx, l(-0.500000, -0.500000, -0.500000, 0.000000)
add r2.xyz, r2.xyzx, r2.xyzx  // r2.x <- output.Signed.x; r2.y <- output.Signed.y; r2.z <- output.Signed.z

#line 399
dp3 r3.x, v5.xyzx, r2.xyzx  // r3.x <- output.Vector.x
dp3 r3.y, v4.xyzx, r2.xyzx  // r3.y <- output.Vector.y

#line 85
mad r1.xy, r3.xyxx, l(0.500000, 0.500000, 0.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)  // r1.x <- output.Unsigned.x; r1.y <- output.Unsigned.y

#line 10 "CommonPS.fx"
mul r0.xyz, r0.xyzx, r1.xyzx  // r0.x <- vInputColor.x; r0.y <- vInputColor.y; r0.z <- vInputColor.z
mul r0.xyz, r0.xyzx, cb1[13].yyyy
mul r0.xyz, r0.xyzx, cb2[51].yyyy
min o0.xyz, r0.xyzx, l(7936.000000, 7936.000000, 7936.000000, 0.000000)

#line 729 "C:\p4\PRJ_PRO\main\runtime\main\neutral\_pro\effects\materialclasses\fxdraw\fx_draw_sa_sprite.materialclass\767dc738be4a1061f87398ff6d866f62.fx"
ret
// Approximately 55 instruction slots used

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
