From 4467e33faa861f3bb001734087d5105feea004b7 Mon Sep 17 00:00:00 2001 From: Leandro Nini Date: Thu, 21 Dec 2023 18:41:33 +0100 Subject: [PATCH] Fix 'Could not locate uniform: u_Time' shader error when noise is disabled --- Hurrican/src/DX8Graphics.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Hurrican/src/DX8Graphics.cpp b/Hurrican/src/DX8Graphics.cpp index b3dcfd45..1fa8d464 100644 --- a/Hurrican/src/DX8Graphics.cpp +++ b/Hurrican/src/DX8Graphics.cpp @@ -447,7 +447,8 @@ bool DirectGraphicsClass::SetDeviceInfo() { Shaders[PROGRAM_RENDER].NameClr = Shaders[PROGRAM_RENDER].GetAttribute("a_Color"); Shaders[PROGRAM_RENDER].NameTex = Shaders[PROGRAM_RENDER].GetAttribute("a_Texcoord0"); Shaders[PROGRAM_RENDER].NameMvp = Shaders[PROGRAM_RENDER].GetUniform("u_MVPMatrix"); - NameTime = Shaders[PROGRAM_RENDER].GetUniform("u_Time"); + if (CommandLineParams.ScreenNoise) + NameTime = Shaders[PROGRAM_RENDER].GetUniform("u_Time"); #endif /* USE_GL2 || USE_GL3 */ /* Matrices setup */ @@ -577,7 +578,7 @@ void DirectGraphicsClass::RendertoBuffer(GLenum PrimitiveType, // Check if the program is already in use if (ProgramCurrent != program_next) { Shaders[program_next].Use(); - if (program_next==PROGRAM_RENDER) { + if (CommandLineParams.ScreenNoise && (program_next==PROGRAM_RENDER)) { glUniform1i(NameTime, 50*SDL_GetTicks()/1000); } ProgramCurrent = program_next;