The demo cube are now rendering and the client remain stable.
Starworld (StardustXR + Overte client)
Rust bridge (optional)
This project can load a Rust bridge shared library exposing a C ABI to the StardustXR client. Build it with:
cd bridge
cargo build
This produces bridge/target/debug/libstardust_bridge.so. The app will try to load it automatically at startup. You can also set an explicit path:
export STARWORLD_BRIDGE_PATH=./bridge/target/debug/libstardust_bridge.so
If the bridge is not present, the app falls back to a stub and (previously) attempted raw sockets; with the bridge present it will initialize via the official client crates.
Overte
Overte connectivity is optional; if unreachable, the client runs in offline mode and logs a warning.
CLI
--socket=/path/to.sock(legacy attempt)--abstract=name(legacy abstract socket attempt)
Prefer using the Rust bridge.
Vendoring StardustXR crates (recommended for deep integration)
For fuller control and inspection of the StardustXR client pipeline, clone the asteroids and core (fusion) repositories into third_party/ and switch the bridge's Cargo.toml to path dependencies. See third_party/README.md for details.
Benefits:
- Deterministic builds (no moving
devbranch) - Ability to patch or instrument crate internals without forking remote
- Easier to expose new C ABI functions (input, health queries, node data extraction)
After vendoring:
sed -i 's/git = .*/path = "..\/third_party\/asteroids"/' bridge/Cargo.toml
sed -i 's/git = .*/path = "..\/third_party\/core"/' bridge/Cargo.toml
cargo build -p stardust_bridge
If you do not vendor, please provide commit SHAs to pin; I can update Cargo.toml accordingly.