// ---- Created with 3Dmigoto v1.3.1 on Tue Jun 05 21:36:33 2018

cbuffer uirenderer_VSConstants : register(b6)
{
  float4 m_viewportScale : packoffset(c0);
  float2 m_vsTime : packoffset(c1);
}



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


void main(
  float2 v0 : POSITION0,
  float2 v1 : TEXCOORD0,
  float4 v2 : COLOR0,
  float4 v3 : COLOR1,
  out float2 o0 : TEXCOORD0,
  out float4 o1 : COLOR0,
  out float4 o2 : COLOR1,
  out float3 o3 : TEXCOORD1,
  out float4 o4 : SV_POSITION0)
{
  float4 r0,r1;
  uint4 bitmask, uiDest;
  float4 fDest;

  o0.xy = v1.xy;
  o1.xyzw = v2.xyzw;
  o2.xyzw = v3.xyzw;
  r0.x = cos(m_vsTime.x);
  r0.y = cmp(r0.x >= 0);
  r0.x = log2(abs(r0.x));
  r0.x = 0.600000024 * r0.x;
  r0.x = exp2(r0.x);
  r0.y = r0.y ? 1.000000 : 0;
  r0.y = dot(r0.xx, r0.yy);
  r0.x = -r0.x + r0.y;
  r0.x = r0.x + r0.x;
  sincos(r0.x, r0.x, r1.x);
  r0.y = r1.x;
  r0.z = 0.0500000007;
  r0.z = dot(r0.xyz, r0.xyz);
  r1.z = rsqrt(r0.z);
  r1.xy = r1.zz * r0.xy;
  o3.xyz = float3(1.29999995,1.29999995,0.0649999976) * r1.xyz;
  o4.xy = v0.xy * m_viewportScale.zw + m_viewportScale.xy;
  o4.zw = float2(0.5,1);
float4 params = IniParams.Load(0);
float4 stereo = StereoParams.Load(0);
o4.x = o4.x + stereo.x * params.x;
  return;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
// Generated by Microsoft (R) HLSL Shader Compiler 9.30.9200.20546
//
//   using 3Dmigoto v1.3.1 on Tue Jun 05 21:36:33 2018
//
//
// Buffer Definitions:
//
// cbuffer uirenderer_VSConstants
// {
//
//   float4 m_viewportScale;            // Offset:    0 Size:    16
//   float2 m_vsTime;                   // Offset:   16 Size:     8
//
// }
//
//
// Resource Bindings:
//
// Name                                 Type  Format         Dim Slot Elements
// ------------------------------ ---------- ------- ----------- ---- --------
// uirenderer_VSConstants            cbuffer      NA          NA    6        1
//
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// POSITION                 0   xy          0     NONE   float   xy
// TEXCOORD                 0   xy          1     NONE   float   xy
// COLOR                    0   xyzw        2     NONE   float   xyzw
// COLOR                    1   xyzw        3     NONE   float   xyzw
//
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// TEXCOORD                 0   xy          0     NONE   float   xy
// COLOR                    0   xyzw        1     NONE   float   xyzw
// COLOR                    1   xyzw        2     NONE   float   xyzw
// TEXCOORD                 1   xyz         3     NONE   float   xyz
// SV_POSITION              0   xyzw        4      POS   float   xyzw
//
vs_5_0
dcl_globalFlags refactoringAllowed
dcl_constantbuffer cb6[2], immediateIndexed
dcl_input v0.xy
dcl_input v1.xy
dcl_input v2.xyzw
dcl_input v3.xyzw
dcl_output o0.xy
dcl_output o1.xyzw
dcl_output o2.xyzw
dcl_output o3.xyz
dcl_output_siv o4.xyzw, position
dcl_temps 2
mov o0.xy, v1.xyxx
mov o1.xyzw, v2.xyzw
mov o2.xyzw, v3.xyzw
sincos null, r0.x, cb6[1].x
ge r0.y, r0.x, l(0.000000)
log r0.x, |r0.x|
mul r0.x, r0.x, l(0.600000)
exp r0.x, r0.x
and r0.y, r0.y, l(0x3f800000)
dp2 r0.y, r0.xxxx, r0.yyyy
add r0.x, r0.y, -r0.x
add r0.x, r0.x, r0.x
sincos r0.x, r1.x, r0.x
mov r0.y, r1.x
mov r0.z, l(0.050000)
dp3 r0.z, r0.xyzx, r0.xyzx
rsq r1.z, r0.z
mul r1.xy, r0.xyxx, r1.zzzz
mul o3.xyz, r1.xyzx, l(1.300000, 1.300000, 0.065000, 0.000000)
mad o4.xy, v0.xyxx, cb6[0].zwzz, cb6[0].xyxx
mov o4.zw, l(0,0,0.500000,1.000000)
ret
// Approximately 22 instruction slots used

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