Go to file
Michael Mainguy 4a9d7acc41 Optimize connection raycasting with position caching
Performance improvements:
- Added Vector3 position caching for connection endpoints
- Only update connections when meshes actually move (>0.001 units)
- Use DistanceSquared for efficient movement detection
- Replace inefficient vector length comparison

Impact:
- Static connections: 0 raycasts/second (was ~20/sec per connection)
- With 10 connections: 90-99% reduction in raycast operations
- Eliminates unnecessary curve geometry recreation

Implementation:
- Added _lastFromPosition and _lastToPosition caching
- Created hasConnectionMoved() method with tolerance threshold
- Reset cache on mesh removal and initial setup
- Clean up cache in disposal method

This dramatically reduces CPU usage in VR with multiple connections.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-12 21:46:57 -06:00
.github/workflows Update node.js.yml 2024-08-30 12:18:10 -05:00
api Initial Menu System Commit. 2023-06-29 21:03:00 -05:00
functions Added Initial Voice Command Handler, fixed connection issues. 2023-08-14 13:27:20 -05:00
netlify/functions added request headers to CORD response. 2023-12-12 06:53:14 -06:00
pages Initial Menu System Commit. 2023-06-27 16:58:19 -05:00
public Updated config page. 2024-08-30 14:56:13 -05:00
server Added stl person to toolbox. 2024-06-17 11:33:24 -05:00
src Optimize connection raycasting with position caching 2025-11-12 21:46:57 -06:00
.gitignore Refactored api path. 2023-08-11 07:51:46 -05:00
CLAUDE.md Position UI components relative to camera on XR entry 2025-11-12 20:22:29 -06:00
index.html Added webxr exit button 2025-02-14 11:01:27 -06:00
LICENSE.txt Disabled service worker, enhanced management console. 2024-08-30 12:43:19 -05:00
package-lock.json Refactor config naming and upgrade dependencies 2025-11-12 21:36:56 -06:00
package.json Refactor config naming and upgrade dependencies 2025-11-12 21:36:56 -06:00
server.js Re added quest link. 2024-04-02 14:19:27 -05:00
tsconfig.json Added 3d closet demo, cleaned up menus. 2024-02-05 10:46:23 -06:00
versionBump.js Added smart versioning 2024-06-11 16:58:35 -05:00
vite.config.ts added events 2024-06-11 07:20:25 -05:00