From d040cc6767c03ca34747198fc96b45ef28cb0b20 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Leclercq?= Date: Sun, 21 Nov 2021 19:04:09 +0100 Subject: [PATCH] Shader/GlslWriter: Fix gl_Position.z remapping --- src/Nazara/Shader/GlslWriter.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Nazara/Shader/GlslWriter.cpp b/src/Nazara/Shader/GlslWriter.cpp index dd36a210c..c7672365c 100644 --- a/src/Nazara/Shader/GlslWriter.cpp +++ b/src/Nazara/Shader/GlslWriter.cpp @@ -1151,11 +1151,12 @@ namespace Nz AppendLine(targetName, " = ", outputStructVarName, ".", name, ";"); if (isOutputPosition) { + // https://veldrid.dev/articles/backend-differences.html if (m_environment.flipYPosition) AppendLine(targetName, ".y *= ", s_flipYUniformName, ";"); if (m_environment.remapZPosition) - AppendLine(targetName, ".z = ", targetName, ".z * 2.0 - 1.0;"); + AppendLine(targetName, ".z = ", targetName, ".z * 2.0 - ", targetName, ".w; "); } }