Changesets: DarkRadiant

master ec5c1afe

2020-12-19 16:10:24

greebo

Details Diff
0005448: Tell libpng to scale down 16-bit values to 8-bit, PNGLoader can load 16-Bit PNG files now without crashing Affected Issues
0005448
mod - radiantcore/imagefile/PNGLoader.cpp Diff File

master 24f11b88

2020-12-19 11:53:28

orbweaver

Details Diff
Remove internal border in floating GroupDialog

GroupDialog in the Floating layout had a 12 pixel border between the window
edge and the tabbed widget, which was just a waste of space.
Attach Issues:
mod - radiant/ui/mainframe/FloatingLayout.h Diff File
mod - radiant/uimanager/GroupDialog.cpp Diff File
mod - radiant/uimanager/GroupDialog.h Diff File

master 6e99daf8

2020-12-19 11:39:51

orbweaver

Details Diff
Fix assertion on startup in Regular layout

Assertion caused by a recursive wxYield call: first in
LongRunningOperationHandler::onMessage and then in
RegularLayout::restoreStateFromPath.

The wxWidgets warn against use of wxYield presumably because it can cause
unexpected problems like this, so for now I have just removed the wxYield call
in RegularLayout without replacing it with anything. The startup behaviour
looks OK on Linux but if there are problems caused by window size, perhaps the
use of another function like ProcessPendingEvents() would be safer.
Attach Issues:
mod - radiant/ui/mainframe/RegularLayout.cpp Diff File

master d5025d88

2020-12-19 06:24:43

greebo

Details Diff
0005448: Add test cases to load 8 bit and 16 bit PNG files (16 bit is crashing in this revision) Affected Issues
0005448
mod - test/CMakeLists.txt Diff File
add - test/ImageLoading.cpp Diff File
add - test/resources/tdm/materials/pngs.mtr Diff File
add - test/resources/tdm/textures/pngs/twentyone_16bit.png Diff File
add - test/resources/tdm/textures/pngs/twentyone_8bit.png Diff File
mod - tools/msvc/Tests/Tests.vcxproj Diff File
mod - tools/msvc/Tests/Tests.vcxproj.filters Diff File

master 60bc7dbe

2020-12-19 03:33:05

greebo

Details Diff
0005440: Set last modification timestamp right in constructor, which is needed to make "save as" working without double asking for overwrite Affected Issues
0005440
mod - radiantcore/map/MapResource.cpp Diff File
mod - test/MapSavingLoading.cpp Diff File

master b99f6e6d

2020-12-18 18:58:31

greebo

Details Diff
0005440: Update last modification timestamp in MapResource after successful loading or saving Affected Issues
0005440
mod - radiantcore/map/MapResource.cpp Diff File
mod - radiantcore/map/MapResource.h Diff File

master 2bd99ba7

2020-12-18 18:52:47

greebo

Details Diff
0005440: Fix exception on writing layer mappings of an empty map to the .darkradiant file Affected Issues
0005440
mod - radiantcore/layers/LayerInfoFileModule.cpp Diff File

master d877f4db

2020-12-18 14:11:52

orbweaver

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

master 7894a812

2020-12-18 13:50:06

orbweaver

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

master 597347ec

2020-12-18 13:22:04

orbweaver

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

master 95db3b83

2020-12-17 15:06:47

orbweaver

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

master 45a25edb

2020-12-17 14:02:40

orbweaver

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

master fbcee94e

2020-12-17 13:15:58

orbweaver

Details Diff
Set correct script path on Linux

Script path is now ApplicationContext::getRuntimeDataPath() + "scripts" on all
platforms, rather than using different logic on Linux. This should work for
both relocatable and non-relocatable builds because getRuntimeDataPath returns
a different value in each case.
Attach Issues:
mod - plugins/script/ScriptingSystem.cpp Diff File

master e649657d

2020-12-15 20:19:23

orbweaver

Details Diff
Remove RendererLight::intersectsAABB()

Now that RendererLight exposes a lightAABB() method to return the actual AABB
of the illuminated area, we can just do a simple intersection test between
lightAABB and worldAABB for each lit object, instead of calling the complex and
slow Light::intersectsAABB() method.
Attach Issues:
mod - include/irender.h Diff File
mod - radiantcore/brush/BrushNode.cpp Diff File
mod - radiantcore/entity/light/Light.cpp Diff File
mod - radiantcore/entity/light/Light.h Diff File
mod - radiantcore/model/md5/MD5ModelNode.cpp Diff File
mod - radiantcore/model/picomodel/StaticModelNode.cpp Diff File
mod - radiantcore/patch/PatchNode.cpp Diff File

master 279b9249

2020-12-15 02:41:21

greebo

Details Diff
Merge remote-tracking branch 'remotes/orbweaver/master'
Attach Issues:
mod - .gitignore Diff File
add - CMakeLists.txt Diff File
rm - Makefile.am Diff File
mod - README.md Diff File
rm - autogen.sh Diff File
rm - compile Diff File
rm - config.guess Diff File
add - config.h.in Diff File
rm - config.rpath Diff File
rm - config.sub Diff File
rm - configure.ac Diff File
mod - debian/changelog Diff File
mod - debian/compat Diff File
mod - debian/control Diff File
mod - debian/darkradiant-plugins-darkmod.install Diff File
mod - debian/darkradiant.install Diff File
mod - debian/rules Diff File
rm - doc/Makefile.am Diff File
rm - install-sh Diff File
mod - install/darkradiant.desktop.in Diff File
rm - libs/Makefile.am Diff File
add - libs/math/CMakeLists.txt Diff File
rm - libs/math/Makefile.am Diff File
mod - libs/module/ApplicationContextBase.cpp Diff File
add - libs/module/CMakeLists.txt Diff File
rm - libs/module/Makefile.am Diff File
mod - libs/render/CamRenderer.h Diff File
add - libs/scene/CMakeLists.txt Diff File
rm - libs/scene/Makefile.am Diff File
add - libs/wxutil/CMakeLists.txt Diff File
rm - libs/wxutil/Makefile.am Diff File
mod - libs/wxutil/TreeModel.cpp Diff File
add - libs/xmlutil/CMakeLists.txt Diff File
rm - libs/xmlutil/Makefile.am Diff File
rm - m4/ax_cxx_compile_stdcxx.m4 Diff File
rm - m4/boost.m4 Diff File
rm - m4/gettext.m4 Diff File
rm - m4/iconv.m4 Diff File
rm - m4/lib-ld.m4 Diff File
rm - m4/lib-link.m4 Diff File
rm - m4/lib-prefix.m4 Diff File
rm - m4/nls.m4 Diff File
rm - m4/po.m4 Diff File
rm - m4/progtest.m4 Diff File
rm - m4/python.m4 Diff File
rm - m4/wxwin.m4 Diff File
rm - missing Diff File
rm - plugins/Makefile.am Diff File
rm - plugins/dm.conversation/Makefile.am Diff File
add - plugins/dm.difficulty/CMakeLists.txt Diff File
rm - plugins/dm.difficulty/Makefile.am Diff File
add - plugins/dm.editing/CMakeLists.txt Diff File
rm - plugins/dm.editing/Makefile.am Diff File
add - plugins/dm.gameconnection/CMakeLists.txt Diff File
rm - plugins/dm.gameconnection/Makefile.am Diff File
add - plugins/dm.gui/CMakeLists.txt Diff File
rm - plugins/dm.gui/Makefile.am Diff File
add - plugins/dm.objectives/CMakeLists.txt Diff File
rm - plugins/dm.objectives/Makefile.am Diff File
add - plugins/dm.stimresponse/CMakeLists.txt Diff File
rm - plugins/dm.stimresponse/Makefile.am Diff File
add - plugins/script/CMakeLists.txt Diff File
rm - plugins/script/Makefile.am Diff File
add - plugins/sound/CMakeLists.txt Diff File
rm - plugins/sound/Makefile.am Diff File
add - radiant/CMakeLists.txt Diff File
rm - radiant/Makefile.am Diff File
mod - radiant/camera/CamWnd.cpp Diff File
mod - radiant/selection/SelectionMouseTools.cpp Diff File
add - radiantcore/CMakeLists.txt Diff File
rm - radiantcore/Makefile.am Diff File
mod - radiantcore/layers/LayerManager.cpp Diff File
mod - radiantcore/model/export/ScaledModelExporter.cpp Diff File
mod - radiantcore/patch/algorithm/General.cpp Diff File
rm - test-driver Diff File
add - test/CMakeLists.txt Diff File
rm - test/Makefile.am Diff File
mod - test/PatchWelding.cpp Diff File
rm - tools/debian/changelog Diff File
rm - tools/debian/compat Diff File
rm - tools/debian/control Diff File
rm - tools/debian/dirs Diff File
rm - tools/debian/docs Diff File
rm - tools/debian/files Diff File
rm - tools/debian/rules Diff File

master a8a19bec

2020-12-14 20:25:02

orbweaver

Details Diff
Skip lighting calculations in non-lit render mode

CamRenderer::calculateLightIntersections() was being invoked even when lights
were not being rendered, which is a complete waste of CPU cycles.
Attach Issues:
mod - libs/render/CamRenderer.h Diff File
mod - radiant/camera/CamWnd.cpp Diff File

master 8b74197d

2020-12-14 16:39:11

greebo

Details Diff
0005440: Add a couple of test scenarios - unit tests are pretty red right now since it's warning way too often and blocking the save Affected Issues
0005440
mod - test/MapSavingLoading.cpp Diff File

master 35364ec7

2020-12-14 12:05:44

greebo

Details Diff
0005440: Add FileOverwriteConfirmationHandler to UI module Affected Issues
0005440
mod - libs/messages/FileOverwriteConfirmation.h Diff File
add - radiant/ui/FileOverwriteConfirmationHandler.h Diff File
mod - radiant/ui/UserInterfaceModule.cpp Diff File
mod - radiant/ui/UserInterfaceModule.h Diff File
mod - tools/msvc/DarkRadiant.vcxproj Diff File
mod - tools/msvc/DarkRadiant.vcxproj.filters Diff File

master e836a292

2020-12-14 11:55:45

greebo

Details Diff
0005440: Add FileOverwriteConfirmation message. An unhandled message will cancel the save process. Affected Issues
0005440
mod - include/imessagebus.h Diff File
add - libs/messages/FileOverwriteConfirmation.h Diff File
mod - radiantcore/map/Map.cpp Diff File
mod - tools/msvc/libs.vcxproj Diff File
mod - tools/msvc/libs.vcxproj.filters Diff File

master 05eb111d

2020-12-13 21:01:53

orbweaver

Details Diff
Install drtest binary

drtest binary is installed to the 'bin' directory alongside the main
darkradiant binary (this is different from the Automake build, which installed
drtest to a subdirectory of $pkglibdir).

This in turn exposed a link issue with libradiantcore.so, which was using the
same '$ORIGIN/../lib/darkradiant' rpath as the main binary, which is actually
incorrect for libradiantcore which is in the lib/darkradiant/modules directory.
This did not matter when libradiantcore was being loaded from darkradiant, but
caused a runtime link failure with drtest.
Attach Issues:
mod - radiantcore/CMakeLists.txt Diff File
mod - test/CMakeLists.txt Diff File

master 9960f414

2020-12-13 20:43:37

orbweaver

Details Diff
Initial support for building tests with CMake

test/drtest binary is now built by CMake, but is not yet installed or run.
Attach Issues:
mod - CMakeLists.txt Diff File
add - test/CMakeLists.txt Diff File
mod - test/PatchWelding.cpp Diff File

master 602c2789

2020-12-13 17:40:23

greebo

Details Diff
0005382: Improved check for merged patches which should be facing the same direction Affected Issues
0005382
mod - radiantcore/patch/algorithm/General.cpp Diff File
mod - test/PatchWelding.cpp Diff File

master c35e419d

2020-12-13 17:37:00

greebo

Details Diff
0005382: Vector3::angle should clamp all dot values to -1..+1, not just the positive values. Affected Issues
0005382
mod - libs/math/Vector3.h Diff File

master fa02e0a7

2020-12-13 16:38:52

greebo

Details Diff
0005382: Make sure the merged patches are facing the same direction Affected Issues
0005382
mod - include/version.h Diff File
mod - radiantcore/patch/algorithm/General.cpp Diff File
mod - test/PatchWelding.cpp Diff File

master 62c33324

2020-12-13 14:14:55

orbweaver

Details Diff
Bump CMake project version to 2.10.0
Attach Issues:
mod - CMakeLists.txt Diff File
 First  Prev  1 2 3 ... 7 8 9 10 11 12 13 ... 20 ... 30 ... 40 ... 50 ... 60 ... 70 ... 80 ... 90 ... 97 98 99  Next  Last