diff --git a/source/lib/ogl.cpp b/source/lib/ogl.cpp index e0bea792bc..575a189383 100644 --- a/source/lib/ogl.cpp +++ b/source/lib/ogl.cpp @@ -1,4 +1,4 @@ -/* Copyright (C) 2017 Wildfire Games. +/* Copyright (C) 2021 Wildfire Games. * * Permission is hereby granted, free of charge, to any person obtaining * a copy of this software and associated documentation files (the @@ -492,4 +492,6 @@ void ogl_Init() #if !CONFIG2_GLES glGetIntegerv(GL_MAX_TEXTURE_UNITS, &ogl_max_tex_units); #endif + + glEnable(GL_TEXTURE_2D); } diff --git a/source/lib/res/graphics/ogl_tex.cpp b/source/lib/res/graphics/ogl_tex.cpp index b9cc9d2a65..338f27d539 100644 --- a/source/lib/res/graphics/ogl_tex.cpp +++ b/source/lib/res/graphics/ogl_tex.cpp @@ -1048,12 +1048,10 @@ Status ogl_tex_bind(Handle ht, size_t unit) // those and ignoring redundant sets isn't feasible. pglActiveTextureARB((int)(GL_TEXTURE0+unit)); - // special case: disable texturing + // special case: resets the active texture. if(ht == 0) { -#if !CONFIG2_GLES - glDisable(GL_TEXTURE_2D); -#endif + glBindTexture(GL_TEXTURE_2D, 0); return INFO::OK; } @@ -1068,9 +1066,6 @@ Status ogl_tex_bind(Handle ht, size_t unit) // we therefore complain so this one can be ruled out. ENSURE(ot->id != 0); -#if !CONFIG2_GLES - glEnable(GL_TEXTURE_2D); -#endif glBindTexture(GL_TEXTURE_2D, ot->id); return INFO::OK; } diff --git a/source/renderer/DecalRData.cpp b/source/renderer/DecalRData.cpp index 64145330be..b5575bef91 100644 --- a/source/renderer/DecalRData.cpp +++ b/source/renderer/DecalRData.cpp @@ -178,9 +178,7 @@ void CDecalRData::RenderDecals( // TerrainRenderer. // Also, need to mark the decals as dirty when water height changes. - // glDisable(GL_TEXTURE_2D); // m_Decal->GetBounds().Render(); - // glEnable(GL_TEXTURE_2D); shader->Uniform(str_shadingColor, decal->m_Decal->GetShadingColor()); diff --git a/source/renderer/OverlayRenderer.cpp b/source/renderer/OverlayRenderer.cpp index 80d42412d7..20c665b827 100644 --- a/source/renderer/OverlayRenderer.cpp +++ b/source/renderer/OverlayRenderer.cpp @@ -421,7 +421,6 @@ void OverlayRenderer::RenderTexturedOverlayLines() ogl_WarnIfError(); pglActiveTextureARB(GL_TEXTURE0); - glEnable(GL_TEXTURE_2D); glEnable(GL_BLEND); glDepthMask(0); @@ -518,7 +517,6 @@ void OverlayRenderer::RenderQuadOverlays() #endif pglActiveTextureARB(GL_TEXTURE0); - glEnable(GL_TEXTURE_2D); glEnable(GL_BLEND); glDepthMask(0); @@ -599,7 +597,6 @@ void OverlayRenderer::RenderForegroundOverlays(const CCamera& viewCamera) glPolygonMode(GL_FRONT_AND_BACK, GL_LINE); pglActiveTextureARB(GL_TEXTURE0); - glEnable(GL_TEXTURE_2D); glEnable(GL_BLEND); glDisable(GL_DEPTH_TEST); @@ -643,7 +640,6 @@ void OverlayRenderer::RenderForegroundOverlays(const CCamera& viewCamera) glEnable(GL_DEPTH_TEST); glDisable(GL_BLEND); - glDisable(GL_TEXTURE_2D); if (g_Renderer.GetOverlayRenderMode() == WIREFRAME) glPolygonMode(GL_FRONT_AND_BACK, GL_FILL); @@ -721,7 +717,6 @@ void OverlayRenderer::RenderSphereOverlays() if (m->spheres.empty()) return; - glDisable(GL_TEXTURE_2D); glEnable(GL_BLEND); glDepthMask(0); diff --git a/source/renderer/Renderer.cpp b/source/renderer/Renderer.cpp index 5a56f1c9ca..0b054ad571 100644 --- a/source/renderer/Renderer.cpp +++ b/source/renderer/Renderer.cpp @@ -753,7 +753,6 @@ void CRenderer::RenderPatches(const CShaderDefines& context, int cullGroup) // setup some renderstate .. pglActiveTextureARB(GL_TEXTURE0); - glDisable(GL_TEXTURE_2D); glLineWidth(2.0f); // render tiles edges @@ -797,7 +796,6 @@ void CRenderer::RenderModels(const CShaderDefines& context, int cullGroup) contextWireframe.Add(str_MODE_WIREFRAME, str_1); glPolygonMode(GL_FRONT_AND_BACK, GL_LINE); - glDisable(GL_TEXTURE_2D); m->CallModelRenderers(contextWireframe, cullGroup, flags); @@ -851,7 +849,6 @@ void CRenderer::RenderTransparentModels(const CShaderDefines& context, int cullG contextWireframe.Add(str_MODE_WIREFRAME, str_1); glPolygonMode(GL_FRONT_AND_BACK, GL_LINE); - glDisable(GL_TEXTURE_2D); m->CallTranspModelRenderers(contextWireframe, cullGroup, flags); @@ -1451,7 +1448,6 @@ void CRenderer::DisplayFrustum() #else glDepthMask(0); glDisable(GL_CULL_FACE); - glDisable(GL_TEXTURE_2D); glEnable(GL_BLEND); glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); @@ -1702,13 +1698,6 @@ void CRenderer::BindTexture(int unit, GLuint tex) pglActiveTextureARB(GL_TEXTURE0+unit); glBindTexture(GL_TEXTURE_2D, tex); -#if !CONFIG2_GLES - if (tex) { - glEnable(GL_TEXTURE_2D); - } else { - glDisable(GL_TEXTURE_2D); - } -#endif } void CRenderer::MakeShadersDirty() diff --git a/source/renderer/TerrainOverlay.cpp b/source/renderer/TerrainOverlay.cpp index 7fd2196c72..db85531bb4 100644 --- a/source/renderer/TerrainOverlay.cpp +++ b/source/renderer/TerrainOverlay.cpp @@ -128,7 +128,6 @@ void TerrainOverlay::RenderBeforeWater() glEnable(GL_POLYGON_OFFSET_FILL); pglActiveTextureARB(GL_TEXTURE0); - glDisable(GL_TEXTURE_2D); StartRender(); diff --git a/source/renderer/TerrainRenderer.cpp b/source/renderer/TerrainRenderer.cpp index a96dbcb5eb..bb423459ed 100644 --- a/source/renderer/TerrainRenderer.cpp +++ b/source/renderer/TerrainRenderer.cpp @@ -188,7 +188,6 @@ void TerrainRenderer::RenderTerrainOverlayTexture(int cullGroup, CMatrix3D& text std::vector& visiblePatches = m->visiblePatches[cullGroup]; - glEnable(GL_TEXTURE_2D); glEnable(GL_BLEND); glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); glDepthMask(0); @@ -590,7 +589,6 @@ void TerrainRenderer::RenderSimpleWater(int cullGroup) g_Renderer.BindTexture(1, 0); pglActiveTextureARB(GL_TEXTURE0_ARB); - glDisable(GL_TEXTURE_2D); waterSimpleTech->EndPass(); #endif