From b5655efe0ed6708913e13f57700ebe885e609b7f Mon Sep 17 00:00:00 2001 From: Joshua Goins Date: Mon, 4 Apr 2022 11:06:39 -0400 Subject: [PATCH] Fix more stuff in SMAA pass Now it's no longer flipped for some reason, gamma correction soon to follow --- engine/renderer/src/smaapass.cpp | 3 +-- engine/shaders/blend.vert.glsl | 3 ++- engine/shaders/edge.vert.glsl | 3 ++- engine/shaders/smaa_common.glsl | 2 +- 4 files changed, 6 insertions(+), 5 deletions(-) diff --git a/engine/renderer/src/smaapass.cpp b/engine/renderer/src/smaapass.cpp index 50eba2d..8ddf9c7 100755 --- a/engine/renderer/src/smaapass.cpp +++ b/engine/renderer/src/smaapass.cpp @@ -50,7 +50,6 @@ void SMAAPass::render(GFXCommandBuffer* command_buffer, RenderTarget& target) { struct PushConstant { prism::float4 viewport; - Matrix4x4 correction_matrix; } pc; pc.viewport = prism::float4(1.0f / static_cast(target.extent.width), 1.0f / static_cast(target.extent.height), target.extent.width, target.extent.height); @@ -149,7 +148,7 @@ void SMAAPass::create_pipelines() { createInfo.render_pass = render_pass; createInfo.shader_input.push_constants = { - {sizeof(prism::float4) + sizeof(Matrix4x4), 0} + {sizeof(prism::float4), 0} }; createInfo.shader_input.bindings = { diff --git a/engine/shaders/blend.vert.glsl b/engine/shaders/blend.vert.glsl index 076c6b6..8560afa 100644 --- a/engine/shaders/blend.vert.glsl +++ b/engine/shaders/blend.vert.glsl @@ -8,7 +8,8 @@ layout(location = 5) out vec2 outPixUV; void main() { outUV = vec2((gl_VertexIndex << 1) & 2, gl_VertexIndex & 2); - gl_Position = correctionMatrix * vec4(outUV * 2.0 + -1.0, 0.0, 1.0); + gl_Position = vec4(outUV * 2.0 + -1.0, 0.0, 1.0); + outUV.y = 1.0 - outUV.y; SMAABlendingWeightCalculationVS(outUV, outPixUV, outOffset); } diff --git a/engine/shaders/edge.vert.glsl b/engine/shaders/edge.vert.glsl index 57b3973..2348178 100644 --- a/engine/shaders/edge.vert.glsl +++ b/engine/shaders/edge.vert.glsl @@ -7,7 +7,8 @@ layout(location = 1) out vec4 outOffset[3]; void main() { outUV = vec2((gl_VertexIndex << 1) & 2, gl_VertexIndex & 2); - gl_Position = correctionMatrix * vec4(outUV * 2.0 + -1.0, 0.0, 1.0); + gl_Position = vec4(outUV * 2.0 + -1.0, 0.0, 1.0); + outUV.y = 1.0 - outUV.y; SMAAEdgeDetectionVS(outUV, outOffset); } diff --git a/engine/shaders/smaa_common.glsl b/engine/shaders/smaa_common.glsl index 632c047..d6724b0 100644 --- a/engine/shaders/smaa_common.glsl +++ b/engine/shaders/smaa_common.glsl @@ -3,10 +3,10 @@ #define SMAA_PRESET_ULTRA 1 #define SMAA_GLSL_4 1 #define SMAA_PREDICATION 1 +#define SMAA_FLIP_Y 0 layout(push_constant) uniform PushConstant { vec4 viewport; - mat4 correctionMatrix; }; #include "smaa.glsl"