summaryrefslogtreecommitdiff
path: root/src/d3d/shaders/im2d_VS.hlsl
diff options
context:
space:
mode:
Diffstat (limited to 'src/d3d/shaders/im2d_VS.hlsl')
-rw-r--r--src/d3d/shaders/im2d_VS.hlsl30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/d3d/shaders/im2d_VS.hlsl b/src/d3d/shaders/im2d_VS.hlsl
new file mode 100644
index 0000000..20cf3ce
--- /dev/null
+++ b/src/d3d/shaders/im2d_VS.hlsl
@@ -0,0 +1,30 @@
+#include "standardConstants.h"
+
+struct VS_in
+{
+ float4 Position : POSITION;
+ float2 TexCoord : TEXCOORD0;
+ float4 Color : COLOR0;
+};
+
+struct VS_out {
+ float4 Position : POSITION;
+ float3 TexCoord0 : TEXCOORD0;
+ float4 Color : COLOR0;
+};
+
+float4 xform : register(c41);
+
+VS_out main(in VS_in input)
+{
+ VS_out output;
+
+ output.Position = input.Position;
+ output.Position.xy = output.Position.xy * xform.xy + xform.zw;
+ output.TexCoord0.z = clamp((output.Position.w - fogEnd)*fogRange, fogDisable, 1.0);
+ output.Position.xyz *= output.Position.w;
+ output.Color = input.Color;
+ output.TexCoord0.xy = input.TexCoord;
+
+ return output;
+}