WebXR 実験
Quest / スマートフォン / PCで動作するデモ
ARAnchors Basic
XRAnchorを作成し、世界座標に固定した仮想オブジェクトを継続表示する基本デモ。
ARAR Lighting Estimation
現実に仮想オブジェクトを馴染ませるための環境光推定プロトタイプ。
AudioAudioContext in XR
immersiveセッション中のAudioContextライフサイクル/サスペンド・再開挙動を確認するテスト。
TrackingBody Tracking
Body Tracking(proposal)で全身スケルトンを取得し、アバターを駆動する検証。
ARCamera Access in AR
Raw camera access (proposal) を使い、ARセッション中のカメラフィードをテクスチャ化して表示。
AdvancedComposition Layers
XRQuadLayer/XRCylinderLayer等の合成レイヤーを並列でレンダリングし品質比較。
HapticsController Haptics
ゲームパッドAPI経由でのXRコントローラー振動フィードバックの強弱テスト。
InputController Input Advanced
Gamepad API経由でトリガー圧・スティック軸・バイブレーションを扱う高度なコントローラー入力処理。
InputController Input Basic
XRInputSourceのgrip/targetRayポーズとselectイベントを用いた基本的なコントローラー入力処理。
ARDepth Sensing
XRDepthInformationから深度マップを取得し、点群/ヒートマップとして可視化するデモ。
AdvancedDOM Overlay
domOverlayStateを利用し、WebXRコンテンツ上にDOM UIを重ねる表示テスト。
Eye Tracking Basic
WebXR Eye Tracking(proposal)から視線方向を取得し、注視点を可視化する基本デモ。
Face Tracking
Face Tracking(proposal)から表情パラメータを取得し、アバター表情に反映するデモ。
RenderingFoveated Rendering
視線座標を用いて中心高解像・周辺低解像に描き分けるフォビエーテッドレンダリング(eye-tracking利用)。
PerformanceFrame Timing
XRFrame.predictedDisplayTimeを利用したタイミング計測とドロップフレーム検知。
InputGamepad API for XR
Gamepad APIを用いてXRInputSource.gamepadを読み取り、ボタン/軸/ハプティクスを処理する汎用パターン。
ARGeo Anchors
Geo Alignment/GeoAnchors提案を用い、緯度経度に基づくアンカー配置(VPS連携想定)。
InteractionGrab Interaction
ピンチ/トリガーでオブジェクトを掴み、親子付けして移動・回転させるグラブ操作デモ。
Hand Haptics
Hand-trackingデバイス向けの触覚(提案段階)を想定し、バーチャルハプティクス入力を試すデモ。
Hand Mesh Visualization
Hand Inputの関節・メッシュデータを可視化し、精度やスキニング状態を確認するデバッグデモ。
Hand Tracking Advanced
ピンチとグラブの指カール強度を可視化するハンド入力の応用デモ。
Hand Tracking Basic
WebXR Hand Input APIを使用した基本的な指のトラッキング実験。
HapticsHaptics Pulse
連続するPulseパターンを構成し、複数強度のシーケンスを試すフィードバック検証。
Head Tracking
XRFrame.getViewerPoseを用いた6DOFヘッドポーズの取得と適用。
ARHit Test Advanced
複数のXRHitTestSource(view/eyeレイとスクリーンタップ)の優先順位制御とオブジェクト配置。
ARHit Test Basic
XRHitTestSourceで得たポーズを可視化し、検出平面にオブジェクトを配置する基本パス。
Image Tracking
Image Tracking(proposal)で画像ターゲットを検出し、アンカーとしてコンテンツを配置。
ARImmersive AR Basic
immersive-arセッション開始とXRWebGLLayerへの背景ビデオ描画を行う最小構成。
SessionInline Session
inlineセッションを使用した非没入型XR体験。
AdvancedLayers API
XRProjectionLayer/XRQuadLayerなど複数レイヤータイプを組み合わせるLayers API入門。
PerformanceLOD System
距離に応じてメッシュを低/中/高詳細モデルへ差し替えるLOD管理。
SessionPersistent Anchors
Anchors Persistence(proposal)でアンカーを保存・復元し、セッションを跨いで位置を保持。
ARPlane Detection
XRPlaneSetから得た平面境界ポリゴンを可視化し、追従更新するデモ。
InteractionRay Casting
コントローラー由来のレイを3Dシーンに飛ばし、オブジェクトとの交差をハイライトする選択デモ。
ARScene Mesh & Occlusion
Real World Meshing提案で環境メッシュを取得し、仮想オブジェクトの遮蔽と当たり判定を検証。
RenderingReference Space
local/local-floor/bounded-floor/stage/unboundedのリファレンススペース差異を比較するデモ。
PerformanceRender Optimization
レンダリング負荷を計測し、解像度スケール/LOD/バッチ削減で最適化する実験。
TrackingRoom Tracking
bounded-floor/stageリファレンススペースでプレイエリア境界を取得し、空間を可視化するデモ。
ハンドトラッキングサンプル
WebXR Hand Tracking APIを使った基本的なジェスチャー認識
SessionSession End Events
XRSession.end()後のイベントハンドリングとリソース解放を確認するデモ。
SessionSession Features
XRSessionInitでrequired/optionalFeaturesを指定し、利用可否を検査するパターン。
SessionSession Lifecycle
XRSession開始/終了、requestReferenceSpace、フレームループと後始末までのライフサイクル全体デモ。
SessionSession Modes
immersive-vr / immersive-ar / inline のセッションモード差異と用途を比較。
AudioSpatial Audio Advanced
距離減衰モデル、方向性、ドップラー効果をパラメータ調整しながら試せる空間オーディオ検証。
RenderingStereo Rendering
XRView(左/右)のビュー行列とビューポートを使ったステレオ描画パス。
InteractionTeleportation
コントローラーで宙に弧線を投げ、getOffsetReferenceSpace()でビュー位置を移動させるテレポート。
TrackingTracked Pointer
XRInputSource.targetRayMode=tracked-pointerのビームを可視化し、UIヒットを検証。
InteractionUI Interaction in XR
ワールド空間に置いたUIパネルをレイキャストでフォーカスし、hover/select状態を持たせるデモ。
RenderingViewer Pose
XRFrame.getViewerPoseで得たビューアーポーズを使い、カメラ行列をシーンに適用するデモ。
RenderingWebGL XR Integration
WebGLコンテキストをXRCompatibleにし、XRWebGLLayerへ描画する統合パス。
RenderingWebGPU XR Integration
WebGPU swapchainをXRWebGLLayer相当へブリッジし、XRフレームにGPU描画する統合実装(proposal)。
AudioSpatial Audio Lab
PannerNodeを用いた3D空間オーディオの減衰と定位の検証。
RenderingXR Frame Loop
XRSession.requestAnimationFrameでXRFrameを取得し、ビューごとにレンダリングする基本ループ。