29ea203c67
Le toggle 'Fil de fer' du panel etait un placeholder UI sans rendu. Implementation maintenant fonctionnelle : - loadFaces precompute les indices d'aretes : pour chaque triangle (a,b,c) on emet 3 lignes (a,b)(b,c)(c,a). 62724 aretes total pour 20908 triangles SMPL-X. - makeEntity cree un ModelEntity sibling avec un LowLevelMesh en topologie .line, UnlitMaterial blanc, attache comme child. - updateMeshVertices ecrit les memes positions dans le buffer du wireframe (seulement si actif). - applyWireframeSetting toggle entity.isEnabled sur tous les wireframes vivants. - BodyView.updateNSView appelle applyWireframeSetting avec settings.showWireframe a chaque tick.
AVLiveLauncher
macOS menubar launcher for AV-Live. Starts and stops sclang (which
auto-loads sound_algo/00_load.scd and serves the web UI), the
oscope-of visualizer, and the data_feeds Python bridge (USGS,
SWPC, grid frequency, lightning, pose, etc. → OSC) with one click
each, and aggregates their logs in one window.
Build
Requires Swift 5.7+ and Xcode Command Line Tools.
cd launcher
./build.sh
open build/AVLiveLauncher.app
The first run shows a waveform.path.ecg icon in the menubar. Click it
to open the popover.
Configuration
Three paths are stored in UserDefaults (~/Library/Preferences/cc.saillant.AVLiveLauncher.plist) :
| Default | Override |
|---|---|
/Applications/SuperCollider.app/Contents/MacOS/sclang |
Paths… → sclang binary |
~/Documents/Projets/AV-Live/sound_algo/00_load.scd |
Paths… → load file |
~/Documents/Projets/AV-Live/oscope-of/bin/oscope-of |
Paths… → oscope binary |
/opt/homebrew/bin/uv (or ~/.local/bin/uv) |
Paths… → uv binary |
~/Documents/Projets/AV-Live/data_feeds |
Paths… → data_feeds directory |
What it does
- Spawns
sclang <load_file>with stdout/stderr captured into the log window.sclangitself bootsscsynth, loads the 1099-SynthDef palette, and serves the web bridge on:8080. - Spawns the
oscope-ofbinary with cwd set to its parent directory (so oF can findbin/data/). - Spawns
uv run python bridge.py -vindata_feeds/for the real-world flux → OSC bridge. Off by default (Auto-start data_feeds toggle in Settings to enable). uv auto-syncs the venv on first run. - Quitting the menubar app sends
SIGTERMto all children.