From debeb09dee9ee69fed5c109319a0d1198352011b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?bl=C3=A5haj?= Date: Wed, 7 Jul 2021 21:26:46 +0200 Subject: [PATCH] PostProcessing: Fix OpenGL UBO linking with configuration options --- Source/Core/VideoCommon/PostProcessing.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Source/Core/VideoCommon/PostProcessing.cpp b/Source/Core/VideoCommon/PostProcessing.cpp index ec10b9f108..6cf1397416 100644 --- a/Source/Core/VideoCommon/PostProcessing.cpp +++ b/Source/Core/VideoCommon/PostProcessing.cpp @@ -385,7 +385,10 @@ std::vector PostProcessing::GetPassiveShaderList() bool PostProcessing::Initialize(AbstractTextureFormat format) { m_framebuffer_format = format; - if (!CompileVertexShader() || !CompilePixelShader() || !CompilePipeline()) + // CompilePixelShader must be run first if configuration options are used. + // Otherwise the UBO has a different member list between vertex and pixel + // shaders, which is a link error. + if (!CompilePixelShader() || !CompileVertexShader() || !CompilePipeline()) return false; return true;