Changesets: DarkRadiant
renderer2 acc8ac51 28.11.2021 17:48 Details Diff |
0005584: Refactor vertex and index storage to private class, to allow for potential replacement with existing types like the IndexedVertexBuffer. |
Affected Issues 0005584 |
|
mod - radiantcore/rendersystem/backend/SurfaceRenderer.h | Diff File | ||
renderer2 e14ad68c 27.11.2021 09:10 Details Diff |
Merge branch 'renderer' into renderer2, based on latest master # Conflicts: # radiantcore/brush/Face.cpp # radiantcore/brush/Face.h # radiantcore/entity/doom3group/Doom3Group.cpp # radiantcore/entity/doom3group/Doom3Group.h # radiantcore/entity/doom3group/Doom3GroupNode.cpp # radiantcore/patch/Patch.h # test/Entity.cpp |
||
mod - include/imanipulator.h | Diff File | ||
mod - include/imousetool.h | Diff File | ||
mod - include/irender.h | Diff File | ||
mod - include/irenderable.h | Diff File | ||
add - include/isurfacerenderer.h | Diff File | ||
add - include/iwindingrenderer.h | Diff File | ||
mod - libs/debugging/ScopedDebugTimer.h | Diff File | ||
mod - libs/render.h | Diff File | ||
mod - libs/render/CamRenderer.h | Diff File | ||
add - libs/render/CompactWindingVertexBuffer.h | Diff File | ||
mod - libs/render/IndexedVertexBuffer.h | Diff File | ||
mod - libs/render/RenderableCollectionWalker.h | Diff File | ||
add - libs/render/RenderableCollectorBase.h | Diff File | ||
mod - libs/render/RenderablePivot.h | Diff File | ||
mod - libs/render/RenderableSpacePartition.h | Diff File | ||
mod - libs/render/SceneRenderWalker.h | Diff File | ||
add - libs/render/WindingRenderer.h | Diff File | ||
mod - libs/scene/BasicRootNode.h | Diff File | ||
mod - libs/scene/Node.cpp | Diff File | ||
mod - libs/scene/Node.h | Diff File | ||
mod - libs/scene/merge/MergeActionNode.cpp | Diff File | ||
mod - libs/scene/merge/MergeActionNode.h | Diff File | ||
mod - libs/wxutil/preview/RenderPreview.cpp | Diff File | ||
mod - radiant/CMakeLists.txt | Diff File | ||
mod - radiant/camera/CamWnd.cpp | Diff File | ||
mod - radiant/camera/CamWnd.h | Diff File | ||
mod - radiant/ui/aas/RenderableAasFile.cpp | Diff File | ||
mod - radiant/ui/aas/RenderableAasFile.h | Diff File | ||
rm - radiant/ui/common/RenderableAABB.cpp | Diff | ||
rm - radiant/ui/common/RenderableAABB.h | Diff | ||
mod - radiant/xyview/GlobalXYWnd.cpp | Diff File | ||
mod - radiant/xyview/GlobalXYWnd.h | Diff File | ||
mod - radiant/xyview/XYRenderer.h | Diff File | ||
mod - radiant/xyview/tools/MeasurementTool.cpp | Diff File | ||
mod - radiant/xyview/tools/MeasurementTool.h | Diff File | ||
mod - radiantcore/brush/Brush.cpp | Diff File | ||
mod - radiantcore/brush/Brush.h | Diff File | ||
mod - radiantcore/brush/BrushClipPlane.h | Diff File | ||
mod - radiantcore/brush/BrushNode.cpp | Diff File | ||
mod - radiantcore/brush/BrushNode.h | Diff File | ||
mod - radiantcore/brush/Face.cpp | Diff File | ||
mod - radiantcore/brush/Face.h | Diff File | ||
mod - radiantcore/brush/FaceInstance.cpp | Diff File | ||
mod - radiantcore/brush/FaceInstance.h | Diff File | ||
add - radiantcore/brush/RenderableWinding.h | Diff File | ||
mod - radiantcore/brush/RenderableWireFrame.h | Diff File | ||
mod - radiantcore/brush/Winding.cpp | Diff File | ||
mod - radiantcore/brush/Winding.h | Diff File | ||
mod - radiantcore/entity/EntityNode.cpp | Diff File | ||
mod - radiantcore/entity/EntityNode.h | Diff File | ||
mod - radiantcore/entity/VertexInstance.h | Diff File | ||
mod - radiantcore/entity/curve/Curve.cpp | Diff File | ||
mod - radiantcore/entity/curve/Curve.h | Diff File | ||
mod - radiantcore/entity/curve/CurveEditInstance.cpp | Diff File | ||
mod - radiantcore/entity/curve/CurveEditInstance.h | Diff File | ||
mod - radiantcore/entity/doom3group/Doom3GroupNode.cpp | Diff File | ||
mod - radiantcore/entity/doom3group/Doom3GroupNode.h | Diff File | ||
mod - radiantcore/entity/eclassmodel/EclassModelNode.cpp | Diff File | ||
mod - radiantcore/entity/eclassmodel/EclassModelNode.h | Diff File | ||
mod - radiantcore/entity/generic/GenericEntityNode.cpp | Diff File | ||
mod - radiantcore/entity/generic/GenericEntityNode.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 | ||
mod - radiantcore/entity/speaker/SpeakerNode.cpp | Diff File | ||
mod - radiantcore/entity/speaker/SpeakerNode.h | Diff File | ||
mod - radiantcore/entity/target/RenderableTargetLines.h | Diff File | ||
mod - radiantcore/entity/target/TargetLineNode.cpp | Diff File | ||
mod - radiantcore/entity/target/TargetLineNode.h | Diff File | ||
mod - radiantcore/layers/LayerManager.cpp | Diff File | ||
mod - radiantcore/map/PointFile.cpp | Diff File | ||
mod - radiantcore/map/PointFile.h | Diff File | ||
mod - radiantcore/map/RootNode.h | Diff File | ||
mod - radiantcore/model/NullModel.cpp | Diff File | ||
mod - radiantcore/model/NullModel.h | Diff File | ||
mod - radiantcore/model/NullModelNode.cpp | Diff File | ||
mod - radiantcore/model/NullModelNode.h | Diff File | ||
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 | ||
mod - radiantcore/model/md5/MD5ModelNode.cpp | Diff File | ||
mod - radiantcore/model/md5/MD5ModelNode.h | Diff File | ||
mod - radiantcore/particles/ParticleNode.cpp | Diff File | ||
mod - radiantcore/particles/ParticleNode.h | Diff File | ||
mod - radiantcore/particles/RenderableParticle.cpp | Diff File | ||
mod - radiantcore/particles/RenderableParticle.h | Diff File | ||
mod - radiantcore/patch/Patch.cpp | Diff File | ||
mod - radiantcore/patch/Patch.h | Diff File | ||
mod - radiantcore/patch/PatchNode.cpp | Diff File | ||
mod - radiantcore/patch/PatchNode.h | Diff File | ||
mod - radiantcore/patch/PatchRenderables.cpp | Diff File | ||
mod - radiantcore/patch/PatchRenderables.h | Diff File | ||
mod - radiantcore/rendersystem/OpenGLRenderSystem.cpp | Diff File | ||
mod - radiantcore/rendersystem/OpenGLRenderSystem.h | Diff File | ||
mod - radiantcore/rendersystem/backend/OpenGLShader.cpp | Diff File | ||
mod - radiantcore/rendersystem/backend/OpenGLShader.h | Diff File | ||
mod - radiantcore/rendersystem/backend/OpenGLShaderPass.cpp | Diff File | ||
mod - radiantcore/rendersystem/backend/OpenGLShaderPass.h | Diff File | ||
master a9ed8c3d 27.11.2021 08:59 Details Diff |
Fix unit tests, TestKeyObserver needs to be removed from the entity node before it is destroyed | ||
mod - test/Entity.cpp | Diff File | ||
master 91f58de2 27.11.2021 08:29 Details Diff |
Adjust VC++ build after merge | ||
mod - include/version.h | Diff File | ||
mod - tools/msvc/DarkRadiantCore.vcxproj | Diff File | ||
mod - tools/msvc/DarkRadiantCore.vcxproj.filters | Diff File | ||
master 28a2ddcf 27.11.2021 08:27 Details Diff |
Merge remote-tracking branch 'remotes/orbweaver/master' | ||
mod - include/ientity.h | Diff File | ||
mod - libs/transformlib.h | Diff File | ||
mod - radiantcore/CMakeLists.txt | Diff File | ||
mod - radiantcore/brush/Brush.h | Diff File | ||
mod - radiantcore/brush/BrushModule.h | Diff File | ||
mod - radiantcore/brush/Face.h | Diff File | ||
mod - radiantcore/entity/EntityNode.cpp | Diff File | ||
mod - radiantcore/entity/EntityNode.h | Diff File | ||
mod - radiantcore/entity/KeyObserverDelegate.h | Diff File | ||
mod - radiantcore/entity/KeyObserverMap.h | Diff File | ||
mod - radiantcore/entity/KeyValue.cpp | Diff File | ||
mod - radiantcore/entity/KeyValue.h | Diff File | ||
rm - radiantcore/entity/doom3group/Doom3Group.cpp | Diff | ||
rm - radiantcore/entity/doom3group/Doom3Group.h | Diff | ||
mod - radiantcore/entity/doom3group/Doom3GroupNode.cpp | Diff File | ||
mod - radiantcore/entity/doom3group/Doom3GroupNode.h | Diff File | ||
mod - radiantcore/patch/Patch.h | Diff File | ||
mod - test/Entity.cpp | Diff File | ||
master 78feceaa 27.11.2021 07:28 Details Diff |
Bump version for release | ||
mod - CMakeLists.txt | Diff File | ||
mod - PKGBUILD | Diff File | ||
mod - include/version.h | Diff File | ||
mod - tools/innosetup/darkradiant.x64.iss | Diff File | ||
master 92b2fe61 27.11.2021 06:17 Details Diff |
0005824: Implement the special algorithm for removing all entities from the selection |
Affected Issues 0005824 |
|
mod - libs/selection/CollectiveSpawnargs.h | Diff File | ||
mod - libs/selection/EntitySelection.h | Diff File | ||
master 55adce1a 27.11.2021 05:50 Details Diff |
0005824: Add unit test to assert the desired behaviour of the spawnarg collection when all entities are removed |
Affected Issues 0005824 |
|
mod - test/EntityInspector.cpp | Diff File | ||
master d75a62a1 27.11.2021 05:27 Details Diff |
0005824: First part of the fix, don't write the multi-value placeholder to the entry box on updates |
Affected Issues 0005824 |
|
mod - include/version.h | Diff File | ||
mod - radiant/ui/einspector/EntityInspector.cpp | Diff File | ||
mod - radiant/ui/einspector/EntityInspector.h | Diff File | ||
master 69734342 26.11.2021 14:00 Details Diff |
Refactor some EntityTest boilerplate Add a new helper class TestEntity to construct an entity by classname and add it to the map (to enable undo). Since this is a struct with public members, we can use C++17 structured bindings to initialise local variables in tests as well as accessing members in the struct directly. |
||
mod - test/Entity.cpp | Diff File | ||
master 58d7ce55 26.11.2021 13:41 Details Diff |
Add unit test for simple entity spawnarg change Test undoing and redoing a value change to a single spawnarg. |
||
mod - test/Entity.cpp | Diff File | ||
master 325b69a0 25.11.2021 20:37 Details Diff |
Add unit tests for the function-based key observation As with addKeyObserver(), this required the observeKey() method to be brought up to the IEntityNode interface so it can be unit tested. |
||
mod - include/ientity.h | Diff File | ||
mod - radiantcore/entity/EntityNode.cpp | Diff File | ||
mod - radiantcore/entity/EntityNode.h | Diff File | ||
mod - radiantcore/entity/KeyObserverDelegate.h | Diff File | ||
mod - radiantcore/entity/KeyValue.h | Diff File | ||
mod - radiantcore/entity/doom3group/Doom3GroupNode.cpp | Diff File | ||
mod - test/Entity.cpp | Diff File | ||
master fcce4105 25.11.2021 15:24 Details Diff |
Add unit tests for EntityNode::addKeyObserver() This method needed to be added to the IEntityNode interface, since it was previously only accessible on EntityNode directly. |
||
mod - include/ientity.h | Diff File | ||
mod - radiantcore/entity/EntityNode.h | Diff File | ||
mod - test/Entity.cpp | Diff File | ||
master 1c6a8938 25.11.2021 15:22 Details Diff |
Avoid calling KeyObserver twice on inserting to the KeyObserverMap The code which called the observer with the current value was being executed unconditionally, even though the preceding call to EntityKeyValue::attach() already sent the current value. |
||
mod - radiantcore/entity/KeyObserverMap.h | Diff File | ||
master f6f47981 25.11.2021 14:31 Details Diff |
Streamline KeyObserver attachment to EntityNode - EntityNode has a new observeKey() method which adds a simple callback function to observe a particular key, rather than requiring a full KeyObserver object owned and managed by the calling code. - KeyObserverMap now stores the KeyObservers as shared_ptrs rather than raw pointers. If the legacy addKeyObserver() method is called, the observer is wrapped in a shared_ptr with a null deleter. If the new observeKey() method is called, a new KeyObserver is constructed to wrap the callback function. - EntityKeyValue::detach() has a new parameter to disable sending the final empty value when the observer is detached. This avoids feedback loops and crashes when EntityNode (and its contained KeyObserverMap) is destroyed. - All KeyObserverDelegates are now removed from Doom3GroupNode, in favour of the simpler observeKey() interface. |
||
mod - include/ientity.h | Diff File | ||
mod - radiantcore/entity/KeyObserverDelegate.h | Diff File | ||
mod - radiantcore/entity/KeyObserverMap.h | Diff File | ||
mod - radiantcore/entity/KeyValue.cpp | Diff File | ||
mod - radiantcore/entity/KeyValue.h | Diff File | ||
mod - radiantcore/entity/doom3group/Doom3GroupNode.cpp | Diff File | ||
mod - radiantcore/entity/doom3group/Doom3GroupNode.h | Diff File | ||
master 74feb75c 24.11.2021 21:23 Details Diff |
Fix several "missing override" compiler warnings | ||
mod - radiantcore/brush/Brush.h | Diff File | ||
mod - radiantcore/brush/BrushModule.h | Diff File | ||
mod - radiantcore/brush/Face.h | Diff File | ||
mod - radiantcore/patch/Patch.h | Diff File | ||
master 3b806088 24.11.2021 21:14 Details Diff |
scene::forEachTransformable takes node by reference Not sure why this was ever using a shared_ptr, since the INode was never stored: the only thing the function ever did with it was immediately dereference it. Switching to a simple reference avoids the need for several shared_from_this() calls in Doom3GroupNode. |
||
mod - libs/transformlib.h | Diff File | ||
mod - radiantcore/entity/doom3group/Doom3GroupNode.cpp | Diff File | ||
master a64abd18 24.11.2021 20:53 Details Diff |
Merge Doom3Group and Doom3GroupNode The division between these two classes serves no purpose: neither has clearly-defined distinct responsibilities, and both classes are constantly calling each other's internal methods via _owner or _d3Group. |
||
mod - radiantcore/CMakeLists.txt | Diff File | ||
rm - radiantcore/entity/doom3group/Doom3Group.cpp | Diff | ||
rm - radiantcore/entity/doom3group/Doom3Group.h | Diff | ||
mod - radiantcore/entity/doom3group/Doom3GroupNode.cpp | Diff File | ||
mod - radiantcore/entity/doom3group/Doom3GroupNode.h | Diff File | ||
master 5cd0aa9a 23.11.2021 21:15 Details Diff |
Remove interfaces from Doom3Group Doom3Group is accessed directly via the Doom3GroupNode container class, so does not need to derive from any abstract interface classes (the associated methods are still used, but can be called non-virtually). |
||
mod - radiantcore/entity/doom3group/Doom3Group.h | Diff File | ||
master 2a854849 21.11.2021 17:32 Details Diff |
Bump version to 2.14.0pre2 | ||
mod - include/version.h | Diff File | ||
master a687a08e 21.11.2021 17:31 Details Diff |
0005810: Fix objective components not being re-indexed after removing one |
Affected Issues 0005810 |
|
mod - plugins/dm.objectives/ComponentsDialog.cpp | Diff File | ||
master 4b5e78ce 21.11.2021 16:44 Details Diff |
0005813: EntityInspector is now displaying a property editor for keys with inherited descriptor. |
Affected Issues 0005813 |
|
mod - radiant/ui/einspector/EntityInspector.cpp | Diff File | ||
master ac0dd4ba 21.11.2021 16:31 Details Diff |
0005813: Entity key help text is now shown even or especially when the description is inherited |
Affected Issues 0005813 |
|
mod - include/ieclass.h | Diff File | ||
mod - radiant/ui/einspector/EntityInspector.cpp | Diff File | ||
mod - radiantcore/eclass/EntityClass.cpp | Diff File | ||
mod - radiantcore/eclass/EntityClass.h | Diff File | ||
mod - test/Entity.cpp | Diff File | ||
mod - test/resources/tdm/def/attribute_types.def | Diff File | ||
master 7184e726 21.11.2021 15:53 Details Diff |
0005814: Show icons for inherited properties |
Affected Issues 0005814 |
|
mod - libs/wxutil/dataview/TreeViewItemStyle.h | Diff File | ||
mod - radiant/ui/einspector/EntityInspector.cpp | Diff File | ||
master 6d4157f8 21.11.2021 14:25 Details Diff |
0005813: EntityInspector is using IEntityClass::getAttributeType() now, this fixes the problem of wrong icons being shown when the corresponding editor_ descriptor is defined on the base. |
Affected Issues 0005813 |
|
mod - radiant/ui/einspector/EntityInspector.cpp | Diff File |