Changesets: DarkRadiant

master b8648553

11.03.2022 07:33

greebo


Details Diff
0005912: First attempt to render the geometry data stored in the GPU buffer objects Affected Issues
0005912
mod - include/igeometrystore.h Diff File
mod - libs/render/GeometryStore.h Diff File
mod - radiantcore/rendersystem/backend/BufferObjectProvider.h Diff File
mod - radiantcore/rendersystem/backend/ObjectRenderer.cpp Diff File
mod - radiantcore/rendersystem/backend/SurfaceRenderer.h Diff File
mod - radiantcore/rendersystem/backend/WindingRenderer.h Diff File
mod - test/testutil/TestBufferObjectProvider.h Diff File

master 918d5f58

11.03.2022 06:03

greebo


Details Diff
0005912: More unit tests covering the sync behaviour Affected Issues
0005912
mod - test/ContinuousBuffer.cpp Diff File
mod - test/testutil/TestBufferObjectProvider.h Diff File

master 89fe375a

11.03.2022 05:26

greebo


Details Diff
0005912: Add unit tests checking the ContinuousBuffer::syncModificationsToBufferObject method Affected Issues
0005912
mod - test/ContinuousBuffer.cpp Diff File
mod - test/GeometryStore.cpp Diff File
add - test/testutil/TestBufferObjectProvider.h Diff File
mod - tools/msvc/Tests/Tests.vcxproj Diff File
mod - tools/msvc/Tests/Tests.vcxproj.filters Diff File

master 22af7587

11.03.2022 03:59

greebo


Details Diff
0005912: Buffer is uploading changed data to the buffer objects Affected Issues
0005912
mod - include/igeometrystore.h Diff File
mod - libs/render/ContinuousBuffer.h Diff File
mod - libs/render/GeometryStore.h Diff File
mod - radiantcore/rendersystem/backend/BufferObjectProvider.h Diff File
mod - test/GeometryStore.cpp Diff File

master f2263f0b

10.03.2022 18:18

greebo


Details Diff
0005912: Introduce interfaces for buffer objects, used by the GeometryStore to sync its internal data to the buffer object.
WIP, the ContinuousBuffer is not yet tracking the modified memory range properly.
Affected Issues
0005912
mod - include/igeometrystore.h Diff File
mod - libs/render/ContinuousBuffer.h Diff File
mod - libs/render/GeometryStore.h Diff File
mod - radiantcore/rendersystem/OpenGLRenderSystem.cpp Diff File
mod - radiantcore/rendersystem/OpenGLRenderSystem.h Diff File
add - radiantcore/rendersystem/backend/BufferObjectProvider.h Diff File
mod - radiantcore/rendersystem/backend/FullBrightRenderer.cpp Diff File
mod - radiantcore/rendersystem/backend/FullBrightRenderer.h Diff File
mod - radiantcore/rendersystem/backend/LightingModeRenderer.cpp Diff File
mod - test/GeometryStore.cpp Diff File
mod - tools/msvc/DarkRadiantCore.vcxproj Diff File
mod - tools/msvc/DarkRadiantCore.vcxproj.filters Diff File

master 383f7322

09.03.2022 21:23

orbweaver


Details Diff
0005907: EntityClass::_fileInfo is now an std::optional

Use this C++17 template to avoid needing to create a dummy FileInfo when
constructing an entity which wasn't loaded from a file.
Affected Issues
0005907
mod - radiantcore/eclass/EClassManager.cpp Diff File
mod - radiantcore/eclass/EntityClass.cpp Diff File
mod - radiantcore/eclass/EntityClass.h Diff File

master 9b4d329f

09.03.2022 20:46

orbweaver


Details Diff
0005907: remove redundant EntityClass constructor

For some reason there was a whole separate constructor just to default
the fixedSize parameter to false. This is now using a simple default
argument value.
Affected Issues
0005907
mod - radiantcore/eclass/EntityClass.cpp Diff File
mod - radiantcore/eclass/EntityClass.h Diff File

master e61117c0

08.03.2022 20:54

orbweaver


Details Diff
Non-virtual updateGeometry() is now updateGeometryWithData()

The combination of virtual and non-virtual implementing methods is a
solid design, but functions calling overloads of themselves can be
confusing in terms of IDE navigation.

The non-virtual updateGeometry() which accepts vertex and index data is
therefore renamed to updateGeometryWithData() to clearly distinguish it
from the no-argument updateGeometry() which must be overridden by
subclasses.
mod - libs/render/RenderableBoundingBoxes.h Diff File
mod - libs/render/RenderableBox.h Diff File
mod - libs/render/RenderableGeometry.h Diff File
mod - libs/render/RenderablePivot.h Diff File
mod - libs/render/RenderableVertexArray.h Diff File
mod - radiantcore/brush/RenderableBrushVertices.cpp Diff File
mod - radiantcore/entity/RenderableArrow.cpp Diff File
mod - radiantcore/entity/curve/RenderableCurve.h Diff File
mod - radiantcore/entity/curve/RenderableCurveVertices.h Diff File
mod - radiantcore/entity/doom3group/RenderableVertex.h Diff File
mod - radiantcore/entity/light/Renderables.cpp Diff File
mod - radiantcore/entity/speaker/SpeakerRenderables.cpp Diff File
mod - radiantcore/entity/target/RenderableTargetLines.h Diff File
mod - radiantcore/map/RenderablePointFile.h Diff File
mod - radiantcore/model/md5/RenderableMD5Skeleton.h Diff File
mod - radiantcore/particles/RenderableParticleStage.cpp Diff File
mod - radiantcore/patch/PatchRenderables.cpp Diff File
mod - radiantcore/patch/PatchRenderables.h Diff File
mod - radiantcore/selection/manipulators/Renderables.h Diff File

master 18772d4d

08.03.2022 20:24

orbweaver


Details Diff
Move draw_semicircle() body into RenderableSemiCircle class
mod - libs/render.h Diff File
mod - radiantcore/selection/manipulators/Renderables.h Diff File

master e23c0e61

06.03.2022 18:23

greebo


Details Diff
0005912: Before drawing any geometry, make sure everything is committed to the IGeometryStore Affected Issues
0005912
mod - radiantcore/rendersystem/backend/FullBrightRenderer.cpp Diff File
mod - radiantcore/rendersystem/backend/LightingModeRenderer.cpp Diff File
mod - radiantcore/rendersystem/backend/OpenGLShader.cpp Diff File
mod - radiantcore/rendersystem/backend/OpenGLShader.h Diff File
mod - radiantcore/rendersystem/backend/OpenGLShaderPass.h Diff File
mod - radiantcore/rendersystem/backend/SurfaceRenderer.h Diff File
mod - radiantcore/rendersystem/backend/WindingRenderer.h Diff File

master fc0fc7bc

06.03.2022 16:49

greebo


Details Diff
0005912: When the last winding leaves the house, we run a cleanup round to release allocated storage (it's likely the last chance to do this since the associated shader might not be used for rendering after this point). Affected Issues
0005912
mod - radiantcore/rendersystem/backend/WindingRenderer.h Diff File

master fabe5e3b

06.03.2022 16:21

greebo


Details Diff
0005912: Submit all objects with identity transforms in one batch Affected Issues
0005912
mod - radiantcore/rendersystem/backend/LightInteractions.cpp Diff File

master 1c6c23da

06.03.2022 16:06

greebo


Details Diff
0005912: Use a std::vector to process all geometry slots Affected Issues
0005912
mod - radiantcore/rendersystem/backend/LightInteractions.cpp Diff File
mod - radiantcore/rendersystem/backend/ObjectRenderer.cpp Diff File
mod - radiantcore/rendersystem/backend/ObjectRenderer.h Diff File

master 19a53377

06.03.2022 14:45

greebo


Details Diff
0005912: Submit untransformed geometry in batched glMultiDraw Affected Issues
0005912
mod - radiantcore/rendersystem/backend/LightInteractions.cpp Diff File

master e423e3c3

06.03.2022 07:57

greebo


Details Diff
0005912: Oriented objects use an oriented bounds check, everything else can use the cheaper version. Affected Issues
0005912
mod - radiantcore/entity/RenderableObjectCollection.h Diff File

master 8286d778

06.03.2022 07:50

greebo


Details Diff
0005912: IRenderableObject give a hint on their transformation matrix now, since most objects are using identity transforms. Affected Issues
0005912
mod - include/irenderableobject.h Diff File
mod - libs/render/RenderableBox.h Diff File
mod - libs/render/RenderableGeometry.h Diff File
mod - radiantcore/model/RenderableModelSurface.h Diff File
mod - radiantcore/rendersystem/backend/WindingRenderer.h Diff File

master 77137302

06.03.2022 06:51

greebo


Details Diff
0005912: Fix a bug in RenderableWinding, causing too many re-allocations Affected Issues
0005912
mod - radiantcore/brush/RenderableWinding.h Diff File

master 4f37ccf7

06.03.2022 06:10

greebo


Details Diff
0005912: Re-implement the way brush windings are assembled for lighting mode rendering.
The winding vertex data is now re-used and a new set of indices is used to render those that are attached to the same entity.
Affected Issues
0005912
mod - radiantcore/rendersystem/backend/WindingRenderer.h Diff File

master 3227049c

06.03.2022 04:54

greebo


Details Diff
0005912: Since ContinuousBuffer::allocate will not alter any data, we can simplify the logic in applyTransactions() Affected Issues
0005912
mod - libs/render/ContinuousBuffer.h Diff File

master 9a9526a0

06.03.2022 04:51

greebo


Details Diff
0005912: Unit tests covering IGeometryStore::getBounds(), which is only considering referenced vertices in the bounds calculation now. Affected Issues
0005912
mod - include/igeometrystore.h Diff File
mod - libs/render/GeometryStore.h Diff File
mod - test/GeometryStore.cpp Diff File

master 225f6c8c

05.03.2022 18:43

greebo


Details Diff
0005912: Implement the new IGeometryStore methods. Expand unit tests. Affected Issues
0005912
mod - include/igeometrystore.h Diff File
mod - libs/render/GeometryStore.h Diff File
mod - test/GeometryStore.cpp Diff File

master 02409114

05.03.2022 18:01

greebo


Details Diff
0005912: Extend IGeometryStore interface to allow for index remaps. It allows existing slots containing vertices to be re-used with a custom set of indices. Affected Issues
0005912
mod - include/igeometrystore.h Diff File
mod - libs/render/GeometryStore.h Diff File
mod - test/GeometryStore.cpp Diff File

master 566d3bbb

05.03.2022 07:58

greebo


Details Diff
0005912: Add an elaborate test to check the data remains intact when switching frame buffers Affected Issues
0005912
mod - test/GeometryStore.cpp Diff File

master 4af65995

05.03.2022 06:59

greebo


Details Diff
0005912: IGeometryStore API is covered now Affected Issues
0005912
mod - test/GeometryStore.cpp Diff File

master 9d6ed582

05.03.2022 06:21

greebo


Details Diff
0005912: Allocation and data storage tests Affected Issues
0005912
mod - test/GeometryStore.cpp Diff File
 First  Prev  1 2 3 ... 30 ... 60 ... 66 67 68 69 70 71 72 ... 90 ... 120 ... 150 ... 180 ... 210 ... 240 ... 264 265 266  Next  Last