Oboro — Spatial Computing SDK
Oboro — Spatial Computing SDK
A spatial-computing SDK that targets Apple Vision Pro, Meta Quest 3, and WebXR browsers from a single scene-graph definition. Thinly abstracts ARKit / Meta XR SDK / WebXR Device API, with Yjs CRDTs syncing spatial-anchor state across multiple devices. Internal R&D prototype.
Live Demo
Preview the actual application interface
Target device
AR overlay preview
Scene pipeline
Anchor stats
- Persistent anchors128
- Shared (multi-user)34
- Avg drift / hour1.8 mm
- Re-localization97.3 %
- Cloud backendARKit · Azure OR
Digital twin sync
42 ms · 12 tags · 100 Hz
QoS 1 · TLS · 8.2 KB/s
nucleus://twin/line-07
Challenge
Vision Pro (visionOS 2) and Quest 3 (Horizon OS) diverge sharply on input model, anchoring, and rendering APIs — shipping the same experience effectively means building it twice. Multi-user shared physical space adds anchor-coordinate conflicts under network latency and offline reconnects.
Solution
A Rust + WebAssembly scene-graph core (Oboro Core) exposes Swift bindings for visionOS, Kotlin bindings for Android/Quest, and TypeScript bindings for WebXR. Spatial anchors and user-input events live in a Yjs CRDT document syncable over either WebSocket or WebRTC.
Results
- Confirmed identical scene playback across Vision Pro sim, Quest 3 hardware, and WebXR (Chrome)
- 100% anchor consistency across 3 devices after CRDT-driven reconnect (internal test)
- Shared scene-description payload ~38% smaller than single-platform SDK output
- Time-to-first-frame brought down to 1.2 s on Quest 3
Measured Impact
シーン記述削減
-38%
vs 単体SDK
アンカー一致率
100%
3 devices
初期フレーム
1.2s
Quest 3
対応プラットフォーム
3
VP/Q3/Web
What it does
シーン記述
glTF 互換
既存アセットをそのまま OSD に取り込み可能。
宣言的アンカー
水平面・壁・イメージアンカーを統一 API で指定。
マルチデバイス
CRDT 同期
オフライン再接続でも衝突なくアンカー状態を収束。
P2P 優先
WebRTC で遅延を抑え、失敗時のみ中継サーバを利用。
開発体験
ヘッドレス sim
CI で XR シーンを自動テスト。
Inspector
シーングラフとアンカーをライブ編集。
System Layers
Layered architecture showing components, responsibilities, and data flow.
Layer
コア
Rust 製の共通コア。WASM および各プラットフォーム向けネイティブライブラリとしてビルド。
Layer
プラットフォームバインディング
ARKit / Meta XR SDK / WebXR Device API を共通インタフェースに落とし込む薄い層。
Layer
同期レイヤ
アンカーと入力イベントを CRDT で共有。P2P 優先、失敗時はリレーにフォールバック。
Layer
ツーリング
シーンの検査・インポート・ヘッドレスシミュレーション用の開発者ツール群。
How we built it
プラットフォーム比較
visionOS / Horizon OS / WebXR の入力・アンカー API を仕様レベルで比較。
Deliverables
- API 比較表
- OSD ドラフト
- 抽象化方針
コア実装
Rust でシーングラフと wgpu レンダラを実装し WASM 化。
Deliverables
- Oboro Core
- WASM バンドル
- ユニットテスト
WebXR 先行対応
実機調達前に WebXR で動作検証し OSD を固める。
Deliverables
- WebXR バインディング
- ブラウザデモ
- 性能計測
ネイティブ展開
Quest 3 実機と Vision Pro sim でネイティブバインディングを検証。
Deliverables
- Quest APK
- visionOS sim ビルド
- CRDT 試験
Delivery Timeline
- Phase 0Done2026-04-23
シーングラフ仕様
Oboro Scene Description (OSD) を glTF 互換で策定。
- Phase 1Done2026-04-25
WebXR バインディング
Chrome/Quest Browser で OSD を再生。
- Phase 2Planned2026-05
visionOS / Quest ネイティブ
Swift/Kotlin バインディングと CRDT 同期を実装。
- Phase 3Planned2026-07
マルチユーザ体験サンプル
3デバイス共存のホワイトボードサンプルを公開。
Who built it
Roles
- XR エンジニア
Tools & Platforms
Frontend
Backend
Other
Considering a similar project?
We will propose the best solution for your business needs.
Discuss Your Project