XR Controller Recorder で Controller の相対位置を記録保存・リプレイ再生する 【XR Interaction Toolkit】

XR Interaction Toolkit の XR Controller Recorder の機能について調査してました.
XR Controller Recorder は XR Interaction Toolkit の Sample Scene には特に搭載されてなかったので,
ドキュメントで発見するまでこいつの存在にさえ気づいていませんでした.

  • 検証環境
  • XR Controller Recorder
  • 準備
  • 動作確認
  • 終わりに
続きを読む

スクリプトを通して Interactor Events / Interactable Events にイベントを登録する【XR Interaction Toolkit】

Interactor / Interactable Events について少し深堀しつつ,スクリプトを通してイベント登録をしてみます.

  • 検証環境
  • Interactor Events / Interactable Events
    • 注意 (1.0.0-pre.1 以前 と 1.0.0-pre.2)
      • Interactor Events 比較
      • Interactable Events 比較
      • BaseInteractionEventArgs
  • デバッグスクリプト
  • 動作確認
続きを読む

トグルの値が変更された時に Toggle.OnValueChangedAsObservable を1度目は発火させず2度目以降は発火させる【UniRx / SetIsOnWithoutNotify】

Toggle.OnValueChange,初期値は発火させたくないけど,二度目以降は発火させるようにする奴です.

  • 問題提起
  • 解決方法 |SetIsOnWithoutNotify
  • 参考資料
続きを読む

XR Interaction Toolkit を用いたテレポート/ワープ処理の実装方法【XR Interaction Toolkit】

XR Interaction Toolkit を用いて VR 空間内でテレポート/ワープ処理を実装します.

  • Oculus Integration でのテレポート/ワープ実装方法
  • XR Interaction Toolkit での Teleportation
    • Teleportation Provider
    • Teleportation Anchor, Teleportation Area
      • Interaction Manager
      • Interaction Layer Mask
      • Colliders
      • Custom Reticle
      • Teleport Anchor Transform
      • Teleportation Configuration
        • Match Orientation
          • World Space Up
          • Target Up
          • Target Up And Forward
          • None
        • Teleport Trigger
        • Teleportation Provider
  • 実機確認
    • WorldSpaceUp で確認
    • Target Up で確認
    • Target Up and Forward で確認
    • None で確認
  • 終わりに
続きを読む

Character Controller Driver を利用して Character Controller の Height を現実の頭部位置に合わせて自在に調整する【XR Interaction Toolkit】

XR Interaction Toolkit の Character Controller Driver を利用してみました.意外と便利な機能な気がします.

  • 検証環境
  • Character Controller
  • Character Controller Driver
    • Locomotion Provider
    • Min Height,Max Height
  • 動作確認
続きを読む

URP Vignette と Continuous Move Provider を用いて VR 空間内の移動処理にビネット効果を適用する【XR Interaction Toolkit】

Universal Render Pipeline の Vignette と XR Interaction Toolkit の Continuous Move Provider を組み合わせて,
VR 空間内で移動処理を行う際にビネット効果を適用し,VR酔いの低減を行うようにします.

  • 検証環境
  • Vignette 効果
  • URP Vignette
  • Continuous Move Provider (Device-based)
  • Vignette Provider
  • 動作確認
続きを読む

Continuous Turn Provider (Device-based) を用いて VR 空間内での連続的な視点回転処理を行う【XR Interaction Toolkit】

VR空間での連続的な視点回転処理を提供する Continuous Turn Provider についての説明です.

  • VR 空間内での視点回転処理
  • 環境
  • Continuous Turn Provider (Device-based)
    • System
    • Turn Speed
    • Input Binding
    • Controllers
    • Deadzone Min,Max
  • 実機確認
続きを読む

Continuous Move Provider (Device-based) を用いて VR 空間内で移動処理を行う【XR Interaction Toolkit】

先日のこちらの記事でこんなことを書きました.

xrdnk.hateblo.jp

XR Interaction Toolkit (本記事執筆時点)には移動処理のスクリプトが最初から搭載されていません.
よって,自作する必要があります.

すみません.XR Interaction Toolkit 0.10 以上から移動処理が追加されていました.それが Continuous Move Provider です.

  • 環境
  • Continuous Move Provider
    • System
    • Move Speed
    • Enable Strafe
    • Use Gravity
    • Gravity Application Mode
    • Forward Source
    • Input Binding
    • Controllers
    • Deadzone Min
    • Deadzone Max
  • 終わりに
続きを読む

UnityEngine.XR の InputFeatureUsage を利用してVR空間内で移動処理を行う【UnityEngine.XR】

Oculus Integration の OVRInput を利用せずに,移動処理を行いたいのが関心です.

  • Oculus Integration の場合
  • XR Interaction Toolkit の場合
  • 環境
  • サンプルスクリプト
    • GetDeviceAtXRNode
    • InputFeatureUsage
    • TryGetFeatureValue
  • 実機確認
続きを読む