sixth-3d-demos.git
8 hours agofeat(benchmark): add system info to benchmark output
Svjatoslav Agejenko [Sun, 15 Mar 2026 18:18:55 +0000 (20:18 +0200)]
feat(benchmark): add system info to benchmark output

- Display CPU name, architecture, and core count
- Simplify output format (removed Duration and Frames columns)
- Add Star Grid test to benchmark suite
- Update documentation with new benchmark results

9 hours agofix(demos): explicitly start render thread and fix benchmark timing
Svjatoslav Agejenko [Sun, 15 Mar 2026 17:04:32 +0000 (19:04 +0200)]
fix(demos): explicitly start render thread and fix benchmark timing

- Add ensureRenderThreadStarted() call to all demo constructors
- Reorder GraphicsBenchmark initialization (registerTests before initializeWindow)
- Defer test transitions to beginning of next frame to avoid threading issues
- Add pendingTestTransition flag for safe test state changes

14 hours agofeat(benchmark): add StarGridTest benchmark for billboard rendering
Svjatoslav Agejenko [Sun, 15 Mar 2026 12:22:55 +0000 (14:22 +0200)]
feat(benchmark): add StarGridTest benchmark for billboard rendering

Add a new benchmark test that measures glowing point (billboard)
rendering performance using a 16x16x16 grid of stars with randomized
colors. Also increase wireframe line width for better visibility.

22 hours agofeat(benchmark): add keyboard shortcut to skip tests
Svjatoslav Agejenko [Sun, 15 Mar 2026 04:22:54 +0000 (06:22 +0200)]
feat(benchmark): add keyboard shortcut to skip tests

Allow pressing Space to skip to the next benchmark test immediately.
Also improve cleanup by properly removing listeners and stopping the
render loop when the benchmark finishes.

23 hours agorefactor(benchmark): move texture creation into TexturedCubesTest
Svjatoslav Agejenko [Sun, 15 Mar 2026 03:53:18 +0000 (05:53 +0200)]
refactor(benchmark): move texture creation into TexturedCubesTest

Simplify BenchmarkTest.setup() signature by removing texture parameters
that only TexturedCubesTest needed. Each test now manages its own
resources independently.

23 hours agorefactor(examples): extract GraphicsBenchmark into dedicated package
Svjatoslav Agejenko [Sun, 15 Mar 2026 03:21:20 +0000 (05:21 +0200)]
refactor(examples): extract GraphicsBenchmark into dedicated package

Split the monolithic GraphicsBenchmark class into separate files in a
new benchmark package: BenchmarkTest interface, individual test classes
(SolidCubesTest, TexturedCubesTest, WireframeCubesTest), TestResult,
and TexturedCube helper.

24 hours agofeat(examples): add wireframe cubes test to GraphicsBenchmark
Svjatoslav Agejenko [Sun, 15 Mar 2026 02:56:31 +0000 (04:56 +0200)]
feat(examples): add wireframe cubes test to GraphicsBenchmark

Add WireframeCubesTest benchmark variant using WireframeBox shapes,
and update documentation with example benchmark output.

24 hours agorefactor(examples): convert GraphicsBenchmark to automated test runner
Svjatoslav Agejenko [Sun, 15 Mar 2026 02:43:56 +0000 (04:43 +0200)]
refactor(examples): convert GraphicsBenchmark to automated test runner

Change from interactive demo with keyboard controls to an automated
benchmark that runs multiple tests sequentially for fixed durations
and outputs reproducible results.

24 hours agorefactor(examples): rename FillRateTest to GraphicsBenchmark
Svjatoslav Agejenko [Sun, 15 Mar 2026 02:21:54 +0000 (04:21 +0200)]
refactor(examples): rename FillRateTest to GraphicsBenchmark

Rename the fill-rate test class to GraphicsBenchmark for better clarity
about its purpose as a general graphics performance benchmark.

25 hours agoInitial commit
Svjatoslav Agejenko [Sun, 15 Mar 2026 01:16:30 +0000 (03:16 +0200)]
Initial commit