View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0005364 | DarkRadiant | GUI | public | 22.10.2020 20:04 | 25.06.2021 04:50 |
Reporter | Judith | Assigned To | orbweaver | ||
Priority | low | Severity | feature | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Platform | x64 | OS | Windows | OS Version | 7 |
Product Version | 2.8.0 | ||||
Target Version | 2.10.0 | Fixed in Version | 2.10.0 | ||
Summary | 0005364: Better visual representation of light entities in views | ||||
Description | Lights in DR have always been represented by a wireframe 'diamond' that uses the color value set up in a _color spawnarg. If you use a dark color scheme for DR (and I suppose many mappers do), finding lights in your map that have intensity below RGB 96 becomes a real problem. You can misplace a few lights this way, and finding them later or debugging light-related problems gets difficult. How about giving our 'diamond' a permanent black wireframe or outline, and filling it with light _color value? Something along these lines. Other engines typically use icons/sprites for entities, but I guess that sounds like a lot of work. | ||||
Steps To Reproduce | - Go to View -> Colors - Switch the color scheme to dark - Place a light entity and change its color to RGB 64 - Deselect the light. - Zoom out the view. Now try to find the light ;) | ||||
Tags | No tags attached. | ||||
Example light. |
|
Would it help if there was an option to disable colouring of light entities, and make them all a single colour (e.g. the bright magenta that was the default before we had per-light colouring)? | |
I think that should work, yeah :) | |
Implemented in f7f1720bd3109909beea110ac0ed55e1d9d92bc6. A new checkbox in the View -> Colours dialog forces all light volumes to be rendered in the colour specified by the colour scheme, rather than varying on a per-light basis. | |
DarkRadiant: master 45a25edb 17.12.2020 14:02 Details Diff |
0005364: primitivise model parameter to TreeView::CreateWithModel() Despite requiring a TreeModel::Ptr argument, CreateWithModel() never made any use of either the shared_ptr or the TreeModel interface, since the passed argument was immediately decomposed to a simple wxDataViewModel pointer. We now pass the wxDataViewModel pointer directly, giving increased flexibility to code which might want to use a TreeView with a simpler wxWidgets data model. |
Affected Issues 0005364 |
|
mod - libs/wxutil/EntityClassChooser.cpp | Diff File | ||
mod - libs/wxutil/KeyValueTable.cpp | Diff File | ||
mod - libs/wxutil/TreeView.cpp | Diff File | ||
mod - libs/wxutil/TreeView.h | Diff File | ||
mod - libs/wxutil/fsview/FileSystemView.cpp | Diff File | ||
mod - plugins/dm.conversation/ConversationDialog.cpp | Diff File | ||
mod - plugins/dm.conversation/ConversationEditor.cpp | Diff File | ||
mod - plugins/dm.difficulty/DifficultyEditor.cpp | Diff File | ||
mod - plugins/dm.editing/AIHeadChooserDialog.cpp | Diff File | ||
mod - plugins/dm.editing/AIVocalSetChooserDialog.cpp | Diff File | ||
mod - plugins/dm.editing/MissionInfoEditDialog.cpp | Diff File | ||
mod - plugins/dm.gui/GuiSelector.cpp | Diff File | ||
mod - plugins/dm.gui/XDataSelector.cpp | Diff File | ||
mod - plugins/dm.gui/XdFileChooserDialog.cpp | Diff File | ||
mod - plugins/dm.objectives/ComponentsDialog.cpp | Diff File | ||
mod - plugins/dm.objectives/ObjectiveConditionsDialog.cpp | Diff File | ||
mod - plugins/dm.objectives/ObjectivesEditor.cpp | Diff File | ||
mod - plugins/dm.stimresponse/ClassEditor.cpp | Diff File | ||
mod - plugins/dm.stimresponse/ResponseEditor.cpp | Diff File | ||
mod - radiant/ui/commandlist/CommandList.cpp | Diff File | ||
mod - radiant/ui/common/ShaderSelector.cpp | Diff File | ||
mod - radiant/ui/eclasstree/EClassTree.cpp | Diff File | ||
mod - radiant/ui/einspector/EntityInspector.cpp | Diff File | ||
mod - radiant/ui/einspector/SkinChooser.cpp | Diff File | ||
mod - radiant/ui/entitylist/EntityList.cpp | Diff File | ||
mod - radiant/ui/filters/editor/FilterDialog.cpp | Diff File | ||
mod - radiant/ui/mapinfo/EntityInfoTab.cpp | Diff File | ||
mod - radiant/ui/mapinfo/LayerInfoTab.cpp | Diff File | ||
mod - radiant/ui/mapinfo/ModelInfoTab.cpp | Diff File | ||
mod - radiant/ui/mapinfo/ShaderInfoTab.cpp | Diff File | ||
mod - radiant/ui/modelselector/MaterialsList.cpp | Diff File | ||
mod - radiant/ui/particles/ParticleEditor.cpp | Diff File | ||
mod - radiant/ui/particles/ParticlesChooser.cpp | Diff File | ||
mod - radiant/uimanager/SoundChooser.cpp | Diff File | ||
mod - radiant/uimanager/SoundShaderPreview.cpp | Diff File | ||
mod - radiant/uimanager/animationpreview/MD5AnimationViewer.cpp | Diff File | ||
mod - radiant/uimanager/colourscheme/ColourSchemeEditor.cpp | Diff File | ||
mod - radiant/uimanager/colourscheme/ColourSchemeEditor.h | Diff File | ||
DarkRadiant: master 95db3b83 17.12.2020 15:06 Details Diff |
0005364: ColourSchemeEditor now uses plain wxDataViewListCtrl Simplify the ColourSchemeEditor implementation by moving away from the heavyweight custom TreeModel/TreeStore and switching to a simple wxDataViewListCtrl instead. |
Affected Issues 0005364 |
|
mod - radiant/uimanager/colourscheme/ColourSchemeEditor.cpp | Diff File | ||
mod - radiant/uimanager/colourscheme/ColourSchemeEditor.h | Diff File | ||
DarkRadiant: master 597347ec 18.12.2020 13:22 Details Diff |
0005364: initial 'Override light volume colour' option Checkbox added underneath the list of colour schemes, but does not do anything yet. |
Affected Issues 0005364 |
|
mod - radiant/uimanager/colourscheme/ColourSchemeEditor.cpp | Diff File | ||
mod - radiant/uimanager/colourscheme/ColourSchemeEditor.h | Diff File | ||
DarkRadiant: master 7894a812 18.12.2020 13:50 Details Diff |
0005364: connect 'Override light colour' to registry key Checkbox initialised based on a new registry key and saves its value when toggled. |
Affected Issues 0005364 |
|
mod - radiant/uimanager/colourscheme/ColourSchemeEditor.cpp | Diff File | ||
mod - radiant/uimanager/colourscheme/ColourSchemeEditor.h | Diff File | ||
DarkRadiant: master d877f4db 18.12.2020 14:11 Details Diff |
0005364: move some render code from Light into LightNode Light and LightNode are so tightly bound they would be better off as one class (witness the constant use of _light.blah() in LightNode and _owner.blah() in Light). With this minor refactoring the call chain for rendering light volumes is shortened slightly, so that renderWireframe() and renderSolid() in LightNode now call a method renderLightVolume() on the same class, rather than delegating to Light methods. In addition, LightNode now implements OpenGLRenderable itself and submits *this for rendering, rather than submitting _light. Note that LightNode::render() only renders the light origin box, not the radius or frustum. This is just a small step and there is still much rendering code in Light, as well as use of Light's private members from LightNode's rendering methods. |
Affected Issues 0005364 |
|
mod - include/icolourscheme.h | Diff File | ||
mod - radiantcore/entity/light/Light.cpp | Diff File | ||
mod - radiantcore/entity/light/Light.h | Diff File | ||
mod - radiantcore/entity/light/LightNode.cpp | Diff File | ||
mod - radiantcore/entity/light/LightNode.h | Diff File | ||
DarkRadiant: master deaea8a6 21.12.2020 14:54 Details Diff |
0005364: 'Override light colour' now working If the checkbox is set, the LightNode::renderLightVolume() method uses the EntityNode::_wireShader shader instead of the shader exposed by ColourKey (which changes with the '_color' spawnarg). |
Affected Issues 0005364 |
|
mod - include/icolourscheme.h | Diff File | ||
mod - radiant/uimanager/colourscheme/ColourSchemeEditor.cpp | Diff File | ||
mod - radiantcore/entity/ColourKey.h | Diff File | ||
mod - radiantcore/entity/EntityNode.cpp | Diff File | ||
mod - radiantcore/entity/EntityNode.h | Diff File | ||
mod - radiantcore/entity/light/LightNode.cpp | Diff File | ||
mod - radiantcore/entity/light/LightNode.h | Diff File | ||
DarkRadiant: master e357a35f 22.12.2020 13:28 Details Diff |
Merge branch 'topic/single-colour-lights' Merge completed 0005364 which adds a checkbox in the Colours dialog to force all light volumes to be rendered with a single colour set by the colour scheme, rather than changing colour based on the _color spawnarg. |
Affected Issues 0005364 |
|
mod - include/icolourscheme.h | Diff File | ||
mod - libs/wxutil/EntityClassChooser.cpp | Diff File | ||
mod - libs/wxutil/KeyValueTable.cpp | Diff File | ||
mod - libs/wxutil/TreeView.cpp | Diff File | ||
mod - libs/wxutil/TreeView.h | Diff File | ||
mod - libs/wxutil/fsview/FileSystemView.cpp | Diff File | ||
mod - plugins/dm.conversation/ConversationDialog.cpp | Diff File | ||
mod - plugins/dm.conversation/ConversationEditor.cpp | Diff File | ||
mod - plugins/dm.difficulty/DifficultyEditor.cpp | Diff File | ||
mod - plugins/dm.editing/AIHeadChooserDialog.cpp | Diff File | ||
mod - plugins/dm.editing/AIVocalSetChooserDialog.cpp | Diff File | ||
mod - plugins/dm.editing/MissionInfoEditDialog.cpp | Diff File | ||
mod - plugins/dm.gui/GuiSelector.cpp | Diff File | ||
mod - plugins/dm.gui/XDataSelector.cpp | Diff File | ||
mod - plugins/dm.gui/XdFileChooserDialog.cpp | Diff File | ||
mod - plugins/dm.objectives/ComponentsDialog.cpp | Diff File | ||
mod - plugins/dm.objectives/ObjectiveConditionsDialog.cpp | Diff File | ||
mod - plugins/dm.objectives/ObjectivesEditor.cpp | Diff File | ||
mod - plugins/dm.stimresponse/ClassEditor.cpp | Diff File | ||
mod - plugins/dm.stimresponse/ResponseEditor.cpp | Diff File | ||
mod - radiant/ui/commandlist/CommandList.cpp | Diff File | ||
mod - radiant/ui/common/ShaderSelector.cpp | Diff File | ||
mod - radiant/ui/eclasstree/EClassTree.cpp | Diff File | ||
mod - radiant/ui/einspector/EntityInspector.cpp | Diff File | ||
mod - radiant/ui/einspector/SkinChooser.cpp | Diff File | ||
mod - radiant/ui/entitylist/EntityList.cpp | Diff File | ||
mod - radiant/ui/filters/editor/FilterDialog.cpp | Diff File | ||
mod - radiant/ui/mapinfo/EntityInfoTab.cpp | Diff File | ||
mod - radiant/ui/mapinfo/LayerInfoTab.cpp | Diff File | ||
mod - radiant/ui/mapinfo/ModelInfoTab.cpp | Diff File | ||
mod - radiant/ui/mapinfo/ShaderInfoTab.cpp | Diff File | ||
mod - radiant/ui/modelselector/MaterialsList.cpp | Diff File | ||
mod - radiant/ui/particles/ParticleEditor.cpp | Diff File | ||
mod - radiant/ui/particles/ParticlesChooser.cpp | Diff File | ||
mod - radiant/uimanager/SoundChooser.cpp | Diff File | ||
mod - radiant/uimanager/SoundShaderPreview.cpp | Diff File | ||
mod - radiant/uimanager/animationpreview/MD5AnimationViewer.cpp | Diff File | ||
mod - radiant/uimanager/colourscheme/ColourSchemeEditor.cpp | Diff File | ||
mod - radiant/uimanager/colourscheme/ColourSchemeEditor.h | Diff File | ||
mod - radiantcore/entity/ColourKey.h | Diff File | ||
mod - radiantcore/entity/EntityNode.cpp | Diff File | ||
mod - radiantcore/entity/EntityNode.h | Diff File | ||
mod - radiantcore/entity/light/Light.cpp | Diff File | ||
mod - radiantcore/entity/light/Light.h | Diff File | ||
mod - radiantcore/entity/light/LightNode.cpp | Diff File | ||
mod - radiantcore/entity/light/LightNode.h | Diff File | ||
DarkRadiant: master f7f1720b 22.12.2020 13:47 Details Diff |
0005364: set a tooltip on the 'Override light colour' checkbox |
Affected Issues 0005364 |
|
mod - radiant/uimanager/colourscheme/ColourSchemeEditor.cpp | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
22.10.2020 20:04 | Judith | New Issue | |
22.10.2020 20:04 | Judith | Priority | normal => none |
22.10.2020 20:18 | Judith | Note Added: 0012820 | |
22.10.2020 20:18 | Judith | File Added: Clipboard01.png | |
23.10.2020 07:43 | Judith | Priority | none => low |
23.10.2020 07:43 | Judith | Severity | feature => tweak |
23.10.2020 07:43 | Judith | Description Updated | |
23.10.2020 12:22 | greebo | Status | new => acknowledged |
23.10.2020 12:48 | greebo | Severity | tweak => feature |
23.10.2020 12:48 | greebo | Summary | Feature proposal: better visual representation of light entities in views => Better visual representation of light entities in views |
23.10.2020 12:48 | greebo | Status | acknowledged => confirmed |
25.10.2020 15:09 | orbweaver | Note Added: 0012827 | |
25.10.2020 16:51 | Judith | Note Added: 0012828 | |
17.12.2020 13:19 | orbweaver | Assigned To | => orbweaver |
17.12.2020 13:19 | orbweaver | Status | confirmed => assigned |
22.12.2020 13:53 | orbweaver | Status | assigned => resolved |
22.12.2020 13:53 | orbweaver | Resolution | open => fixed |
22.12.2020 13:53 | orbweaver | Fixed in Version | => 2.10.0 |
22.12.2020 13:53 | orbweaver | Note Added: 0013175 | |
22.12.2020 13:55 | orbweaver | Target Version | => 2.10.0 |
22.12.2020 17:51 | orbweaver | Changeset attached | => DarkRadiant master 45a25edb |
22.12.2020 17:51 | orbweaver | Changeset attached | => DarkRadiant master 95db3b83 |
22.12.2020 17:51 | orbweaver | Changeset attached | => DarkRadiant master 597347ec |
22.12.2020 17:51 | orbweaver | Changeset attached | => DarkRadiant master 7894a812 |
22.12.2020 17:51 | orbweaver | Changeset attached | => DarkRadiant master d877f4db |
22.12.2020 17:51 | orbweaver | Changeset attached | => DarkRadiant master deaea8a6 |
22.12.2020 17:51 | orbweaver | Changeset attached | => DarkRadiant master e357a35f |
22.12.2020 17:51 | orbweaver | Changeset attached | => DarkRadiant master f7f1720b |
25.06.2021 04:50 | greebo | Status | resolved => closed |