Changesets: DarkRadiant

renderer2 596f52cf

14.12.2021 12:55

greebo


Details Diff
0005584: Fix speaker geometry staying behind after closing the map Affected Issues
0005584
mod - radiantcore/entity/speaker/SpeakerNode.cpp Diff File
mod - radiantcore/entity/speaker/SpeakerNode.h Diff File

renderer2 bafdbaf4

14.12.2021 12:46

greebo


Details Diff
0005584: Migrate Curve classes to use the RenderableGeometry base Affected Issues
0005584
mod - radiantcore/entity/curve/Curve.cpp Diff File
mod - radiantcore/entity/curve/Curve.h Diff File
mod - radiantcore/entity/curve/RenderableCurve.h Diff File
mod - radiantcore/entity/doom3group/Doom3GroupNode.cpp Diff File
mod - radiantcore/entity/doom3group/Doom3GroupNode.h Diff File

master b39db311

12.12.2021 19:37

orbweaver


Details Diff
EclassModelNode using observeKey() with auto-disconnection
mod - radiantcore/entity/eclassmodel/EclassModelNode.cpp Diff File
mod - radiantcore/entity/eclassmodel/EclassModelNode.h Diff File

master e0013abe

12.12.2021 19:21

orbweaver


Details Diff
Streamline storage of projected light colours and use flags

Local ProjectedVectors struct is now templated on its contained object type,
and is used for storing vectors, colours (also using Vector3) and usage flags
(bool).
mod - radiantcore/entity/light/Light.cpp Diff File
mod - radiantcore/entity/light/Light.h Diff File

master 47e24aee

12.12.2021 17:37

orbweaver


Details Diff
Streamline storage of projected light vectors

Instead of separate _lightX and _lightXTransformed values, introduce a new
TransformedCopy templated class which stores both a 'base' and a 'transformed'
version of an arbitrary data structure.
add - libs/scene/TransformedCopy.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

master 5f0aa8ef

12.12.2021 14:38

orbweaver


Details Diff
Light is now using observeKey() with auto-disconnection
mod - radiantcore/entity/light/Doom3LightRadius.h Diff File
mod - radiantcore/entity/light/Light.cpp Diff File
mod - radiantcore/entity/light/Light.h Diff File
mod - radiantcore/entity/light/LightShader.h Diff File

master 76addecd

12.12.2021 14:05

orbweaver


Details Diff
GenericEntityNode now uses observeKey() with auto-disconnection
mod - radiantcore/entity/AngleKey.h Diff File
mod - radiantcore/entity/generic/GenericEntityNode.cpp Diff File
mod - radiantcore/entity/generic/GenericEntityNode.h Diff File

renderer2 b88915d1

12.12.2021 03:54

greebo


Details Diff
0005584: Old RenderableArrow class and render method removed Affected Issues
0005584
mod - libs/entitylib.h Diff File
rm - radiantcore/entity/generic/RenderableArrow.h Diff

master 099252e0

11.12.2021 20:50

orbweaver


Details Diff
Use inline initialisation for SpeakerNode constant members

Reduce duplication in constructors by initialising constant members inline.
mod - radiantcore/entity/speaker/SpeakerNode.cpp Diff File
mod - radiantcore/entity/speaker/SpeakerNode.h Diff File

master d0525670

11.12.2021 20:31

orbweaver


Details Diff
SpeakerNode is now using observeKey()

Remove KeyObserverDelegates, use observeKey() with auto-disconnection for all
relevant spawnargs.
mod - radiantcore/entity/speaker/SpeakerNode.cpp Diff File
mod - radiantcore/entity/speaker/SpeakerNode.h Diff File

renderer2 6b3d266b

11.12.2021 18:07

greebo


Details Diff
0005584: Speaker sphere vertices and indices are set up Affected Issues
0005584
mod - radiantcore/entity/speaker/SpeakerRenderables.cpp Diff File

renderer2 9fbeff58

11.12.2021 17:24

greebo


Details Diff
0005584: Working on sphere rendering Affected Issues
0005584
mod - radiantcore/entity/speaker/SpeakerNode.cpp Diff File
mod - radiantcore/entity/speaker/SpeakerNode.h Diff File
mod - radiantcore/entity/speaker/SpeakerRenderables.cpp Diff File
mod - radiantcore/entity/speaker/SpeakerRenderables.h Diff File

master c198b591

11.12.2021 14:14

orbweaver


Details Diff
StaticGeometryNode uses auto-disconnection of key observers

Use observeKey() for all key observations, with sigc::mem_fun to ensure
that auto-disconnection can happen when the object is destroyed.
mod - radiantcore/entity/doom3group/StaticGeometryNode.cpp Diff File

renderer2 5b4f017b

11.12.2021 06:33

greebo


Details Diff
0005584: Move the onEntitySettingsChanged() method up one level.
This fixes the SpeakerNode radius not showing up when the "always show speaker radius" option is toggled.
Affected Issues
0005584
mod - radiantcore/entity/EntityModule.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
mod - radiantcore/entity/speaker/SpeakerNode.cpp Diff File
mod - radiantcore/entity/speaker/SpeakerNode.h Diff File

renderer2 20b0c1e6

11.12.2021 06:28

greebo


Details Diff
0005584: Wireframe radii now shown properly Affected Issues
0005584
mod - radiantcore/entity/speaker/SpeakerRenderables.cpp Diff File
mod - radiantcore/entity/speaker/SpeakerRenderables.h Diff File

renderer2 4e601152

11.12.2021 05:28

greebo


Details Diff
0005584: Set up all three circles to render in the orthoview Affected Issues
0005584
mod - radiantcore/entity/speaker/SpeakerNode.cpp Diff File
mod - radiantcore/entity/speaker/SpeakerRenderables.cpp Diff File

renderer2 c4468258

11.12.2021 05:16

greebo


Details Diff
0005584: Fix speaker and light volumes not always being rendered on selection status change Affected Issues
0005584
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

renderer2 dad2ec13

11.12.2021 05:07

greebo


Details Diff
0005584: WIP commit, working on getting the circle geometry Affected Issues
0005584
mod - libs/render.h Diff File
mod - radiantcore/entity/speaker/SpeakerNode.cpp Diff File
mod - radiantcore/entity/speaker/SpeakerNode.h Diff File
mod - radiantcore/entity/speaker/SpeakerRenderables.cpp Diff File

renderer2 fce184ca

11.12.2021 04:26

greebo


Details Diff
0005584: Refactor circle render methods to accept VertexCb and ArbitraryMeshVertex.
The actual Vertex3f& reference is resolved by using template specialisations.
Affected Issues
0005584
mod - libs/pivot.h Diff File
mod - libs/render.h Diff File
mod - radiantcore/entity/speaker/SpeakerNode.cpp Diff File
mod - radiantcore/entity/speaker/SpeakerNode.h Diff File
mod - radiantcore/entity/speaker/SpeakerRenderables.cpp Diff File
mod - radiantcore/entity/speaker/SpeakerRenderables.h Diff File
mod - radiantcore/selection/manipulators/RotateManipulator.cpp Diff File
mod - radiantcore/selection/textool/TextureToolRotateManipulator.cpp Diff File

renderer2 a5851240

11.12.2021 03:21

greebo


Details Diff
0005584: Use a const AABB reference to construct the RenderableEntityBox.
This might cause troubles when the RenderableEntityBox owner is changed to a base class, or if virtualness is added to some signatures.
In this case, an approach to pass an interface or function object to retrieve the bounds and the world position on demand is probably safer.
Affected Issues
0005584
mod - radiantcore/entity/RenderableEntityBox.cpp Diff File
mod - radiantcore/entity/RenderableEntityBox.h Diff File
mod - radiantcore/entity/generic/GenericEntityNode.cpp Diff File
mod - radiantcore/entity/speaker/SpeakerNode.cpp Diff File
mod - radiantcore/entity/speaker/SpeakerNode.h Diff File
mod - radiantcore/entity/speaker/SpeakerRenderables.cpp Diff File
mod - radiantcore/entity/speaker/SpeakerRenderables.h Diff File

renderer2 5d2a1e1a

10.12.2021 12:49

greebo


Details Diff
0005584: Highlight rendering of GenericEntityNodes Affected Issues
0005584
mod - radiantcore/entity/generic/GenericEntityNode.cpp Diff File
mod - radiantcore/entity/generic/GenericEntityNode.h Diff File

renderer2 e891d90b

10.12.2021 12:41

greebo


Details Diff
0005584: Cleanup round in GenericEntityNode Affected Issues
0005584
mod - radiantcore/entity/RenderableEntityBox.cpp Diff File
mod - radiantcore/entity/generic/GenericEntityNode.cpp Diff File
mod - radiantcore/entity/generic/GenericEntityNode.h Diff File

renderer2 28320960

10.12.2021 12:28

greebo


Details Diff
0005584: Draw entity angle arrows Affected Issues
0005584
mod - radiantcore/CMakeLists.txt Diff File
add - radiantcore/entity/RenderableArrow.cpp Diff File
add - radiantcore/entity/RenderableArrow.h Diff File
mod - radiantcore/entity/RenderableEntityBox.cpp Diff File
mod - radiantcore/entity/generic/GenericEntityNode.cpp Diff File
mod - radiantcore/entity/generic/GenericEntityNode.h Diff File
mod - tools/msvc/DarkRadiantCore.vcxproj Diff File
mod - tools/msvc/DarkRadiantCore.vcxproj.filters Diff File

renderer2 7b2f1dd2

10.12.2021 10:36

greebo


Details Diff
0005584: Draw solid and hollow entity boxes Affected Issues
0005584
mod - radiantcore/CMakeLists.txt Diff File
mod - radiantcore/entity/RenderableEntityBox.cpp Diff File
mod - radiantcore/entity/RenderableEntityBox.h Diff File
mod - radiantcore/entity/generic/GenericEntityNode.cpp Diff File
mod - radiantcore/rendersystem/backend/OpenGLShader.cpp Diff File

master 9d7fe174

09.12.2021 14:48

orbweaver


Details Diff
Implement auto-disconnection for KeyObserver class

Now that KeyObserverMap is using sigc::signals internally to allow
auto-disconnection, we can make use of this to implement auto-disconnection
when explicit KeyObserver classes are used instead of pure slots. This is
achieved by changing insert() to call observeKey() to attach to
onKeyValueChanged() directly, rather than storing the actual KeyObserver
pointer internally. KeyObserver now inherits from sigc::trackable to enable
auto-disconnection in this case.

This required some internal changes to handle explicit disconnection using
erase(). We now store a sigc::connection object, indexed by KeyObserver
pointer, to remove the connection if requested. This is actually a minor change
in behaviour: erase() now disconnects the given KeyObserver from *all* keys,
rather than just a specific key, but this would only matter if the same
KeyObserver was connected to multiple keys and the calling code wanted to
disconnect it from just one of them. As far as I can see there are no cases
where this behaviour would be needed — it's a 1:1 mapping between keys and
KeyObserver objects everywhere.
mod - radiantcore/entity/EntityNode.cpp Diff File
mod - radiantcore/entity/KeyObserverMap.h Diff File
mod - radiantcore/entity/ShaderParms.cpp Diff File
mod - test/Entity.cpp Diff File
 First  Prev  1 2 3 ... 30 ... 60 ... 77 78 79 80 81 82 83 ... 90 ... 120 ... 150 ... 180 ... 210 ... 240 ... 260 261 262  Next  Last