From 34cd699dc2c00ed17b47b94d63aee014c4c572be Mon Sep 17 00:00:00 2001 From: codereader Date: Sun, 13 Feb 2022 10:12:22 +0100 Subject: [PATCH] #5893: Remove the regular IRenderableCollector::addRenderable method, since nothing was using it anymore. Except for the MeasurementTool which is broken by this commit. --- include/irenderable.h | 39 ------------------------ libs/render/CamRenderer.h | 8 ----- radiant/xyview/XYRenderer.h | 10 ------ radiant/xyview/tools/MeasurementTool.cpp | 2 ++ test/Entity.cpp | 13 -------- 5 files changed, 2 insertions(+), 70 deletions(-) diff --git a/include/irenderable.h b/include/irenderable.h index 99f2d3b6cf..b60f5d7fca 100644 --- a/include/irenderable.h +++ b/include/irenderable.h @@ -36,45 +36,6 @@ class IRenderableCollector // Process the given renderable object virtual void processRenderable(Renderable& renderable, const VolumeTest& volume) = 0; - /** - * \brief Submit a renderable object. - * - * This method allows renderable geometry to be submitted under the control - * of a LitObject which will determine whether and how the renderable is - * illuminated by scene lights. Each objected submitted with this method - * will be considered for lighting by the lights which are submitted to the - * same RenderableCollector using addLight(). - * - * Objects may be submitted without a LitObject if they are not affected by - * scene lights. - * - * \param shader - * The Shader object this Renderable will be attached to. - * - * \param renderable - * The renderable object to submit. - * - * \param localToWorld - * The local to world transform that should be applied to this object when - * it is rendered. - * - * \param entity - * Optional IRenderEntity exposing parameters which affect the rendering of - * this Renderable. - * - * \param litObject - * Optional LitObject determining lighting interactions for this - * renderable. This may or may not be the same actual object as the - * OpenGLRenderable, depending on how the object class hierarchy is set up. - * If a single LitObject contains multiple renderables, a separate call to - * this method must be made for each renderable (with the same litObject - * parameter). - */ - virtual void addRenderable(Shader& shader, - const OpenGLRenderable& renderable, - const Matrix4& localToWorld, - const IRenderEntity* entity = nullptr) = 0; - /** * Submits a renderable object that is used for highlighting an object. * Depending on the view, this might be a coloured, transparent overlay diff --git a/libs/render/CamRenderer.h b/libs/render/CamRenderer.h index 3fba0d549c..b6acb47816 100644 --- a/libs/render/CamRenderer.h +++ b/libs/render/CamRenderer.h @@ -52,14 +52,6 @@ class CamRenderer : bool supportsFullMaterials() const override { return true; } - void addRenderable(Shader& shader, - const OpenGLRenderable& renderable, - const Matrix4& localToWorld, - const IRenderEntity* entity = nullptr) override - { - addHighlightRenderable(renderable, localToWorld); - } - void addHighlightRenderable(const OpenGLRenderable& renderable, const Matrix4& localToWorld) override { if (_editMode == IMap::EditMode::Merge && (_flags & Highlight::Flags::MergeAction) != 0) diff --git a/radiant/xyview/XYRenderer.h b/radiant/xyview/XYRenderer.h index 1651adb53b..43d4ce48e7 100644 --- a/radiant/xyview/XYRenderer.h +++ b/radiant/xyview/XYRenderer.h @@ -38,16 +38,6 @@ class XYRenderer : return false; } - void addRenderable(Shader& shader, - const OpenGLRenderable& renderable, - const Matrix4& localToWorld, - const IRenderEntity* entity = nullptr) override - { - addHighlightRenderable(renderable, localToWorld); - - shader.addRenderable(renderable, localToWorld, entity); - } - void addHighlightRenderable(const OpenGLRenderable& renderable, const Matrix4& localToWorld) override { if (_editMode == IMap::EditMode::Merge) diff --git a/radiant/xyview/tools/MeasurementTool.cpp b/radiant/xyview/tools/MeasurementTool.cpp index c723b456dd..dd5264eee5 100644 --- a/radiant/xyview/tools/MeasurementTool.cpp +++ b/radiant/xyview/tools/MeasurementTool.cpp @@ -166,11 +166,13 @@ void MeasurementTool::render(RenderSystem& renderSystem, IRenderableCollector& c { ensureShaders(renderSystem); +#if 0 // Render lines collector.addRenderable(*_wireShader, _lines, Matrix4::getIdentity()); // Render points collector.addRenderable(*_pointShader, _points, Matrix4::getIdentity()); +#endif // Render distance string for (std::size_t i = 1; i < _points.size(); ++i) diff --git a/test/Entity.cpp b/test/Entity.cpp index 44e0085370..e827eb7b55 100644 --- a/test/Entity.cpp +++ b/test/Entity.cpp @@ -456,13 +456,9 @@ namespace bool renderSolid; // Count of submitted and processed renderables, and lights - int renderables = 0; int processedNodes = 0; int highlightRenderables = 0; - // List of renderables and their shaders - std::vector< std::pair > renderablePtrs; - std::vector highlightRenderablePtrs; void processNode(const scene::INodePtr& node, const VolumeTest& volume) override @@ -471,14 +467,6 @@ namespace ++processedNodes; } - void addRenderable(Shader& shader, const OpenGLRenderable& renderable, - const Matrix4& localToWorld, - const IRenderEntity* entity = nullptr) override - { - ++renderables; - renderablePtrs.push_back(std::make_pair(&shader, &renderable)); - } - void addHighlightRenderable(const OpenGLRenderable& renderable, const Matrix4& localToWorld) override { @@ -1019,7 +1007,6 @@ TEST_F(EntityTest, RenderEmptyFuncStatic) RenderFixture rf; rf.renderSubGraph(funcStatic); EXPECT_EQ(rf.nodesVisited, 1); - EXPECT_EQ(rf.collector.renderables, 0); } TEST_F(EntityTest, RenderFuncStaticWithModel)