バーチャル リアリティの基本設定

VR インタラクション、テレポート、HMD の一般的な用途のために設定をカスタマイズするには、[バーチャル リアリティ]の基本設定を理解しましょう。

メニュー バーで、[編集] > [基本設定]をクリックして、ダイアログ ボックスの左側で、[バーチャル リアリティ]を選択します。変更を加えたら、[適用]を押して[OK]をクリックし、変更を保存します。

[バーチャル リアリティ]の基本設定は、可視化、ツールチップ、オブジェクトの衝突、テレポート、および視線トラッキング、フォービエイテッド レンダリング、StarVR を使用するためのインタラクション設定をカスタマイズする場合に使用します。これらのオプションは、[インタラクション]または[HMD]という 2 つのタブのいずれかに配置されています。コントローラのバインドをカスタマイズまたはリセットするには、[OpenXR]タブを使用します。すべてを設定したら、[適用]をクリックします。

バーチャル リアリティの基本設定を更新

[詳細を確認]アイコン 基本設定の編集またはリセットの詳細については、「 基本設定を編集する 」を参照してください。

[インタラクション]タブ

これらのパラメータを使用して、VR で既定の一般的な操作、ハンド トラッキングテレポートマーカーのトラッキングの操作を設定します。

一般

  • [既定の可視化]: 最初のセッションを開始するのに、表示された VR の手またはコントローラのどちらを使用するかを設定します。

  • [ツールチップを表示]: コントローラのツールチップの既定の表示動作を設定します。既定では、このオプションがオンになっているため、コントローラのツールチップが表示されます。

  • [衝突オブジェクトを作成]: シーン内のすべてのタッチ センサーと Web エンジンに対して、衝突オブジェクトを作成するときの既定の状態を設定します。無効にすると、VR の手を使用するときにタッチ センサーおよび Web エンジンを操作できません。

ハンド トラッキング

Varjo XR-3 ユーザのみが使用できます。

トラッキング対象の手に対して、ハンド トラッキングの有効化手の移動オフセットと回転オフセットの設定を行った場合の既定の状態を設定します。

Varjo XR-3 ユーザの場合、VR または XR の基本設定でハンド トラッキングを有効にすると、ハンド トラッキングが自動的にアクティブになります。

  • [VR でトラッキングした手を使用]: Varjo XR-3 ユーザのみが使用できます。VR 内でハンド トラッキングが有効な場合、既定でハンド トラッキングを常に行うように設定します。トラッカーが Varjo Integrationd Ultraleap に設定されている場合は、サポートされている HMD で XR 内のハンド トラッキングも有効になります。

  • [トラッカー]: Varjo XR-3 および VR-3 ユーザのみが使用できます。ハンド トラッキングに使用する既定のシステムを設定します。

    • Varjo ユーザは、Varjo Integrated Ultraleap を有効にする必要があります。
    • 他のハンド トラッキング デバイスを使用するには、[カスタム]を選択します。

    他のデバイスにハンド トラッキングを設定する

    [カスタム]トラッカー オプションを使用する場合は、すべてのトラッキング データを VRED の Python インタフェースに提供する必要があります。この方法はデバイスごとに異なります。ただし、Python スクリプトを使用してトラッキング データにアクセスできる場合は、使用したメソッドによって返される vrdTrackedHand オブジェクトに、このトラッキング データを設定する必要があります。そのためには、トラッキング対象の手や指のジョイントに関する変換データが必要になります(この仕組みについては、externalHandTracking.py のサンプル ファイルを参照してください)。

    テストする場合は、対応する基本設定を行い、スクリプトをロードして、VR を開始します。すべての機能を理解するために、手やジョイントのトランスフォームの値を変更して、スクリプトを変更しなければならない場合があります。

  • [移動オフセット]: 手をトラッキングする場合の既定の移動オフセットを設定します。この機能は、トラッキング対象の手と VR でレンダリングされた手との間のオフセットを調整するために使用します。

  • [回転オフセット]: 手をトラッキングする場合の既定の回転オフセットを設定します。この機能は、トラッキング対象の手と VR でレンダリングされた手との間のオフセットを調整するために使用します。

テレポート

テレポート モードと範囲の既定の状態を設定します。

  • [可用性]: テレポートできる既定のモードを設定します。VR でのみテレポートするのか、それとも VR と MR の両方でテレポートするのかを選択します。

  • [地面モード]: テレポートしてモデル上にテレポートする場合、またはモデル周辺の領域内部にテレポートする場合の既定のモードを設定します。

    重要:

    自動車の内部、または地面上のいずれかの場所にテレポートするには、[地面の上]を選択します。[ジオメトリ上]が選択されている場合は、ジオメトリ上にテレポートできますが、ジオメトリ内にはテレポートできません。

  • [範囲]: シーン内でテレポートできる最大距離の既定値を設定します。

ポインタ

オブジェクトに近い場合やレーザー ポインタを使用する場合の操作性を向上させるには、これらのオプションを使用します。ポインタの端にある球は、オブジェクトの近くで使用するには大きすぎることがあります。

点と球の問題

オブジェクトに近づくか、オブジェクトから遠ざかって、球のサイズとレーザーの直径が変更されたときに、これらのオプションを使用して両方に最適なサイズと直径を設定します。

点と球のサイズを変更

  • [スケール距離]: ポインタがフル サイズ(100% オブジェクト スケール)になる距離を定義します。
  • [球のスケール範囲]: 球の最小サイズと最大サイズを定義します(1 = 100% オブジェクト スケール)。スケール距離に達したときのサイズが球の最大サイズです。
  • [レイのスケール範囲]: レイの直径の最小サイズと最大サイズを定義します(1.00 = 100% オブジェクト スケール)。スケール距離に達したときの直径がレイの最大直径です。

マーカーのトラッキング

マーカー トラッキング システムは各マーカーを検出し、0.0 ~ 1.0 の範囲内の信頼度値を割り当てます。

  • 0.0 の場合は、検出された結果(マーカー ID と位置)が 100% 正しくないと判断されます。

  • 1.0 の場合は、検出された結果(マーカー ID と位置)が 100% 正しいと判断されます。

たとえば、値が 0.9 のマーカーは、マーカーの位置と ID の正確性について 90% 信頼できることを意味します。

  • 信頼度値が低いマーカーは、位置が移動している可能性があります。許容できる最小信頼度の設定値を大きくすると、検出された結果の中で信頼性が低いものは無視されるようになります。

  • 検出されたマーカーの信頼度値が高くても、後で最小値を下回る信頼度値が検出された場合、このマーカーは無視され、位置は更新されません。

マーカーの使用の詳細については、「複合現実のマーカー」を参照してください。

  • [最小のマーカー信頼度]: 検出されたマーカー位置が正しいかどうかを判断するために、マーカー トラッキング システムで使用される既定の最小値を設定します。

[HMD]タブ

これらのパラメータを使用して、視点トラッキングフォービエイテッド レンダリングHMD 固有のオプションの既定の HMD 設定を行います。これらは既定で無効になっています。

視線トラッキング

VRED は現在、HTC VIVE Pro Eye および StarVR ヘッドセットの視線トラッキングをサポートしています。

  • [視線トラッキング]: 視線トラッキングの既定の動作を設定します。これは、既定では無効になっています。オンの場合、HMD はユーザの目の動きをトラッキングします。このデータは、視線トラッキングが有効になっている場合に、高解像度レンダリングが必要な領域を判別するためにフォービエイテッド レンダリングで使用されます。

フォービエイテッド レンダリング

フォービエイテッド レンダリングには OpenGL Shading Rate 拡張機能が必要であり、使用できるのは NVIDIA RTX カード(Turing アーキテクチャ)に限られます。

これにより、周辺領域のイメージの品質が低下して、パフォーマンスが向上します。このオプションは、視線トラッキングで使用されます。

  • [フォービエイテッド レンダリング]: 既定のフォービエイテッド レンダリングの状態を設定します。これは、既定では無効になっています。オンの場合、視線トラッキング対象の領域は高解像度で、周辺領域は低解像度でレンダリングされます。

    注:

    このオプションは現在、Varjo および StarVR ヘッドセットではサポートされていません。視線トラッキング機能がない別のヘッドセットを使用している場合は、VR のフォービエイテッド レンダリング基本設定のオプションを有効にします。ただし、視線をトラッキングできないため、中心領域は移動しません。中心領域はイメージの中央に固定されたままになります。

    注:

    OpenGL Shading Rate Image 拡張機能に関するメッセージが表示される場合、原因は、フォービエイテッド レンダリングを使用できるのが NVIDIA RTX カード(Turing アーキテクチャ)に限られるためです。

  • [中心領域のサイズ]: 楕円形の中心領域の既定のサイズを設定します。

    注:

    フォービエイテッド レンダリングの設定にアクセスするための新しい Python サービス vrHMDService が追加されました。

  • [シェーディング品質]: フォービエイテッド レンダリング シェーディングに使用する既定のレベルを設定します。フォービエイテッド レンダリングを使用するイメージ領域は 3 つあり、それぞれ異なるシェーディング精度でレンダリングできます。

    • [内側]: 中心領域
    • [中央]: 内側と周辺の間のトランジション ゾーン
    • [周辺]: 外側の周辺領域

    Foveated Genisis のサンプル

    上記のレンダリング イメージでは、次の品質を示しています。

    • [内側]: 4 サンプル(ピクセルあたりのサンプル数が 4 となるスーパーサンプリングのシェーディング)
    • [中央]: 1 サンプル(ネイティブ ピクセル シェーディング 1x1)
    • [周辺]: 4 ピクセルあたり 1 サンプル(4x4 ピクセル ブロックあたりのサンプル数が 1 となる粗いシェーディング)

    独自のシェーディング精度を設定するには、プリセットを使用するか、[カスタム]を選択します。通常、レンダリング品質は、最も内側の領域が(他の 2 つの領域と比べて)最高になり、周辺が最低になります。

    • [最高のパフォーマンス]: 周辺に粗いシェーディングを使用することで、低い表示品質で最高のパフォーマンスを実現します。

    • [バランス]および[最高品質]: 表示品質が改善されます。特にカーボン マテリアルや特定のテクスチャを含むマテリアルなど、小さな反復パターンのあるマテリアルで品質が大幅に向上します。

      表示品質が改善されるのは、スーパーサンプリングのシェーディング精度として、2x (2 サンプル)、4x (4 サンプル)、8x (8 サンプル)などを使用しているためです。

      重要:

      スーパーサンプリングのシェーディング精度が有効になるのは、マルチサンプル アンチエイリアシング(リアルタイム アンチエイリアシング)を使用して、少なくとも同じ量のサンプルがレンダリングされている場合のみです。

      [フォービエイテッド レンダリング]基本設定の[シェーディング品質]設定の横にヒントが表示され、必要なサンプルの最小数が表示されます。サンプル数が十分にあるリアルタイム アンチエイリアシングのレベルをアクティブにします。既定で使用されるサンプル数は、[低]の場合は 2、[中]の場合は 4、[高]の場合は 8 です。

      たとえば、ヒントに 4 個以上のサンプルが必要であると示されている場合は、[中]または[高]のリアルタイム アンチエイリアシングをアクティブにします。リアルタイム アンチエイリアシングのサンプル数は、基本設定([編集] > [基本設定] > [レンダリング] > [レンダリング ウィンドウ] > [可視化(高度)]タブ > [リアルタイム アンチエイリアシング プリセット])で変更できます。

      具体的なプリセットの精度を、次に示します。

      プリセット 内側(中心) 中央の精度 周辺の精度
      最高のパフォーマンス 1 サンプル 4 ピクセルあたり 1 サンプル 16 ピクセルあたり 1 サンプル
      バランス 4 サンプル 1 サンプル 4 ピクセルあたり 1 サンプル
      最高品質 8 サンプル 4 サンプル 2 サンプル

      • [カスタム]: 個々の品質を完全にコントロールして、[カスタム品質]セクションを公開します。

  • [カスタム品質]: 内側、中央、周辺のイメージ領域に対して、既定のカスタム フォービエイテッド レンダリングのシェーディング精度を設定します。

    • [内側]: 中心領域

    • [中央]: 内側と周辺の間のトランジション ゾーン

    • [周辺]: 外側の周辺領域

      パラメータごとに、次のいずれかのオプションを選択します。

    • [1 サンプル]: これはフォービエイテッド レンダリングを使用しない標準のシェーディング精度です。

    • [4 ピクセルあたり 1 サンプル][16 ピクセルあたり 1 サンプル]: シェーディング精度が低いシェーダほど、評価頻度は小さくなります。マテリアル評価の結果は、複数のピクセル(例: [4 ピクセルあたり 1 サンプル]は 2 x 2 のピクセル ブロックあたりのサンプル数が 1 となる粗いシェーディング)に対して使用されます。

    • [2 サンプル][4 サンプル][8 サンプル]: シェーディング精度が高いマテリアルは、ピクセルごとに最大 8 回評価されます。

      注:

      正確なシルエットを持つ変位マテリアルは現在、常に標準のシェーディング精度で評価されます。

Varjo

これらのオプションは、既定のネイティブ フォービエイテッド レンダリング状態、開始したモード、および手の深度を設定するための Varjo HMD 固有のオプションです。

基本設定が完了したら、[適用]をクリックし、[OK]をクリックして、これらの設定を保存します。

  • [ネイティブ フォービエイテッド レンダリング] : [視線トラッキング]を有効にする必要があります。 周辺要素のレンダリング方法についての既定値の状態を設定します。有効にすると、周辺領域の解像度(イメージ品質)は低下しますが、視線トラッキングが行われている領域は引き続き高解像度でレンダリングされます。これにより、計算量の多いマテリアルを含むシーンで作業している場合や、リアルタイム アンチエイリアシングを使用している場合は、パフォーマンスが向上します。フォービエイテッド レンダリングおよびさまざまな設定の詳細については、「 カスタム品質 」を参照してください。

  • [既定のモード]: Varjo HMD の既定の表示モードを設定します。常に複合現実で作業する場合は、これを MR に設定します。

  • [深度予測]: XR の実世界の手の既定の状態を設定します。有効にすると、複合現実のビデオ内で実世界の手を検出し、これらが仮想オブジェクトよりも手前にある場合は、仮想オブジェクトの前に表示します。無効にすると、実際の手がレンダリングされたオブジェクトよりも手前にある場合でも、VRED からレンダリングしたときに、実際の手は常にオクルードされます。

    [深度予測]: オフ [深度予測]: オン
    [深度予測]: オフ [深度予測]: オン

OpenXR

OpenXR を使用するデバイスのコントローラのバインドを設定するには、[OpenXR]タブを使用します。

重要:

OpenXR コントローラのバインドを変更した場合、VRED はセッションを再起動する必要があります。通知内の[OK]をクリックしてセッションを再起動し、新しいバインドを適用します。

VRED でコントローラのバインドを設定すると、アクティブな OpenXR ランタイムに対してのみこれらのマッピングが提案されることに注意してください。ランタイムは、これらの提案を無視するように決定することもできます。この場合、対応するランタイムでマッピングを設定する必要があります。「 SteamVR のコントローラのバインドを管理する 」を参照してください。

  • [コントローラ タイプ]: 使用するコントローラのタイプを設定します。HTC VIVE、HTC VIVE Cosmos、Oculus Touch、Microsoft Motion、および HP MR から選択できます。

  • [左=右]: 有効にすると、コントローラ マッピングが、左右のコントローラの両方で同じ設定になります。無効にすると、コントローラの方法とアクションに対して左右のコントローラに異なるバインドを設定できます。

次に、各アクションについて、アクションの横にあるドロップダウン メニューからコントローラのバインドを選択します。完了したら、[適用]をクリックします。

  • [スナップを配置]: 配置ツールのスナップ機能をアクティブにするために使用するコントローラ入力を設定します。

  • [ポインタ実行]: ポインタに使用するコントローラ入力を設定します。

  • [ポインタ レイ ポーズ]: ポインタ レイの配置に使用するコントローラ入力を設定します。

  • [ポインタ表示]: ポインタ レイの表示に使用するコントローラ入力を設定します。

  • [テレポート実行]: テレポートに使用するコントローラ入力を設定します。

  • [テレポート レイ ポーズ]: テレポート レイの配置に使用するコントローラ入力を設定します。

  • [テレポート表示]: テレポート レイの表示に使用するコントローラ入力を設定します。

  • [VR メニューの位置]: メニューの配置に使用するコントローラ入力を設定します。

  • [VR メニューの表示]: メニューの表示と非表示に使用するコントローラ入力を設定します。

  • [既定に設定]: コントローラのバインドに対する変更をすべて削除し、既定値に戻します。

  • [コントローラを追加]: 別のタイプのコントローラを追加して設定します。コントローラを削除するには、[コントローラを削除]をクリックします。

コントローラを設定する

コントローラのボタンの設定をカスタマイズするには、次の操作を行います。

  1. [バーチャル リアリティ]基本設定で、[OpenXR]を選択します。

  2. [コントローラ タイプ]ドロップダウン メニューからコントローラを選択します。

  3. 各コントローラに異なるバインドを適用する場合は、[左=右]チェックボックスをオンにします。それ以外の場合は、無効にします。

  4. 各アクションの横にあるドロップダウン メニューを開き、オプションを選択します。

    ヒント:

    アクセスできないようにするには、アクションを無効にします。手順については、「 アクションを無効にする 」を参照してください。コントローラのボタンを無効にすることもできます。手順については、「 コントローラ ボタンを無効にする 」を参照してください。

  5. 完了したら、[適用]をクリックします。

独立したコントローラを設定する

コントローラのバインドをカスタマイズするときに、左右のコントローラを互いに独立して設定することができます。

これを行うには、[バーチャル リアリティ]基本設定の[OpenXR]タブで、[左=右]チェックボックスをオンにします。

コントローラのバインドをリセットする

すべてのコントローラのバインドを既定値にリセットするには、[バーチャル リアリティ]基本設定の[OpenXR]タブで[既定に設定]をクリックします。

コントローラを追加する

他のコントローラを追加したり、そのバインドをカスタマイズすることができます。

  1. [バーチャル リアリティ]基本設定で、[OpenXR]を選択します。
  2. [コントローラを追加]をクリックし、ドロップダウン メニューからコントローラのタイプを選択します。
  3. コントローラのバインドを設定します。
  4. 完了したら、[適用]をクリックします。

アクションを無効にする

アクションを無効にしてセッションでアクセスできないようにするには、次の操作を実行します。

  1. [バーチャル リアリティ]基本設定で、[OpenXR]を選択します。
  2. リストから目的のアクションを選択します。
  3. アクションの横にあるドロップダウン メニューを開き、[なし]を選択します。これで、セッション中にアクションをトリガできなくなります。

後でアクションにアクセスできるようにするには、ドロップダウン メニューから[メニューをクリック]や[X タッチ]などのターゲットを選択します。

コントローラ ボタンを無効にする

[バーチャル リアリティ]基本設定の[OpenXR]タブを使用して、コントローラ ボタンを無効にすることができます。コントローラのバインド リストで、ボタンがアクションに割り当てられていないことを確認します。割り当てられている場合は、アクションのドロップダウン メニューから別のオプションを選択します。

コントローラ ボタンを無効にする

OpenVR

OpenVR を使用して特定のデバイスをブロックするには、[OpenVR]タブを使用します。

  • [ブロックされた入力デバイス]: 登録時にブロックされる OpenVR 入力デバイスのモデル名またはシリアル名のリストを表示します。この領域内で右クリックすることにより、次のオプションを使用することもできます。

    [作成] [作成]: デバイスのモデル名またはシリアル名を入力するためのフィールドを作成します。

    [編集] [編集]: デバイスのモデル名またはシリアル名を編集できます。

    [削除] [削除] ([Del]): 選択したデバイスのモデル名またはシリアル名を削除します。