From 9333b5b61e7910cccb985cb2738eec843985e3e1 Mon Sep 17 00:00:00 2001 From: codereader Date: Sun, 13 Mar 2022 08:47:33 +0100 Subject: [PATCH] #5909: Move OpenGLState type to rendersystem backend, it's not a public interface and only used internally by the renderer. --- include/precompiled_render_interfaces.h | 1 - radiantcore/rendersystem/backend/GLProgramFactory.h | 3 +-- radiantcore/rendersystem/backend/LightInteractions.h | 1 + .../rendersystem/backend/LightingModeRenderer.cpp | 1 + radiantcore/rendersystem/backend/OpenGLShaderPass.h | 2 +- .../rendersystem/backend/OpenGLState.h | 12 +++++++----- radiantcore/rendersystem/backend/OpenGLStateLess.h | 7 ++++++- radiantcore/rendersystem/backend/SceneRenderer.cpp | 2 +- radiantcore/rendersystem/backend/SceneRenderer.h | 3 ++- tools/msvc/DarkRadiantCore.vcxproj | 1 + tools/msvc/DarkRadiantCore.vcxproj.filters | 3 +++ 11 files changed, 24 insertions(+), 12 deletions(-) rename include/iglrender.h => radiantcore/rendersystem/backend/OpenGLState.h (98%) diff --git a/include/precompiled_render_interfaces.h b/include/precompiled_render_interfaces.h index 506f932387..08a3c487ea 100644 --- a/include/precompiled_render_interfaces.h +++ b/include/precompiled_render_interfaces.h @@ -11,4 +11,3 @@ #include "irendersystemfactory.h" #include "igl.h" #include "iglprogram.h" -#include "iglrender.h" diff --git a/radiantcore/rendersystem/backend/GLProgramFactory.h b/radiantcore/rendersystem/backend/GLProgramFactory.h index d43a402032..dd96e5e9bb 100644 --- a/radiantcore/rendersystem/backend/GLProgramFactory.h +++ b/radiantcore/rendersystem/backend/GLProgramFactory.h @@ -1,9 +1,8 @@ #pragma once -#include "iglrender.h" - #include #include +#include "igl.h" namespace render { diff --git a/radiantcore/rendersystem/backend/LightInteractions.h b/radiantcore/rendersystem/backend/LightInteractions.h index cc81488193..1fe42aaac6 100644 --- a/radiantcore/rendersystem/backend/LightInteractions.h +++ b/radiantcore/rendersystem/backend/LightInteractions.h @@ -11,6 +11,7 @@ namespace render { +class OpenGLState; class OpenGLShader; /** diff --git a/radiantcore/rendersystem/backend/LightingModeRenderer.cpp b/radiantcore/rendersystem/backend/LightingModeRenderer.cpp index 713f6ff9d1..62237788c0 100644 --- a/radiantcore/rendersystem/backend/LightingModeRenderer.cpp +++ b/radiantcore/rendersystem/backend/LightingModeRenderer.cpp @@ -5,6 +5,7 @@ #include "OpenGLShaderPass.h" #include "OpenGLShader.h" #include "ObjectRenderer.h" +#include "OpenGLState.h" namespace render { diff --git a/radiantcore/rendersystem/backend/OpenGLShaderPass.h b/radiantcore/rendersystem/backend/OpenGLShaderPass.h index 2bb6de3456..86e503d000 100644 --- a/radiantcore/rendersystem/backend/OpenGLShaderPass.h +++ b/radiantcore/rendersystem/backend/OpenGLShaderPass.h @@ -2,7 +2,7 @@ #include "math/Vector3.h" #include "math/Matrix4.h" -#include "iglrender.h" +#include "OpenGLState.h" #include #include diff --git a/include/iglrender.h b/radiantcore/rendersystem/backend/OpenGLState.h similarity index 98% rename from include/iglrender.h rename to radiantcore/rendersystem/backend/OpenGLState.h index ad49d4244e..d0aa77b1f6 100644 --- a/include/iglrender.h +++ b/radiantcore/rendersystem/backend/OpenGLState.h @@ -1,17 +1,17 @@ #pragma once #include "igl.h" -#include "imodule.h" #include "ishaders.h" #include "ishaderlayer.h" -#include "math/Vector4.h" - -#include +#include "render/Colour4.h" // Full declaration in iglprogram.h class GLProgram; +namespace render +{ + /** * \brief * Data structure encapsulating various parameters of the OpenGL state machine, @@ -241,7 +241,9 @@ class OpenGLState m_pointsize(1), m_linestipple_factor(1), m_linestipple_pattern(0xAAAA), - glProgram(NULL), + glProgram(nullptr), cubeMapMode(IShaderLayer::CUBE_MAP_NONE) { } }; + +} diff --git a/radiantcore/rendersystem/backend/OpenGLStateLess.h b/radiantcore/rendersystem/backend/OpenGLStateLess.h index 361e12d904..d8d4c4ea19 100644 --- a/radiantcore/rendersystem/backend/OpenGLStateLess.h +++ b/radiantcore/rendersystem/backend/OpenGLStateLess.h @@ -1,6 +1,9 @@ #pragma once -#include "iglrender.h" +#include "OpenGLState.h" + +namespace render +{ /** * Comparison class for OpenGLState objects. @@ -36,3 +39,5 @@ struct OpenGLStateLess return self < other; } }; + +} diff --git a/radiantcore/rendersystem/backend/SceneRenderer.cpp b/radiantcore/rendersystem/backend/SceneRenderer.cpp index 9f132684ac..0d819ff206 100644 --- a/radiantcore/rendersystem/backend/SceneRenderer.cpp +++ b/radiantcore/rendersystem/backend/SceneRenderer.cpp @@ -1,7 +1,7 @@ #include "SceneRenderer.h" #include "igl.h" -#include "iglrender.h" +#include "OpenGLState.h" namespace render { diff --git a/radiantcore/rendersystem/backend/SceneRenderer.h b/radiantcore/rendersystem/backend/SceneRenderer.h index 9a7dae3415..c3b1923105 100644 --- a/radiantcore/rendersystem/backend/SceneRenderer.h +++ b/radiantcore/rendersystem/backend/SceneRenderer.h @@ -1,10 +1,11 @@ #pragma once -class OpenGLState; +#include "irender.h" namespace render { +class OpenGLState; class IRenderView; /** diff --git a/tools/msvc/DarkRadiantCore.vcxproj b/tools/msvc/DarkRadiantCore.vcxproj index 84a503e509..383c0cb7d3 100644 --- a/tools/msvc/DarkRadiantCore.vcxproj +++ b/tools/msvc/DarkRadiantCore.vcxproj @@ -1010,6 +1010,7 @@ + diff --git a/tools/msvc/DarkRadiantCore.vcxproj.filters b/tools/msvc/DarkRadiantCore.vcxproj.filters index 3a72614406..50e9af0034 100644 --- a/tools/msvc/DarkRadiantCore.vcxproj.filters +++ b/tools/msvc/DarkRadiantCore.vcxproj.filters @@ -2355,5 +2355,8 @@ src\rendersystem\backend + + src\rendersystem\backend + \ No newline at end of file