sixth-3d-demos.git
4 hours agofeat(benchmark): show results in dialog with copy-to-clipboard master
Svjatoslav Agejenko [Sun, 15 Mar 2026 22:51:56 +0000 (00:51 +0200)]
feat(benchmark): show results in dialog with copy-to-clipboard

- Add intro dialog with instructions before benchmark starts

- Display results in scrollable dialog instead of console

- Add Copy to Clipboard button for easy sharing

- Show system info and FPS results in formatted text

4 hours agorefactor: rename MyFirstScene to MinimalExample
Svjatoslav Agejenko [Sun, 15 Mar 2026 22:46:16 +0000 (00:46 +0200)]
refactor: rename MyFirstScene to MinimalExample

Rename class for clarity - it's the minimal working example from

the documentation.

4 hours agorefactor(launcher): add descriptions to demo buttons
Svjatoslav Agejenko [Sun, 15 Mar 2026 22:38:25 +0000 (00:38 +0200)]
refactor(launcher): add descriptions to demo buttons

Redesign launcher panel with two-column layout showing button and

description for each demo. Use GroupLayout properly and frame.pack()

for automatic sizing.

4 hours agodocs: add package-info.java for demo packages
Svjatoslav Agejenko [Sun, 15 Mar 2026 22:30:04 +0000 (00:30 +0200)]
docs: add package-info.java for demo packages

Add package-level documentation for:

- galaxy_demo (spiral galaxy visualization)

- launcher (demo GUI launcher)

- life_demo (Conway's Game of Life in 3D)

4 hours agofeat: add MyFirstScene minimal example
Svjatoslav Agejenko [Sun, 15 Mar 2026 22:25:28 +0000 (00:25 +0200)]
feat: add MyFirstScene minimal example

- Add MyFirstScene.java as runnable minimal example from docs

- Add My First Scene button to demo launcher

- Fix duplicate org-mode ID in mathematical formulas section

5 hours agodocs: rename screenshots and add developer tools section
Svjatoslav Agejenko [Sun, 15 Mar 2026 21:51:32 +0000 (23:51 +0200)]
docs: rename screenshots and add developer tools section

- Rename screenshots folder to Screenshots (proper capitalization)

- Rename screenshot files with improved names

- Add Developer tools section referencing F12 feature

7 hours agodocs: add explicit constructors to fix javadoc warnings
Svjatoslav Agejenko [Sun, 15 Mar 2026 19:17:08 +0000 (21:17 +0200)]
docs: add explicit constructors to fix javadoc warnings

8 hours agofeat(demo): add WindingOrderDemo to test backface culling
Svjatoslav Agejenko [Sun, 15 Mar 2026 18:40:36 +0000 (20:40 +0200)]
feat(demo): add WindingOrderDemo to test backface culling

- Add minimal demo with CCW triangle (front face, visible)
- Update AGENTS.md with winding order guidelines and run command

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