From d0e7af67d300fe9ef7aa609165b351ebeff93892 Mon Sep 17 00:00:00 2001 From: Frank Loesche Date: Thu, 22 Jan 2026 22:13:04 -0500 Subject: [PATCH] upgrade three.js and node (for testing) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - three.js: r128 (2021) → r182 (2025) - node.js: v20 (maintenance LTS from 2023) → v24 (active LTS from 2025) --- .github/workflows/validate-calculations.yml | 2 +- CLAUDE.md | 2 +- arena_3d_viewer.html | 33 +++++++++++++++------ 3 files changed, 26 insertions(+), 11 deletions(-) diff --git a/.github/workflows/validate-calculations.yml b/.github/workflows/validate-calculations.yml index 1655dd9..9ecb2d4 100644 --- a/.github/workflows/validate-calculations.yml +++ b/.github/workflows/validate-calculations.yml @@ -29,7 +29,7 @@ jobs: - name: Setup Node.js uses: actions/setup-node@v4 with: - node-version: '20' + node-version: '24' - name: Run validation tests run: node tests/validate-arena-calculations.js diff --git a/CLAUDE.md b/CLAUDE.md index 8d440bd..bbefa43 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -55,7 +55,7 @@ Arena radius formula: `cRadius = panelWidth / (tan(alpha/2)) / 2` where `alpha = ## Arena 3D Viewer (`arena_3d_viewer.html`) ### Key Implementation Details -- Uses Three.js r128 with OrbitControls +- Uses Three.js r182 with OrbitControls (ES6 modules) - Renderer requires `preserveDrawingBuffer: true` for screenshot functionality - LED meshes stored in `ledMeshes[]` array for efficient animation (color-only updates) - Pattern rotation uses `state.phaseOffset` to shift pattern, not world rotation diff --git a/arena_3d_viewer.html b/arena_3d_viewer.html index 1ec23ce..12c9ac3 100644 --- a/arena_3d_viewer.html +++ b/arena_3d_viewer.html @@ -5,8 +5,14 @@ Arena 3D Viewer - PanelDisplayTools - - +