summaryrefslogtreecommitdiffstats
path: root/src/extras/shaders/neoGloss_VS.hlsl
diff options
context:
space:
mode:
authoraap <aap@papnet.eu>2020-08-19 16:10:22 +0200
committeraap <aap@papnet.eu>2020-08-19 16:10:22 +0200
commit827ba62671c6e2efe96259a0f130a4d167d14c2a (patch)
tree53bbc586e9a44d19d0cd1a67a69e9c49d9625662 /src/extras/shaders/neoGloss_VS.hlsl
parentchanging silly streaming memory limit (diff)
downloadre3-827ba62671c6e2efe96259a0f130a4d167d14c2a.tar
re3-827ba62671c6e2efe96259a0f130a4d167d14c2a.tar.gz
re3-827ba62671c6e2efe96259a0f130a4d167d14c2a.tar.bz2
re3-827ba62671c6e2efe96259a0f130a4d167d14c2a.tar.lz
re3-827ba62671c6e2efe96259a0f130a4d167d14c2a.tar.xz
re3-827ba62671c6e2efe96259a0f130a4d167d14c2a.tar.zst
re3-827ba62671c6e2efe96259a0f130a4d167d14c2a.zip
Diffstat (limited to '')
-rw-r--r--src/extras/shaders/neoGloss_VS.hlsl35
1 files changed, 35 insertions, 0 deletions
diff --git a/src/extras/shaders/neoGloss_VS.hlsl b/src/extras/shaders/neoGloss_VS.hlsl
new file mode 100644
index 00000000..d166171c
--- /dev/null
+++ b/src/extras/shaders/neoGloss_VS.hlsl
@@ -0,0 +1,35 @@
+#include "standardConstants.h"
+
+struct VS_in
+{
+ float4 Position : POSITION;
+ float2 TexCoord : TEXCOORD0;
+};
+
+struct VS_out
+{
+ float4 Position : POSITION;
+ float3 TexCoord0 : TEXCOORD0;
+ float3 Normal : COLOR0;
+ float3 Light : COLOR1;
+};
+
+float3 eye : register(c41);
+
+VS_out main(in VS_in input)
+{
+ VS_out output;
+
+ output.Position = mul(combinedMat, input.Position);
+ float3 Vertex = mul(worldMat, input.Position).xyz;
+ output.TexCoord0.xy = input.TexCoord;
+
+ float3 viewVec = normalize(eye - Vertex);
+ float3 Light = normalize(viewVec - lights[0].direction.xyz);
+ output.Normal = 0.5*(1.0 + float3(0.0, 0.0, 1.0)); // compress
+ output.Light = 0.5*(1.0 + Light); //
+
+ output.TexCoord0.z = clamp((output.Position.w - fogEnd)*fogRange, fogDisable, 1.0);
+
+ return output;
+}