How edcheyjr/sigularity works
Stable Singularity is a single-file interactive WebGL visualization. A viewer selects a black-hole preset in the HUD; the preset system animates scene parameters, camera and orbit settings, and status labels, while the render loop updates the scene. The visualization combines Three.js objects, custom GLSL effects, and instanced orbital particles. The README documents these responsibilities and relationships; source excerpts were unavailable, so the graph stays at that documented level.
Main entry points: index.html Scene setup
Components 12
Controls and presets
- Preset HUD
index.html - Preset transitions
index.html - Status labels
index.html
Scene and rendering
- Scene setup
index.html - GLSL effects
index.html - Orbital particles
index.html - Orbit controls
index.html - Animation loop
index.html
External libraries
- Three.js
- OrbitControls
- GSAP
Other components
- Viewer
Connections 14
- Viewer → Preset HUD: selects preset
- Preset HUD → Preset transitions: dispatches selection
- Preset transitions → GSAP: animates transitions
- Preset transitions → Scene setup: updates parameters
- Preset transitions → Orbit controls: sets orbit speed
- Preset transitions → Status labels: updates labels
- Scene setup → Three.js: creates scene
- Scene setup → GLSL effects: uses shaders
- Scene setup → Orbital particles: creates instances
- Scene setup → Orbit controls: configures controls
- Orbit controls → OrbitControls: uses controls
- Animation loop → Scene setup: renders scene
- Animation loop → Orbit controls: updates camera
- Animation loop → Three.js: uses renderer