Changesets: DarkRadiant
master 160c5e87 01.05.2022 09:48 Details Diff |
0005953: Sort OpenGLStates by colour, if all the other checks produced the same result. Darker state colours will be considered less than the ones with brighter colours. |
Affected Issues 0005953 |
|
mod - radiantcore/rendersystem/backend/OpenGLStateLess.h | Diff File | ||
master 56cb8a13 01.05.2022 07:36 Details Diff |
0005952: New IObjectRenderer interface, which is passed on to the various geometry renderers |
Affected Issues 0005952 |
|
add - include/iobjectrenderer.h | Diff File | ||
mod - radiantcore/rendersystem/OpenGLRenderSystem.cpp | Diff File | ||
mod - radiantcore/rendersystem/OpenGLRenderSystem.h | Diff File | ||
mod - radiantcore/rendersystem/backend/ColourShader.cpp | Diff File | ||
mod - radiantcore/rendersystem/backend/FullBrightRenderer.cpp | Diff File | ||
mod - radiantcore/rendersystem/backend/FullBrightRenderer.h | Diff File | ||
mod - radiantcore/rendersystem/backend/GeometryRenderer.h | Diff File | ||
mod - radiantcore/rendersystem/backend/InteractingLight.cpp | Diff File | ||
mod - radiantcore/rendersystem/backend/InteractingLight.h | Diff File | ||
mod - radiantcore/rendersystem/backend/LightingModeRenderer.cpp | Diff File | ||
mod - radiantcore/rendersystem/backend/LightingModeRenderer.h | Diff File | ||
mod - radiantcore/rendersystem/backend/ObjectRenderer.cpp | Diff File | ||
mod - radiantcore/rendersystem/backend/ObjectRenderer.h | Diff File | ||
mod - radiantcore/rendersystem/backend/OpenGLShader.cpp | Diff File | ||
mod - radiantcore/rendersystem/backend/SurfaceRenderer.h | Diff File | ||
mod - radiantcore/rendersystem/backend/WindingRenderer.h | Diff File | ||
mod - tools/msvc/include.vcxproj | Diff File | ||
mod - tools/msvc/include.vcxproj.filters | Diff File | ||
master 24b0611a 01.05.2022 04:32 Details Diff |
0005951: Implement ability to activate/deactivate renderables in GeometryRenderer. |
Affected Issues 0005951 |
|
mod - radiantcore/rendersystem/backend/GeometryRenderer.h | Diff File | ||
master 354ceb5e 01.05.2022 04:24 Details Diff |
0005951: PatchNodes are showing/hiding their geometry now when visibility changes |
Affected Issues 0005951 |
|
mod - radiantcore/patch/PatchNode.cpp | Diff File | ||
mod - radiantcore/patch/PatchNode.h | Diff File | ||
master 2d437bd3 01.05.2022 04:08 Details Diff |
0005951: Extend IGeometryRenderer interface to support showing/hiding single geometry slots. PatchNodes should not remove their geometry when being hidden, but deactivate it instead. Any time the PatchNode is updating the RenderableGeometry instance it will implicitly reactivate it again (since update() will only be called when the node should be rendered in the first place). Internally, the GeometryRenderer will forward all visible geometry slots as collection to the ObjectRenderer, which should exclude the hidden ones. |
Affected Issues 0005951 |
|
mod - include/igeometryrenderer.h | Diff File | ||
mod - libs/render/RenderableGeometry.h | Diff File | ||
mod - radiantcore/rendersystem/backend/GeometryRenderer.h | Diff File | ||
mod - radiantcore/rendersystem/backend/OpenGLShader.cpp | Diff File | ||
mod - radiantcore/rendersystem/backend/OpenGLShader.h | Diff File | ||
master a1504794 30.04.2022 19:13 Details Diff |
0005950: BrushNode keeps track of selected components to avoid iterating over all face instances every time. This part of the front-end pass took 7% of the frame time in a medium-sized map. |
Affected Issues 0005950 |
|
mod - radiantcore/brush/BrushNode.cpp | Diff File | ||
mod - radiantcore/brush/BrushNode.h | Diff File | ||
master 8fd6b44b 30.04.2022 18:54 Details Diff |
0005950: Remove visibility check from PatchNode::onPreRender. Node visibility is already checked by the front end walker, Material visibility is checked by the backend renderer. |
Affected Issues 0005950 |
|
mod - radiantcore/patch/PatchNode.cpp | Diff File | ||
master aeb7d546 30.04.2022 18:40 Details Diff |
0005950: Remove dead code |
Affected Issues 0005950 |
|
mod - radiantcore/rendersystem/backend/FullBrightRenderer.cpp | Diff File | ||
master edb64229 30.04.2022 16:49 Details Diff |
Harmonise a few more SelectionChangedSlot constructions to use std::bind instead of sigc::mem_fun, just to be consistent. | ||
mod - radiantcore/entity/light/LightNode.cpp | Diff File | ||
mod - radiantcore/selection/textool/Node.cpp | Diff File | ||
mod - radiantcore/selection/textool/SelectableVertex.h | Diff File | ||
master 278e229f 30.04.2022 16:43 Details Diff |
Selection change slot is now a std::function. sigc++ slot creation took up almost 10% of map loading time, when setting up the ObservedSelectables in the FaceInstance class. | ||
mod - include/iselection.h | Diff File | ||
master bd7c4f47 30.04.2022 16:29 Details Diff |
Use a std::function instead of a sigc::signal, since we only have one client. Saves a few percent of loading time in maps with lots of brushes. | ||
mod - libs/SurfaceShader.h | Diff File | ||
mod - radiantcore/brush/Face.cpp | Diff File | ||
mod - radiantcore/brush/Face.h | Diff File | ||
master 08f02508 30.04.2022 14:42 Details Diff |
Pass shared_ptr as reference to const | ||
mod - include/inode.h | Diff File | ||
master b78b4922 30.04.2022 08:03 Details Diff |
Reduce default number of frame buffers to 1. | ||
mod - libs/render/GeometryStore.h | Diff File | ||
master 2e4e262b 30.04.2022 04:59 Details Diff |
Add command to display memory used by the geometry store | ||
mod - include/version.h | Diff File | ||
mod - libs/render/ContinuousBuffer.h | Diff File | ||
mod - libs/render/GeometryStore.h | Diff File | ||
mod - libs/wxutil/fsview/Populator.cpp | Diff File | ||
mod - radiantcore/rendersystem/OpenGLRenderSystem.cpp | Diff File | ||
mod - radiantcore/rendersystem/OpenGLRenderSystem.h | Diff File | ||
mod - tools/msvc/libs.vcxproj | Diff File | ||
mod - tools/msvc/libs.vcxproj.filters | Diff File | ||
master 8c4caad6 29.04.2022 17:36 Details Diff |
0005949: Update the renderables whenever the contained model applies the scale to its surfaces. This fixes the model renderables not reacting to undo/redo calls that are directly issued to the StaticModel instance, not the owning node. |
Affected Issues 0005949 |
|
mod - radiantcore/model/StaticModel.cpp | Diff File | ||
mod - radiantcore/model/StaticModel.h | Diff File | ||
mod - radiantcore/model/StaticModelNode.cpp | Diff File | ||
mod - radiantcore/model/StaticModelNode.h | Diff File | ||
master 54cd1b69 29.04.2022 17:23 Details Diff |
0005949: Don't update the renderable geometry in StaticModelNode::_onTransformationChanged() if nothing has changed |
Affected Issues 0005949 |
|
mod - radiantcore/model/StaticModel.cpp | Diff File | ||
mod - radiantcore/model/StaticModel.h | Diff File | ||
mod - radiantcore/model/StaticModelNode.cpp | Diff File | ||
master 81bce098 29.04.2022 14:29 Details Diff |
0005949: Prepare all shaders for rendering, even the ones that are not matching the current view type. Reason is, StaticModelNodes might render highlights through a shader that is not exactly matching the view, and choosing the correct one is a bit inconvenient here. |
Affected Issues 0005949 |
|
mod - radiantcore/rendersystem/OpenGLRenderSystem.cpp | Diff File | ||
master 879e0954 29.04.2022 04:58 Details Diff |
0005949: Show the exception message to the user while we have a chance to. |
Affected Issues 0005949 |
|
mod - radiant/RadiantApp.cpp | Diff File | ||
master 99cfd69c 27.04.2022 19:23 Details Diff |
RenderVertex test exercises all constructors | ||
mod - test/Renderer.cpp | Diff File | ||
master 69522de8 27.04.2022 19:11 Details Diff |
Add simple test for initialising a RenderVertex | ||
mod - test/Renderer.cpp | Diff File | ||
master fa260f0d 26.04.2022 18:53 Details Diff |
0005878: RenderableSemiCircle uses Matrix4 for axis substitution Instead of using a RemapPolicy struct passed via a template parameter (which results in a separate copy of this non-trivial constructor being generated for each axis), pass in a simple Matrix4 which is used to substitute the axes. |
Affected Issues 0005878 |
|
mod - radiantcore/selection/manipulators/Renderables.h | Diff File | ||
mod - radiantcore/selection/manipulators/RotateManipulator.cpp | Diff File | ||
mod - radiantcore/selection/manipulators/RotateManipulator.h | Diff File | ||
master db268ff2 24.04.2022 15:24 Details Diff |
0005948: Move GL draw calls to ObjectRenderer class |
Affected Issues 0005948 |
|
mod - radiantcore/rendersystem/backend/ObjectRenderer.cpp | Diff File | ||
mod - radiantcore/rendersystem/backend/ObjectRenderer.h | Diff File | ||
mod - radiantcore/rendersystem/backend/WindingRenderer.h | Diff File | ||
master 16c0cc56 24.04.2022 15:17 Details Diff |
0005948: WindingRenderer is now using the vertex data in the GeometryStore, drawing them with a custom index set for GL_POLYGON. Remove unused code. |
Affected Issues 0005948 |
|
mod - radiantcore/rendersystem/backend/GeometryRenderer.h | Diff File | ||
mod - radiantcore/rendersystem/backend/OpenGLShader.cpp | Diff File | ||
mod - radiantcore/rendersystem/backend/SurfaceRenderer.h | Diff File | ||
mod - radiantcore/rendersystem/backend/WindingRenderer.h | Diff File | ||
master a895c112 24.04.2022 11:22 Details Diff |
0005948: Simplify the full bright renderer to process all sorted passes in the same manner. The VBOs remain bound throughout the render pass, all single OpenGLRenderables (for selection overlays) should use the regular ObjectRenderer methods to submit their geometry in the assumption that the buffer is bound correctly. This effectively disables the WindingRenderer::renderWinding() method, no brush selection overlays are rendered until it's been migrated. |
Affected Issues 0005948 |
|
mod - radiantcore/rendersystem/backend/FullBrightRenderer.cpp | Diff File | ||
mod - radiantcore/rendersystem/backend/GeometryRenderer.h | Diff File | ||
mod - radiantcore/rendersystem/backend/OpenGLShader.cpp | Diff File | ||
mod - radiantcore/rendersystem/backend/SurfaceRenderer.h | Diff File | ||
master 283ee696 24.04.2022 04:56 Details Diff |
0005948: Use BigPoint to render brush/patch vertices |
Affected Issues 0005948 |
|
mod - radiantcore/brush/BrushNode.cpp | Diff File | ||
mod - radiantcore/patch/PatchNode.cpp | Diff File |