[claude] InstancedMesh for glass tiles and island spires (#425) #443

Merged
Timmy merged 1 commits from claude/issue-425 into main 2026-03-24 18:19:21 +00:00

1 Commits

Author SHA1 Message Date
Alexander Whitestone
c1c4c04ee0 perf: convert glass tiles and island spires to InstancedMesh
All checks were successful
CI / validate (pull_request) Successful in 5s
CI / auto-merge (pull_request) Successful in 4s
Replace ~75 individual THREE.Mesh glass tiles and N individual
ConeGeometry spire Meshes with InstancedMesh, reducing draw calls
from O(n) to O(1) per group.

Glass tiles: one InstancedMesh with StaticDrawUsage replaces ~75
glassTileMat.clone() meshes. Edge line glow (LineSegments) retained
individually for per-distance opacity animation.

Island spires: two-pass approach — collect spire params first, then
build one InstancedMesh with a unit cone (r=1, h=1) scaled per
instance via the instance matrix. Mathematically equivalent to the
original per-spire ConeGeometry since T*R*S on a unit cone produces
the same world-space vertices as T*R applied to a pre-scaled cone.

Fixes #425
2026-03-24 14:18:39 -04:00