From 3ed4eaf2476d8173b9c4edf3808e378012beee66 Mon Sep 17 00:00:00 2001 From: vladislavbelov Date: Mon, 2 May 2022 21:52:21 +0000 Subject: [PATCH] Removes ogl_WarnIfError from regular renderer code. This was SVN commit r26850. --- source/graphics/ParticleEmitterType.h | 1 - source/graphics/TerrainTextureEntry.cpp | 1 - source/graphics/TerrainTextureManager.cpp | 1 - source/graphics/TextRenderer.cpp | 1 - source/graphics/tests/test_TextureManager.h | 1 - source/gui/ObjectTypes/CMiniMap.cpp | 1 - source/main.cpp | 8 ----- source/ps/CConsole.cpp | 1 - source/ps/CLogger.cpp | 1 - source/ps/GameSetup/GameSetup.cpp | 6 ---- source/ps/VideoMode.cpp | 1 - source/renderer/DebugRenderer.cpp | 1 - source/renderer/HWLightingModelRenderer.cpp | 1 - source/renderer/InstancingModelRenderer.cpp | 1 - source/renderer/ModelRenderer.cpp | 1 - source/renderer/OverlayRenderer.cpp | 1 - source/renderer/PostprocManager.cpp | 1 - source/renderer/RenderModifiers.cpp | 1 - source/renderer/Renderer.cpp | 17 ---------- source/renderer/SceneRenderer.cpp | 33 ++----------------- source/renderer/ShadowMap.cpp | 3 -- source/renderer/TerrainOverlay.cpp | 1 - source/renderer/VertexBuffer.cpp | 1 - source/renderer/VertexBufferManager.cpp | 1 - source/renderer/WaterManager.cpp | 1 - .../backend/gl/DeviceCommandContext.cpp | 10 ++++++ .../tools/atlas/GameInterface/ActorViewer.cpp | 2 -- .../Handlers/GraphicsSetupHandlers.cpp | 1 - 28 files changed, 13 insertions(+), 87 deletions(-) diff --git a/source/graphics/ParticleEmitterType.h b/source/graphics/ParticleEmitterType.h index 68c9e4af9e..5861be05ed 100644 --- a/source/graphics/ParticleEmitterType.h +++ b/source/graphics/ParticleEmitterType.h @@ -19,7 +19,6 @@ #define INCLUDED_PARTICLEEMITTERTYPE #include "graphics/Texture.h" -#include "lib/ogl.h" #include "lib/file/vfs/vfs_path.h" #include "maths/BoundingBoxAligned.h" diff --git a/source/graphics/TerrainTextureEntry.cpp b/source/graphics/TerrainTextureEntry.cpp index 83fec62102..c5043dff39 100644 --- a/source/graphics/TerrainTextureEntry.cpp +++ b/source/graphics/TerrainTextureEntry.cpp @@ -24,7 +24,6 @@ #include "graphics/TerrainProperties.h" #include "graphics/TerrainTextureManager.h" #include "graphics/TextureManager.h" -#include "lib/ogl.h" #include "lib/utf8.h" #include "ps/CLogger.h" #include "ps/CStrInternStatic.h" diff --git a/source/graphics/TerrainTextureManager.cpp b/source/graphics/TerrainTextureManager.cpp index c7761fabdd..04c17c8c6d 100644 --- a/source/graphics/TerrainTextureManager.cpp +++ b/source/graphics/TerrainTextureManager.cpp @@ -24,7 +24,6 @@ #include "graphics/TextureManager.h" #include "lib/allocators/shared_ptr.h" #include "lib/bits.h" -#include "lib/ogl.h" #include "lib/tex/tex.h" #include "lib/timer.h" #include "ps/CLogger.h" diff --git a/source/graphics/TextRenderer.cpp b/source/graphics/TextRenderer.cpp index 44c15631c1..7a1f423a79 100644 --- a/source/graphics/TextRenderer.cpp +++ b/source/graphics/TextRenderer.cpp @@ -23,7 +23,6 @@ #include "graphics/FontManager.h" #include "graphics/ShaderProgram.h" #include "graphics/TextureManager.h" -#include "lib/ogl.h" #include "maths/Matrix3D.h" #include "ps/CStrIntern.h" #include "ps/CStrInternStatic.h" diff --git a/source/graphics/tests/test_TextureManager.h b/source/graphics/tests/test_TextureManager.h index 0e810ff40e..ae5ee330e5 100644 --- a/source/graphics/tests/test_TextureManager.h +++ b/source/graphics/tests/test_TextureManager.h @@ -21,7 +21,6 @@ #include "lib/external_libraries/libsdl.h" #include "lib/file/vfs/vfs.h" #include "lib/tex/tex.h" -#include "lib/ogl.h" #include "ps/XML/Xeromyces.h" class TestTextureManager : public CxxTest::TestSuite diff --git a/source/gui/ObjectTypes/CMiniMap.cpp b/source/gui/ObjectTypes/CMiniMap.cpp index 5ca4b9fa4c..a5d58cd010 100644 --- a/source/gui/ObjectTypes/CMiniMap.cpp +++ b/source/gui/ObjectTypes/CMiniMap.cpp @@ -35,7 +35,6 @@ #include "gui/GUIMatrix.h" #include "lib/bits.h" #include "lib/external_libraries/libsdl.h" -#include "lib/ogl.h" #include "lib/timer.h" #include "maths/MathUtil.h" #include "ps/CLogger.h" diff --git a/source/main.cpp b/source/main.cpp index 561f41b580..68e9b7b669 100644 --- a/source/main.cpp +++ b/source/main.cpp @@ -36,7 +36,6 @@ that of Atlas depending on commandline parameters. #include "lib/secure_crt.h" #include "lib/frequency_filter.h" #include "lib/input.h" -#include "lib/ogl.h" #include "lib/timer.h" #include "lib/external_libraries/libsdl.h" @@ -361,8 +360,6 @@ static void Frame() g_Profiler2.IncrementFrameNumber(); PROFILE2_ATTR("%d", g_Profiler2.GetFrameNumber()); - ogl_WarnIfError(); - // get elapsed time const double time = timer_Time(); g_frequencyFilter->Update(time); @@ -420,12 +417,8 @@ static void Frame() if (g_NetClient) g_NetClient->Poll(); - ogl_WarnIfError(); - g_GUI->TickObjects(); - ogl_WarnIfError(); - if (g_RLInterface) g_RLInterface->TryApplyMessage(); @@ -444,7 +437,6 @@ static void Frame() g_UserReporter.Update(); g_Console->Update(realTimeSinceLastFrame); - ogl_WarnIfError(); if (g_SoundManager) g_SoundManager->IdleTask(); diff --git a/source/ps/CConsole.cpp b/source/ps/CConsole.cpp index 785c98e2df..4df1624b17 100644 --- a/source/ps/CConsole.cpp +++ b/source/ps/CConsole.cpp @@ -25,7 +25,6 @@ #include "gui/CGUI.h" #include "gui/GUIManager.h" #include "lib/code_generation.h" -#include "lib/ogl.h" #include "lib/timer.h" #include "lib/utf8.h" #include "maths/MathUtil.h" diff --git a/source/ps/CLogger.cpp b/source/ps/CLogger.cpp index 96d54f00da..a83de94ebf 100644 --- a/source/ps/CLogger.cpp +++ b/source/ps/CLogger.cpp @@ -22,7 +22,6 @@ #include "graphics/Canvas2D.h" #include "graphics/FontMetrics.h" #include "graphics/TextRenderer.h" -#include "lib/ogl.h" #include "lib/os_path.h" #include "lib/timer.h" #include "lib/utf8.h" diff --git a/source/ps/GameSetup/GameSetup.cpp b/source/ps/GameSetup/GameSetup.cpp index 0a02d3d3ae..4d3a9b3834 100644 --- a/source/ps/GameSetup/GameSetup.cpp +++ b/source/ps/GameSetup/GameSetup.cpp @@ -635,8 +635,6 @@ void InitGraphics(const CmdLineArgs& args, int flags, const std::vector& i RunHardwareDetection(); - ogl_WarnIfError(); - // Optionally start profiler GPU timings automatically // (By default it's only enabled by a hotkey, for performance/compatibility) bool profilerGPUEnable = false; @@ -670,8 +668,6 @@ void InitGraphics(const CmdLineArgs& args, int flags, const std::vector& i ); } - ogl_WarnIfError(); - g_RenderingOptions.ReadConfigAndSetupHooks(); // create renderer @@ -679,8 +675,6 @@ void InitGraphics(const CmdLineArgs& args, int flags, const std::vector& i InitInput(); - ogl_WarnIfError(); - // TODO: Is this the best place for this? if (VfsDirectoryExists(L"maps/")) CXeromyces::AddValidator(g_VFS, "map", "maps/scenario.rng"); diff --git a/source/ps/VideoMode.cpp b/source/ps/VideoMode.cpp index 86936fc182..f137983282 100644 --- a/source/ps/VideoMode.cpp +++ b/source/ps/VideoMode.cpp @@ -23,7 +23,6 @@ #include "gui/GUIManager.h" #include "lib/config2.h" #include "lib/external_libraries/libsdl.h" -#include "lib/ogl.h" #include "lib/tex/tex.h" #include "ps/CConsole.h" #include "ps/CLogger.h" diff --git a/source/renderer/DebugRenderer.cpp b/source/renderer/DebugRenderer.cpp index 35ce4b6e9e..e592802066 100644 --- a/source/renderer/DebugRenderer.cpp +++ b/source/renderer/DebugRenderer.cpp @@ -23,7 +23,6 @@ #include "graphics/Color.h" #include "graphics/ShaderManager.h" #include "graphics/ShaderProgram.h" -#include "lib/ogl.h" #include "maths/BoundingBoxAligned.h" #include "maths/Brush.h" #include "maths/Matrix3D.h" diff --git a/source/renderer/HWLightingModelRenderer.cpp b/source/renderer/HWLightingModelRenderer.cpp index ec55f82223..f900d262e0 100644 --- a/source/renderer/HWLightingModelRenderer.cpp +++ b/source/renderer/HWLightingModelRenderer.cpp @@ -25,7 +25,6 @@ #include "graphics/ModelDef.h" #include "graphics/ShaderProgram.h" #include "lib/bits.h" -#include "lib/ogl.h" #include "lib/sysdep/rtl.h" #include "maths/Vector3D.h" #include "renderer/Renderer.h" diff --git a/source/renderer/InstancingModelRenderer.cpp b/source/renderer/InstancingModelRenderer.cpp index 49530f967e..bdbe17527d 100644 --- a/source/renderer/InstancingModelRenderer.cpp +++ b/source/renderer/InstancingModelRenderer.cpp @@ -22,7 +22,6 @@ #include "graphics/LightEnv.h" #include "graphics/Model.h" #include "graphics/ModelDef.h" -#include "lib/ogl.h" #include "maths/Vector3D.h" #include "maths/Vector4D.h" #include "ps/CLogger.h" diff --git a/source/renderer/ModelRenderer.cpp b/source/renderer/ModelRenderer.cpp index 37e22baab6..3c3ffbe893 100644 --- a/source/renderer/ModelRenderer.cpp +++ b/source/renderer/ModelRenderer.cpp @@ -27,7 +27,6 @@ #include "lib/allocators/DynamicArena.h" #include "lib/allocators/STLAllocators.h" #include "lib/hash.h" -#include "lib/ogl.h" #include "maths/Vector3D.h" #include "maths/Vector4D.h" #include "ps/CLogger.h" diff --git a/source/renderer/OverlayRenderer.cpp b/source/renderer/OverlayRenderer.cpp index 9816d28a56..d723baa1c7 100644 --- a/source/renderer/OverlayRenderer.cpp +++ b/source/renderer/OverlayRenderer.cpp @@ -26,7 +26,6 @@ #include "graphics/Terrain.h" #include "graphics/TextureManager.h" #include "lib/hash.h" -#include "lib/ogl.h" #include "maths/MathUtil.h" #include "maths/Quaternion.h" #include "ps/CStrInternStatic.h" diff --git a/source/renderer/PostprocManager.cpp b/source/renderer/PostprocManager.cpp index 46f04fb6fc..935b1d49b2 100644 --- a/source/renderer/PostprocManager.cpp +++ b/source/renderer/PostprocManager.cpp @@ -23,7 +23,6 @@ #include "graphics/LightEnv.h" #include "graphics/ShaderManager.h" #include "lib/bits.h" -#include "lib/ogl.h" #include "maths/MathUtil.h" #include "ps/ConfigDB.h" #include "ps/CLogger.h" diff --git a/source/renderer/RenderModifiers.cpp b/source/renderer/RenderModifiers.cpp index b20d3b0b2a..f01e2bb7d2 100644 --- a/source/renderer/RenderModifiers.cpp +++ b/source/renderer/RenderModifiers.cpp @@ -24,7 +24,6 @@ #include "graphics/LOSTexture.h" #include "graphics/Model.h" #include "graphics/TextureManager.h" -#include "lib/ogl.h" #include "maths/Vector3D.h" #include "maths/Vector4D.h" #include "maths/Matrix3D.h" diff --git a/source/renderer/Renderer.cpp b/source/renderer/Renderer.cpp index e7d136bdd9..245fadebed 100644 --- a/source/renderer/Renderer.cpp +++ b/source/renderer/Renderer.cpp @@ -27,7 +27,6 @@ #include "graphics/TerrainTextureManager.h" #include "i18n/L10n.h" #include "lib/allocators/shared_ptr.h" -#include "lib/ogl.h" #include "lib/tex/tex.h" #include "gui/GUIManager.h" #include "ps/CConsole.h" @@ -440,7 +439,6 @@ void CRenderer::RenderFrameImpl(const bool renderGUI, const bool renderLogger) PROFILE3("render"); g_Profiler2.RecordGPUFrameStart(); - ogl_WarnIfError(); g_TexMan.UploadResourcesIfNeeded(m->deviceCommandContext.get()); @@ -456,12 +454,9 @@ void CRenderer::RenderFrameImpl(const bool renderGUI, const bool renderLogger) // start new frame BeginFrame(); - ogl_WarnIfError(); - if (g_Game && g_Game->IsGameStarted()) { g_Game->GetView()->Render(); - ogl_WarnIfError(); } m->deviceCommandContext->SetFramebuffer( @@ -471,13 +466,11 @@ void CRenderer::RenderFrameImpl(const bool renderGUI, const bool renderLogger) if (g_AtlasGameLoop && g_AtlasGameLoop->view) { g_AtlasGameLoop->view->DrawCinemaPathTool(); - ogl_WarnIfError(); } if (g_Game && g_Game->IsGameStarted()) { g_Game->GetView()->GetCinema()->Render(); - ogl_WarnIfError(); } RenderFrame2D(renderGUI, renderLogger); @@ -493,10 +486,7 @@ void CRenderer::RenderFrameImpl(const bool renderGUI, const bool renderLogger) PROFILE2_ATTR("blend splats: %zu", stats.m_BlendSplats); PROFILE2_ATTR("particles: %zu", stats.m_Particles); - ogl_WarnIfError(); - g_Profiler2.RecordGPUFrameEnd(); - ogl_WarnIfError(); } void CRenderer::RenderFrame2D(const bool renderGUI, const bool renderLogger) @@ -511,34 +501,29 @@ void CRenderer::RenderFrame2D(const bool renderGUI, const bool renderLogger) // All GUI elements are drawn in Z order to render semi-transparent // objects correctly. g_GUI->Draw(canvas); - ogl_WarnIfError(); } // If we're in Atlas game view, render special overlays (e.g. editor bandbox). if (g_AtlasGameLoop && g_AtlasGameLoop->view) { g_AtlasGameLoop->view->DrawOverlays(canvas); - ogl_WarnIfError(); } { GPU_SCOPED_LABEL(m->deviceCommandContext.get(), "Render console"); g_Console->Render(canvas); - ogl_WarnIfError(); } if (renderLogger) { GPU_SCOPED_LABEL(m->deviceCommandContext.get(), "Render logger"); g_Logger->Render(canvas); - ogl_WarnIfError(); } { GPU_SCOPED_LABEL(m->deviceCommandContext.get(), "Render profiler"); // Profile information g_ProfileViewer.RenderProfile(canvas); - ogl_WarnIfError(); } } @@ -638,8 +623,6 @@ void CRenderer::RenderBigScreenShot(const bool needsPresent) return; } - ogl_WarnIfError(); - CCamera oldCamera = *g_Game->GetView()->GetCamera(); // Resize various things so that the sizes and aspect ratios are correct diff --git a/source/renderer/SceneRenderer.cpp b/source/renderer/SceneRenderer.cpp index decfada8d0..ad8a62f581 100644 --- a/source/renderer/SceneRenderer.cpp +++ b/source/renderer/SceneRenderer.cpp @@ -587,20 +587,17 @@ void CSceneRenderer::RenderReflections( CShaderDefines reflectionsContext = context; reflectionsContext.Add(str_PASS_REFLECTIONS, str_1); + // Render terrain and models RenderPatches(deviceCommandContext, reflectionsContext, CULL_REFLECTIONS); - ogl_WarnIfError(); RenderModels(deviceCommandContext, reflectionsContext, CULL_REFLECTIONS); - ogl_WarnIfError(); RenderTransparentModels(deviceCommandContext, reflectionsContext, CULL_REFLECTIONS, TRANSPARENT); - ogl_WarnIfError(); // Particles are always oriented to face the camera in the vertex shader, // so they don't need the inverted cull face. if (g_RenderingOptions.GetParticles()) { RenderParticles(deviceCommandContext, CULL_REFLECTIONS); - ogl_WarnIfError(); } deviceCommandContext->SetScissors(0, nullptr); @@ -660,14 +657,12 @@ void CSceneRenderer::RenderRefractions( // Render terrain and models RenderPatches(deviceCommandContext, context, CULL_REFRACTIONS); - ogl_WarnIfError(); + // Render debug-related terrain overlays to make it visible under water. ITerrainOverlay::RenderOverlaysBeforeWater(deviceCommandContext); - ogl_WarnIfError(); + RenderModels(deviceCommandContext, context, CULL_REFRACTIONS); - ogl_WarnIfError(); RenderTransparentModels(deviceCommandContext, context, CULL_REFRACTIONS, TRANSPARENT_OPAQUE); - ogl_WarnIfError(); deviceCommandContext->SetScissors(0, nullptr); @@ -766,8 +761,6 @@ void CSceneRenderer::RenderSubmissions( int cullGroup = CULL_DEFAULT; - ogl_WarnIfError(); - // Set the camera g_Renderer.SetViewport(m_ViewCamera.GetViewPort()); @@ -793,8 +786,6 @@ void CSceneRenderer::RenderSubmissions( RenderShadowMap(deviceCommandContext, context); } - ogl_WarnIfError(); - if (m->waterManager.m_RenderWater) { if (waterScissor.GetVolume() > 0 && m->waterManager.WillRenderFancyWater()) @@ -844,18 +835,14 @@ void CSceneRenderer::RenderSubmissions( // render submitted patches and models RenderPatches(deviceCommandContext, context, cullGroup); - ogl_WarnIfError(); // render debug-related terrain overlays ITerrainOverlay::RenderOverlaysBeforeWater(deviceCommandContext); - ogl_WarnIfError(); // render other debug-related overlays before water (so they can be seen when underwater) m->overlayRenderer.RenderOverlaysBeforeWater(deviceCommandContext); - ogl_WarnIfError(); RenderModels(deviceCommandContext, context, cullGroup); - ogl_WarnIfError(); // render water if (m->waterManager.m_RenderWater && g_Game && waterScissor.GetVolume() > 0) @@ -864,45 +851,36 @@ void CSceneRenderer::RenderSubmissions( { // Render transparent stuff, but only the solid parts that can occlude block water. RenderTransparentModels(deviceCommandContext, context, cullGroup, TRANSPARENT_OPAQUE); - ogl_WarnIfError(); m->terrainRenderer.RenderWater(deviceCommandContext, context, cullGroup, &m->shadow); - ogl_WarnIfError(); // Render transparent stuff again, but only the blended parts that overlap water. RenderTransparentModels(deviceCommandContext, context, cullGroup, TRANSPARENT_BLEND); - ogl_WarnIfError(); } else { m->terrainRenderer.RenderWater(deviceCommandContext, context, cullGroup, &m->shadow); - ogl_WarnIfError(); // Render transparent stuff, so it can overlap models/terrain. RenderTransparentModels(deviceCommandContext, context, cullGroup, TRANSPARENT); - ogl_WarnIfError(); } } else { // render transparent stuff, so it can overlap models/terrain RenderTransparentModels(deviceCommandContext, context, cullGroup, TRANSPARENT); - ogl_WarnIfError(); } // render debug-related terrain overlays ITerrainOverlay::RenderOverlaysAfterWater(deviceCommandContext, cullGroup); - ogl_WarnIfError(); // render some other overlays after water (so they can be displayed on top of water) m->overlayRenderer.RenderOverlaysAfterWater(deviceCommandContext); - ogl_WarnIfError(); // particles are transparent so render after water if (g_RenderingOptions.GetParticles()) { RenderParticles(deviceCommandContext, cullGroup); - ogl_WarnIfError(); } if (postprocManager.IsEnabled()) @@ -931,7 +909,6 @@ void CSceneRenderer::RenderSubmissions( // render overlays that should appear on top of all other objects m->overlayRenderer.RenderForegroundOverlays(deviceCommandContext, m_ViewCamera); - ogl_WarnIfError(); } void CSceneRenderer::EndFrame() @@ -964,8 +941,6 @@ void CSceneRenderer::RenderTextOverlays(CCanvas2D& canvas) if (m_DisplayTerrainPriorities) m->terrainRenderer.RenderPriorities(canvas, CULL_DEFAULT); - - ogl_WarnIfError(); } // SetSceneCamera: setup projection and transform of camera and adjust viewport to current view @@ -1155,8 +1130,6 @@ void CSceneRenderer::RenderScene( m_CurrentCullGroup = -1; - ogl_WarnIfError(); - RenderSubmissions(deviceCommandContext, waterScissor); m_CurrentScene = NULL; diff --git a/source/renderer/ShadowMap.cpp b/source/renderer/ShadowMap.cpp index 8541063645..830f787e5b 100644 --- a/source/renderer/ShadowMap.cpp +++ b/source/renderer/ShadowMap.cpp @@ -24,7 +24,6 @@ #include "graphics/ShaderManager.h" #include "gui/GUIMatrix.h" #include "lib/bits.h" -#include "lib/ogl.h" #include "maths/BoundingBoxAligned.h" #include "maths/Brush.h" #include "maths/Frustum.h" @@ -722,8 +721,6 @@ void ShadowMap::RenderDebugBounds() g_Renderer.GetDebugRenderer().DrawBrush(frustumBrush, CColor(1.0f, 0.0f, 0.0f, 0.1f)); g_Renderer.GetDebugRenderer().DrawBrush(frustumBrush, CColor(1.0f, 0.0f, 0.0f, 0.1f), true); } - - ogl_WarnIfError(); } int ShadowMap::GetCascadeCount() const diff --git a/source/renderer/TerrainOverlay.cpp b/source/renderer/TerrainOverlay.cpp index 00b28ef2a3..d2c1937660 100644 --- a/source/renderer/TerrainOverlay.cpp +++ b/source/renderer/TerrainOverlay.cpp @@ -24,7 +24,6 @@ #include "graphics/ShaderProgram.h" #include "graphics/Terrain.h" #include "lib/bits.h" -#include "lib/ogl.h" #include "maths/MathUtil.h" #include "ps/CStrInternStatic.h" #include "ps/Game.h" diff --git a/source/renderer/VertexBuffer.cpp b/source/renderer/VertexBuffer.cpp index 43a2eed553..5ddf0061b0 100644 --- a/source/renderer/VertexBuffer.cpp +++ b/source/renderer/VertexBuffer.cpp @@ -19,7 +19,6 @@ #include "VertexBuffer.h" -#include "lib/ogl.h" #include "lib/sysdep/cpu.h" #include "ps/CLogger.h" #include "ps/Errors.h" diff --git a/source/renderer/VertexBufferManager.cpp b/source/renderer/VertexBufferManager.cpp index c883a50674..0c9b5dd491 100644 --- a/source/renderer/VertexBufferManager.cpp +++ b/source/renderer/VertexBufferManager.cpp @@ -19,7 +19,6 @@ #include "VertexBufferManager.h" -#include "lib/ogl.h" #include "ps/CLogger.h" #define DUMP_VB_STATS 0 // for debugging diff --git a/source/renderer/WaterManager.cpp b/source/renderer/WaterManager.cpp index d2ab8b393b..f19f88bd7a 100644 --- a/source/renderer/WaterManager.cpp +++ b/source/renderer/WaterManager.cpp @@ -23,7 +23,6 @@ #include "graphics/ShaderProgram.h" #include "lib/bits.h" #include "lib/timer.h" -#include "lib/ogl.h" #include "maths/MathUtil.h" #include "maths/Vector2D.h" #include "ps/CLogger.h" diff --git a/source/renderer/backend/gl/DeviceCommandContext.cpp b/source/renderer/backend/gl/DeviceCommandContext.cpp index 861f4ee73c..0b413228ae 100644 --- a/source/renderer/backend/gl/DeviceCommandContext.cpp +++ b/source/renderer/backend/gl/DeviceCommandContext.cpp @@ -334,6 +334,7 @@ void CDeviceCommandContext::UploadBufferRegion( { // Tell the driver that it can reallocate the whole VBO glBufferDataARB(target, buffer->GetSize(), nullptr, buffer->IsDynamic() ? GL_DYNAMIC_DRAW : GL_STATIC_DRAW); + ogl_WarnIfError(); // (In theory, glMapBufferRange with GL_MAP_INVALIDATE_BUFFER_BIT could be used // here instead of glBufferData(..., NULL, ...) plus glMapBuffer(), but with @@ -348,6 +349,7 @@ void CDeviceCommandContext::UploadBufferRegion( else { glBufferSubDataARB(target, dataOffset, dataSize, data); + ogl_WarnIfError(); } } @@ -401,6 +403,7 @@ void CDeviceCommandContext::BindTexture( glBindTexture(m_BoundTextures[unit].target, 0); if (m_BoundTextures[unit].handle != handle) glBindTexture(target, handle); + ogl_WarnIfError(); m_BoundTextures[unit] = {target, handle}; } @@ -422,6 +425,7 @@ void CDeviceCommandContext::BindBuffer(const CBuffer::Type type, CBuffer* buffer const GLenum target = BufferTypeToGLTarget(type); const GLuint handle = buffer ? buffer->GetHandle() : 0; glBindBufferARB(target, handle); + ogl_WarnIfError(); const size_t cacheIndex = static_cast(type); ENSURE(cacheIndex < m_BoundBuffers.size()); m_BoundBuffers[cacheIndex].second = handle; @@ -703,6 +707,8 @@ void CDeviceCommandContext::SetGraphicsPipelineStateImpl( } #endif + ogl_WarnIfError(); + m_GraphicsPipelineStateDesc = pipelineStateDesc; } @@ -726,6 +732,7 @@ void CDeviceCommandContext::BlitFramebuffer( 0, 0, sourceFramebuffer->GetWidth(), sourceFramebuffer->GetHeight(), (sourceFramebuffer->GetAttachmentMask() & destinationFramebuffer->GetAttachmentMask()), GL_NEAREST); + ogl_WarnIfError(); #endif } @@ -776,6 +783,7 @@ void CDeviceCommandContext::SetFramebuffer(CFramebuffer* framebuffer) ENSURE(framebuffer->GetHandle() == 0 || (framebuffer->GetWidth() > 0 && framebuffer->GetHeight() > 0)); m_Framebuffer = framebuffer; glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, framebuffer->GetHandle()); + ogl_WarnIfError(); } void CDeviceCommandContext::ReadbackFramebufferSync( @@ -806,6 +814,7 @@ void CDeviceCommandContext::SetScissors(const uint32_t scissorCount, const Rect* glScissor(m_Scissors[0].x, m_Scissors[0].y, m_Scissors[0].width, m_Scissors[0].height); } } + ogl_WarnIfError(); m_ScissorCount = scissorCount; } @@ -813,6 +822,7 @@ void CDeviceCommandContext::SetViewports(const uint32_t viewportCount, const Rec { ENSURE(viewportCount == 1); glViewport(viewports[0].x, viewports[0].y, viewports[0].width, viewports[0].height); + ogl_WarnIfError(); } void CDeviceCommandContext::SetVertexAttributeFormat( diff --git a/source/tools/atlas/GameInterface/ActorViewer.cpp b/source/tools/atlas/GameInterface/ActorViewer.cpp index fcbaab27bd..5962bc3637 100644 --- a/source/tools/atlas/GameInterface/ActorViewer.cpp +++ b/source/tools/atlas/GameInterface/ActorViewer.cpp @@ -536,8 +536,6 @@ void ActorViewer::Render() } g_Renderer.EndFrame(); - - ogl_WarnIfError(); } void ActorViewer::Update(float simFrameLength, float realFrameLength) diff --git a/source/tools/atlas/GameInterface/Handlers/GraphicsSetupHandlers.cpp b/source/tools/atlas/GameInterface/Handlers/GraphicsSetupHandlers.cpp index 8bd3879a8d..c666eb075a 100644 --- a/source/tools/atlas/GameInterface/Handlers/GraphicsSetupHandlers.cpp +++ b/source/tools/atlas/GameInterface/Handlers/GraphicsSetupHandlers.cpp @@ -28,7 +28,6 @@ #include "graphics/ObjectManager.h" #include "gui/GUIManager.h" #include "lib/external_libraries/libsdl.h" -#include "lib/ogl.h" #include "lib/timer.h" #include "maths/MathUtil.h" #include "ps/CConsole.h"