From 5c87cdd786791b2ed091a8a6b5a12cb8471b34e0 Mon Sep 17 00:00:00 2001 From: Rachael Alexanderson Date: Sun, 2 Jul 2017 21:04:22 -0400 Subject: [PATCH] - Add new "scene" target for custom postprocess shaders - Add "gl_custompost" cvar to turn off custom postprocess shaders completely - Made "scene" affect the screen before 2D drawing, made "screen" affect the entire screen after 2D drawing --- src/gl/renderer/gl_postprocess.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/gl/renderer/gl_postprocess.cpp b/src/gl/renderer/gl_postprocess.cpp index db17bccb1..2c9ccdcde 100644 --- a/src/gl/renderer/gl_postprocess.cpp +++ b/src/gl/renderer/gl_postprocess.cpp @@ -148,6 +148,8 @@ CUSTOM_CVAR(Bool, gl_paltonemap_reverselookup, true, CVAR_ARCHIVE | CVAR_NOINITC CVAR(Float, gl_menu_blur, -1.0f, CVAR_ARCHIVE) +CVAR(Bool, gl_custompost, true, 0) + EXTERN_CVAR(Float, vid_brightness) EXTERN_CVAR(Float, vid_contrast) EXTERN_CVAR(Float, vid_saturation) @@ -178,11 +180,14 @@ void FGLRenderer::PostProcessScene(int fixedcm) ColormapScene(fixedcm); LensDistortScene(); ApplyFXAA(); - RunCustomPostProcessShaders("screen"); + RunCustomPostProcessShaders("scene"); } void FGLRenderer::RunCustomPostProcessShaders(FString target) { + if (!gl_custompost) + return; + for (unsigned int i = 0; i < PostProcessShaders.Size(); i++) { PostProcessShader &shader = PostProcessShaders[i]; @@ -895,6 +900,8 @@ void FGLRenderer::CopyToBackbuffer(const GL_IRECT *bounds, bool applyGamma) m2DDrawer->Draw(); // draw all pending 2D stuff before copying the buffer m2DDrawer->Clear(); + RunCustomPostProcessShaders("screen"); + FGLDebug::PushGroup("CopyToBackbuffer"); if (FGLRenderBuffers::IsEnabled()) {