View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0005951 | DarkRadiant | Renderer | public | 01.05.2022 03:05 | 05.01.2023 16:25 |
Reporter | greebo | Assigned To | greebo | ||
Priority | normal | Severity | normal | Reproducibility | have not tried |
Status | closed | Resolution | fixed | ||
Product Version | 3.0.0 | ||||
Fixed in Version | 3.0.0 | ||||
Summary | 0005951: "Hide Deselected" is slowed when there's a lot of patches present in the scene | ||||
Description | When the patch's visibility is changed, it will remove its geometry from the shader. Unsubscribing signals and ContinuousBuffer management takes up most of the time here. A possible solution to this would be to not actually remove the geometry from the backend shader when a node is hidden. Since each patch geometry is rendered through a list of geometry slots, it might be cheaper to just deactivate the slot (new feature). | ||||
Tags | No tags attached. | ||||
Attached Files | |||||
DarkRadiant: 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 | ||
DarkRadiant: 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 | ||
DarkRadiant: 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 |
Date Modified | Username | Field | Change |
---|---|---|---|
01.05.2022 03:05 | greebo | New Issue | |
01.05.2022 03:05 | greebo | File Added: grafik.png | |
01.05.2022 03:05 | greebo | Assigned To | => greebo |
01.05.2022 03:05 | greebo | Status | new => assigned |
01.05.2022 05:02 | greebo | Changeset attached | => DarkRadiant master 2d437bd3 |
01.05.2022 05:02 | greebo | Changeset attached | => DarkRadiant master 354ceb5e |
01.05.2022 05:02 | greebo | Changeset attached | => DarkRadiant master 24b0611a |
01.05.2022 06:03 | greebo | Status | assigned => resolved |
01.05.2022 06:03 | greebo | Resolution | open => fixed |
01.05.2022 06:03 | greebo | Fixed in Version | => 3.0.0 |
05.01.2023 16:25 | greebo | Status | resolved => closed |