本開示は、いくつかの実施形態による、拡張現実(XR)体験をユーザに提供するユーザインタフェースに関する。
本明細書に記載するシステム、方法、及びGUIは、複数の方法で仮想/拡張現実環境とのユーザインタフェース相互作用を改善する。
いくつかの実施形態では、コンピュータシステムは、XR環境で表されるユーザに関連付けられた異なる提示モード間で切り替える。コンピュータシステムは、表示生成コンポーネントと、第1のユーザに関連付けられた外部コンピュータシステムと通信する。コンピュータシステムは、表示生成コンポーネントを介して、第1の提示モードで外部コンピュータシステムの第1のユーザの表現を含む通信ユーザインタフェースであって、通信ユーザインタフェースが、拡張現実環境において第1のユーザの表現を表示し、第1のユーザの表現が、第1の提示モードにある間、外部コンピュータシステムによって検出される第1のユーザの第1の部分の移動の変化に視覚的に反応する形状を有する、通信ユーザインタフェースを表示する。第1の提示モードにおいて第1のユーザの表現を表示する間に、コンピュータシステムは、外部コンピュータシステムから、第1のユーザの第1の部分の移動を示す第1のデータを受信し、第1のデータを受信したことに応じて、第1のユーザの第1の部分の移動に基づいて、第1のユーザの表現の形状を修正する。第1のユーザの表現の形状を修正した後に、コンピュータシステムは、第1のユーザの表現が、第1の提示モードとは異なる第2の提示モードで表示されることを示す第2のデータを受信する。第2のデータを受信したことに応じて、コンピュータシステムは、表示生成コンポーネントを介して、第1のユーザの表現であって、第1のユーザの表現が、第2の提示モードにある間、外部コンピュータシステムによって検出される第1のユーザの第1の部分の移動の変化に視覚的に反応しない形状を有する、第1のユーザの表現を第2の提示モードで表示する。第2の提示モードにおいて第1のユーザの表現を表示する間に、コンピュータシステムは、物理環境における第1のロケーションから、物理環境における第1のロケーションとは異なる物理環境における第2のロケーションへの第1のユーザの移動を示す第3のデータを受信し、第3のデータを受信したことに応じて、拡張現実環境内の第1のロケーションから、拡張現実環境内の第1のロケーションとは異なる拡張現実環境内の第2のロケーションへ移動する第1のユーザの表現を表示する。
いくつかの実施形態では、コンピュータシステムは、XR環境において仮想アバターを表示する。コンピュータシステムは、表示生成コンポーネントと、第1のユーザに関連付けられた外部コンピュータシステムと通信する。拡張現実環境において第1のユーザの表現を表示する要求を受信したことに応じて、眼鏡表示基準のセットが満たされているとの判定に従って、コンピュータシステムは、表示生成コンポーネントを介して、拡張現実環境において第1のユーザの表現を表示し、表示生成コンポーネントを介して、拡張現実環境において第1のユーザの表現上に配置された眼鏡の表現を表示する。眼鏡表示基準のセットが満たされていないとの判定に従って、コンピュータシステムは、表示生成コンポーネントを介して、拡張現実環境内の第1のユーザの表現上に配置された眼鏡の表現を表示することなく、拡張現実環境内の第1のユーザの表現を表示する。
いくつかの実施形態では、コンピュータシステムは、コンピュータシステムのユーザの1つ以上の特徴を登録するためのユーザインタフェースを表示する。コンピュータシステムは、表示生成コンポーネント及び1つ以上のカメラと通信している。1つ以上のカメラを介してユーザの顔データをキャプチャすることを含む登録プロセス中に、コンピュータシステムは、表示生成コンポーネントを介して、ユーザの1つ以上の特徴を登録するための登録インタフェースを表示し、ユーザの顔特徴のうちの1つ以上の第1のセットを、1つ以上の表情の第1の所定のセットに配置するための第1のプロンプトを出力することと、ユーザの顔特徴のうちの1つ以上の第2のセットを、1つ以上の表情の第1の所定のセットとは異なる1つ以上の表情の第2の所定のセットに配置するための第2のプロンプトを出力することと、を含む。
いくつかの実施形態では、コンピュータシステムは、XR環境において仮想アバターに関連付けられた視覚効果を表示する。コンピュータシステムは、表示生成コンポーネント及び1つ以上のセンサと通信している。コンピュータシステムは、表示生成コンポーネントを介して、ユーザ特徴インジケータインタフェースであって、物理環境におけるユーザの手の1つ以上の特徴のセットの検出ロケーションに対応する1つ以上の視覚インジケータのセットを含み、1つ以上の視覚インジケータのセットが、拡張現実環境において表示され、物理環境におけるユーザの手の1つ以上の特徴のセットの第1の検出ロケーションに対応する第1の表示ポジションを有する、ユーザ特徴インジケータインタフェースを表示する。コンピュータシステムは、1つ以上のセンサを介して、ユーザの手の1つ以上の特徴のセットにおけるユーザの手の少なくとも1つの特徴の移動を検出する。ユーザの手の1つ以上の特徴のセットにおけるユーザの手の少なくとも1つの特徴の移動を検出したことに応じて、コンピュータシステムは、ユーザ特徴インジケータインタフェースの表示を更新し、ユーザの手の1つ以上の特徴のセットが物理環境内の第2の検出ロケーションに移動したとの判定に従って、表示生成コンポーネントを介して、物理環境内のユーザの手の1つ以上の特徴のセットの第2の検出ロケーションに対応する拡張現実環境内の第2の表示ポジションを有する1つ以上の視覚インジケータのセットを表示することと、ユーザの手の1つ以上の特徴のセットが第2の検出ロケーションとは異なる物理環境内の第3の検出ロケーションに移動したとの判定に従って、表示生成コンポーネントを介して、物理環境内のユーザの手の1つ以上の特徴のセットの第3の検出ロケーションに対応する拡張現実環境内の第3の表示ポジションであって、拡張現実環境内の第3の表示ポジションが、拡張現実環境内の第2の表示ポジションとは異なる、拡張現実環境内の第3の表示ポジションを有する1つ以上の視覚インジケータのセットを表示することと、を含む。
いくつかの実施形態では、コンピュータシステムは、XR環境において異なる視覚的特性を有するオブジェクトを表示する。コンピュータシステムは、表示生成コンポーネントと、第1のユーザに関連付けられた外部コンピュータシステムと通信する。コンピュータシステムは、拡張現実環境において、表示生成コンポーネントを介して、第1のユーザの表現であって、第1のユーザの表現が、第1の姿勢と、第1のユーザの少なくとも一部の形状に基づく形状とを有する拡張現実環境に表示され、第1のユーザの表現の形状が、視覚的特性の第1のセットで視覚化される、第1のユーザの表現を表示する。コンピュータシステムは、第1のユーザの姿勢の変化を示すデータを含む第1のデータを受信し、第1のデータを受信したことに応じて、拡張現実環境における第1のユーザの表現の外観を更新する。この外観を更新することは、第1のデータが、第1のユーザの第1の部分がオブジェクトに接触しているというインジケーションを含むとの判定に従って、拡張現実環境において、表示することを含み、第1のユーザの表現は第1のユーザの姿勢の変化に基づく第2の姿勢を有すし、第1のユーザの表現の形状が視覚的特性の第1のセットによって視覚化され、オブジェクトの表現はオブジェクトの少なくとも一部の形状に基づく形状を有し、オブジェクトの表現の形状は、視覚的特性の第1のセットとは異なる視覚的特性の第2のセットを用いて視覚化される。
図1~図6は、XR体験をユーザに提供するための例示的なコンピュータシステムを説明する。図7A~図7Hは、いくつかの実施形態による、コンピュータシステムのユーザの1つ以上の特徴を登録するためのユーザインタフェースを図示する。図8は、様々な実施形態による、コンピュータシステムのユーザの1つ以上の特徴を登録するための例示的な方法を示すフローチャートである。図7A~図7Hは、図8のプロセスを説明するために使用される。図9A~図9Fは、いくつかの実施形態による、XR環境における仮想アバターに関連付けられた様々な視覚効果を示す。図10は、いくつかの実施形態による、XR環境において仮想アバターの手に視覚インジケータを表示するための例示的な方法を示すフローチャートである。図11は、いくつかの実施形態による、XR環境において異なる視覚的特性を有するオブジェクトを表示するための例示的な方法を示すフローチャートである。図9A~図9Fは、図10及び図11のプロセスを説明するために使用される。図12A~図12Eは、いくつかの実施形態による、XR環境で表されるユーザに関連付けられた様々な提示モードを示す。図13A及び図13Bは、いくつかの実施形態による、XR環境において表されるユーザに関連付けられた異なる提示モード間で切り替えるための例示的な方法を示すフローチャートである。図14は、いくつかの実施形態による、XR環境において仮想アバターを表示するための例示的な方法を示すフローチャートである。図12A~12Eは、図13A、図13B、及び図14のプロセスを示すために使用される。
後述のプロセスは、改善された視覚的なフィードバックをユーザに提供すること、操作を実行するために必要な入力の数を減らすこと、表示される追加のコントロールでユーザインタフェースを雑然とさせることなく追加の制御オプションを提供すること、条件のセットが満たされたときに更なるユーザ入力を必要とせずに操作を実行すること、プライバシー及び/又はセキュリティを改善すること及び/又は、他の技術を含む、様々な技術により、(例えば、ユーザがデバイスを操作/対話する際に適切な入力を行うのを助け、ユーザの誤りを減らすことによって)デバイスの操作性を高め、ユーザとデバイスのインタフェースを効率化するものである。これらの技術はまた、ユーザがデバイスをより迅速かつ効率的に使用することを可能にすることによって、電力使用量を低減し、デバイスのバッテリ寿命を改善する。
更に、1つ以上のステップが満たされている1つ以上の条件を条件とする本明細書に記載の方法では、記載の方法は、繰り返しの過程にわたって、本方法のステップが条件とする条件の全てが本方法の異なる繰り返しで満たされるように、複数の繰り返しで繰り返されることができることを理解されたい。例えば、ある方法が、条件が満たされた場合に第1のステップを実行し、条件が満たされなかった場合に第2のステップを実行することを必要とする場合、当業者であれば、条件が満たされ、満たされなくなるまで、請求項に記載のステップが、特定の順序で繰り返されることを理解するであろう。したがって、満たされた1つ以上の条件に依存する1つ以上のステップで説明される方法は、方法に記載された各条件が満たされるまで繰り返される方法として書き換えられることができる。しかしながら、これは、システム又はコンピュータ可読媒体が、対応する1つ以上の条件の充足に基づいて条件付き動作を実行する命令を含み、したがって、方法のステップが条件付きである全ての条件が満たされるまで、方法のステップを明示的に繰り返すことなく偶発性が満たされたか否かを判定することができる、システム又はコンピュータ可読媒体の請求項には必要とされない。当業者はまた、条件付きステップを有する方法と同様に、システム又はコンピュータ可読記憶媒体が、条件付きステップの全てが実行されたことを確実にするために必要な回数だけ方法のステップを繰り返すことができることを理解するであろう。
いくつかの実施形態では、図1に示されるように、XR体験は、コンピュータシステム101を含む動作環境100を介してユーザに提供される。コンピュータシステム101は、コントローラ110(例えば、ポータブル電子デバイス又はリモートサーバのプロセッサ)と、表示生成コンポーネント120(例えば、ヘッドマウントデバイス(HMD)、ディスプレイ、プロジェクタ、タッチスクリーンなど)と、1つ以上の入力デバイス125(例えば、アイトラッキングデバイス130、ハンドトラッキングデバイス140、他の入力デバイス150)と、1つ以上の出力デバイス155(例えば、スピーカ160、触知出力ジェネレータ170、及び他の出力デバイス180)と、1つ以上のセンサ190(例えば、画像センサ、光センサ、深度センサ、触覚センサ、配向センサ、近接センサ、温度センサ、ロケーションセンサ、運動センサ、速度センサなど)と、任意選択的に1つ以上の周辺デバイス195(例えば、家電製品、ウェアラブルデバイスなど)と、を含む。いくつかの実施形態では、入力デバイス125、出力デバイス155、センサ190、及び周辺デバイス195のうちの1つ以上は、(例えば、ヘッドマウントデバイス又はハンドヘルドデバイス内で)表示生成コンポーネント120と統合される。
XR体験を説明するとき、ユーザが感知することができる、及び/又は(例えば、XR体験を生成するコンピュータシステムに、コンピュータシステム101に提供される様々な入力に対応するオーディオ、視覚、及び/又は触覚フィードバックを生成させる、XR体験を生成するコンピュータシステム101によって検出された入力を用いて)ユーザが対話することができる、いくつかの関連するが、別個の環境に個別的に言及するために様々な用語が使用される。以下は、これらの用語のサブセットである。
物理環境:物理環境とは、人々が電子システムの助けなしに、感知及び/又は相互作用することができる物理的世界を指す。物理的な公園などの物理環境には、物理的な木々、物理的な建物、及び物理的な人々などの物理的物品が挙げられる。人々は、視覚、触覚、聴覚、味覚、及び嗅覚などを介して、物理環境を直接感知し、及び/又はそれと相互作用することができる。
拡張現実:これと対照的に、拡張現実(extended reality、XR)環境は、人々が電子システムを介して感知及び/又は対話する、全体的又は部分的にシミュレートされた環境を指す。XRでは、人物の身体運動のサブセット又はその表現が追跡され、それに応じて、XR環境内でシミュレートされた1つ以上の仮想オブジェクトの1つ以上の特性が、少なくとも1つの物理学の法則でふるまうように調節される。例えば、XRシステムは、人物の頭部の回転を検出し、それに応じて、そのようなビュー及び音が物理環境においてどのように変化するかと同様の方法で、人物に提示されるグラフィックコンテンツ及び音場を調節することができる。状況によっては(例えば、アクセス性の理由から)、XR環境における仮想オブジェクト(単数又は複数)の特性(単数又は複数)に対する調節は、身体運動の表現(例えば、音声コマンド)に応じて行われてもよい。人物は、視覚、聴覚、触覚、味覚及び嗅覚を含むこれらの感覚のうちのいずれか1つを使用して、XRオブジェクトを感知し、かつ/又はXRオブジェクトと対話してもよい。例えば、人は、3D空間内のポイントオーディオソースの知覚を提供する、3D又は空間オーディオ環境を作り出すオーディオオブジェクトを感知し、及び/又はそれと対話することができる。別の例では、オーディオオブジェクトによって、コンピュータ生成オーディオを含めて、又は含めずに、物理環境から周囲音を選択的に組み込むオーディオ透過性が可能になり得る。いくつかのXR環境では、人物は、オーディオオブジェクトのみを感知し、かつ/又はそれと相互作用してもよい。
XRの例としては、仮想現実及び複合現実が挙げられる。
仮想現実:仮想現実(VR)環境とは、1つ以上の感覚について、コンピュータ生成感覚入力に全面的に基づくように設計された模倣環境を指す。VR環境は、人物が感知かつ/又は相互作用することができる複数の仮想オブジェクトを含む。例えば、木、建物、及び人々を表すアバターのコンピュータ生成画像は、仮想オブジェクトの例である。人物は、コンピュータ生成環境内に人物が存在することのシミュレーションを通じて、かつ/又はコンピュータ生成環境内での人物の物理的移動のサブセットのシミュレーションを通じて、VR環境における仮想オブジェクトを感知し、かつ/又はそれと相互作用することができる。
複合現実:複合現実(MR)環境とは、コンピュータ生成感覚入力に全面的に基づくように設計されたVR環境とは対照的に、コンピュータ生成感覚入力(例えば、仮想オブジェクト)を含むことに加えて、物理環境からの感覚入力又はその表現を組み込むように設計された模倣環境を指す。仮想の連続体上では、複合現実環境は、一方の端部における完全な物理環境と、他方の端部における仮想現実環境との間であるがこれらを含まない、任意の場所である。いくつかのMR環境では、コンピュータ生成感覚入力は、物理環境からの感覚入力の変化に応答し得る。また、MR環境を提示するためのいくつかの電子システムは、仮想オブジェクトが現実のオブジェクト(すなわち、物理環境からの物理的物品又はその表現)と相互作用することを可能にするために、物理環境に対するロケーション及び/又は配向を追跡してもよい。例えば、システムは、仮想の木が物理的な地面に対して静止して見えるように、移動を考慮に入れてもよい。
複合現実の例としては、拡張現実及び拡張仮想が挙げられる。
拡張現実:拡張現実(AR)環境とは、1つ以上の仮想オブジェクトが物理環境上又はその表現上に重ね合わされた模倣環境を指す。例えば、AR環境を提示するための電子システムは、人物が物理環境を直接見ることができる透明又は半透明のディスプレイを有してもよい。システムは、透明又は半透明のディスプレイに仮想オブジェクトを提示するように構成されていてもよく、それによって、人物はシステムを使用して、物理環境の上に重ね合わされた仮想オブジェクトを知覚する。あるいは、システムは、不透明ディスプレイと、物理環境の表現である、物理環境の画像又はビデオをキャプチャする1つ以上の撮像センサとを有してもよい。システムは、画像又はビデオを仮想オブジェクトと合成し、その合成物を不透明ディスプレイ上に提示する。人物はこのシステムを使用して、物理環境を、物理環境の画像又はビデオによって間接的に見て、物理環境に重ね合わされた仮想オブジェクトを知覚する。本明細書で使用するとき、不透明ディスプレイ上に示される物理環境のビデオは、「パススルービデオ」と呼ばれ、システムが、1つ以上の画像センサ(単数又は複数)を使用して、物理環境の画像をキャプチャし、不透明ディスプレイ上にAR環境を提示する際にそれらの画像を使用することを意味する。更に代替的に、システムが仮想オブジェクトを、例えば、ホログラムとして物理環境の中に、又は物理的表面に投影するプロジェクションシステムを有してもよく、それによって、人物はシステムを使用して、物理環境に重ね合わされた仮想オブジェクトを知覚する。拡張現実環境はまた、物理環境の表現がコンピュータ生成感覚情報によって変換される模倣環境を指す。例えば、パススルービデオを提供する際に、システムは、1つ以上のセンサ画像を、撮像センサがキャプチャした透視図とは別の選択された透視図(例えば、視点)を面付けするように変形してもよい。別の例として、物理環境の表現を、その一部をグラフィカルに修正(例えば、拡大)することによって変形してもよく、それにより、修正された部分を、元のキャプチャ画像を表すが非写実的な、改変版にすることもできる。更なる例として、物理環境の表現は、その一部をグラフィカルに除去又は不明瞭化することによって変形されてもよい。
拡張仮想:拡張仮想(augmented virtuality、AV)環境とは、仮想環境又はコンピュータ生成環境が物理環境から1つ以上の感覚入力を組み込んだ模倣環境を指す。感覚入力は、物理環境の1つ以上の特性の表現であり得る。例えば、AVの公園には仮想の木及び仮想の建物があり得るが、顔がある人々は、物理的な人々が撮られた画像から写実的に再現される。別の例として、仮想オブジェクトは、1つ以上の撮像センサによって撮像された物理的物品の形状又は色を採用してもよい。更なる例として、仮想オブジェクトは、物理環境における太陽のポジションと一致する影を採用することができる。
視点ロック仮想オブジェクト:ユーザの視点がシフト(例えば、変化)しても、コンピュータシステムが仮想オブジェクトをユーザの視点内の同じロケーション及び/又はポジションに表示するとき、仮想オブジェクトは視点ロックされる。コンピュータシステムがヘッドマウントデバイスである実施形態では、ユーザの視点は、ユーザの頭部の前向き方向にロックされる(例えば、ユーザの視点は、ユーザが真っ直ぐ前を見ているときのユーザの視野の少なくとも一部である)。したがって、ユーザの視点は、ユーザの頭部を動かさずに、ユーザの視線が動いても固定されたままである。コンピュータシステムが、ユーザの頭部に対して再配置され得る表示生成コンポーネント(例えば、表示画面)を有する実施形態では、ユーザの視点は、コンピュータシステムの表示生成コンポーネント上でユーザに提示されている拡張現実ビューである。例えば、ユーザの視点が第1の向きにある(例えば、ユーザの頭部が北を向いている)ときにユーザの視点の左上隅に表示される視点ロック仮想オブジェクトは、ユーザの視点が第2の向きに変化しても(例えば、ユーザの頭部が西を向いている)、ユーザの視点の左上隅に表示され続ける。言い換えれば、視点ロック仮想オブジェクトがユーザの視点において表示されるロケーション及び/又はポジションは、物理環境におけるユーザのポジション及び/又は向きとは無関係である。コンピュータシステムがヘッドマウントデバイスである実施形態では、ユーザの視点は、仮想オブジェクトが「頭部ロック仮想オブジェクト」とも称されるように、ユーザの頭部の向きにロックされる。
環境ロック仮想オブジェクト:仮想オブジェクトは、コンピュータシステムが、三次元環境(例えば、物理環境又は仮想環境)内のロケーション及び/又はオブジェクトに基づく(例えば、それを参照して選択される、及び/又はそれに固定される)ユーザの視点内のロケーション及び/又はポジションに仮想オブジェクトを表示するとき、環境ロック(又は、「世界ロック」)される。ユーザの視点がシフトすると、ユーザの視点に対する環境内のロケーション及び/又はオブジェクトが変化し、その結果、環境ロック仮想オブジェクトがユーザの視点内の異なるロケーション及び/又はポジションに表示される。例えば、ユーザの直前にある木にロックされた環境ロック仮想オブジェクトは、ユーザの視点の中心に表示される。ユーザの視点が右にシフトして(例えば、ユーザの頭部が右に向けられて)木がユーザの視点において左寄りになる(例えば、ユーザの視点における木のポジションがシフトする)場合、木にロックされた環境ロック仮想オブジェクトは、ユーザの視点において左寄りに表示される。言い換えれば、環境ロック仮想オブジェクトがユーザの視点において表示されるロケーション及び/又ポジションは、仮想オブジェクトがロックされる環境におけるロケーション及び/又はオブジェクトのポジション及び/又は向きに依存する。いくつかの実施形態では、コンピュータシステムは、ユーザの視点において環境ロック仮想オブジェクトを表示するポジションを決定するために、静止基準フレーム(例えば、物理環境における固定ロケーション及び/又はオブジェクトに固定される座標系)を使用する。環境ロック仮想オブジェクトは、環境の静止部分(例えば、床、壁、テーブル、又は他の静止オブジェクト)にロックされることができ、又は環境の可動部分(例えば、車両、動物、人、又はユーザの手、手首、腕、足など、ユーザの視点とは無関係に移動するユーザの身体の部分の表現)にロックされることができ、それにより、仮想オブジェクトは、仮想オブジェクトと環境の部分との間の固定された関係を維持するために、視点又は環境の部分が移動するにつれて移動する。
いくつかの実施形態では、環境ロック又は視点ロックされた仮想オブジェクトは、仮想オブジェクトが追従している基準点の移動に対して、環境ロック又は視点ロックされた仮想オブジェクトの動きを低減又は遅延させる遅延追従挙動を示す。いくつかの実施形態では、遅延追従挙動を示すとき、コンピュータシステムは、仮想オブジェクトが追従している基準点(例えば、環境の一部、視点、又は視点から5~300cmの間にある点等の視点に対して固定された点)の移動を検出すると、仮想オブジェクトの移動を意図的に遅延させる。例えば、基準点(例えば、環境の一部又は視点)が第1の速度で移動するとき、仮想オブジェクトは、基準点にロックされたままであるようにデバイスによって移動されるが、第1の速度よりも遅い第2の速度で移動する(例えば、基準点が移動を停止又は減速するまで、その時点で仮想オブジェクトが基準点に追いつき始める)。いくつかの実施形態では、仮想オブジェクトが遅延追従挙動を示すとき、デバイスは、基準点の少量の移動を無視する(例えば、0~5度の移動又は0~50cmの移動など、閾値移動量未満である基準点の移動を無視する)。例えば、基準点(例えば、仮想オブジェクトがロックされる環境の部分又は視点)が第1の量だけ移動するとき、基準点と仮想オブジェクトとの間の距離は増加し(例えば、仮想オブジェクトがロックされる基準点とは異なる視点又は環境の部分に対して固定又は実質的に固定されたポジションを維持するように仮想オブジェクトが表示されているので)、基準点(例えば、仮想オブジェクトがロックされる基準点とは異なる環境の部分又は視点)が第1の量よりも大きい第2の量だけ移動するとき、基準点と仮想オブジェクトとの間の距離は最初に増加し(例えば、仮想オブジェクトがロックされる基準点とは異なる視点又は環境の部分に対して固定又は実質的に固定されたポジションを維持するように仮想オブジェクトが表示されているので)、次いで、仮想オブジェクトが基準点に対して固定又は実質的に固定されたポジションを維持するようにコンピュータシステムによって移動されるので、基準点の移動量が閾値(例えば、「遅延追従」閾値)を超えて増加するにつれて減少する。いくつかの実施形態では、基準点に対して実質的に固定されたポジションを維持する仮想オブジェクトは、仮想オブジェクトが、1つ以上の寸法(例えば、基準点のポジションに対して上/下、左/右、及び/又は前方/後方)において基準点の閾値距離(例えば、1、2、3、5、15、20、50cm)内に表示されることを含む。
ハードウェア:人物が様々なXR環境を感知し、及び/又はそれと相互作用することを可能にする、多くの異なるタイプの電子システムが存在する。例としては、ヘッドマウントシステム、プロジェクションベースシステム、ヘッドアップディスプレイ(heads-up displays、HUD)、統合表示機能を有する車両ウィンドシールド、統合表示機能を有する窓、(例えば、コンタクトレンズと同様に)人物の目の上に配置されるように設計されたレンズとして形成されたディスプレイ、ヘッドホン/イヤフォン、スピーカアレイ、入力システム(例えば、触覚フィードバックを有する又は有さない、装着型コントローラ又はハンドヘルドコントローラ)、スマートフォン、タブレット、及びデスクトップ/ラップトップコンピュータ、が挙げられる。ヘッドマウントシステムは、1つ以上のスピーカ(単数又は複数)及び一体型不透明ディスプレイを有してもよい。あるいは、ヘッドマウントシステムは、外部の不透明ディスプレイ(例えば、スマートフォン)を受容するように構成されていてもよい。ヘッドマウントシステムは、物理環境の画像若しくはビデオをキャプチャするための1つ以上の撮像センサ、及び/又は物理環境のオーディオをキャプチャするための1つ以上のマイクロフォンを組み込んでいてもよい。ヘッドマウントシステムは、不透明ディスプレイではなく、透明又は半透明のディスプレイを有してもよい。透明又は半透明のディスプレイは、画像を表す光が人物の目に向けられる媒体を有してもよい。ディスプレイは、デジタル光投影、OLED、LED、uLED、液晶オンシリコン、レーザスキャン光源、又はこれらの技術の任意の組み合わせを利用することができる。媒体は、光導波路、ホログラム媒体、光結合器、光反射器、又はこれらの任意の組み合わせであってもよい。一実施形態では、透明又は半透明のディスプレイは、選択的に不透明になるように構成されていてもよい。プロジェクションベースシステムは、グラフィカル画像を人物の網膜上に投影する網膜投影技術を採用することができる。プロジェクションシステムはまた、例えば、ホログラムとして、又は物理的表面上に、仮想オブジェクトを物理環境内に投影するように構成されていてもよい。
いくつかの実施形態では、コントローラ110は、ユーザに対するXR体験を管理及び調整するように構成されている。いくつかの実施形態では、コントローラ110は、ソフトウェア、ファームウェア、及び/又はハードウェアの好適な組み合わせを含む。コントローラ110については、図2を参照して以下により詳細に記載する。いくつかの実施形態では、コントローラ110は、シーン105(例えば、物理環境)に対してローカル又はリモートであるコンピューティングデバイスである。例えば、コントローラ110は、シーン105内に位置するローカルサーバである。別の例では、コントローラ110は、シーン105の外側に位置するリモートサーバ(例えば、クラウドサーバ、中央サーバなど)である。いくつかの実施形態では、コントローラ110は、1つ以上の有線又は無線通信チャネル144(例えば、BLUETOOTH、IEEE802.11x、IEEE802.16x、IEEE802.3xなど)を介して、表示生成コンポーネント120(例えば、HMD、ディスプレイ、プロジェクタ、タッチスクリーンなど)と通信可能に結合される。別の例では、コントローラ110は、表示生成コンポーネント120(例えば、HMD、又はディスプレイ及び1つ以上のプロセッサなどを含むポータブル電子デバイス)、入力デバイス125のうちの1つ以上、出力デバイス155のうちの1つ以上、センサ190のうちの1つ以上、及び/又は周辺デバイス195のうちの1つ以上の筐体(例えば、物理的ハウジング)内に含まれる、又は上記のうちの1つ以上と同じ物理的筐体又は支持構造を共有する。
いくつかの実施形態では、表示生成コンポーネント120は、XR体験(例えば、XR体験の少なくとも視覚的コンポーネント)をユーザに提供するように構成される。いくつかの実施形態では、表示生成コンポーネント120は、ソフトウェア、ファームウェア、及び/又はハードウェアの好適な組み合わせを含む。表示生成コンポーネント120について、図3を参照して以下により詳細に説明する。いくつかの実施形態では、コントローラ110の機能は、表示生成コンポーネント120によって提供される、及び/又は表示生成コンポーネント120と組み合わされる。
いくつかの実施形態によれば、表示生成コンポーネント120は、ユーザがシーン105内に仮想的及び/又は物理的に存在している間に、XR体験をユーザに提供する。
いくつかの実施形態では、表示生成コンポーネントは、ユーザの身体の一部(例えば、自身の頭部や自身の手など)に装着される。したがって、表示生成コンポーネント120は、XRコンテンツを表示するために提供された1つ以上のXRディスプレイを含む。例えば、様々な実施形態では、表示生成コンポーネント120は、ユーザの視野を包囲する。いくつかの実施形態では、表示生成コンポーネント120は、XRコンテンツを提示するように構成されたハンドヘルドデバイス(スマートフォン又はタブレットなど)であり、ユーザは、ユーザの視野に向けられるディスプレイ及びシーン105に向けられるカメラを備えたデバイスを保持する。いくつかの実施形態では、ハンドヘルドデバイスは、任意選択的に、ユーザの頭部に装着された筐体内に配置される。いくつかの実施形態では、ハンドヘルドデバイスは、任意選択的に、ユーザの前の支持体(例えば、三脚)上に配置される。いくつかの実施形態では、表示生成コンポーネント120は、ユーザが表示生成コンポーネント120を着用又は保持しない状態でXRコンテンツを提示するように構成されたXRチャンバ、筐体、又は部屋である。XRコンテンツ(例えば、ハンドヘルドデバイス又は三脚上のデバイス)を表示するための1つのタイプのハードウェアを参照して説明される多くのユーザインタフェースは、XRコンテンツ(例えば、HMD又は他のウェアラブルコンピューティングデバイス)を表示するための別のタイプのハードウェア上に実施され得る。例えば、ハンドヘルド又は三脚搭載デバイスの前の空間内で起こる相互作用に基づいてトリガされるXRコンテンツとの相互作用を示すユーザインタフェースは、相互作用がHMDの前の空間で発生し、XRコンテンツの応答がHMDを介して表示されるHMDと同様に実施され得る。同様に、物理環境(例えば、シーン105又はユーザの身体の一部(例えば、ユーザの目(単数又は複数)、頭部、又は手))に対するハンドヘルド又は三脚搭載デバイスの移動に基づいてトリガされたXRコンテンツとの相互作用を示すユーザインタフェースは、物理環境(例えば、シーン105又はユーザの身体の一部(例えば、ユーザの目(単数又は複数)、頭部、又は手))に対するHMDの移動によって移動が引き起こされるHMDと同様に実施され得る。
動作環境100の関連する特徴が図1に示されているが、当業者は、本明細書に開示される例示的な実施形態のより適切な態様を曖昧にしないように、簡潔にするために様々な他の特徴が示されていないことを、本開示から理解されよう。
図2は、いくつかの実施形態による、コントローラ110の一例のブロック図である。特定の特徴が示されているが、当業者は、本明細書に開示される実施形態のより適切な態様を曖昧にしないよう、簡潔にするために様々な他の特徴が示されていないことを、本開示から理解されよう。そのため、非限定的な例として、いくつかの実施形態では、コントローラ110は、1つ以上の処理ユニット202(例えば、マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、グラフィック処理ユニット(GPU)、中央処理ユニット(CPU)、処理コアなど)、1つ以上の入出力(I/O)デバイス206、1つ以上の通信インタフェース208(例えば、ユニバーサルシリアルバス(USB)、FIREWIRE、THUNDERBOLT、IEEE 802.3x、IEEE 802.11x、IEEE 802.16x、グローバル移動通信システム(GSM)、符号分割多元接続(CDMA)、時分割多元接続(TDMA)、グローバル測位システム(GPS)、赤外線(IR)、BLUETOOTH、ZIGBEE、又は同様のタイプのインタフェース)、1つ以上のプログラミング(例えば、I/O)インタフェース210、メモリ220、並びにこれら及び様々な他のコンポーネントを相互接続するための1つ以上の通信バス204を含む。
いくつかの実施形態では、1つ以上の通信バス204は、システムコンポーネントを相互接続し、システムコンポーネント間の通信を制御する、回路を含む。いくつかの実施形態では、1つ以上のI/Oデバイス206は、キーボード、マウス、タッチパッド、ジョイスティック、1つ以上のマイクロフォン、1つ以上のスピーカ、1つ以上の画像センサ、1つ以上のディスプレイなどのうちの少なくとも1つを含む。
メモリ220は、ダイナミックランダムアクセスメモリ(dynamic random-access memory、DRAM)、スタティックランダムアクセスメモリ(static random-access memory、SRAM)、ダブルデータレートランダムアクセスメモリ(double-data-rate random-access memory、DDRRAM)、又は他のランダムアクセスソリッドステートメモリデバイスなどの高速ランダムアクセスメモリを含む。いくつかの実施形態では、メモリ220は、1つ以上の磁気ディスク記憶デバイス、光ディスク記憶デバイス、フラッシュメモリデバイス、又はその他の不揮発性ソリッドステート記憶デバイスなどの不揮発性メモリを含む。メモリ220は、1つ以上の処理ユニット202から遠隔に位置する1つ以上の記憶デバイスを任意選択的に含む。メモリ220は、非一時的コンピュータ可読記憶媒体を含む。いくつかの実施形態では、メモリ220、又はメモリ220の非一時的コンピュータ可読記憶媒体は、任意選択的なオペレーティングシステム230及びXR体験モジュール240を含む、以下のプログラム、モジュール及びデータ構造、又はそれらのサブセットを記憶する。
オペレーティングシステム230は、様々な基本システムサービスを処理する命令、及びハードウェア依存タスクを実行する命令を含む。いくつかの実施形態では、XR体験モジュール240は、1人以上のユーザに対する1つ以上のXR体験(例えば、1人以上のユーザに対する単一のXR体験、又は1人以上のユーザのそれぞれのグループに対する複数のXR体験)を管理及び調整するように構成されている。その目的で、様々な実施形態では、XR体験モジュール240は、データ取得ユニット241と、トラッキングユニット242と、調整ユニット246と、データ送信ユニット248と、を含む。
いくつかの実施形態では、データ取得ユニット241は、少なくとも図1の表示生成コンポーネント120から、並びに任意選択的に、入力デバイス125、出力デバイス155、センサ190、及び/又は周辺デバイス195のうちの1つ以上から、データ(例えば、提示データ、対話データ、センサデータ、ロケーションデータなど)を取得するように構成される。その目的で、様々な実施形態では、データ取得ユニット241は、そのための命令及び/又は論理、並びにそのためのヒューリスティックス及びメタデータを含む。
いくつかの実施形態では、トラッキングユニット242は、シーン105をマッピングし、図1のシーン105に対する少なくとも表示生成コンポーネント120のロケーション/ポジションを、並びに任意選択的に、入力デバイス125、出力デバイス155、センサ190、及び/又は周辺デバイス195のうちの1つ以上の位置を、追跡するように構成される。その目的で、様々な実施形態では、トラッキングユニット242は、そのための命令及び/又は論理、並びにそのためのヒューリスティックス及びメタデータを含む。いくつかの実施形態では、トラッキングユニット242は、ハンドトラッキングユニット244及び/又はアイトラッキングユニット243を含む。いくつかの実施形態では、ハンドトラッキングユニット244は、図1のシーン105に対する、表示生成コンポーネント120に対する、及び/又はユーザの手に対して定義された座標系に対する、ユーザの手の1つ以上の部分のロケーション/ポジション、及び/又はユーザの手の1つ以上の部分の動きを追跡するように構成される。ハンドトラッキングユニット244について、図4に関して以下でより詳細に説明する。いくつかの実施形態では、アイトラッキングユニット243は、シーン105に対する(例えば、物理環境及び/又はユーザ(例えば、ユーザの手)に対する)、又は表示生成コンポーネント120を介して表示されたXRコンテンツに対する、ユーザの視線(又は、より広範にはユーザの目、顔、又は頭部)のポジション及び移動を追跡するように構成される。アイトラッキングユニット243について、図5に関して以下でより詳細に説明する。
いくつかの実施形態では、調整ユニット246は、表示生成コンポーネント120によって、並びに任意選択的に、出力デバイス155及び/又は周辺デバイス195のうちの1つ以上によって、ユーザに提示されるXR体験を管理及び調整するように構成される。その目的で、様々な実施形態において、調整ユニット246は、そのための命令及び/又は論理、並びにそのためのヒューリスティックス及びメタデータを含む。
いくつかの実施形態では、データ送信ユニット248は、データ(例えば、提示データ、ロケーションデータなど)を少なくとも表示生成コンポーネント120、並びに任意選択的に、入力デバイス125、出力デバイス155、センサ190、及び/又は周辺デバイス195のうちの1つ以上に送信するように構成される。その目的で、様々な実施形態では、データ送信ユニット248は、そのための命令及び/又は論理、並びにそのためのヒューリスティックス及びメタデータを含む。
データ取得ユニット241、トラッキングユニット242(例えば、アイトラッキングユニット243及びハンドトラッキングユニット244を含む)、調整ユニット246、及びデータ送信ユニット248が、単一のデバイス(例えば、コントローラ110)上に存在するものとして示されているが、他の実施形態では、データ取得ユニット241、トラッキングユニット242(例えば、アイトラッキングユニット243及びハンドトラッキングユニット244を含む)、調整ユニット246、及びデータ送信ユニット248の任意の組み合わせが、別個のコンピューティングデバイス内に配置されてもよいことを理解されたい。
更に、図2は、本明細書に記載される実施形態の構造概略とは対照的に、特定の実施形態に存在し得る様々な特徴の機能を説明することをより意図している。当業者によって認識されるように、別々に示された事項を組み合わせることができ、また、一部の事項は分離することができる。例えば、図2に別々に示すいくつかの機能モジュールは、単一のモジュール内に実現することができ、単一の機能ブロックの様々な機能は、様々な実施形態では1つ以上の機能ブロックによって実行することができる。モジュールの実際の数、並びに特定の機能の分割及びそれらの間にどのように機能が割り当てられるかは、実装形態によって異なり、いくつかの実施形態では、特定の実装形態のために選択されたハードウェア、ソフトウェア、及び/又はファームウェアの特定の組み合わせに部分的に依存する。
図3は、いくつかの実施形態による、表示生成コンポーネント120の一例のブロック図である。特定の特徴が示されているが、当業者は、本明細書に開示される実施形態のより適切な態様を曖昧にしないよう、簡潔にするために様々な他の特徴が示されていないことを、本開示から理解されよう。その目的で、非限定的な例として、いくつかの実施形態では、表示生成コンポーネント120(例えば、HMD)には、1つ以上の処理ユニット302(例えば、マイクロプロセッサ、ASIC、FPGA、GPU、CPU、処理コアなど)、1つ以上の入出力(I/O)デバイス及びセンサ306、1つ以上の通信インタフェース308(例えば、USB、FIREWIRE、THUNDERBOLT、IEEE 802.3x、IEEE 802.11x、IEEE 802.16x、GSM、CDMA、TDMA、GPS、赤外線、BLUETOOTH、ZIGBEE、及び/又は同様のタイプのインタフェース)、1つ以上のプログラミング(例えば、I/O)インタフェース310、1つ以上のXRディスプレイ312、1つ以上の任意の内向き及び/又は外向き画像センサ314、メモリ320、並びにこれら及び様々な他のコンポーネントを相互接続するための1つ以上の通信バス304、が含まれる。
いくつかの実施形態では、1つ以上の通信バス304は、システムコンポーネントを相互接続し、システムコンポーネント間の通信を制御する、回路を含む。いくつかの実施形態では、1つ以上のI/Oデバイス及びセンサ306は、慣性測定装置(IMU)、加速度計、ジャイロスコープ、温度計、1つ以上の生理的センサ(例えば、血圧モニタ、心拍数モニタ、血液酸素センサ、血糖センサなど)、1つ以上のマイクロフォン、1つ以上のスピーカ、触覚エンジン、1つ以上の深度センサ(例えば、構造化光、飛行時間など)などのうちの少なくとも1つを含む。
いくつかの実施形態では、1つ以上のXRディスプレイ312は、ユーザにXR体験を提供するように構成される。いくつかの実施形態では、1つ以上のXRディスプレイ312は、ホログラフィック、デジタル光処理(DLP)、液晶ディスプレイ(LCD)、液晶オンシリコン(LCoS)、有機発光電界効果トランジスタ(OLET)、有機発光ダイオード(OLED)、表面伝導型電子放射素子ディスプレイ(SED)、電界放射ディスプレイ(FED)、量子ドット発光ダイオード(QD-LED)、MEMS、及び/又は同様のディスプレイタイプに相当する。いくつかの実施形態では、1つ以上のXRディスプレイ312は、回折、反射、偏光、ホログラフィックなどの、導波管ディスプレイに相当する。例えば、表示生成コンポーネント120(例えば、HMD)は、単一のXRディスプレイを含む。別の実施例では、表示生成コンポーネント120は、ユーザの各目用のXRディスプレイを含む。いくつかの実施形態では、1つ以上のXRディスプレイ312は、MR又はVRコンテンツを提示することができる。いくつかの実施形態では、1つ以上のXRディスプレイ312は、MR又はVRコンテンツを提示することができる。
いくつかの実施形態では、1つ以上の画像センサ314は、ユーザの目を含むユーザの顔の少なくとも一部に対応する画像データを取得するように構成される(及び、アイトラッキングカメラと称する場合がある)。いくつかの実施形態では、1つ以上の画像センサ314は、ユーザの手(単数又は複数)及び任意選択的にユーザの腕(単数又は複数)の少なくとも一部に対応する画像データを取得するように構成される(及び、ハンドトラッキングカメラと称される場合がある)。いくつかの実施形態では、1つ以上の画像センサ314は、表示生成コンポーネント120(例えばHMD)、が存在しない場合に、ユーザが閲覧するようなシーンに対応する画像データを取得するように前方を向くように構成されている(かつ、シーンカメラと称されることがある)。1つ以上の任意選択的な画像センサ314は、(例えば、相補型金属酸化膜半導体(CMOS)画像センサ若しくは電荷結合デバイス(CCD)画像センサを備えた)1つ以上のRGBカメラ、1つ以上の赤外線(IR)カメラ、1つ以上のイベントベースのカメラ、及び/又は同様のもの、を含むことができる。
メモリ320は、DRAM、SRAM、DDR RAM、又は他のランダムアクセスソリッドステートメモリデバイスなどの、高速ランダムアクセスメモリを含む。いくつかの実施形態では、メモリ320は、1つ以上の磁気ディスク記憶デバイス、光ディスク記憶デバイス、フラッシュメモリデバイス、又はその他の不揮発性ソリッドステート記憶デバイスなどの不揮発性メモリを含む。メモリ320は、1つ以上の処理ユニット302から遠隔に位置する1つ以上の記憶デバイスを任意選択的に含む。メモリ320は、非一時的コンピュータ可読記憶媒体を含む。いくつかの実施形態では、メモリ320、又はメモリ320の非一時的コンピュータ可読記憶媒体は、任意選択のオペレーティングシステム330及びXR提示モジュール340を含む、以下のプログラム、モジュール及びデータ構造、又はそれらのサブセットを記憶する。
オペレーティングシステム330は、様々な基本システムサービスを処理する命令、及びハードウェア依存タスクを実行する命令を含む。いくつかの実施形態では、XR提示モジュール340は、1つ以上のXRディスプレイ312を介してXRコンテンツをユーザに提示するように構成される。その目的で、様々な実施形態では、XR提示モジュール340は、データ取得ユニット342、XR提示ユニット344、XRマップ生成ユニット346、及びデータ送信ユニット348を含む。
いくつかの実施形態では、データ取得ユニット342は、少なくとも図1のコントローラ110からデータ(例えば、提示データ、相互作用データ、センサデータ、ロケーションデータなど)を取得するように構成される。その目的で、様々な実施形態では、データ取得ユニット342は、そのための命令及び/又は論理、並びにそのためのヒューリスティックス及びメタデータを含む。
いくつかの実施形態では、XR提示ユニット344は、1つ以上のXRディスプレイ312を介してXRコンテンツを提示するように構成される。その目的で、様々な実施形態では、XR提示ユニット344は、そのための命令及び/又は論理、並びにそのためのヒューリスティックス及びメタデータを含む。
いくつかの実施形態では、XRマップ生成ユニット346は、メディアコンテンツデータに基づいて、XRマップ(例えば、複合現実シーンの3Dマップ又はコンピュータ生成オブジェクトを配置して拡張現実を生成することができる物理環境のマップ)を生成するように構成されている。その目的で、様々な実施形態では、XRマップ生成ユニット346は、そのための命令及び/又は論理、並びにそのためのヒューリスティックス及びメタデータを含む。
いくつかの実施形態では、データ送信ユニット348は、少なくともコントローラ110、及び任意選択的に入力デバイス125、出力デバイス155、センサ190、及び/又は周辺デバイス195のうちの1つ以上にデータ(例えば、提示データ、ロケーションデータなど)を伝送するように構成される。その目的で、様々な実施形態では、データ送信ユニット348は、そのための命令及び/又は論理、並びにそのためのヒューリスティックス及びメタデータを含む。
データ取得ユニット342は、XR提示ユニット344、XRマップ生成ユニット346、及びデータ送信ユニット348は、単一のデバイス(例えば、図1の表示生成コンポーネント120)上に存在するものとして示されているが、他の実施形態では、データ取得ユニット342、XR提示ユニット344、XRマップ生成ユニット346、及びデータ送信ユニット348の任意の組み合わせが、別個のコンピューティングデバイス内に配置されてもよいことを理解されたい。
更に、図3は、本明細書に記載される実施形態の構造概略とは対照的に、特定の実装形態に存在し得る様々な特徴の機能を説明することをより意図している。当業者によって認識されるように、別々に示された事項を組み合わせることができ、また、一部の事項は分離することができる。例えば、図3に別々に示すいくつかの機能モジュールは、単一のモジュール内に実現することができ、単一の機能ブロックの様々な機能は、様々な実施形態では1つ以上の機能ブロックによって実行することができる。モジュールの実際の数、並びに特定の機能の分割及びそれらの間にどのように機能が割り当てられるかは、実装形態によって異なり、いくつかの実施形態では、特定の実装形態のために選択されたハードウェア、ソフトウェア、及び/又はファームウェアの特定の組み合わせに部分的に依存する。
図4は、ハンドトラッキングデバイス140の例示的な実施形態の概略図である。いくつかの実施形態では、ハンドトラッキングデバイス140(図1)は、図1のシーン105に対する(例えば、ユーザを囲む物理環境の一部に対する、表示生成コンポーネント120に対する、又はユーザの一部(例えば、ユーザの顔、目、又は頭部)に対する、及び/又はユーザの手に対して定義された座標系に対する、ユーザの手の1つ以上の部分のロケーション/ポジションを、及び/又は、ユーザの手の1つ以上の部分の動きを追跡するように、ハンドトラッキングユニット244(図2)によって制御される。いくつかの実施形態では、ハンドトラッキングデバイス140は、表示生成コンポーネント120の一部である(例えば、ヘッドマウントデバイスに埋め込まれる、又はヘッドマウントデバイスに取り付けられる)。いくつかの実施形態では、ハンドトラッキングデバイス140は、表示生成コンポーネント120とは別個である(例えば、別個のハウジング内に位置する、又は別個の物理的支持構造に取り付けられる)。
いくつかの実施形態では、ハンドトラッキングデバイス140は、人間のユーザの少なくとも手406を含む三次元シーン情報をキャプチャする画像センサ404(例えば、1つ以上のIRカメラ、3Dカメラ、深度カメラ、及び/又はカラーカメラなど)を含む。画像センサ404は、指及びそれらのそれぞれのポジションを区別するのを可能にするのに十分な解像度で手画像をキャプチャする。画像センサ404は、典型的には、ユーザの身体の他の部分の画像、又は身体の全ての画像をキャプチャし、ズーム機能又は高倍率を有する専用センサのいずれかを有して、所望の解像度で手の画像をキャプチャすることができる。いくつかの実施形態では、画像センサ404はまた、手406の2Dカラービデオ画像及びシーンの他の要素をキャプチャする。いくつかの実施形態では、画像センサ404は、シーン105の物理環境をキャプチャする他の画像センサと併せて使用される、又はシーン105の物理環境をキャプチャする画像センサとして機能する。いくつかの実施形態では、画像センサ404は、画像センサ又はその一部の視野が使用されて、画像センサによってキャプチャされた手の移動がコントローラ110への入力として処理される相互作用空間を定義するように、ユーザ又はユーザの環境に対して位置決めされる。
いくつかの実施形態では、画像センサ404は、3Dマップデータ(及び場合によってはカラー画像データも)を含むフレームのシーケンスをコントローラ110に出力し、これにより、マップデータから高レベル情報を抽出する。この高レベル情報は、典型的には、アプリケーションプログラムインタフェース(API)を介して、コントローラ上で実行されるアプリケーションに提供され、それに応じて表示生成コンポーネント120を駆動する。例えば、ユーザは、自身の手406を移動させ、自身の手の姿勢を変化させることによって、コントローラ110上で動作するソフトウェアと対話することができる。
いくつかの実施形態では、画像センサ404は、手406を含むシーン上にスポットパターンを投影し、投影されたパターンの画像をキャプチャする。いくつかの実施形態では、コントローラ110は、パターンのスポットの横方向シフトに基づいて、三角測量によって(ユーザの手の表面上の点を含む)シーン内の点の3D座標を計算する。このアプローチは、ユーザが任意の種類のビーコン、センサ、又は他のマーカを保持又は着用する必要がないという点で有利である。これは、画像センサ404からの特定の距離で、所定の基準面に対するシーン内の点の深度座標を与える。本開示では、画像センサ404は、シーン内の点の深度座標が画像センサによって測定されたz成分に対応するように、直交する一連のx、y、z軸を定義すると想定される。代替的に、画像センサ404(例えば、ハンドトラッキングデバイス)は、単一又は複数のカメラ又は他のタイプのセンサに基づいて、立体撮像又は飛行時間測定などの他の3Dマッピング方法を使用することができる。
いくつかの実施形態では、ハンドトラッキングデバイス140は、ユーザが手(例えば、手全体又は1本以上の指)を移動させている間、ユーザの手を含む深度マップの時間シーケンスをキャプチャし処理する。画像センサ404及び/又はコントローラ110内のプロセッサ上で動作するソフトウェアは、3Dマップデータを処理して、これらの深度マップ内の手のパッチ記述子を抽出する。ソフトウェアは、各フレームにおける手の姿勢を推定するために、以前の学習プロセスに基づいて、これらの記述子をデータベース408に記憶されたパッチ記述子と照合する。姿勢は、典型的には、ユーザの手関節及び指先の3Dロケーションを含む。
ソフトウェアはまた、ジェスチャを識別するために、シーケンス内の複数のフレームにわたって手及び/又は指の軌道を解析することができる。本明細書に記載される姿勢推定機能は、運動追跡機能とインターリーブされてもよく、それにより、パッチベースの姿勢推定が2つ(又はそれより多く)のフレーム毎に1回のみ実行される一方、追跡は残りのフレームにわたって発生する姿勢の変化を発見するために使用される。姿勢、運動、及びジェスチャ情報は、上述のAPIを介して、コントローラ110上で実行されるアプリケーションプログラムに提供される。このプログラムは、例えば、姿勢及び/又はジェスチャ情報に応じて、表示生成コンポーネント120上に提示された画像を移動させ修正する、又は他の機能を実行することができる。
いくつかの実施形態では、ジェスチャは、エアジェスチャを含む。エアジェスチャは、ユーザがデバイス(例えば、コンピュータシステム101、1つ以上の入力デバイス125、及び/又は、ハンドトラッキングデバイス140)の一部である入力要素に触れることなく(又はそれとは無関係に)検出されるジェスチャであり、絶対基準(例えば、地面に対するユーザの腕の角度、又は地面に対するユーザの手の距離)に対するユーザの身体の動き、ユーザの身体の別の部分(例えば、ユーザの肩に対するユーザの手の移動、ユーザの一方の手のユーザの別の手に対する移動、及び/又はユーザの指の、別の指若しくはユーザの手の一部に対する移動)に対するユーザの身体の動き、及び/又はユーザの身体の一部(例えば、所定の量及び/又は速さによる所定の姿勢での手の移動を含むタップジェスチャ、又は所定の速度又はユーザの身体の一部の回転量を含むシェイクジェスチャ)の絶対的な動きを含む、空中にあるユーザの身体の一部(例えば、頭部、1つ以上の腕、1つ以上の手、1つ以上の指、及び/又は1つ以上の脚)の検出された動きに基づく。
いくつかの実施形態では、本明細書に記載の様々な例及び実施形態で使用される入力ジェスチャは、いくつかの実施形態に係る、XR環境(例えば、仮想又は複合現実環境)と相互作用するための他の指(単数又は複数)又はユーザの手の部分(単数又は複数)に対するユーザの指(単数又は複数)の移動によって実行されるエアジェスチャを含む。いくつかの実施形態では、エアジェスチャは、ユーザがデバイスの一部である入力要素に触れることなく(又はデバイスの一部である入力要素から独立して)検出されるジェスチャであり、絶対的な基準に対するユーザの身体の動き(例えば、地面に対するユーザの腕の角度、又は地面に対するユーザの手の距離)、ユーザの身体の別の部分に対するユーザの身体の動き(例えば、ユーザの肩に対するユーザの手の移動、ユーザの一方の手に対するユーザの他方の手の移動、及び/又はユーザの手の別の指若しくは部分に対するユーザの指の移動)、及び/又は、ユーザの身体の一部の絶対的な動き(例えば、所定の量及び/又は速さによる所定の姿勢での手の移動を含むタップジェスチャ、又はユーザの身体の一部の所定の速さ又は量の回転を含むシェイクジェスチャ)を含む、ユーザの身体の一部の空間中の検出された動きに基づく。
入力ジェスチャがエアジェスチャ(例えば、タッチスクリーン上に表示されたユーザインタフェース要素との接触、又はユーザインタフェース要素にカーソルを移動させるためのマウス又はトラックパッドとの接触など、どのユーザインタフェース要素がユーザ入力のターゲットであるかに関する情報をコンピュータシステムに提供する入力デバイスとの物理的接触がない場合)であるいくつかの実施形態では、ジェスチャは、ユーザ入力のターゲット(例えば、以下で説明するように、直接入力の場合)を決定するためにユーザの注意(例えば、視線)を考慮に入れる。したがって、エアジェスチャを含む実装形態では、入力ジェスチャは、例えば、以下でより詳細に説明するように、ピンチ及び/又はタップ入力を実行するためのユーザの指(単数又は複数)及び/又は手の移動と組み合わせて(例えば、同時)ユーザインタフェース要素に対する検出された注意(例えば、視線)である。
いくつかの実施形態では、ユーザインタフェースオブジェクトに向けられた入力ジェスチャは、ユーザインタフェースオブジェクトを参照して直接的又は間接的に実行される。例えば、ユーザ入力は、3次元環境(例えば、ユーザの現在の視点に基づいて決定されるように、)におけるユーザインタフェースオブジェクトのポジションに対応するポジションでユーザの手で入力ジェスチャを実行したことに応じて、ユーザインタフェースオブジェクトに対して直接実行される。いくつかの実施形態では、入力ジェスチャは、ユーザインタフェースオブジェクトに対するユーザの注意(例えば、視線)を検出しながら、ユーザの手のポジションが3次元環境におけるユーザインタフェースオブジェクトのポジションに対応するポジションにない間に入力ジェスチャを実行するユーザに従って、ユーザインタフェースオブジェクトに対して間接的に実行される。例えば、直接入力ジェスチャの場合、ユーザは、ユーザインタフェースオブジェクトの表示ポジション(例えば、オプションの外縁又はオプションの中央部分から測定して、0.5cm、1cm、5cm、又は0~5cmの距離内)に対応するポジション又はその付近でジェスチャを開始することによって、ユーザの入力をユーザインタフェースオブジェクトに向けることができる。間接的な入力ジェスチャの場合、ユーザは、ユーザインタフェースオブジェクトに注意を払うことによって(例えば、ユーザインタフェースオブジェクトを注視することによって)ユーザの入力をユーザインタフェースオブジェクトに向けることができ、オプションに注意を払いながら、ユーザは、入力ジェスチャを開始する(例えば、コンピュータシステムによって検出可能な任意のポジションで)(例えば、ユーザインタフェースオブジェクトの表示ポジションに対応しないポジションで)。
いくつかの実施形態では、本明細書に記載の様々な例及び実施形態で使用される入力ジェスチャ(例えば、エアジェスチャ)は、いくつかの実施形態に係る、仮想又は複合現実環境と相互作用するためのピンチ入力及びタップ入力を含む。例えば、後述するピンチ入力やタップ入力は、エアジェスチャとして行われる。
いくつかの実施形態では、ピンチ入力は、ピンチジェスチャ、ロングピンチジェスチャ、ピンチアンドドラッグジェスチャ、又はダブルピンチジェスチャのうちの1つ以上を含むエアジェスチャの一部である。例えば、エアジェスチャであるピンチジェスチャは、互いに接触するように手の2本以上の指を動かすこと、すなわち、任意選択的に、互いに接触した直後の(例えば、0~1秒以内)中断を含む。エアジェスチャであるロングピンチジェスチャは、互いに接触している中断を検出する前に、少なくとも閾値時間量(例えば、少なくとも1秒)にわたって互いに接触するように手の2本以上の指を動かすことを含む。例えば、ロングピンチジェスチャは、ユーザがピンチジェスチャ(例えば、2つ以上の指が接触している場合、)を保持することを含み、ロングピンチジェスチャは、2本以上の指の間の接触の中断が検出されるまで継続する。いくつかの実施形態では、エアジェスチャであるダブルピンチジェスチャは、互いに直接(例えば、所定の期間内に)連続して検出される2つ(例えば、又はそれより多く)のピンチ入力(例えば、同じ手で実行される)を含む。例えば、ユーザは、第1のピンチ入力を実行し(例えば、ピンチ入力又はロングピンチ入力)、第1のピンチ入力を解放し(例えば、2つ以上の指の間の接触を破壊する)、第1のピンチ入力を解放した後、所定の期間(例えば、1秒以内又は2秒以内)内に第2のピンチ入力を実行する。
いくつかの実施形態では、エアジェスチャであるピンチアンドドラッグジェスチャは、ユーザの手のポジションを第1のポジション(例えば、ドラッグの開始ポジション)から第2のポジション(例えば、抗力の終了ポジション)に変化させるドラッグ入力に関連して(例えば、その後に)実行されるピンチジェスチャ(例えば、ピンチジェスチャ又はロングピンチジェスチャ)を含む。いくつかの実施形態では、ユーザは、ドラッグ入力を実行しながらピンチジェスチャを維持し、(例えば、第2のポジションにおいて)ドラッグジェスチャを終了するためにピンチジェスチャ(例えば、2本以上の指を開く)を解放する。いくつかの実施形態では、ピンチ入力及びドラッグ入力は、同じ手(例えば、ユーザは、2本以上の指をつまんで互いに接触し、ドラッグジェスチャで空中の第2のポジションに同じ手を移動させる)によって実行される。いくつかの実施形態では、ピンチ入力はユーザの第1の手によって実行され、ドラッグ入力はユーザの第2の手によって実行される(例えば、ユーザの第2の手は、ユーザがユーザの第1の手でピンチ入力を継続する間に空中で第1のポジションから第2のポジションに移動する)。いくつかの実施形態では、エアジェスチャである入力ジェスチャは、ユーザの両手の双方を使用して実行される入力(例えば、ピンチ入力及び/又はタップ入力)を含む。例えば、入力ジェスチャは、互いに関連して(例えば、所定の期間と同時に、又は所定の期間内に)行われる2つ(例えば、又はそれより多く)のピンチ入力を含む。例えば、ユーザの第1の手を使用して実行される第1のピンチジェスチャ(例えば、ピンチ入力、ロングピンチ入力、又はピンチ及びドラッグ入力)と、第1の手を使用してピンチ入力を実行することに関連して、他方の手(例えば、ユーザの両手の第2の手)を使用して第2のピンチ入力を実行する。いくつかの実施形態では、ユーザの両手の間の移動(例えば、ユーザの両手の間の距離又は相対的な向きを増加及び/又は減少させるために)。
いくつかの実施形態では、エアジェスチャとして実行されるタップ入力(例えば、ユーザインタフェース要素に向けられる)は、ユーザインタフェース要素に向かうユーザの指の移動(単数又は複数)、任意選択的にユーザの指(単数又は複数)をユーザインタフェース要素に向かって伸ばした状態でのユーザの手のユーザインタフェース要素に向かう移動、ユーザの指の下方への動き(例えば、マウスクリック動作又はタッチスクリーン上のタップを模倣する)、又はユーザの手の他の所定の移動を含む。いくつかの実施形態では、エアジェスチャとして実行されるタップ入力は、ユーザの視点から離れて、及び/又は移動の終了が続くタップ入力のターゲットであるオブジェクトに向かって指又は手のタップジェスチャの移動を実行する指又は手の移動特性に基づいて検出される。いくつかの実施形態では、タップジェスチャ(例えば、ユーザの視点から離れる、及び/又はタップ入力の対象であるオブジェクトに向かう移動の終了、指又は手の移動方向の反転、及び/又は指又は手の移動の加速方向の反転)を実行する指又は手の移動特性の変化に基づいて、移動の終了が検出される。
いくつかの実施形態では、ユーザの注意は、(任意選択で、他の条件を必要とせずに)三次元環境の一部に向けられた視線の検出に基づいて、三次元環境の一部に向けられていると判定される。いくつかの実施形態では、ユーザの注意が三次元環境の一部に向けられていることをデバイスが判定するために、ユーザの視点が三次元環境の一部から距離閾値内にある間に、少なくとも閾値持続時間(例えば、滞留時間)、視線が三次元環境の一部に向けられていることを必要とすること、及び/又は視線が三次元環境の一部に向けられていることを必要とすることなどの1つ以上の追加の条件を伴う三次元環境の一部に向けられた視線の検出に基づいて、ユーザの注意が三次元環境の一部に向けられていると判定され、追加の条件のうちの1つが満たされていない場合、デバイスは、三次元環境のうちの視線が向けられている部分に注意が向けられていないと判定する(例えば、1つ以上の追加の条件が満たされるまで)。
いくつかの実施形態では、ユーザ又はユーザの一部の準備完了状態構成の検出は、コンピュータシステムによって検出される。手の準備完了状態構成の検出は、ユーザが、手によって実行される1つ以上のエアジェスチャ入力(例えば、ピンチ、タップ、ピンチ及びドラッグ、ダブルピンチ、ロングピンチ、又は本明細書に説明される他のエアジェスチャ)を使用して、コンピュータシステムと対話する準備をしている可能性が高いというインジケーションとして、コンピュータシステムによって使用される。例えば、手の準備完了状態は、手が所定の手形状(例えば、親指と1本以上の指が伸ばされて間隔を空けてピンチ若しくはグラブジェスチャを行う準備ができているプレピンチ形状、又は1本以上の指が伸ばされて手のひらがユーザから離れる方向を向いているプレタップ)を有するか否か、手がユーザの視点に対して所定のポジションにあるか否か(例えば、ユーザの頭部の下、ユーザの腰の上、身体から少なくとも15cm、20cm、25cm、30cm、又は50cmだけ伸ばされている)、及び/又は手が特定の方法で移動したか否か(例えば、ユーザの腰の上、ユーザの頭部の下のユーザの正面の領域に向かって移動したか、又はユーザの身体若しくは脚から離れたか)に基づいて決定される。いくつかの実施形態では、準備完了状態は、ユーザインタフェースの対話要素が注意(例えば、視線)入力に応答するかどうかを判定するために使用される。
いくつかの実施形態では、ソフトウェアは、例えばネットワーク上で、コントローラ110に電子形態でダウンロードされてもよい、又はその代わりに、光学、磁気、若しくは電子メモリ媒体などの、実体的非一時的媒体に提供されてもよい。いくつかの実施形態では、データベース408は、同様に、コントローラ110に関連付けられたメモリに記憶される。代替的又は追加的に、コンピュータの記載された機能の一部又は全ては、カスタム又は半カスタム集積回路又はプログラム可能なデジタル信号プロセッサ(DSP)などの専用のハードウェアに実装されてもよい。コントローラ110は、例として、画像センサ404とは別個のユニットとして図4に示されているが、コントローラの処理機能の一部又は全部は、好適なマイクロプロセッサ及びソフトウェアによって、又は画像センサ404(例えば、ハンドトラッキングデバイス)のハウジング内の専用回路によって、又は他の方法で画像センサ404に関連付けることができる。いくつかの実施形態では、これらの処理機能のうちの少なくともいくつかは、(例えば、テレビセット、ハンドヘルドデバイス、又はヘッドマウントデバイスにおいて)表示生成コンポーネント120と統合された好適なプロセッサによって、又はゲームコンソール又はメディアプレーヤなどの任意の他の適切なコンピュータ化されたデバイスを用いて実行されてもよい。画像センサ404の感知機能は、同様に、センサ出力によって制御されるコンピュータ又は他のコンピュータ化された装置に統合することができる。
図4は、いくつかの実施形態による、画像センサ404によってキャプチャされた深度マップ410の概略図を更に含む。深度マップは、上述したように、それぞれの深度値を有するピクセルのマトリックスを含む。手406に対応するピクセル412は、このマップで背景及び手首からセグメント化されている。深度マップ410内の各ピクセルの輝度は、深度値、すなわち、画像センサ404からの測定されたz距離に反比例し、深度が上昇するにつれて階調が濃くなる。コントローラ110は、人間の手の特性を有する画像の成分(すなわち、隣接ピクセル群)を識別及びセグメント化するために、これらの深度値を処理する。これらの特性は、例えば、深度マップのシーケンスの全体サイズ、形状、フレームからフレームへの動きを含むことができる。
図4はまた、いくつかの実施形態による、コントローラ110が手406の深度マップ410から最終的に抽出する手骨格414を概略的に示す。図4では、手の骨格414は、元の深度マップからセグメント化された手の背景416に重ね合わされる。いくつかの実施形態では、手(例えば、指関節、指先、手のひらの中心、手首に接続する手の終端など)、及び任意選択的に手に接続された手首又は腕上の主要な特徴点が、手骨格414上で識別され配置される。いくつかの実施形態では、複数の画像フレーム上にわたるこれらの主要な特徴点のロケーション及び移動がコントローラ110によって使用されて、いくつかの実施形態により、手によって実行される手ジェスチャ又は手の現在の状態を判定する。
図5は、アイトラッキングデバイス130(図1)の例示的な実施形態を示す。いくつかの実施形態では、アイトラッキングデバイス130は、シーン105に対する、又は表示生成コンポーネント120を介して表示されたXRコンテンツに対する、ユーザの視線のポジション及び移動を追跡するように、アイトラッキングユニット243(図2)によって制御される。いくつかの実施形態では、アイトラッキングデバイス130は、表示生成コンポーネント120と統合される。例えば、いくつかの実施形態では、表示生成コンポーネント120がヘッドセット、ヘルメット、ゴーグル、又は眼鏡などのヘッドマウントデバイス、又はウェアラブルフレームに配置されたハンドヘルドデバイスである場合、ヘッドマウントデバイスは、ユーザによる視聴のためのXRコンテンツを生成するコンポーネント及びXRコンテンツに対するユーザの視線を追跡するためのコンポーネントの両方を含む。いくつかの実施形態では、アイトラッキングデバイス130は、表示生成コンポーネント120とは別個である。例えば、表示生成コンポーネントがハンドヘルドデバイス又はXRチャンバである場合、アイトラッキングデバイス130は、任意選択的に、ハンドヘルドデバイス又はXRチャンバとは別個のデバイスである。いくつかの実施形態では、アイトラッキングデバイス130は、ヘッドマウントデバイス又はヘッドマウントデバイスの一部である。いくつかの実施形態では、ヘッドマウントアイトラッキングデバイス130は、任意選択的に、頭部に装着されている表示生成コンポーネント又は頭部に装着されていない表示生成コンポーネントと共に使用される。いくつかの実施形態では、アイトラッキングデバイス130は、ヘッドマウントデバイスではなく、任意選択的に、ヘッドマウント表示生成コンポーネントと組み合わせて使用される。いくつかの実施形態では、アイトラッキングデバイス130は、ヘッドマウントデバイスではなく、任意選択的に、非ヘッドマウント表示生成コンポーネントの一部である。
いくつかの実施形態では、表示生成コンポーネント120は、ユーザの目の前に左及び右の画像を含むフレームを表示して、3D仮想ビューをユーザに提供するディスプレイ機構(例えば、左右の目近傍ディスプレイパネル)を使用する。例えば、ヘッドマウント表示生成コンポーネントは、ディスプレイとユーザの目との間に位置する左右の光学レンズ(本明細書では接眼レンズと称される)を含んでもよい。いくつかの実施形態では、表示生成コンポーネントは、表示のためにユーザの環境のビデオをキャプチャする1つ以上の外部ビデオカメラを含んでもよい、又はそれに結合されてもよい。いくつかの実施形態では、ヘッドマウント表示生成コンポーネントは、ユーザが物理環境を直接視認し、透明又は半透明ディスプレイ上に仮想オブジェクトを表示することができる透明又は半透明のディスプレイを有してもよい。いくつかの実施形態では、表示生成コンポーネントは、仮想オブジェクトを物理環境に投影する。仮想オブジェクトは、例えば、物理的表面上に、又はホログラフとして投影され、それによって、個人は、システムを使用して、物理環境の上に重ね合わされた仮想オブジェクトを観察することができる。そのような場合、左右の目のための別個のディスプレイパネル及び画像フレームが必要とされない場合がある。
図5に示すように、いくつかの実施形態では、アイトラッキングデバイス130(例えば、視線トラッキングデバイス)は、少なくとも1つのアイトラッキングカメラ(例えば、赤外線(IR)カメラ又は近IR(NIR)カメラ)、並びに光(例えば、IR光又はNIR光)をユーザの目に向けて発する照明源(例えば、LEDのアレイ若しくはリングなどのIR光源又はNIR光源)を含む。アイトラッキングカメラは、ユーザの目に向けられて、光源からの反射IR又はNIR光を目から直接受信してもよく、又は代替的に、ユーザの目と、視覚的光が通過することを可能にしながら目からアイトラッキングカメラにIR又はNIR光を反射させるディスプレイパネルとの間に配置される「ホット」ミラーに向けられてもよい。アイトラッキングデバイス130は、任意選択的に、ユーザの目の画像を(例えば、60~120フレーム/秒(fps)でキャプチャされるビデオストリームとして)キャプチャし、画像を解析して、視線追跡情報を生成し、視線追跡情報をコントローラ110に通信する。いくつかの実施形態では、ユーザの両目は、それぞれのアイトラッキングカメラ及び照明源によって別々に追跡される。いくつかの実施形態では、ユーザの片目のみが、個別のアイトラッキングカメラ及び照明源によって追跡される。
いくつかの実施形態では、アイトラッキングデバイス130は、デバイス固有の較正プロセスを使用して較正されて、特定の動作環境100用のアイトラッキングデバイスのパラメータ、例えば、LED、カメラ、ホットミラー(存在する場合)、接眼レンズ、及びディスプレイスクリーンの3D幾何学的関係及びパラメータを判定する。デバイス固有の較正プロセスは、AR/VR機器のエンドユーザへの配送前に、工場又は別の施設で実行されてもよい。デバイス固有の較正プロセスは、自動較正プロセスであってもよく、又は手動較正プロセスであってもよい。ユーザ固有の較正プロセスは、特定のユーザの目パラメータ、例えば、瞳孔ロケーション、中心視覚ロケーション、光軸、視軸、目の間隔などの推定を含んでもよい。いくつかの実施形態によれば、いったんアイトラッキングデバイス130についてデバイス固有及びユーザ固有のパラメータが判定されると、アイトラッキングカメラによってキャプチャされた画像は、グリント支援方法を使用して処理され、ディスプレイに対するユーザの現在の視軸及び視点を判定することができる。
図5に示されるように、アイトラッキングデバイス130(例えば、130A又は130B)は、接眼レンズ(単数又は複数)520と、アイトラッキングが行われるユーザの顔の側に配置された少なくとも1つのアイトラッキングカメラ540(例えば、赤外線(IR)又は近IR(NIR)カメラ)と光(例えば、IR又はNIR光)をユーザの目(単数又は複数)592に向かって発する照明源530(例えば、NIR発光ダイオード(LED)のアレイ若しくはリングなどのIR又はNIR光源)とを含む視線追跡システムと、を含む。アイトラッキングカメラ540は、ユーザの目(単数又は複数)592とディスプレイ510(例えば、ヘッドマウントディスプレイの左若しくは右側のディスプレイパネル、又はハンドヘルドデバイスのディスプレイ、プロジェクタなど)との間に位置し、(例えば、図5の上部に示されるように)可視光を透過させながら、目(単数又は複数)592からのIR又はNIR光を反射するミラー550に向けられてもよく、あるいは、(例えば、図5の下部に示されるように)反射されたユーザの目(単数又は複数)592からのIR又はNIR光を受光するようにユーザの目(単数又は複数)592に向けられてもよい。
いくつかの実施形態では、コントローラ110は、AR又はVRフレーム562(例えば、左及び右のディスプレイパネルの左及び右のフレーム)をレンダリングし、フレーム562をディスプレイ510に提供する。コントローラ110は、様々な目的のために、例えば、表示のためにフレーム562を処理する際に、アイトラッキングカメラ540からの視線追跡入力542を使用する。コントローラ110は、任意選択的に、グリント支援方法又は他の適切な方法を使用して、アイトラッキングカメラ540から得られた視線追跡入力542に基づいて、ディスプレイ510上のユーザの視点を推定する。視線追跡入力542から推定された視点は、任意選択的に、ユーザが現在見ている方向を判定するために使用される。
以下、ユーザの現在の視線方向のいくつかの可能な使用事例について説明するが、これは限定することを意図するものではない。例示的な使用例として、コントローラ110は、判定されたユーザの視線方向に基づいて、仮想コンテンツを異なってレンダリングすることができる。例えば、コントローラ110は、周辺領域においてよりもユーザの現在の視線方向から判定された中心視覚領域において、より高い解像度で仮想コンテンツを生成してもよい。別の例として、コントローラは、ユーザの現在の視線方向に少なくとも部分的に基づいて、ビュー内の仮想コンテンツを位置決め又は移動させてもよい。別の例として、コントローラは、ユーザの現在の視線方向に少なくとも部分的に基づいて、ビュー内に特定の仮想コンテンツを表示してもよい。ARアプリケーションにおける別の例示的な使用事例として、コントローラ110は、XR体験の物理環境をキャプチャして、判定された方向に焦点を合わせるように外部カメラを方向付けることができる。次いで、外部カメラの自動焦点機構は、ユーザが現在ディスプレイ510上で見ている環境内のオブジェクト又は表面に焦点を合わせることができる。別の例示的な使用事例として、接眼レンズ520は集束可能なレンズであってもよく、視線追跡情報がコントローラによって使用されて、ユーザが現在見ている仮想オブジェクトが、ユーザの目592の収束に一致するために適切な両目連動を有するように接眼レンズ520の焦点を調整する。コントローラ110は、視線追跡情報を活用して、ユーザが見ている近接オブジェクトが正しい距離で現れるように接眼レンズ520を方向付けて焦点を調整することができる。
いくつかの実施形態では、アイトラッキングデバイスは、ウェアラブルハウジングに取り付けられた、ディスプレイ(例えば、ディスプレイ510)、2つの接眼レンズ(例えば、接眼レンズ(単数又は複数)520)、アイトラッキングカメラ(例えば、アイトラッキングカメラ(単数又は複数)540)、及び光源(例えば、光源530(例えば、IR LED又はNIR LED))を含むヘッドマウントデバイスの一部である。光源は、ユーザの目(単数又は複数)592に向かって光(例えば、IR光又はNIR光)を発する。いくつかの実施形態では、光源は、図5に示されるように、各レンズの周りにリング又は円状に配置されてもよい。いくつかの実施形態では、8つの光源530(例えば、LED)が、一例として各レンズ520の周りに配置される。しかしながら、より多くの又はより少ない光源530が使用されてもよく、光源530の他の配置及びロケーションが用いられてもよい。
いくつかの実施形態では、ディスプレイ510は、可視光範囲内の光を発し、IR又はNIR範囲内の光を発さないため、視線追跡システムにノイズを導入しない。アイトラッキングカメラ(単数又は複数)540のロケーション及び角度は、例として与えられ、限定することを意図するものではないことに留意されたい。いくつかの実施形態では、単一のアイトラッキングカメラ540がユーザの顔の各側に位置する。いくつかの実施形態では、2つ以上のNIRカメラ540をユーザの顔の各側に使用することができる。いくつかの実施形態では、より広い視野(FOV)を有するカメラ540と狭いFOVを有するカメラ540が、ユーザの顔の各側に使用されてもよい。いくつかの実施形態では、1つの波長(例えば、850nm)で動作するカメラ540と異なる波長(例えば、940nm)で動作するカメラ540とが、ユーザの顔の各側に使用されてもよい。
図5に示すような視線トラッキングシステムの実施形態は、例えば、コンピュータ生成現実、仮想現実、及び/又は複合現実アプリケーションに使用されて、コンピュータ生成現実、仮想現実、拡張現実、及び/又は拡張仮想の体験をユーザに提供することができる。
図6は、いくつかの実施形態による、グリント支援視線追跡パイプラインを示す。いくつかの実施形態では、視線トラッキングパイプラインは、グリント支援視線トラッキングシステム(例えば、図1及び図5に示されるようなアイトラッキングデバイス130)によって実現される。グリント支援視線追跡システムは、追跡状態を維持することができる。当初、追跡状態はオフ又は「いいえ」である。追跡状態にあるとき、グリント支援視線追跡システムは、現フレームを解析する際に前のフレームからの先行情報を使用して、現フレーム内の瞳孔輪郭及びグリントを追跡する。追跡状態にない場合、グリント支援視線追跡システムは、現フレーム内の瞳孔及びグリントを検出しようとし、それに成功した場合、追跡状態を「はい」に初期化し、追跡状態で次のフレームに続く。
図6に示されるように、視線追跡カメラは、ユーザの左目及び右目の左右の画像をキャプチャすることができる。次いで、キャプチャされた画像は、610で開始される処理のために視線追跡パイプラインに入力される。要素600に戻る矢印によって示されるように、視線追跡システムは、例えば、毎秒60~120フレームの速度で、ユーザの目の画像をキャプチャし続けることができる。いくつかの実施形態では、キャプチャされた画像の各セットが、処理のためにパイプラインに入力されてもよい。しかしながら、いくつかの実施形態、又はいくつかの条件下では、全てのキャプチャされたフレームがパイプラインによって処理されるわけではない。
610で、現在のキャプチャされた画像について、追跡状態がはいである場合、この方法は要素640に進む。610で、追跡状態がいいえである場合、620に示されるように、画像が解析されて、画像内のユーザの瞳孔及びグリントを検出する。630で、瞳孔とグリントが正常に検出される場合、方法は要素640に進む。正常に検出されない場合、方法は要素610に戻り、ユーザの目の次の画像を処理する。
640で、要素610から進む場合、前のフレームからの先行情報に部分的に基づいて、現フレームが解析されて、瞳孔及びグリントを追跡する。640で、要素630から進む場合、現フレーム内の検出された瞳孔及びグリントに基づいて、追跡状態が初期化される。要素640での処理の結果は、追跡又は検出の結果が信頼できることを確認するためにチェックされる。例えば、結果は、瞳孔及び視線推定を実行するための十分な数のグリントが現フレームで正常に追跡又は検出されるかどうかを判定するためにチェックすることができる。650で、結果が信頼できない場合、追跡状態は要素660でいいえに設定され、方法は要素610に戻り、ユーザの目の次の画像を処理する。650で、結果が信頼できる場合、方法は要素670に進む。670で、追跡状態は、はいに設定され(まだはいではない場合)、瞳孔及びグリント情報が要素680に渡されて、ユーザの視点を推定する。
図6は、特定の実施で使用され得るアイトラッキング技術の一例として機能することを意図している。当業者によって認識されるように、現在存在するか、又は将来開発される他のアイトラッキング技術は、様々な実施形態によるXR体験をユーザに提供するためにコンピュータシステム101において、本明細書に記載されるグリント支援アイトラッキング技術の代わりに、又はそれと組み合わせて使用することができる。
本開示では、コンピュータシステムとの相互作用に関して、様々な入力方法が説明される。一例が1つの入力デバイス又は入力方法を使用して提供され、別の例が別の入力デバイス又は入力方法を使用して提供される場合、各例は、別の例に関して記載された入力デバイス又は入力方法と互換性があり得、任意選択的にそれらを利用することを理解されたい。同様に、様々な出力方法が、コンピュータシステムとの相互作用に関して説明される。一例が1つの出力デバイス又は出力方法を使用して提供され、別の例が別の出力デバイス又は出力方法を使用して提供される場合、各例は、別の例に関して記載された出力デバイス又は出力方法と互換性があり得、任意選択的にそれらを利用することを理解されたい。同様に、様々な方法が、コンピュータシステムを介した仮想環境又は複合現実環境との相互作用に関して説明される。一例が仮想環境との相互作用を使用して提供され、別の例が複合現実環境を使用して提供される場合、各例は、別の例に関して説明された方法と互換性があり得、任意選択的にそれらを利用することを理解されたい。したがって、本開示は、各例示的な実施形態の説明における実施形態の全ての特徴を網羅的に列挙することなく、複数の例の特徴の組み合わせである実施形態を開示する。
ユーザインタフェース及び関連するプロセス
ここで、ユーザインタフェース(「UI」)の実施形態、及び、表示生成コンポーネント及び(任意選択的に)1つ以上のセンサ(例えば、カメラ)と通信する、ポータブル多機能デバイス又はヘッドマウントデバイスなどのコンピュータシステムにおいて実行され得る関連プロセスに注目する。
本開示は、XR環境内のユーザを表すための例示的なプロセスに関する。図7A~図7H及び図8は、ユーザがXR環境における表現のために登録される例を示す。図9A~図9F、図10、及び図11は、仮想アバターに関連付けられた様々な視覚効果がXR環境において提示される例を示す。図12A~図12E、図13A~図13B、及び図14は、XR環境で表されるユーザに関連付けられた様々な提示モードの例を示す。本明細書に開示されるプロセスは、上述のように、コンピュータシステム(例えば、図1のコンピュータシステム101)を使用して実装される。
図7A~図7Hは、ユーザ700の特徴を登録するための登録プロセスを示す。登録プロセスは、身体的特徴(例えば、顔特徴)、顔の表情、特徴の移動、肌のトーン、衣服、及び眼鏡などのユーザ700の様々な態様を表すデータ、又はXR環境においてユーザ700の表示される表現を設計及び/又は操作するために使用することができる他のデータをキャプチャすることを含む。いくつかの実施形態では、ユーザ700は、図9A~図9F及び12A~図12Eに関して以下でより詳細に議論されるように、例えば、仮想アバター又はオーディオ表現として、XR環境で表されることができる。
図7Aは、ディスプレイ702及びカメラ(単数又は複数)703を含む電子デバイス701を保持するユーザ700を示す。ユーザ700は、デバイス701を見ており、眼鏡707並びにオレンジ及び黄色のシャツ709を着用している。電子デバイス701は、コンピュータシステム(例えば、図1のコンピュータシステム101)である。
図7Aでは、デバイス701は、登録プロセスを通してユーザ700をガイドするために使用される登録インタフェース704を表示している。登録インタフェース704は、カメラ703からキャプチャされた画像及び/又は深度データの表現を示すカメラビュー705を含む。図7Aに示される実施形態では、カメラビュー705は、ユーザ700の表現700a(ユーザ700が着用しているシャツ709の表現709a及び眼鏡707の表現707aを含む)を含む。登録インタフェース704はまた、以下により詳細に説明されるように、登録プロセスの部分を完了するようにユーザ700に指示する種々のプロンプトを含む。
図7Aに描写される実施形態では、登録インタフェース704は、ユーザ700に、ユーザの顔、及びいくつかの実施形態では、ユーザの頭部等のユーザの身体の他の部分をスキャンするために、頭部を静止させ、デバイス701を移動させるように指示する、プロンプト706を含む。デバイス701は、ユーザの顔/頭部を表す画像データ及び/又は深度データを収集することによってスキャンを実行する。いくつかの実施形態では、この収集されたデータは、本明細書では顔データと呼ばれる。加えて、デバイス701は、ユーザ700が眼鏡をかけていることを検出するので、プロンプト706はまた、ユーザの顔及び頭部の輪郭をより正確に表す顔データを収集するために、眼鏡707を外すようにユーザ700に指示する。いくつかの実施形態では、登録インタフェース704上に表示されるプロンプトは、更なる命令を含むことができる。例えば、ユーザが頭部又は顔の一部を覆う長髪を有する場合、プロンプトは、頭部/顔の隠れた部分(例えば、耳)を露出させるために髪を後に引く命令(単数又は複数)を含むことができる。
図7Bは、眼鏡707が取り外され、プロンプト706によって指示されるように、顔をスキャンするためにデバイス701を移動させているユーザ700を示す。いくつかの実施形態では、デバイス701は、スキャンから収集された顔データに影響を及ぼし得る、ユーザの顔上の任意の潜在的な光グレアの移動を低減するように、ユーザに頭部を静止させておくように指示する。登録インタフェース704はまた、デバイス701がユーザの顔及び/又は頭部を表す顔データを収集するにつれて、スキャンの進捗を示すように更新する進捗インジケータ708を含む。
図7Cは、図7A及び図7Bの顔/頭部スキャンの代替実施形態を示す。図7Cに示される実施形態では、登録インタフェース704は、顔/頭部スキャンを完了するためにユーザ700に自分の頭部を円形に動かすように指示するプロンプト710を含む。この実施形態では、ユーザ700は、自分の頭部の異なる部分がカメラ703に見えるように、自分の頭部を動かしている間自分の前にデバイス701を保持し、カメラは、ユーザの顔/頭部が円を描いて動くときにユーザの顔/頭部から顔データをキャプチャする。
図7D~図7Gは、デバイス701がユーザ700の顔データを(例えば、カメラ703を介して)キャプチャしている間に、ユーザが様々な表情を行うように促される登録プロセスの一部を示す。デバイス701は、表情の各々についてのユーザの顔特徴の移動及び姿勢を表す顔データをキャプチャするために、異なる表情をするようにユーザ700に促す。この顔データは、例えば、XR環境においてユーザを表すために使用される仮想アバターの作成及び動作を通知するために、(いくつかの実施形態では、顔/頭部スキャンから取得された顔データと組み合わせて)使用され得る。図7D~図7Gに示すプロンプトは、登録プロセスの例示的な実施形態を表す。したがって、登録プロセスは、ユーザ700の身体的特徴を登録するのに十分な顔データを取得するために、より多くのプロンプトを含むか、異なるプロンプトを使用するか、又はプロンプトの異なる組み合わせを使用することができる。
図7Dでは、デバイス701は、(カメラプレビュー705と同様の)カメラプレビュー712と、ユーザ700に笑顔になるように指示するプロンプト714とを有する登録インタフェース704を表示する。プロンプト714を表示した後、デバイス701は、(例えば、カメラ703を介して)収集された顔データを評価し、ユーザによって行われた表情が登録インタフェース704内に表示されたプロンプトに一致することを顔データが示すかどうかを判定する。デバイス701が、ユーザ700が要求された表情(笑顔)をしていると判定した後、デバイス701は、プロンプト714の表示を停止し、例えば、図7Eに示されるように、確認インジケーション(単数又は複数)716を表示することによって、ユーザが要求された表情をしたことを確認する。
図7Fでは、デバイス701は、カメラプレビュー712と、ユーザ700に「あー」と言うように指示するプロンプト718とを伴う登録インタフェース704を表示する。プロンプト718を表示した後、デバイス701は、(例えば、カメラ703を介して)収集された顔データを評価し、ユーザによって行われた表情が登録インタフェース704内に表示されたプロンプトに一致することを顔データが示すかどうかを判定する。ユーザ700が要求された表情(「あー」と言っている)をしているとデバイス701が判定した後、デバイス701は、プロンプト718の表示を停止し、例えば、図7Gに示されるように、確認インジケーション(単数又は複数)719を表示することによって、ユーザが要求された表情をしたことを確認する。
図7D及び7Eに描写されるもの等のいくつかの実施形態では、デバイス701が登録インタフェース704内に表示するプロンプトは、ユーザに笑う等の特定の表情をさせる命令である。図7F及び7Gに描写されるもの等のいくつかの実施形態では、プロンプトは、「あー」等の特定の語句又は単語を言うようにユーザに指示する命令である。図7D~図7Gに示す実施形態は、デバイス701がユーザ特徴を登録するために使用することができる特定のプロンプトの例であり、限定することを意図していない。例えば、プロンプトは、眉毛をひそめた表情、目を細めた表情、及び/又は驚いた表情などの異なる表情を作らせる命令を含むことができる。同様に、プロンプトは、他の句及び/又は単語を言う命令を含むことができる。要求された表情をするか、又は要求された単語又は句を言う間に、ユーザの顔特徴が姿勢をとる及び/又は移動されると、デバイス701は、顔特徴の移動/姿勢をキャプチャし、顔特徴の移動/姿勢を通して明らかにされる追加の顔特徴を検出し、キャプチャされた顔データを使用して、ユーザの顔、口、舌、唇、鼻などのユーザの特徴を、それらの特徴をXR環境において適切に表すことができるように登録する。例えば、ユーザに笑顔になるように、又は「あー」と言うように指示することによって、デバイス701は、ユーザの歯の外観、ユーザの唇の移動、ユーザがえくぼを有するかどうか、並びにXR環境におけるユーザの身体的特徴を正確に反映するアバターの移動をモデル化及び/又は制御するのに有用な他の情報を決定することができる。
図7Hに示されるように、デバイス701がユーザの表情から顔データをキャプチャした後、デバイス701は、プロンプト720を有する登録インタフェース704を表示し、様々な外観オプションを選択し、次いで別個のデバイス(例えば、ヘッドセット)を使用してユーザ700の他の身体的特徴(例えば、手)をスキャンするようにユーザ700に指示する。登録インタフェース704に示される異なる外観オプションは、身長オプション722、表現オプション724、及び眼鏡オプション726を含む。これらの外観オプションの各々について、以下でより詳細に説明する。
身長オプション722は、ユーザ700の身長を示すように調整可能である。いくつかの実施形態では、身長オプション722は省略され、ユーザ700の身長は、ヘッドセット、センサ、ウェアラブルデバイス、又はユーザの身長を近似することが可能な他のコンポーネントなど、他のソースから収集されたデータに基づいて決定される。
表現オプション724は、オーディオオプション724a及びアバターオプション724bを含む。表現オプションは、XR環境においてユーザ700を表現するために使用される提示モードを決定するために選択可能である。オーディオオプション724aが選択されると、ユーザ700は、XR環境においてオーディオ表現によって表される。アバターオプション724bが選択されると(図7Hに示すように)、ユーザ700は、XR環境において仮想アバターによって表される。異なる表現オプションは、図9A~図9F及び図12A~図12Eに関して以下でより詳細に説明される。
眼鏡オプション726は、眼鏡なしオプション726a、矩形フレームオプション726b、半透明フレームオプション726c、及びヘッドセットオプション726dを含む。眼鏡オプション726は、XR環境においてユーザ700を表すために使用されるアバターの外観をカスタマイズするために使用される。例えば、アバターは、選択された眼鏡オプションに対応する眼鏡を有するXR環境において示される。眼鏡なしオプション726aが選択された場合、アバターは眼鏡なしで描かれる。同様に、ヘッドセットオプション726dが選択された場合、アバターはヘッドセットデバイス(例えば、HMD)と共に示される。いくつかの実施形態では、眼鏡オプション726は、アバターオプション724bが選択されたときにのみ表示されるか、又は選択可能である。眼鏡オプション726は、ユーザ700によって手動で選択されてもよく、デバイス701によって自動的に選択されてもよい。例えば、デバイス701が、ユーザ700が登録プロセス中のどの時点においても眼鏡を着用していないと判定した場合、デバイス701は、眼鏡なしオプション726aを自動的に選択する。同様に、デバイス701が、ユーザ700が登録プロセス中の任意の時点で眼鏡を装着していると判定した場合、デバイス701は、登録中にユーザ上で検出された眼鏡に任意選択的に一致する眼鏡オプションを自動的に選択する(又はそれを作成する)。図7Hに示される実施形態では、デバイス701は、ユーザの眼鏡707を検出し、したがって、眼鏡707とスタイルが類似する矩形フレームオプション726bを選択した。
所望の外観オプションが選択されると、ユーザ700は、継続アフォーダンス728を選択して、別個のデバイスを使用して自分の身体の他の部分の登録を開始することができる。例えば、ユーザは、ヘッドセットデバイス(例えば、表示生成コンポーネント120に関して上記で説明したようなHMD)を装着し、ヘッドセット、具体的にはヘッドセットと一体化された1つ以上のカメラを使用して、ユーザの手、足、胴、腕、肩などのユーザ700の他の身体的特徴に関する画像及び/又は深度データを収集することができる。別の例として、ユーザは、図9Aに示す電子デバイス901などの別のデバイスを使用して、ユーザ700の他の身体的特徴に関する画像及び/又は深度データを収集することができる。いくつかの実施形態では、別個のデバイス(例えば、ヘッドセット又はデバイス901)を使用して、更なるプロンプトを表示することができる。例えば、ヘッドセットデバイスのカメラがユーザの手及び指についてのデータをキャプチャしている間に、ユーザに指を曲げるように指示するプロンプトがヘッドセットデバイスの表示コンポーネント上に表示され得る。デバイス701を介して収集される顔データと同様に、別個のデバイスから収集されるデータは、XR環境においてユーザ700を表すために使用されるアバターの様々な特徴を作成、モデル化、及び/又は制御するために使用され得る、ユーザ700の特徴を登録するために使用される。
図7A~図7Hに示す実施形態では、デバイス701はスマートフォンである。しかしながら、いくつかの実施形態では、登録プロセスは、図1のコンピュータシステム101又は図9Aのデバイス901等のユーザ及び/又はXR環境と対話するために使用される他のデバイス又はコンポーネントを使用して行われることができる。そのようなデバイスは、デバイス701の代わりに、又はそれに加えて使用することができる。
図7A~図7Hに関する追加の説明は、以下の図8に関して記載された方法800を参照して以下に提供される。
図8は、いくつかの実施形態による、コンピュータシステムのユーザの1つ以上の特徴を登録するための例示的な方法800のフローチャートである。方法800は、表示生成コンポーネント(例えば、702)(例えば、視覚出力デバイス、3Dディスプレイ、画像が投影され得る透明又は半透明である少なくとも一部を有するディスプレイ(例えば、シースルーディスプレイ)、プロジェクタ、ヘッドアップディスプレイ、ディスプレイコントローラ)、及び1つ以上のカメラ(例えば、703)(例えば、赤外線カメラ、深度カメラ、可視光カメラ)と通信するコンピュータシステム(例えば、101、701)(例えば、スマートフォン、タブレット、ヘッドマウント表示生成コンポーネント)において生じる。
1つ以上のカメラ(例えば、703)を介してユーザ(例えば、700)の顔データ(例えば、サイズ、形状、ポジション、姿勢、色、深度、又はユーザの顔の1つ以上の特徴の他の特性を表すデータ(例えば、画像データ、センサデータ、及び/又は深度データ))をキャプチャすることを含む登録プロセス中、コンピュータシステム(例えば、701)は、表示生成コンポーネント(例えば、702)を介して、ユーザ(例えば、700)の1つ以上の特徴(例えば、バイオメトリック特徴、顔、頭部、髪、目、鼻、耳、口、眉、顔の毛、皮膚等の頭部及び/又は顔特徴、毛髪の色、毛髪の質感、髪型、目の色、皮膚のトーンなどの特徴の特性、帽子、眼鏡、シャツ等の衣服)を登録するための登録インタフェース(例えば、704)を表示する(802)。
ユーザ(例えば、700)の1つ以上の特徴を登録するための登録インタフェース(例えば、704)を表示することの一部として、コンピュータシステム(例えば、701)は、第1のプロンプト(例えば、706、710、714、718)(例えば、視覚的、聴覚的、及び/又は触覚的プロンプト)を出力して(804)、ユーザの顔特徴のうちの1つ以上の第1のセットを、1つ以上の表情の第1の所定のセットに配置する(例えば、特定の表情(例えば、笑顔、目を細めた表情、驚いた表情など)及び/又は特定の句又は単語を言うようにユーザに促す)。
ユーザ(例えば、700)の1つ以上の特徴を登録するための登録インタフェース(例えば、704)を表示することの一部として、コンピュータシステム(例えば、701)は、第2のプロンプト(例えば、706、710、714、718)を出力して(806)、ユーザの顔特徴(いくつかの実施形態では、1つ以上の顔特徴の第2のセットは、第1のセットからの1つ以上の顔特徴を含む)のうちの1以上の第2のセットを、1つ以上の表情の第1の所定のセットとは異なる1つ以上の表情の第2の所定のセットに配置する(例えば、異なる特定の表情を作るように、及び/又は異なる特定の句若しくは単語を言うようにユーザに促す)。ユーザの顔特徴のうちの1つ以上の第1のセットを、1つ以上の表情の第1の所定のセットに配置するための第1のプロンプトを出力することと、ユーザの顔特徴のうちの1つ以上の第2のセットを、1つ以上の表情の第1の所定のセットとは異なる1つ以上の表情の第2の所定のセットに配置するための第2のプロンプトを出力することは、ユーザの1つ以上の特徴を登録するための顔データを取得するために、ユーザの顔を動かすための特定の命令セットを示すフィードバックをコンピュータシステムのユーザに提供することによって、登録プロセスの速度及び精度を改善する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)登録プロセスの速度及び精度を改善し、ユーザシステムインタフェースをより効率的にし、加えて、ユーザがコンピュータシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、システムのバッテリ寿命を改善する。
いくつかの実施形態では、1つ以上の表情の第1の所定のセットは、特定の表情(例えば、笑顔)であり、1つ以上の表情の第2の所定のセットは、特定の句若しくは単語(例えば、「あー」)、又はその逆である。
いくつかの実施形態では、コンピュータシステム(例えば、701)は、登録基準の第1のセットが満たされていない(例えば、顔データの第1のセットがキャプチャされていない(例えば、所定の期間内にキャプチャされていない))との判定に従って、第1のプロンプト(例えば、714)を出力する。いくつかの実施形態では、コンピュータシステムは、登録基準の第1のセットが満たされ、登録基準の第2のセットが満たされていない(例えば、顔データの第1のセットがキャプチャされ、顔データの第2のセットがキャプチャされていない(例えば、所定の期間内にキャプチャされていない))との判定に従って、第2のプロンプト(例えば、718)を出力する。登録基準の第1のセットが満たされていないとの判定に従って第1のプロンプトを出力し、登録基準の第1のセットが満たされ、登録基準の第2のセットが満たされていないという判定に従って第2のプロンプトを出力することは、ユーザの1つ以上の特徴を登録するための顔データを取得するために、ユーザの顔を移動させるための基準をユーザが満たしたかどうかを示すフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、第1のプロンプト(例えば、714)を出力した後、コンピュータシステム(例えば、701)は、1つ以上のカメラ(例えば、703)を介してユーザ(例えば、700)の顔データの第1のセットをキャプチャする(例えば、ユーザが第1の表情をしている間にユーザの顔データをキャプチャする(例えば、1つ以上の表情の第1の所定のセット内に1つ以上の顔特徴の第1のセットを配置する))。いくつかの実施形態では、第2のプロンプト(例えば、718)を出力した後、コンピュータシステムは、1つ以上のカメラを介してユーザの顔データの第2のセットをキャプチャする(例えば、ユーザが第2の表情をしている(例えば、1つ以上の表情の第2の所定のセット内に1つ以上の顔特徴の第2のセットを配置している)間にユーザの顔データをキャプチャする)。
いくつかの実施形態では、1つ以上のカメラ(例えば、703)を介してユーザ(例えば、700)の顔データの第1のセットをキャプチャした後(例えば、それに応じて)(いくつかの実施形態では、ユーザの顔データの第1のセットが表情基準の第1のセットを満たす(例えば、データが第1のタイプの表情(例えば、笑顔、第1のプロンプトに対応する表情)に対応するものとして識別される)との判定に従って)、コンピュータシステム(例えば、701)は、第1のプロンプトの表示を停止する(例えば、図7Eに示すように、プロンプト714はもはや表示されない)。いくつかの実施形態では、1つ以上のカメラを介してユーザの顔データの第2のセットをキャプチャした後(例えば、それに応じて)(いくつかの実施形態では、ユーザの顔データの第2のセットが表情基準の第2のセットを満たす(例えば、データが第2のタイプの表情(例えば、眉毛をひそめた表情、第2のプロンプトに対応する表情)に対応するものとして識別される)との判定に従って)、コンピュータシステム(例えば、701)は、第2のプロンプトの表示を停止する(例えば、図7Gに示すように、プロンプト718はもはや表示されない)。顔データの第1のセットをキャプチャした後に第1のプロンプトの表示を停止し、顔データの第2のセットをキャプチャした後に第2のプロンプトの表示を停止することは、ユーザの1つ以上の特徴を登録するための顔データを取得するために、ユーザの顔を移動させるための特定の命令セット(例えば、第1のプロンプト内の命令及び第2のプロンプト内の命令)をユーザが満たしたことを示すフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、1つ以上の表情の第1の所定のセットは、(例えば、図7Dのプロンプト714によって示されるように)笑顔、眉をひそめた表情、目を細めた表情、及び驚いた表情(例えば、眉を上げて口及び目を開いた)からなる群から選択される。
一部の実施形態では、第2のプロンプト(例えば、718)は、ユーザ(例えば、700)が1つ以上の単語のセット(例えば、単語又は句(例えば、図7Fのプロンプト718によって示されるように「‘あー’と言って下さい」))を話すためのプロンプトを含む。いくつかの実施形態では、ユーザは、ユーザの顔が話している間に特定の表情を達成するように、特定の単語又は句を話すように指示され、コンピュータシステム(例えば、701)は、ユーザが話している間にユーザの顔データをキャプチャする。
いくつかの実施形態では、ユーザ(例えば、700)の1つ以上の特徴を登録するための登録インタフェース(例えば、704)を表示することの一部として、コンピュータシステム(例えば、701)は、ユーザの頭部のポジションを変化させるための第3のプロンプト(例えば、706、710)(例えば、視覚、聴覚、及び/又は触覚プロンプト)(例えば、頭部の異なる部分が1つ以上のカメラ(例えば、703)の視野内に入るようにユーザの頭部を移動させるためのプロンプト)を出力する。ユーザの頭部のポジションを変化させるための第3のプロンプトを出力することは、ユーザの1つ以上の特徴を登録するための顔データを取得するためにユーザの頭部を移動させるための特定の命令セットを示すフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、コンピュータシステム(例えば、701)は、第1のプロンプト(例えば、714)又は第2のプロンプト(例えば、718)のうちの少なくとも1つの前に第3のプロンプト(例えば、706、710)を出力する(例えば、異なる表情に対するプロンプトは、ユーザの頭部を動かすためのプロンプトの後に出力される)。
いくつかの実施形態では、ユーザ(例えば、700)の1つ以上の特徴を登録するための登録インタフェース(例えば、704)を表示することの一部として、コンピュータシステム(例えば、701)は、ユーザの頭部を静止させたままユーザの頭部に対する1つ以上のカメラ(例えば、703)のポジションを変化させるための第4のプロンプト(例えば、706)(例えば、視覚的、聴覚的、及び/又は触覚的プロンプト)(例えば、ユーザの頭部を動かさずにユーザの頭部の周りで1つ以上のカメラを動かすためのプロンプト)を出力する。ユーザの頭部を静止させたまま、ユーザの頭部に対する1つ以上のカメラのポジションを変化させるための第4のプロンプトを出力することは、ユーザの1つ以上の特徴を登録するための顔データを取得しながら、光グレアの影響を低減するために、ユーザの頭部に対して1つ以上のカメラを移動させるための特定の命令セットを示すフィードバックを、コンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。いくつかの実施形態では、ユーザの頭部を移動させることは、頭部が移動している間、光グレアをユーザの頭部上で移動させる。グレアのポジションの変化は、顔データのキャプチャに関する問題を引き起こす可能性がある。したがって、これらの問題を回避するために、コンピュータシステム(例えば、701)は、ユーザ(例えば、700)に、ユーザの頭部を移動させることなくカメラ(例えば、703、701)を移動させるように促し、それによって、カメラが、ユーザの頭部からのいかなる光グレアのポジションも変化させることなく、異なる角度からユーザの頭部の顔データをキャプチャすることを可能にする。
いくつかの実施形態では、ユーザ(例えば、700)の1つ以上の特徴を登録するための登録インタフェース(例えば、704)を表示することの一部として、コンピュータシステム(例えば、701)は、ユーザの身長を示す第5のプロンプト(例えば、722)(例えば、視覚的、聴覚的、及び/又は触覚的プロンプト)を出力する。ユーザの身長を示す第5のプロンプトを出力することは、ユーザの1つ以上の特徴を登録するためのデータを提供させる命令の特定のセットを示すフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。いくつかの実施形態では、第5のプロンプトを出力することと併せて、コンピュータシステムは、身長を入力するための1つ以上のユーザインタフェースオブジェクト(例えば、テキスト入力フィールド、仮想キーボード又はキーパッド、スライドバー)を表示する。
いくつかの実施形態では、ユーザ(例えば、700)の1つ以上の特徴を登録するための登録インタフェース(例えば、704)を表示することの一部として、コンピュータシステム(例えば、701)は、登録プロセスの少なくとも一部の間、ユーザの顔から眼鏡のセット(例えば、707)(例えば、眼鏡、フレーム付き矯正レンズ、フレーム付き装飾レンズ、フレーム付き保護レンズ)を取り外すための第6のプロンプト(例えば、706)(例えば、視覚、聴覚、及び/又は触覚プロンプト)を出力する。登録プロセスの少なくとも一部にわたってユーザの顔から眼鏡のセットを除去するための第6のプロンプトを出力することは、ユーザの1つ以上の特徴を登録するための顔データを取得しながら、眼鏡を着用することの影響を排除するための特定の命令セットを示すフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。いくつかの実施形態では、第6のプロンプトは、ユーザが現在眼鏡を装着しているという(例えば、1つ以上のカメラによってキャプチャされたデータに基づく)判定に従って出力される。
いくつかの実施形態では、(例えば、コンピュータシステム(例えば、701)において)アバターが生成される。別のコンピュータシステム(例えば、以下で説明される901及び/又は901a))において、登録プロセス中にキャプチャされた顔データの少なくとも一部を使用する。いくつかの実施形態では、アバター(例えば、後述する919及び/又は1220)は、コンピュータシステム(例えば、701)(例えば、登録プロセスを実行するために使用されるコンピュータシステムとは異なるコンピュータシステム)(例えば、拡張現実、仮想現実、及び/又は拡張現実環境において対話するためのヘッドセットデバイス)とは異なる外部コンピュータシステム(例えば、901、901a)を使用して表示される。いくつかの実施形態では、登録プロセスは、第1のデバイス(例えば、701)(例えば、スマートフォン)を使用して実行され、登録プロセスから生成されるアバターは、異なるデバイス(例えば、901a)(例えば、ヘッドセットデバイス)を使用して(例えば、拡張現実環境において)表示される。いくつかの実施形態では、登録プロセスのために異なるデバイスを使用することは、コンピュータシステムが、特定の登録タスクを、それらのタスクをより便利に促進するように装備されたデバイスにオフロードすることを可能にする。
いくつかの実施形態では、ユーザ(例えば、700)の1つ以上の特徴を登録するための登録インタフェース(例えば、704)を表示することの一部として、コンピュータシステム(例えば、701)は、ユーザの非顔特徴の姿勢をキャプチャするための第7のプロンプト(例えば、720)(例えば、視覚、聴覚、及び/又は触覚プロンプト)(例えば、耳、腕、手、上半身などの非顔特徴を登録するためのプロンプト)を出力する。ユーザの非顔特徴の姿勢をキャプチャするための第7のプロンプトを出力することは、ユーザの1つ以上の非顔特徴を登録する命令の特定のセットを示すフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、ユーザの髪が耳を覆っている場合、プロンプト(例えば、706、710、714、718、720)は、耳がスキャンされ得る(例えば、耳のサイズ、形状、ポジション、姿勢、色、深度、又は他の特性を表すデータがキャプチャされる)ように、耳を露出させるために髪を後に引くようにユーザに指示する。いくつかの実施形態では、プロンプト(例えば、720)は、非顔特徴の姿勢をキャプチャするために、デバイス(例えば、ヘッドセット)を装着するようにユーザに指示する。例えば、ユーザ(例えば、700)は、ヘッドセットを装着して自分の手をスキャンするように指示される。いくつかの実施形態では、ユーザは、登録中に非顔特徴を移動させるように促される。例えば、ユーザは、手をスキャンしながら指を曲げるように指示される。
方法800に関して上述したプロセス(例えば図8)の詳細はまた、上述及び後述する方法1000、1100、1300及び1400にも、類似の方式で適用可能であることに留意されたい。例えば、方法1000、1100、1300、及び1400は、方法800に関して上述した様々な方法の特性のうちの1つ以上を任意選択的に含む。簡潔にするために、これらの詳細は、以下で繰り返さない。
図9A~図9F、図10、及び図11は、仮想アバターに関連付けられた様々な視覚効果がXR環境において提示される例を示す。
図9Aは、XR環境を見るために使用されるコンピュータシステム(例えば、図1のコンピュータシステム101)である電子デバイス901を保持するユーザ700を示す。デバイス901は、カメラ904(例えば、背面カメラ)と、図9Bに示されるように、ディスプレイ902及びカメラ(単数又は複数)903(例えば、前面カメラ)とを含む。いくつかの実施形態では、カメラ904は、ディスプレイ902を使用してXR環境をレンダリングするために物理環境の画像及び/又は深度データをキャプチャするために使用される。例えば、図9Aでは、ユーザ700は、XR環境と対話するために、カメラ904の視野内に手700-1を配置している。一部の実施形態では、デバイス901は、タブレットである。しかしながら、デバイス901は、例えば、スマートフォン又はヘッドセットデバイスなど、XR環境を見ることが可能な1つ以上の代替電子デバイスであり得る。
図9Bは、XR環境を示すインタフェースを表示するデバイス901及びデバイス901aを示す。デバイス901aは、デバイス901と同様であり、デバイス901と同様の特徴を含み、ディスプレイ902a、カメラ(単数又は複数)903a、及びいくつかの実施形態では、カメラ904と同様にデバイス901aの反対側に配置されたカメラを含む。デバイス901aは、XR環境を見るために、第2のユーザ(例えば、デバイス901上のアバター922及びデバイス901a上のレンダリング918-1によって表されるユーザ)によって使用される。いくつかの実施形態では、ユーザ700及び第2のユーザは、同じ物理環境(例えば、同じ部屋)にいる。いくつかの実施形態では、ユーザ700及び第2のユーザは、異なる物理環境(例えば、異なる部屋又は地理的ロケーション)にいる。
デバイス901は、ディスプレイ902を介して、XR環境905を見るためのXRセッションのためのインタフェースであるXRインタフェース906を表示する。XRインタフェース906は、カメラ904を介してキャプチャされた画像及び/又は深度データを使用したXR環境905のレンダリングを含む(例えば、カメラ904は、XR環境をレンダリングするための画像/深度データをキャプチャするために現在選択されている)。XRインタフェース906は、任意選択で、制御オプション907及びカメラプレビュー908を含む。制御オプション907は、オーディオ(例えば、デバイス901におけるオーディオ)をミュートすること、カメラビューを反転すること(例えば、カメラ904からキャプチャされたデータを含むビューからカメラ903からキャプチャされたデータを含むビューに切り替えること)、及びXRセッションを終了することなど、様々な動作を実行するために選択可能である。カメラプレビュー908は、XR環境をレンダリングするためのデータをキャプチャするために現在選択されていないカメラの視野内でキャプチャされたデータのレンダリングを提供する。例えば、図9Bにおいて、カメラプレビュー908は、カメラ903を介してキャプチャされたユーザ700のレンダリング908-1を提供する。
デバイス901は、ユーザ700の物理環境内に物理的に存在し、カメラ904の視野内に位置する物理オブジェクトの表現を有するXR環境905を表示する。物理的オブジェクトの表現は、ボトル910、テーブル912、及びユーザの手914(指914-1~914-5を有する)を含む(ユーザ700の手700-1は、図9Aに示されるようにカメラ904の前に位置付けられる)。図9Bに示す実施形態では、物理オブジェクトの表現は、物理環境のパススルービデオとして表示される。例えば、いくつかの実施形態において、手914は、手700-1のパススルービデオフィードである。いくつかの実施形態では、デバイス901は、透明表示コンポーネントを含み、物理的オブジェクトは、その透明な性質に起因して、透明ディスプレイコンポーネントを通して可視である。いくつかの実施形態では、デバイス901は、例えば、デバイス901が完全仮想モード(例えば、VRモード)で動作しているときなどに、物理オブジェクトを仮想オブジェクトとしてレンダリングする。例えば、そのような実施形態では、手914は、ユーザの手700-1の仮想表現である。手914(及び/又は指914-1~914-5)のポジション、姿勢、移動、又は他の態様は、ユーザの物理的な手700-1の対応するポジション、姿勢、移動、又は他の態様に基づいて決定される。しかしながら、簡潔にするために、ユーザの物理的な手700-1及び/又はユーザの物理的な指の対応するポジション、姿勢、移動、又は他の態様を説明するときに、手914(及び/又は指914-1~914-5)を参照することがある。
デバイス901はまた、デバイス901によってXR環境においてレンダリングされる仮想オブジェクトを有するXR環境905を表示する。仮想オブジェクトは、強調表示920及びアバター922を含む。アバター922は、XR環境905における第2のユーザの表現(例えば、仮想表現)である。いくつかの実施形態では、アバター922は、デバイス901及び/又はデバイス901aにおいて受信された、及び/又はデバイス901及び/又はデバイス901aによって取得されたデータに基づいて、デバイス901においてレンダリングされる。強調表示920は、カメラ904の視野内に位置付けられ、ディスプレイ902上にレンダリングされる、ユーザの手914の一部の周囲の周りに表示される視覚的手効果(例えば、視覚インジケータ)である。強調表示920及び後述する他のものなどの表示された視覚的手効果は、デバイス901がユーザの手914を手として認識することを示す。これは、デバイス901が手700-1を認識していることを示すフィードバックをユーザ700に提供し、したがって、手の移動に応答する。強調表示920の様々な属性を以下に説明する。しかし、これらの属性は、別段の指定がない限り、本明細書で説明する他の視覚的手効果に類似の方法で適用可能であることを理解されたい。
ユーザの手700-1がカメラ904の視野内で移動すると、デバイス901は、手914と共に移動する強調表示920を表示する。いくつかの実施形態では、表示される強調表示920の量は、ディスプレイ902上で見える手914の量に基づいて変化する。例えば、ユーザの手700-1のより多くがカメラ904の視野内に移動するにつれて、より多くの量の手914がディスプレイ902上に表示され、より多くの量の強調表示920が、手914がスクリーン上でより遠くに移動するにつれて、その周囲に表示される。同様に、ユーザの手700-1がカメラ904の視野の外に移動するにつれて、ディスプレイ902上に表示される手914の量は減少し、手914が画面外に移動するにつれて、より少ない強調表示920が手の周囲に表示される。いくつかの実施形態では、ユーザが自分の手700-1の姿勢を操作すると(例えば、拳を握る、つかむジェスチャを行う、自分の指を交差させるなど)、強調表示920は、手の姿勢が操作されるときの手914の周囲の変化に適応する。一部の実施形態では、デバイス901は、強調表示920に加えて、又はその代わりに、他の視覚的手効果を表示する。これらの他の視覚的手効果は、図9C~図9F、図10、及び図11を参照することを含めて、以下でより詳細に説明される。
デバイス901aは、XRインタフェース906と同様のXRインタフェース916を表示する。XRインタフェース916は、制御オプション917(制御オプション907と同様)と、カメラプレビュー918(カメラプレビュー908と同様)とを含み、カメラプレビュー918は、カメラ903aを介してキャプチャされた第2のユーザのレンダリング918-1を提供する。XRインタフェース916は、ディスプレイ902a上にレンダリングされ、XRセッション中に第2のユーザに表示されるXR環境であるXR環境915を示す。
図9Bに示されるように、デバイス901aは、アバター919を有するXR環境915を表示する。アバター919は、XR環境915におけるユーザ700の表現である。本明細書に示す実施形態では、アバター919は、仮想シャツ919-1及び仮想手919-2などの仮想特徴を有する仮想アバターである。図9Bに示す実施形態では、XR環境915は、デバイス901上に示された物理オブジェクトの表現を含まない(例えば、第2のユーザは、ユーザ700とは異なる物理環境にいる)。図9B~図9Fに示すように、デバイス901bは、ユーザの手700-1(例えば、手914と同様)の仮想表現であるアバターの手919-2を有するアバター919を有するXR環境915を表示するが、アバターの手919-2上に視覚的手効果(例えば、強調表示920)を表示しない。
いくつかの実施形態では、アバター919の外観の1つ以上の属性は、プロファイル設定、外観設定、登録データ、及び/又はデバイス901で取得されたデータ(例えば、ユーザ700(又はその部分(例えば、700-1))のポジション、姿勢、外観などを示す、デバイス901の1つ以上のカメラ/センサから収集されたデータ)に基づいて決定される。いくつかの実施形態では、デバイス901から収集されたデータは、デバイス901aに送信され、アバター919の外観の様々な属性又はXR環境915の他の態様を決定するために使用される。いくつかの実施形態では、アバター919の外観の1つ以上の属性は、デバイス901aから収集されたデータに基づいて決定される。例えば、ユーザ700及び第2のユーザが同じ部屋にいる場合、デバイス901aは、以下でより詳細に説明するように、デバイス901aのカメラの視野内のユーザ700の姿勢に基づいて、アバター919の姿勢を決定することができる。
いくつかの実施形態では、アバター919の部分は、図7A~図7Hに関して上述したように、ユーザ700の登録から導出することができる。例えば、図9Bでは、アバター919はシャツ919-1を着用して示されており、これは、図9A及びプレビュー908-1に示されるように、ユーザ700が現在異なるシャツを着用しているにもかかわらず、ユーザ700が登録プロセス中に着用していたのと同じオレンジ及び黄色のシャツ709を表す。アバター919は、いくつかの実施形態では、ユーザ700によって選択された様々な外観設定に基づいて決定される外観を有する。例えば、アバター919は、ユーザ700が図7Hに関して上述した眼鏡なしオプション726aを選択しているので、眼鏡を着用して示されていない。
いくつかの実施形態では、アバター919の外観は、例えばデバイス901を使用してリアルタイムで収集されたデータに基づいて決定される。例えば、アバター919は、デバイス901のカメラ904を使用して検出されたユーザの手700-1のポジションに基づくユーザの手914の姿勢をモデル化するために左手が上げられた状態で示されている。いくつかの実施形態では、アバター919は、例えば、デバイス901のカメラ903などの他のソースから収集されたデータに基づいて決定された外観(例えば、姿勢)を有することができる。例えば、ユーザ700が口を開けると、開いた口がカメラ903によって検出される。このデータは、デバイス901aに通信され、次いで、同様の方法で口を開いているアバター919を表示する。更に別の例として、デバイス901は、カメラ903を介して収集されたデータから、ユーザ700が眼鏡を着用していると判定し、それに応じて、アバター919の眼鏡外観オプション(例えば、オプション726b)を選択するようにアバター外観設定を更新することができる。外観設定の更新は、次いで、デバイス901aによって検出され、次いで、選択された眼鏡を含むように、アバター919の表示を更新する。
図9Cは、ユーザ700が自分の手700-1を(ボトル910に対する手914のポジションによって示されるように)ボトルに向かって移動させたことを除いて、図9Bの実施形態と同様の実施形態を示し、視覚的手効果は、ここでは、指914-1~914-5の指先に位置する強調表示されたドットインジケータ930として示されている。ユーザの手700-1の検出された移動に応じて、デバイス901は、XRインタフェース906の表示を更新して、手914がボトル910に向かって届くことを描写し、デバイス901aは、XRインタフェース916の表示を更新して、アバター919がアバターの手919-2を同様に動かすことを描写する。
強調表示920と同様に、強調表示されたドットインジケータ930は、ユーザの手700-1の移動、具体的には指の移動に基づいて変化する視覚的手効果である。デバイス901は、手914の指914-1~914-5の先端に強調表示されたドットインジケータ930を表示する。指先が動くと、ドットインジケータ930もそれに応じて動く。
いくつかの実施形態では、デバイス901は、ユーザの手700-1によって実行される特定のジェスチャを検出したことに応じて、表示された視覚的手効果を修正する。例えば、図9Dにおいて、ユーザ700は、手914によって示されるように、手700-1でピンチジェスチャを実行する。ピンチジェスチャの検出に応じて、デバイス901は、強調表示されたドットインジケータ930-1及び930-2の表示サイズ及び輝度を増加させる。視覚的手効果に対する修正は、ジェスチャがデバイス901によって認識されたことを示すフィードバックをユーザ700に提供する。いくつかの実施形態では、デバイス901は、ジェスチャに関連付けられた1つ以上の動作(ドットインジケータ930-1及び930-2の修正以外)を実行することによってジェスチャに応答する。
図9Dに示されるように、デバイス901aは、ピンチジェスチャを実行するアバター919を示すようにXRインタフェース916の表示を修正するが、視覚的手効果は表示しない。
図9Eでは、デバイス901は、ユーザ700がボトルを保持していることを検出し、それに応じて、ボトル910を保持している手914を表示する。図9E及び図9Fに示す実施形態では、視覚的手効果は、手914の指に現れる粒子940として表示される。ユーザの手が動くと、粒子は、図9Fに示されるように、動いている指に沿って追跡する。いくつかの実施形態では、粒子940は、手914のそれぞれの指の周りを移動又はシフトするアニメーション化された外観を有する。
上述したように、デバイス901及び/又はデバイス901aから収集されたデータを使用して、ユーザ700の姿勢を決定することができる。同様に、そのようなデータは、ユーザ700が物理的オブジェクト、すなわちボトル910を保持していることを判定するために使用されることができる。ユーザが物理的オブジェクトを保持していると判定したことに応じて、デバイス901aは、アバター919の手919-2内にレンダリングされたボトル945を含むようにXRインタフェース916の表示を更新する。レンダリングされたボトル945は、ボトル910と同じ外観を有しない、ユーザ700によって保持される物理的ボトルの表現である。例えば、レンダリングされたボトル945は、ボトル910とは異なる形状を有して表示される。加えて、レンダリングされたボトル945は、図9Eに表示され、アバター919と区別する変更された視覚的特性(例えば、ハッチング947によって表される)を有する。
いくつかの実施形態では、視覚的特性は、ぼかし、不透明度、色、視覚的平滑化、減衰、粒子密度、解像度、又は他の視覚的パラメータの量のうちの1つ以上を含む。変更された視覚的特性は、レンダリングされたボトル945の視覚的特性のうちの1つ以上をアバター919(例えば、アバターの手919-2)の視覚的特性と対比することによって、レンダリングされたボトル945の外観をアバター919の外観から区別する。例えば、レンダリングされたボトル945は、アバター919よりも高い(又は低い)ぼかしで表示することができる。別の例として、レンダリングされたボトル945は、より少ない及び/又はより小さいギャップを有する密に詰め込まれた粒子を用いてレンダリングされたアバター919と比較して、レンダリングされたボトル945が、ボトルを形成する粒子間により多くの及び/又はより大きい間隙を有する粒子のゆるい集合体であるように見えるように、低い量の粒子密度を有して表示され得る。別の例として、レンダリングされたボトル945は、アバター919よりも低い視覚的平滑化で表示することができる。更に別の例として、レンダリングされたボトル945は、アバター919よりも高くピクセル化された外観を有して表示され得る。変更された視覚的特性の前述の例は、レンダリングされたボトル及びアバターに関して切り替えることができることを理解されたい。例えば、レンダリングされたボトル945をより高いピクセル化で表示する代わりに、レンダリングされたボトル945は、アバター919よりも低くピクセル化された外観を有して表示され得る。
ユーザ700が物理的なボトルを動かすと、デバイス901及び901aは、検出された移動に基づいてそれぞれのXRインタフェースを修正する。例えば、ユーザ700が図9Fにおいてボトルを傾けると、デバイス901は、カメラ904の視野内の移動を検出し、それに応じて、ボトル910を傾けている手914を表示するようにXRインタフェース906を更新する。手914が移動すると、デバイス901はまた、手914の指と共に移動し、粒子940-1によって示されるトレーリング効果を有する粒子940を表示する。
デバイス901aは、ユーザの手700-1及びボトルの検出された移動に基づいて、アバター919及びレンダリングされたボトル945の表示(例えば、レンダリングされたボトル945のポジション)を修正する。いくつかの実施形態では、デバイス901aは、移動中に図9Eに示される外観(例えば、形状及び変更された視覚的特性(単数又は複数))を有するレンダリングされたボトル945を表示する。
いくつかの実施形態では、デバイス901aは、画像データ(例えば、画像、ビデオ等)又はデバイス901から受信されず、ユーザ700によって保持されている物理的オブジェクトのレンダリングを生成するために使用されることができる他のデータのライブラリに基づいて生成される外観を有する、レンダリングされたボトルを表示する。図9Fに示される実施形態では、デバイス901aは、レンダリングされたボトル945をレンダリングされたボトル948で置き換える。レンダリングされたボトル948は、ボトル910(及びレンダリングされたボトル945)とは異なる形状を有する。なぜなら、レンダリングされたボトル948は、物理的ボトルのためにキャプチャされたデータ(例えば、画像データ)ではなく、画像データのライブラリに基づいてレンダリングされるからである。いくつかの実施形態では、レンダリングされたボトル948は、現実的な外観を有する。いくつかの実施形態では、レンダリングされたボトル948は、変更された視覚的特性を有する。いくつかの実施形態では、レンダリングされたボトル948は、アバター919と同じ視覚的特性を有する。
いくつかの実施形態では、デバイス901は、ユーザの手700-1のポジション、姿勢、又は形状に基づいて視覚的手効果(例えば、強調表示920、ドットインジケータ930、粒子940)を選択的に表示する。例えば、いくつかの実施形態では、デバイス901は、ユーザの手700-1がカメラ(例えば、カメラ904)の視野の所定の領域内にない限り、又は手が関連している(例えば、ユーザが自分の手を見ている)と判定される場合、視覚的手効果を表示しない。いくつかの実施形態では、デバイス901は、現在有効化されている視覚的手効果及びユーザの手700-1の姿勢に応じて、視覚的手効果を表示しない。例えば、ユーザの手が拳の形状である場合、ユーザの指先は表示されず、したがって、デバイス901は、手の指先上にドットインジケータ930を表示しない。いくつかの実施形態では、デバイス901は、手700-1が特定の姿勢(例えば、拳)を有するとき、又はそうでなければ特定のシナリオに関連しないと判定されるとき、いかなる視覚的手効果も表示しない。
いくつかの実施形態では、デバイス(例えば、デバイス901)は、ヘッドセットデバイスであり、及び/又はカメラ(例えば、カメラ904)は、ディスプレイ(例えば、ディスプレイ902)から(例えば、垂直に)オフセットされたポジションを有し、視覚的手効果は予測された視線を有して表示され、その結果、ディスプレイ上で視覚的手効果を見ているときにユーザの手に位置付けられているように見えるように、視覚的手効果がユーザの視線と位置合わせされる。
図9A~図9Fに関する追加の説明は、以下の図10及び図11に関して記載された方法1000及び1100を参照して以下に提供される。
図10は、いくつかの実施形態による、XR環境において仮想アバターの手に視覚インジケータを表示するための例示的な方法1000のフローチャートである。方法は、表示生成コンポーネント(例えば、902)(例えば、視覚出力デバイス、3Dディスプレイ、画像が投影され得る透明又は半透明である少なくとも一部を有するディスプレイ(例えば、シースルーディスプレイ)、プロジェクタ、ヘッドアップディスプレイ、ディスプレイコントローラ)、及び1つ以上のセンサ(例えば、903、904)(例えば、赤外線カメラ、深度カメラ、可視光カメラ)と通信するコンピュータシステム(例えば、101、901)(例えば、スマートフォン、タブレット、ヘッドマウント表示生成コンポーネント)において生じる。
コンピュータシステム(例えば、901)は、表示生成コンポーネント(例えば、902)を介して、ユーザ特徴インジケータインタフェース(例えば、906)を表示する(1002)。ユーザ特徴インジケータインタフェースは、物理環境におけるユーザ(例えば、700)の手(例えば、700-1、914)(例えば、コンピュータシステムのユーザの手)の1つ以上の特徴(914-1、914-2、914-3、914-4、914-5)(例えば、手、手の一部、1つ以上の指、1つ以上の指の1つ以上の部分(例えば、指先、指関節))のセットの検出ロケーション(例えば、ロケーションは1つ以上のセンサを介して検出される)に対応する1つ以上の視覚インジケータ(920、930、940)(例えば、仮想オブジェクト及び/又は視覚効果)のセットを含む(1004)。1つ以上の視覚インジケータのセットは、拡張現実環境(例えば、905)内に表示され、物理環境内のユーザの手(例えば、700-1)の1つ以上の特徴のセットの第1の検出ロケーション(例えば、図9Bの手914の周囲に表示される920、図9Cの指914-1~914-5上に表示される930、図9Eの指914-5上に表示される940)に対応する(例えば、同一位置に配置される、それに基づく、それと重複する)第1の表示ポジションを有する。いくつかの実施形態では、1つ以上の視覚インジケータのセットは、ユーザの視点から、ユーザの手の1つ以上の特徴のセットのうちの少なくとも1つの特徴上に位置付けられるようにユーザに見えるように、第1の検出ロケーションに重複する(例えば、オーバーレイする)ように、インタフェース内に表示される。いくつかの実施形態では、コンピュータシステムは、ユーザに対して、拡張現実環境内のユーザの手(又はその一部(単数又は複数))上に位置付けられているように見えるように、ユーザとユーザの手(又はその一部(単数又は複数))との間のユーザの視線(例えば、予測/推定視線)内に視覚インジケータを表示する。いくつかの実施形態では、ユーザの手のロケーションは、1つ以上のセンサを使用して検出され、ユーザの視点は、物理環境内のユーザの手のポジションをキャプチャする1つ以上のセンサ(例えば、カメラ)の視点とは異なる視線視点である。
コンピュータシステム(例えば、901)は、1つ以上のセンサ(例えば、904)を介して、ユーザの手の1つ以上の特徴のセットにおけるユーザ(例えば、700)の手(例えば、700-1、914)の少なくとも1つの特徴(例えば、914-1、914-2、914-3、914-4、914-5)の移動(例えば、ポジションの変化、姿勢の変化、ハンドジェスチャ等)を検出する(1006)。いくつかの実施形態では、コンピュータシステムは、物理環境におけるユーザの手の少なくとも一部のポジションの変化(例えば、物理的ポジション、向き、ジェスチャ、移動等)を示すデータ(例えば、深度データ、画像データ、センサデータ(例えば、カメラからの画像データ))を受信する。
ユーザの手の1つ以上の特徴(例えば、914-1、914-2、914-3、914-4、914-5)のセットにおけるユーザ(例えば、700)の手(例えば、700-1、914)の少なくとも1つの特徴の移動の検出に応じて、コンピュータシステム(例えば、901)は、ユーザ特徴インジケータインタフェース(例えば、906)の表示を更新する(1008)。
ユーザ特徴インジケータインタフェース(例えば、906)の表示を更新することの一部として、ユーザ(例えば、700)の手(例えば、914)の1つ以上の特徴(例えば、914-1、914-2、914-3、914-4、914-5)のセットが(いくつかの実施形態では、第1の検出ロケーションから)物理環境(例えば、図9D)内の第2の検出ロケーションに移動する(例えば、ユーザの手(単数又は複数)が物理環境内の第1のロケーションから物理環境内の第2のロケーションに移動していることが検出される)との判定に従って、コンピュータシステム(例えば、901)は、表示生成コンポーネント(例えば、902)を介して、物理環境内のユーザの手の1つ以上の特徴のセットの第2の検出ロケーションに対応する拡張現実環境内の第2の表示ポジションを有する1つ以上の視覚インジケータ(例えば、920、930、940)のセットを表示する(1010)。いくつかの実施形態では、1つ以上の視覚インジケータのセットを表示することは、ユーザの手の1つ以上の特徴と協調して移動するようにユーザに見えるように移動する視覚インジケータのうちの1つ以上を表示することを含む。いくつかの実施形態では、1つ以上の視覚インジケータのセットは、ユーザの視点から、ユーザの手の1つ以上の特徴のセットのうちの少なくとも1つの特徴上に位置付けられるようにユーザに見えるように、第2の検出ロケーションに重複する(例えば、オーバーレイする)ように、インタフェース内に配置されて表示される。
ユーザ特徴インジケータインタフェース(例えば、906)の表示の更新の一部として、ユーザ(例えば、700)の手(例えば、914)の1つ以上の特徴(例えば、914-1、914-2、914-3、914-4、914-5)のセットが(いくつかの実施形態では、第1の検出ロケーションから)第2の検出ロケーション(例えば、図9E)とは異なる物理環境内の第3の検出ロケーションに移動したとの判定に従って、コンピュータシステム(例えば901)は、表示生成コンポーネント(例えば902)を介して、物理環境内のユーザの手の1つ以上の特徴のセットの第3の検出ロケーションに対応する拡張現実環境内の第3の表示ポジションであって、拡張現実環境内の第3の表示ポジションが、拡張現実環境内の第2の表示ポジションとは異なる、拡張現実環境内の第3の表示ポジションを有する1つ以上の視覚インジケータのセット(例えば、920、930、940)を表示する(1012)。物理環境内のユーザの手の1つ以上の特徴のセットの第2又は第3の検出ロケーションに対応する拡張現実環境内の第2又は第3の表示ポジションを有する1つ以上の視覚インジケータのセットを表示することは、ユーザの手の1つ以上の特徴のセットの検出ロケーションを示すフィードバックをコンピュータシステムのユーザに提供し、物理環境内のユーザの手の1つ以上の特徴のセットの移動を考慮することによって、拡張現実環境内の表示された視覚インジケータの精度を高める。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、ユーザの手の1つ以上の特徴のセットにおけるユーザ(例えば、700)の手(例えば、914)の少なくとも1つの特徴(例えば、914-1、914-2、914-3、914-4、914-5)の移動を検出することの一部として、コンピュータシステム(例えば、901)は、ユーザの手の1つ以上の特徴のセットにおけるユーザの手の少なくとも1つの特徴の移動の大きさ及び/又は方向を(例えば、1つ以上のセンサ(例えば、904)を介して)検出する。いくつかの実施形態では、拡張現実環境において第2の表示ポジションを有する1つ以上の視覚インジケータのセット(例えば、920、930、940)を表示することは、第1の表示ポジションから第2の表示ポジションに移動する1つ以上の視覚インジケータのセットを表示することを含み、第1の表示ポジションから第2の表示ポジションへの移動は、ユーザの手の1つ以上の特徴のセットにおけるユーザの手の少なくとも1つの特徴の移動の検出された大きさ及び/又は方向に基づく(例えば、移動の特性(例えば、速度、大きさ、方向)が基づく)。いくつかの実施形態では、拡張現実環境において第3の表示ポジションを有する1つ以上の視覚インジケータのセットを表示することは、第1の表示ポジションから第3の表示ポジションに移動する1つ以上の視覚インジケータのセットを表示することを含み、第1の表示ポジションから第3の表示ポジションへの移動は、ユーザの手の1つ以上の特徴のセットにおけるユーザの手の少なくとも1つの特徴の移動の検出された大きさ及び/又は方向に基づく(例えば、移動の特性(例えば、速度、大きさ、方向)が基づく)。ユーザの手の1つ以上の特徴のセット内のユーザの手の少なくとも1つの特徴の移動の検出された大きさ及び/又は方向に基づいて、拡張現実環境内で第1の表示ポジションから第2又は第3の表示ポジションへ移動する1つ以上の視覚インジケータのセットの移動を表示することは、ユーザの手の1つ以上の特徴のセット内のユーザの手の少なくとも1つの特徴の移動の大きさ及び/又は方向を考慮することによって、ユーザの手の1つ以上の特徴のセットの検出ロケーションを示すフィードバックをコンピュータシステムのユーザに提供し、表示される視覚インジケータの精度を高める。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、視覚インジケータ(例えば、920、930、940)のうちの1つ以上は、ユーザに対して、ユーザの手(例えば、914)の1つ以上の対応する特徴(例えば、914-1、914-2、914-3、914-4、914-5)と共に移動するように見えるように移動して表示される。
いくつかの実施形態では、表示生成コンポーネントは、透明ディスプレイコンポーネント(例えば、コンテンツが表示され(例えば、投影され)、ディスプレイの透明な性質により物理環境がそれを通して見えるシースルーディスプレイ)を含み、1つ以上の視覚インジケータ(例えば、920、930、940)のセットは、ユーザ(例えば、700)の目と、手(例えば、914)の1つ以上の特徴(例えば、914-1、914-2、914-3、914-4、914-5)のセットの検出ロケーションとの間の視線に沿っていると予測(例えば、コンピュータシステム(例えば、901)によって推定)される透明ディスプレイコンポーネント(例えば、視覚インジケータは、ユーザの手が透明ディスプレイを通して見えるように透明ディスプレイ上に表示され、視覚インジケータは、ユーザの手が透明ディスプレイに投影されていることでユーザの手上に位置するように見える)上のロケーションに表示される(例えば、コンピュータシステムは、拡張現実環境においてユーザにはユーザの手(又はその一部(単数又は複数))上に位置しているように見えるように、ユーザとユーザの手(又はその一部(単数又は複数))との間のユーザの視線(例えば、予測/推定視線)に視覚インジケータを表示する)。ユーザの目と手の1つ以上の特徴のセットの検出ロケーションとの間の視線に沿っていると予測される透明ディスプレイコンポーネント上のロケーションに1つ以上の視覚インジケータのセットを表示することは、ユーザの手の1つ以上の特徴のセットの検出ロケーションを示すフィードバックをコンピュータシステムのユーザに提供し、ユーザの視線からの視覚的オフセット及びユーザの手の1つ以上の特徴のセットのロケーションを検出したセンサの視点を考慮することによって、表示された視覚インジケータの精度を向上させる。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、ユーザの手(例えば、914)のロケーションは、1つ以上のセンサ(例えば、904)を使用して検出され、ユーザ(例えば、700)の視点は、物理環境におけるユーザの手のポジションをキャプチャする1つ以上のセンサ(例えば、カメラ)の視点とは異なる視線視点である。
一部の実施形態では、1つ以上の視覚インジケータ(例えば、920、930、940)のセットを表示することは、拡張現実環境(例えば、905)において、ユーザ(例えば、700)の手(例えば、914)の1つ以上の特徴のセットの周辺領域(例えば、図9B参照)に対応する(例えば、周辺領域にある、又は周辺領域の近くにある)ロケーションに、仮想強調表示効果(例えば、920)を表示することを含む(例えば、視覚インジケータは、ユーザの手(単数又は複数)の少なくとも一部の周りを強調表示するように表示される)。ユーザの手の1つ以上の特徴のセットの周辺領域に対応するロケーションに仮想強調表示効果を表示することは、ユーザの手の1つ以上の特徴のセットの少なくとも一部の検出ロケーションを示すフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、拡張現実環境(例えば、905)において第2の表示ポジションを有する1つ以上の視覚インジケータ(例えば、920、930、940)のセットを表示することの一部として、コンピュータシステム(例えば、901)は、第1の表示ポジションから第2の表示ポジションに移動する1つ以上の視覚インジケータ(例えば、940)のセットを表示する(例えば、図9F)。いくつかの実施形態では、拡張現実環境(例えば、905)において第2の表示ポジションを有する1つ以上の視覚インジケータ(例えば、920、930、940)のセットを表示することの一部として、コンピュータシステムは、1つ以上の視覚インジケータのセットが第1の表示ポジションから第2の表示ポジションに移動するときに1つ以上の視覚インジケータのセットに続く(例えば、追跡する、1つ以上の視覚インジケータのセットの後ろの同じ経路に沿って移動する)1つ以上の視覚インジケータの第2のセット(例えば、940-1)(例えば、粒子、粒子効果、1つ以上の視覚インジケータのセットの移動の跡に残るインジケータの残留軌跡)を表示する(例えば、図9F)。
いくつかの実施形態では、拡張現実環境(例えば、905)において第3の表示ポジションを有する1つ以上の視覚インジケータ(例えば、920、930、940)のセットを表示することの一部として、コンピュータシステム(例えば、901)は、第1の表示ポジションから第3の表示ポジションに移動する1つ以上の視覚インジケータ(例えば、940)のセットを表示する。いくつかの実施形態では、XR環境において第3の表示ポジションを有する1つ以上の視覚インジケータのセットを表示することの一部として、コンピュータシステムは、1つ以上の視覚インジケータのセットが第1の表示ポジションから第3の表示ポジションに移動するときに1つ以上の視覚インジケータのセットに続く(例えば、追跡する、1つ以上の視覚インジケータのセットの後ろの同じ経路に沿って移動する)1つ以上の視覚インジケータの第3のセット(例えば、940-1)(例えば、粒子、粒子効果、1つ以上の視覚インジケータのセットの移動の跡に残るインジケータの残留軌跡)を表示する(例えば、図9F)。第1の表示ポジションから第2又は第3の表示ポジションに移動するときに、1つ以上の視覚インジケータのセットに続く1つ以上の視覚インジケータの第2又は第3のセットを表示することは、ユーザの指の検出ロケーション及び移動を示すフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、ユーザ(例えば、700)の手(例えば、914)の少なくとも1つの特徴は、ユーザの手の指(例えば、914-1、914-2、914-3、914-4、914-5)の先端である。いくつかの実施形態では、1つ以上の視覚インジケータ(例えば、920、930、940)のセットを表示することは、拡張現実環境(例えば、905)において、ユーザの手の指の先端に対応する(例えば、その付近にある)ロケーションに強調表示効果(例えば、930)(例えば、強調表示されたドット又は球)を表示することを含む(例えば、視覚インジケータは、ユーザの指先(単数又は複数)に位置する強調表示されたドット又は球として表示される)(例えば、複数の指が検出され、視覚インジケータは、検出された指の指先の各々に位置する強調表示されたドット又は球として表示される)。ユーザの手の指の先端に対応するロケーションに強調表示効果を表示することは、ユーザの指先の検出ロケーションを示すフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
一部の実施形態では、コンピュータシステム(例えば、901)は、ユーザ(例えば、700)の手(例えば、914)のポジション及び/又は移動に基づいて、デバイス(例えば、コンピュータシステム901)が入力を受け付ける準備ができている(例えば、ユーザの手が、電子デバイスに入力を提供するのに利用可能なポジション及び/又は向きにある)との判定に従って、ユーザ特徴インジケータインタフェース(例えば、906)を表示する(例えば、ユーザの手の1つ以上の特徴のセットは、インジケータ表示基準のセットを満たす(例えば、コンピュータシステムは、ユーザの手(単数又は複数)がアクティブであるとき(例えば、ユーザが手を見ているとき、ユーザの手が所定の姿勢にあるとき、ユーザの手が1つ以上のセンサ及び/又はディスプレイの所定の領域に位置するとき)のみ視覚インジケータを表示する)。ユーザの手のポジション及び/又は移動に基づいてユーザの手が入力を受け入れる準備ができているとの判定に従って1つ以上の視覚インジケータを表示することは、デバイスがユーザの手のポジション及び/又は移動に基づいて入力を受け入れる準備ができていない限り、ユーザの手を追跡して視覚インジケータを表示するための計算を実行する必要をなくすことによって計算リソースを節約する。計算作業負荷を低減することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、ユーザ(例えば、700)の手(例えば、914)がアクティブでないとの判定(例えば、ユーザの手が移動基準(例えば、十分な程度の移動)を満たさないとの判定、及び/又はユーザの視線が現在ユーザの手に向けられていない、及び/又はユーザの手が現在ユーザの予測視野内にないとの判定(例えば、予測))に従って、コンピュータシステム(例えば、901)は、視覚インジケータ(例えば、920、930、940)、又はいくつかの実施形態では、ユーザ特徴インジケータインタフェース(例えば、906)の表示を停止する。
いくつかの実施形態では、デバイス(例えば、コンピュータシステム901)は、ユーザが手を見ていると判定されたとき(例えば、コンピュータシステムが、ユーザの視線がユーザの手の決定されたポジションに向けられていると判定及び/又は予測したとき)、ユーザ(例えば、700)の手(例えば、914)のポジション及び/又は移動に基づいて、入力を受け入れるように準備される。
いくつかの実施形態では、デバイス(例えば、コンピュータシステム901)は、ユーザ(例えば、700)の手(例えば、914)のポジション及び/又は移動に基づいて、手が1つ以上の所定の姿勢のセットのうちの少なくとも1つを有すると判定されたとき(例えば、コンピュータシステムが、ユーザの手が所定の姿勢(例えば、手を開いた、指を広げた、指差した等)を有すると判定したとき)、入力を受け入れるように準備される。
いくつかの実施形態では、特徴インジケータインタフェース(例えば、906)は、表示基準の第1のセットが満たされている(例えば、複合現実表示モードが有効化されているときに表示基準の第1のセットが満たされている)との判定に従って表示される。いくつかの実施形態では、表示基準の第2のセットが満たされている(例えば、仮想現実表示モードが有効化されているときに表示基準の第2のセットが満たされている)との判定に従って、コンピュータシステム(例えば、901)は、表示生成コンポーネント(例えば、902)を介して、仮想現実環境におけるユーザの手の仮想表現を表示する(例えば、ユーザの手は、VR環境において完全に仮想的に表示される)。仮想現実環境においてユーザの手の仮想表現を表示することは、仮想環境におけるユーザの手の検出ロケーションについてのフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、仮想環境を表示している間、表示生成コンポーネント(例えば、902)は不透明であり、手の仮想表現を表示している表示生成コンポーネントの少なくとも一部において、物理環境からの光又はビデオを通過させない。いくつかの実施形態では、表示基準の第2のセットが満たされるとき、コンピュータシステム(例えば、901)は、1つ以上の視覚インジケータ(例えば、920、930、940)のセットを表示することを取り止める。いくつかの実施形態では、表示基準の第2のセットが満たされるとき、コンピュータシステムは、ユーザの手の仮想表現と共に1つ以上の視覚インジケータのセットを表示し続ける。
いくつかの実施形態では、コンピュータシステム(例えば、901)は、外部コンピュータシステム(例えば、901a)(例えば、第1のユーザに関連付けられた外部コンピュータシステム(例えば、第1のユーザによって操作されている(例えば、コンピュータシステムのユーザと通信セッション(例えば、拡張現実、仮想現実、及び/又はビデオ会議)にあるユーザ)))と通信している。コンピュータシステム(例えば、901)が、表示生成コンポーネント(例えば、902)を介して、1つ以上の視覚インジケータ(例えば、920、930、940)のセットを含むユーザ特徴インジケータインタフェース(例えば、906)を表示している間、外部コンピュータシステム(例えば、901a)は、拡張現実環境(例えば、915)においてユーザの手(例えば、919-2)の仮想表現を表示する(いくつかの実施形態では、1つ以上の視覚インジケータのセット及び/又は手の画像データ(例えば、カメラ画像データ)を表示せずに)。外部コンピュータシステムが拡張現実環境においてユーザの手の仮想表現を表示している間に、1つ以上の視覚インジケータのセットを含むユーザ特徴インジケータインタフェースを表示することは、コンピュータシステムのユーザの手がどこに位置し、どのように動いているかを示すフィードバックを外部コンピュータシステムのユーザに提供すると共に、手のロケーション及び移動に関する視覚フィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、コンピュータシステム(例えば、901)のユーザ(例えば、700)は、ユーザの手(例えば、914)のパススルービュー上に位置付けられた視覚インジケータ(例えば、920、930、940)を用いて拡張現実環境(例えば、905)を見て(例えば、ディスプレイの透明な性質に起因して、ユーザの手のビデオパススルーに起因して)、拡張現実環境(例えば、915)を見る他のユーザは、ユーザの手(例えば、919-2)の仮想表現を見る(例えば、視覚インジケータを用いて、又は用いずに、物理的手の画像データを表示せずに)。
いくつかの実施形態では、コンピュータシステム(例えば、901)は、1つ以上のセンサ(例えば、904)を介して、所定のジェスチャ(例えば、指差しジェスチャ、スナップジェスチャ、ピンチジェスチャ、つかむジェスチャ、ユーザの手及び/又は指(単数又は複数)の所定の移動)のセットから少なくとも1つのジェスチャ(例えば、図9D)を検出する。少なくとも1つのジェスチャを検出したことに応じて、コンピュータシステムは、1つ以上の視覚インジケータ(例えば、930-1、930-2)のセットの外観を修正する(例えば、輝度を増加させる、視覚インジケータ(単数又は複数)の形状を変化させる、追加の視覚インジケータ及び/又はその一部を表示する、視覚インジケータの表示部分を除去する)。少なくとも1つのジェスチャの検出に応じて1つ以上の視覚インジケータのセットの外観を修正することは、ジェスチャがコンピュータシステムによって認識されるか否かを示すフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、1つ以上の視覚インジケータ(例えば、930-1、930-2)のセットの修正された外観は、一時的である。例えば、コンピュータシステム(例えば、901)がジェスチャを認識したことを示すための視覚インジケータの輝度の一時的な増加。いくつかの実施形態では、コンピュータシステムは、ユーザの手(例えば、914)の移動に基づいて視覚インジケータを動かし続け、また、ジェスチャのうちの1つが認識されると、視覚インジケータの外観を修正する。
いくつかの実施形態では、1つ以上の視覚インジケータ(例えば、920、930、940)のセットを表示することの一部として、コンピュータシステム(例えば、901)は、表示生成コンポーネント(例えば、902)(例えば、不透明ディスプレイ、非透明ディスプレイ、ユーザの手のビデオフィードが表示され、ディスプレイの不透明性により物理環境が見えないディスプレイ)を介して、物理環境内のユーザ(例えば、700)の手(例えば、914)の1つ以上の特徴のセットのビデオフィード(例えば、パススルービデオフィード)上に配置された視覚インジケータを表示する。物理環境におけるユーザの手の1つ以上の特徴のセットのビデオフィード上に位置付けられた1つ以上の視覚インジケータのセットを表示することは、手の1つ以上の特徴のセットのビデオフィードに対するユーザの手の1つ以上の特徴のセットの検出ロケーションを示すフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
方法1000に関して上述したプロセス(例えば図10)の詳細はまた、本明細書で説明する方法800、1100、1300及び1400にも、類似の方式で適用可能であることに留意されたい。例えば、方法800、1100、1300、及び1400は、方法1000に関して上述した様々な方法の特性のうちの1つ以上を任意選択的に含む。簡潔にするために、これらの詳細は、以下で繰り返さない。
図11は、いくつかの実施形態に係る、XR環境において異なる視覚的特性を有するオブジェクトを表示するための例示的な方法1100を示すフローチャートである。方法は、表示生成コンポーネント(例えば、902a)(例えば、視覚出力デバイス、3Dディスプレイ、画像が投影され得る透明又は半透明である少なくとも一部を有するディスプレイ(例えば、シースルーディスプレイ)、プロジェクタ、ヘッドアップディスプレイ、ディスプレイコントローラ)、及び第1のユーザ(例えば、700)に関連付けられた外部コンピュータシステム(例えば、901)と通信するコンピュータシステム(例えば、101、901a)(例えば、スマートフォン、タブレット、ヘッドマウント表示生成コンポーネント)において行われる(例えば、第1のユーザによって操作されている(例えば、コンピュータシステムのユーザと通信セッションにあるユーザ(例えば、拡張現実及び/又はビデオ会議))。
コンピュータシステム(例えば、901a)は、拡張現実環境(例えば、915)において、表示生成コンポーネント(例えば、902a)を介して、表現(例えば、919)(例えば、アバター、仮想アバター(例えば、アバターは、第1のユーザの少なくとも一部の仮想表現である)を表示し(1102)、いくつかの実施形態では、第1のユーザ(例えば、700)の仮想アバターが、拡張現実環境において、第1のユーザの代わりに))(例えば、物理環境内のユーザ)表示される。第1のユーザの表現は、拡張現実環境(例えば、915)内に表示され、第1の姿勢(例えば、物理的ポジション、向き、ジェスチャ等)と、第1のユーザの少なくとも一部の形状に基づく形状(例えば、三次元形状)とを有する(例えば、アバター919は、ユーザの手(例えば、914)の形状に基づくアバターの手919-2を有する(例えば、ユーザの手と同じ姿勢を有する))。第1のユーザの表現の形状は、視覚的特性の第1のセット(例えば、アバターのレンダリングの1つ以上の視覚的パラメータのセット、ぼかしの量、不透明度、色、視覚的平滑化、減衰/密度、解像度など)を用いて視覚化される(例えば、視覚的に表される)。
いくつかの実施形態では、第1のユーザ(例えば、919)の表現は、第1のユーザ(例えば、700)が、拡張現実環境(例えば、915)において、擬人化された特徴(例えば、頭部、腕、脚、手など)を有するレンダリング(例えば、仮想アバター)によって、又はアニメーション化されたキャラクタ(例えば、人間、漫画のキャラクタ、犬、ロボットなどの非人間キャラクタの擬人化された構成物)として表現されるモード(例えば、仮想プレゼンスモード)を有して表示される。いくつかの実施形態では、第1のユーザの表現は、第1のユーザの同じ姿勢を有して表示される。一部の実施形態では、第1のユーザの表現は、第1のユーザの対応する部分(例えば、914)と同じ姿勢を有する部分(例えば、919-2)を有して表示される。いくつかの実施形態では、第1のユーザの表現は、物理環境における第1のユーザの少なくとも一部の姿勢の検出された変化に応じて姿勢を変化させるアバター(例えば、仮想アバター)である。例えば、アバターは、物理環境における第1のユーザの検出された移動を模倣するアニメーションキャラクタとして拡張現実環境(例えば、915)に表示される。
コンピュータシステム(例えば、901a)は、第1のユーザ(例えば、700)の姿勢の変化(例えば、物理的ポジション、向き、ジェスチャ、移動など)(例えば、物理環境における、第1のユーザの姿勢の変化)を示すデータを含む第1のデータ(例えば、深度データ、画像データ、センサデータ(例えば、カメラからの画像データ))を受信する(1104)。いくつかの実施形態では、データは、センサデータ(例えば、カメラ(例えば、904、903)からの画像データ)、加速度計からの移動データ、GPSセンサからのロケーションデータ、近接センサからのデータ、ウェアラブルデバイス(例えば、腕時計、ヘッドセットデバイス)からのデータ)を含む。いくつかの実施形態では、センサは、コンピュータシステム(例えば、901a、901)に接続又は統合することができる。いくつかの実施形態では、センサは、外部センサ(例えば、異なるコンピュータシステム(例えば、別のユーザの電子デバイス)のセンサ)であってもよい。
第1のデータの受信に応じて、コンピュータシステム(例えば、901a)は、拡張現実環境(例えば、915)における第1のユーザ(例えば、919)の表現の外観を(例えば、第1のデータの少なくとも一部に基づいて)更新する(1106)。拡張現実環境において第1のユーザの表現の外観を更新することは、第1のデータが、第1のユーザ(例えば、914)の第1の部分(例えば、第1のユーザの物理的な手)がオブジェクト(例えば、910)(例えば、物理環境内の物理的オブジェクト)(いくつかの実施形態では、第1のユーザの第1の部分は、第1のデータを受信する前に物理環境内のオブジェクトに接触していると以前に判定されなかった)に接触している(例えば、触れている、保持している、把持している、操作している、対話しているなど)というインジケーション(例えば、姿勢の変化を示すデータ)を含むとの判定に従って、コンピュータシステム(例えば、901a)は、拡張現実環境内に、方法1100のステップ1110及び1112において参照された項目を表示する(1108)。
1110では、コンピュータシステム(例えば、901a)は、第1のユーザ(例えば、919)の姿勢の変化(例えば、図9E)(例えば、その大きさ又は方向のうちの少なくとも1つ)に基づいて、第2の姿勢(例えば、図9Eの姿勢)を有する第1のユーザ(例えば、700)の表現を表示する(例えば、アバターの姿勢は、第1のユーザの姿勢の変化の大きさ及び/又は方向に対応する大きさ及び/又は方向によって更新される)。第1のユーザ(例えば、919)の表現の形状は、視覚的特性の第1のセットを用いて視覚化される(例えば、図9Eに示されるように)。
1112において、コンピュータシステム(例えば、901a)は、オブジェクト(例えば、910)の少なくとも一部の形状に基づく形状(例えば、三次元形状)を有するオブジェクト(例えば、945、948)の表現を表示する(例えば、オブジェクトの表現は、物理的オブジェクト又はその一部の形状と同様の形状を有する)。オブジェクトの表現の形状は、視覚的特性の第1のセットとは異なる視覚的特性の第2のセット(例えば、947)を用いて視覚化される。第1のユーザの姿勢の変化に基づいて第2の姿勢を有し、視覚的特性の第1のセットで視覚化された第1のユーザの表現を表示し、かつオブジェクトの少なくとも一部の形状に基づいた形状を有し、視覚的特性の第1のセットとは異なる視覚的特性の第2のセットで視覚化されたオブジェクトの表現を表示することは、コンピュータシステムのユーザに、第1のユーザが物理環境内のオブジェクトに接触しており、オブジェクトが第1のユーザから離れているというフィードバックを提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、物理的オブジェクト(例えば、910)は、物理環境における第1のユーザ(例えば、914)の第1の部分に対して相対ポジションを有し、オブジェクト(例えば、945)の表現は、拡張現実環境における第1のユーザの第1の部分(例えば、919-2)の表現に対して同じ相対ポジションを有して、拡張現実環境(例えば、915)に表示される。
いくつかの実施形態では、拡張現実環境(例えば、915)における第1のユーザ(例えば、919)の表現の外観を更新することの一部として、第1のユーザ(例えば、700)の第1の部分(例えば、914)がオブジェクト(例えば、910)に接触している(例えば、第1のユーザがオブジェクトに接触していない)(例えば、ユーザ700が図9Dのボトルを保持していない)というインジケーションを第1のデータが含まないとの判定に従って、コンピュータシステム(例えば、901a)は、拡張現実環境(例えば、915)において、第1のユーザ(例えば、700)の姿勢の変化に基づいて、第2の姿勢(例えば、図9D)を有する第1のユーザ(例えば、919)の表現を表示する。第1のユーザ(例えば、919)の表現の形状は、視覚的特性の第1のセットを用いて視覚化される。コンピュータシステムはまた、拡張現実環境(例えば、915)において、オブジェクトの少なくとも一部の形状に基づく形状を有し、視覚的特性の第1のセットとは異なる視覚的特性の第2のセットで視覚化されるオブジェクト(例えば、945)の表現を表示することを取り止める(例えば、オブジェクトの表現は、ユーザがオブジェクトに接触していない場合、拡張現実環境において表示されない(例えば、図9D参照))。第1のユーザの姿勢の変化に基づいて第2の姿勢を有する第1のユーザの表現を表示し、かつオブジェクトの少なくとも一部の形状に基づいた形状を有し、視覚的特性の第1のセットとは異なる視覚的特性の第2のセットで視覚化されたオブジェクトの表現を表示することを取り止めるは、コンピュータシステムのユーザに、第1のユーザが物理環境内のオブジェクトに接触していないというフィードバックを提供し、拡張現実環境においてオブジェクトの表現をレンダリングするための計算を排除することによって計算負荷を低減する。改善されたフィードバックを提供すること及び計算作業量を低減することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、視覚的特性の第1のセットは、第1のユーザ(例えば、919)の表現の形状のぼかしの第1の量(例えば、第1のぼやけ度合い又は鮮明度)を含み、視覚的特性の第2のセット(例えば、947)は、ぼかしの第1の量とは異なる(例えば、ぼかしの第1の量よりも大きい、小さい)オブジェクト(例えば、945)の表現の形状のぼかしの第2の量を含む(例えば、オブジェクトの表現の形状は、第1のユーザの表現の形状よりも大きいぼかし度(より小さい鮮明度)又はより小さいぼかし度(より大きい鮮明度)で表示される)。オブジェクトの表現の形状とは異なるぼかし量で視覚化された第1のユーザの表現の形状を表示することは、第1のユーザが物理環境内でオブジェクトに接触していること、及びオブジェクトが第1のユーザとは離れている(例えば、別個)ことのフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、視覚的特性の第1のセットは、第1のユーザ(例えば、919)の表現の形状を含む粒子の第1の密度(例えば、粒子間の間隔の量及び/又はサイズ)を含み、視覚的特性の第2のセット(例えば、947)は、第1の密度とは異なる(例えば、第1の密度よりも大きい、第1の密度よりも小さい)オブジェクト(例えば、945)の表現の形状を含む粒子の第2の密度を含む(例えば、第1のユーザの表現の形状は、オブジェクトの表現の形状よりも大きい粒子密度(例えば、より小さい及び/又はより少ない粒子間の間隙)、又はより小さい粒子密度(例えば、より大きい及び/又はより多い粒子間の間隙)で表示される)。オブジェクトの表現の形状とは異なる粒子の密度で視覚化された第1のユーザの表現の形状を表示することは、第1のユーザが物理環境内でオブジェクトに接触していること、及びオブジェクトが第1のユーザとは離れている(例えば、別個)ことのフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、視覚的特性の第1のセットは、第1のユーザ(例えば、919)の表現の形状の第1の量の視覚的平滑化(例えば、画像平滑化)を含み、視覚的特性の第2のセット(例えば、947)は、第1の量の視覚的平滑化とは異なる(例えば、より大きい、より小さい)オブジェクト(例えば、945)の表現の形状の第2の量の視覚的平滑化を含む(例えば、第1のユーザの表現の形状は、オブジェクトの表現の形状よりも大きい視覚的平滑化(例えば、画像平滑化)、又はより小さい視覚的平滑化で表示される)。オブジェクトの表現の形状とは異なる視覚的平滑化の量で視覚化された第1のユーザの表現の形状を表示することは、第1のユーザが物理環境内でオブジェクトに接触していること、及びオブジェクトが第1のユーザとは離れている(例えば、別個)ことのフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
一部の実施形態では、視覚的特性の第1のセットは、第1のユーザ(例えば、919)の表現の形状の第1のピクセル化量(例えば、解像度、第1のユーザの表現の形状を含む粒子のサイズ)を含み、視覚的特性の第2のセット(例えば、947)は、オブジェクト(例えば、945)の表現の形状の第2のピクセル化量を含み、第2のピクセル化量は、第1のピクセル化量とは異なる(例えば、第1のユーザの表現の形状は、オブジェクトの表現の形状よりも低いピクセル化(例えば、より高い解像度)、又はより高いピクセル化(例えば、より低い解像度)で表示される)。オブジェクトの表現の形状とは異なるピクセル化量で視覚化された第1のユーザの表現の形状を表示することは、第1のユーザが物理環境内でオブジェクトに接触していること、及びオブジェクトが第1のユーザとは離れている(例えば、別個)ことのフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、オブジェクト(例えば、948)の表現は、少なくとも部分的に、オブジェクトのライブラリ(例えば、コンピュータシステム及び/又は外部コンピュータシステムによってアクセス可能なライブラリ)からのデータ(例えば、画像データ、モデルデータ)に基づく。いくつかの実施形態では、コンピュータシステム(例えば、901a)及び/又は外部コンピュータシステム(例えば、901)は、オブジェクト(例えば、910)のアイデンティティを判定し、オブジェクトのアイデンティティに基づいてオブジェクトのライブラリから一致するデータを判定する。オブジェクトのライブラリからのデータに基づいてオブジェクトの表現を表示することは、オブジェクトがオブジェクトのライブラリから識別され、オブジェクトのライブラリからのデータを使用して表示されるというフィードバックをコンピュータシステムのユーザに提供し、これは、他のデータ(例えば、コンピュータシステムによってリアルタイムで検出されるデータ)に基づいてオブジェクトの表現をレンダリングするための計算を排除することによって、計算作業負荷を低減する。改善されたフィードバックを提供すること及び計算作業量を低減することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、第1のユーザ(例えば、919-1)の表現は、第1のユーザ(例えば、700)の登録プロセス(例えば、図7A~図7Hに関して説明したような登録プロセス)からのデータ(例えば、画像データ)に少なくとも部分的に基づく。いくつかの実施形態では、コンピュータシステム(例えば、901a)は、別のソース(例えば、画像のライブラリ)からの画像データではなく、登録プロセスからの画像データに基づく外観を有する第1のユーザ(例えば、919)の表現を表示する。第1のユーザのための登録プロセスからのデータに基づいて第1のユーザの表現を表示することは、第1のユーザのより現実的な外観を提供することによってユーザシステム体験を向上させ、コンピュータシステムの操作性を向上させ、ユーザシステムインタフェースをより効率的にし(例えば、ユーザが適切な入力を提供するのを支援し、コンピュータシステムを操作する/コンピュータシステムと対話するときに、ユーザの誤りを低減することによって)、更に、ユーザがシステムをより迅速かつ効率的に使用することを可能にすることによって、電力使用を低減し、コンピュータシステムの電池寿命を改善する。
いくつかの実施形態では、コンピュータシステム(例えば、901a)が、表示生成コンポーネント(例えば、902a)を介して、第1のユーザ(例えば、919)の表現及びオブジェクト(例えば、945)の表現を表示している間、外部コンピュータシステム(例えば、901)は、第1のユーザ(例えば、919)の表現及びオブジェクト(例えば、945)の表現を表示することを取り止める(例えば、第1のユーザは、第1のユーザの手の表現及びオブジェクトの表現の代わりに、自分の手及び物理的オブジェクトのパススルービューを見る)。
いくつかの実施形態では、コンピュータシステム(例えば、901a)は、第1のポジション(例えば、図9E)を有するオブジェクト(例えば、945)の表現及び第2の姿勢(例えば、図9E)を有する第1のユーザ(例えば、919、919-2)の表現を表示している間に、第1のユーザ(例えば、914)の少なくとも第1の部分の移動を示すデータを含む第2のデータを受信する。第2のデータを受信したことに応じて、コンピュータシステムは、拡張現実環境(例えば、915)においてオブジェクトの表現(例えば、945、948)及び第1のユーザの表現(例えば、919、919-2)の表示を更新する。オブジェクトの表現及び第1のユーザの表現の表示を更新することの一部として、コンピュータシステムは、ユーザの少なくとも第1の部分の移動に基づく第3の姿勢(例えば、図9Fの姿勢)を有する第1のユーザ(例えば、919)の表現を表示する(例えば、第1のユーザの表現は、第1のユーザの手の移動に基づいて動く)(例えば、第1のユーザの表現の形状は、第1の視覚的特性のセットで視覚化される)。コンピュータシステムはまた、ユーザの少なくとも第1の部分の移動に基づく第2のポジション(例えば、図9Fのポジション)を有するオブジェクト(例えば、945、948)の表現を表示する(例えば、オブジェクトの表現は、第1のユーザの手と共に移動する)(例えば、オブジェクトの形状は、視覚的特性の第2のセットを用いて視覚化される)。第3の姿勢を有する第1のユーザの表現を表示し、ユーザの少なくとも第1の部分の移動に基づいて第2のポジションを有するオブジェクトの表現を表示することは、第1のユーザがオブジェクトに接触し続け、オブジェクトを異なるポジションに移動させたというフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
方法1100に関して上述したプロセス(例えば図11)の詳細はまた、本明細書で説明する方法800、1000、1300及び1400にも、類似の方式で適用可能であることに留意されたい。例えば、方法800、1000、1300、及び/又は1400は、任意選択的に、方法1100を参照して上述した様々な方法の特性のうちの1つ以上を含む。簡潔にするために、これらの詳細は、以下で繰り返さない。
図12A~図12E、図13A~図13B、及び図14は、XR環境で表されるユーザに関連付けられた様々な提示モードの例を示す。
図12Aは、図9A~図9Fに関して上述したものと同様の方法で第2のユーザとのXRセッションに参加している間に頭部700-3が前方を向き手700-2が持ち上げられた状態でデバイス901の前に(少なくとも部分的にカメラ904の視野内に)立っているユーザ700を含む物理環境1200を示す。デバイス901は、ディスプレイ902を介して、XRインタフェース906と同様のXRインタフェース1206を表示する。XRインタフェース1206は、XR環境1205(XR環境905と同様)及び制御オプション1207(制御オプション907と同様)を含む。図12Aに示すように、XR環境1205は、現在、XR環境内の第2のユーザの存在を表すアバター1222(アバター922と同様)を含む。
図12Aはまた、ディスプレイ902aを介して、XRインタフェース916と同様のXRインタフェース1216を表示するデバイス901aを示す。XRインタフェース1216は、カメラ903aの視野内に位置する第2のユーザのレンダリング1218-1を有するプレビュー1218を含む。XRインタフェース1216はまた、XR環境1215(XR環境915と同様)及び制御オプション1217を表示する。図12Aに示す実施形態では、XR環境1215は、現在、(アバター919と同様の)アバター1220の形態のユーザ700の表現を含む。デバイス901及び901aは、図9A~図9Fに関して上述したものと同様の方法で、XRインタフェース1206及び1216をそれぞれ表示する。簡潔にするために、以下ではこれらの詳細は繰り返さない。
図12Aに示す実施形態では、アバター1220は、ユーザ700の仮想表現として表示される部分1220-1、1220-2、1220-3、及び1220-4を含む。部分1220-1は、アバターの左前腕及び手を形成し、例えば、デバイス901のカメラ904によって検出されるユーザの左前腕及び手700-1の種々の側面(例えば、ポジション、姿勢、向き、色、移動等)に基づいて判定される外観(例えば、ポジション、姿勢、向き、色、形状等)を有する。同様に、部分1220-2は、アバターの右前腕及び手を形成し、ユーザの右前腕及び手700-2の様々な態様に基づいて決定される外観を有する。部分1220-3は、アバターの頭部及び肩領域を形成し、ユーザの頭部700-3及び肩の様々な態様に基づいて決定される外観を有する。部分1220-4は、アバター1220の残りの部分を形成し、部分1220-1~1220-3の外観とは異なる外観を有する。例えば、図12Aに示すように、部分1220-4は、様々な色及び任意選択的に形状(任意選択的に異なる形状、任意選択的に重なり合う又は重なり合わない)を有する要素1225で形成された外観を有し、部分1220-1~1220-3は、ユーザ700の対応する部分を視覚的に表す(例えば、1つ以上の人間の特徴の形状に類似する、その形状を有する)外観を有する。例えば、部分1220-2は、ユーザ700の対応する部分(例えば、ユーザの右前腕及び手700-2)と同じ形状及び姿勢を有する。いくつかの実施形態では、部分1220-4(そのサブ部分)は、要素1225から形成されたアモルファス形状を有する。いくつかの実施形態では、部分1220-4は、胴体、肘、脚等の1つ以上の人間の特徴の形状を有する。いくつかの実施形態では、要素1225(又はそのサブセット)は、1つ以上の人間の特徴を形成するように成形される視覚効果(例えば、ボケ効果)を生成する。いくつかの実施形態では、部分1220-4内の要素1225の色は、物理環境1200内のユーザ700によって着用されている衣服の色に対応する。いくつかの実施形態では、部分1220-4内の要素1225の色は、デバイス901及び/又はデバイス901aによって自動的に選択される。例えば、いくつかの実施形態では、部分1220-4内の要素1225の色は、図7A~図7Hに関して上述した登録プロセス中にユーザ700が着用する衣服(例えば、シャツ709)の色に一致するように選択される。いくつかの実施形態では、部分1220-4内の要素1225の色は、暖色系カラーパレットを有するように選択され、一方、仮想アシスタントの表現等のデバイス901又はデバイス901aの他の態様(例えば、システム要素)の色は、寒色系カラーパレットを有するように選択される。いくつかの実施形態では、部分1220-4は表示されない。いくつかの実施形態では、部分1220-1、1220-2、及び/又は1220-3に直接隣接する要素1225のサブセットなど、部分1220-4の一部のみが表示される。いくつかの実施形態では、部分1220-4は、ユーザ700の対応する部分(単数又は複数)の外観(例えば、姿勢)が未知であるか、検出されないか、又は外観を決定するのに不十分なデータ(又は閾値量未満のデータ)がある、アバター1220の部分(単数又は複数)を表す。
上述したように、デバイス901aは、ユーザ700の表現の外観の様々な態様を規定する様々な外観設定に少なくとも部分的に基づいて、XR環境1215においてユーザ700の表現(例えば、アバター1220)を表示する。参考のために、これらの外観設定は、外観設定インタフェース1204に示されており、これは、デバイス701によって(例えば、ディスプレイ702を使用して)表示されるものとして示されている。外観設定インタフェース1204は、XR環境におけるユーザ700の表現の外観を制御するための、図7Hに示されるものと同様の様々な外観設定を含む。例えば、外観設定インタフェース1204は、表現オプション1224(表現オプション724と同様)及び眼鏡オプション1226(眼鏡オプション726と同様)を含む。図12Aに示されるように、アバターオプション1224b及び眼鏡なしオプション1226aが選択される。したがって、ユーザ700の表現は、デバイス901a上に表示されるアバター1220によって示されるように、眼鏡を含まないアバターの外観を有する。
図12Bでは、ユーザ700は、頭部700-3を回転させ、右腕を下げて、手700-2を横にしており、外観設定インタフェース1204において矩形フレームオプション1226bが選択されている。したがって、デバイス901aは、ユーザ700の姿勢の変化及び更新された外観設定に基づいて、更新された外観を有するアバター1220を表示するようにXRインタフェース1216を更新する。具体的には、デバイス901aは、図12Bに示されるように部分1220-2が下げられた状態でアバター1220を表示し、部分1220-3は、アバターの頭部が横に向けられ、眼鏡1221がアバターの顔に表示されていることを示すように更新される。
いくつかの実施形態では、アバター1220の部分は、ユーザ700の姿勢の変化に基づいて形状を変化させる。例えば、部分1220-2は、図12Bにおいて、手がリラックスした状態で表示され、図12Aに示されるように、指が広げられた状態で持ち上げられたポジションにあるときの部分1220-2の形状と比較して、部分1220-2の表示された形状(例えば、幾何学形状、輪郭)を変化させる。いくつかの実施形態では、ユーザ700が移動すると、ユーザのいくつかの部分がカメラ904の視野の内外に移動し、ユーザの異なる部分が(例えば、デバイス901によって)検出され、アバター1220がそれに応じて更新される。例えば、図12Bでは、より多くの量のユーザの右前腕がカメラ904に見え、その結果、より多くの量のアバターの右前腕が部分1220-2に表されるので、部分1220-2の形状が変化する(その結果、以前に部分1220-4に表された要素1225の一部がもはや表示されず、アバター1220の対応する部分が今や部分1220-2の前腕に含まれるので、部分1220-4のより少ない部分が表示される)。
いくつかの実施形態では、眼鏡1221は、図12Bに示すように、フレーム部分を含むが、アーム又はテンプル部を含まない。いくつかの実施形態では、眼鏡1221は、選択された眼鏡オプションに対応する外観を有する。例えば、図12Bでは、眼鏡1221は、矩形フレームオプション1226bに示される眼鏡と同じ外観を有する矩形フレームである。いくつかの実施形態では、眼鏡1221は、ユーザの眼鏡707の外観に基づかないデフォルトの外観を有する。いくつかの実施形態では、眼鏡1221は、ユーザ700上で検出された眼鏡707に対応する外観を有する。いくつかの実施形態では、眼鏡オプションは、(例えば、デバイス701、デバイス901、及び/又はデバイス901aによって)自動的に選択される。例えば、デバイス901は、ユーザの顔の上の眼鏡707を検出し、それに応じて、矩形フレームオプション1226bを選択するように外観設定を変化させる。いくつかの実施形態では、矩形フレームオプション1226bは、そのオプションがユーザ700上の眼鏡707の外観を最も正確に描写するため、選択される。いくつかの実施形態では、矩形フレームオプション1226bは、ユーザ700によって手動で選択される。いくつかの実施形態では、アバター眼鏡(例えば、1221)の表示は、登録プロセスの少なくとも一部の間にユーザの顔上で眼鏡707を検出したことに応じて、(例えば、デバイス701によって)自動的に有効化される(かつ眼鏡オプションのうちの1つが選択される)。
図12Cでは、ユーザ700は、話している間静止したままであり、外観設定インタフェース1204において半透明フレームオプション1226cが選択されている。したがって、デバイス901aは、更新された外観設定に基づいて、更新された外観を有するアバター1220を表示するようにXRインタフェース1216を更新する。具体的には、デバイス901aは、図12Cにおいてアバターの顔に表示されているように、半透明フレームに更新された外観を有する眼鏡1221を有するアバター1220を表示する。ユーザ700が移動していないので、デバイス901aは、部分1220-1~1220-4の形状を変化させない。しかしながら、ユーザ700は話しているので、デバイス901aは、アバター1220の部分の形状を変化させることなくアバターの口の移動を表示する。更に、デバイス901aは、会話しているユーザ700から検出された(例えば、デバイス901及び/又はデバイス901aによって、)オーディオに応じて、アバター1220の任意の部分(部分1220-4及び要素1225を含む)の外観を変化させない。
図12Dでは、オーディオオプション1224aが選択され、デバイス901aは、XRインタフェース1216を更新して、アバター表現からオーディオ表現に遷移するユーザ700の表現を表示する。図12Dでは、遷移は、部分1220-1~1220-3が要素1225によって置換又はオーバーレイされ、要素1225が動き回り始めて、ユーザがオーディオ表現モードにあるときに、ユーザ700の表現の形状を、XR環境1215内のユーザ700を表す二次元又は三次元形状(例えば、立方体、球体、又は円)に変化させるアニメーションとして示されている。遷移中、要素1225は一緒に移動するが、表現の形状が図12Eに示される立方体形状に遷移するにつれて、いくつかの要素は重複し始め、他の要素は消失する。
ユーザ700がオーディオ提示モードでXRセッションに参加しているとき、ユーザ700からのオーディオは、XRセッションに参加している他のユーザのデバイス(単数又は複数)(例えば、第2のユーザのデバイス901a)に通信され、ユーザ700の表現は、ユーザ700の移動に応じて形状を変化させないオーディオ表現として表示される。例えば、ユーザ700が動く(例えば、歩く、手700-2を上げる、及び/又は頭部700-3を回す)につれて、オーディオ表現は、同じ幾何学的形状を維持する。いくつかの実施形態では、デバイス901aは、物理環境1200におけるユーザ700の移動に基づいて、XR環境1215を動き回るオーディオ表現を表示する。例えば、ユーザ700が物理環境1200を歩き回ると、デバイス901aは、任意選択的に、XR環境1215内で同様に移動する(例えば、ロケーションが変化する)オーディオ表現(例えば、オーディオ表現1230-1)を表示する。ユーザ700のオーディオ表現の様々な例が図12Eに示されており、各々が、物理環境において検出された異なる条件のセットに関連付けられている。オーディオ表現の各例は、立方体として表示される。しかしながら、オーディオ表現は、球、不定形の三次元形状などの異なる形態を有することができることを理解されたい。
本明細書で説明される実施形態では、XR環境1215におけるユーザ700のオーディオ表現の様々な特徴を説明するために、オーディオ表現1230-1などの特定のオーディオ表現が参照される。しかしながら、特定のオーディオ表現への言及は、説明される特徴を特定のオーディオ表現に限定することを意図するものではないことを理解されたい。したがって、特定のオーディオ表現に関して説明される様々な特徴は、本明細書で説明される他のオーディオ表現(例えば、オーディオ表現1230-2~1230-4)に同様に適用され得る。簡潔にするために、本明細書では重複するこれらの詳細は繰り返さない。
いくつかの実施形態では、オーディオ表現1230-1は、異なるサイズ及び色を有する粒子1235の集合から形成される。いくつかの実施形態では、粒子1235は要素1225と同様である。いくつかの実施形態では、粒子1235の色は、物理環境1200においてユーザ700によって着用されている衣服の色及び/又はユーザ700の肌のトーンに対応する。いくつかの実施形態では、粒子1235の色は、デバイス901及び/又はデバイス901aによって自動的に選択される。例えば、いくつかの実施形態では、色は、図7A~図7Hに関して上述した登録プロセス中にユーザ700が着用する衣服(例えば、シャツ709)の色に一致するように選択される。いくつかの実施形態では、粒子1235の色は、暖色系カラーパレットを有するように選択され、一方、仮想アシスタントの表現等のデバイス901又はデバイス901aの他の態様(例えば、システム要素)の色は、寒色系カラーパレットを有するように選択される。いくつかの実施形態では、粒子1235は、矩形、正方形、円形、球形などの異なる形態を有することができる。
いくつかの実施形態では、粒子1235は、オーディオ表現1230-1の表面(単数又は複数)に沿って移動し、サイズ及び任意選択的に形状を変化させる。例えば、いくつかの実施形態では、粒子1235は、オーディオ表現1230-1の漸進的なアニメーションの一部としてポジション及びサイズを変化させる。このようにして、オーディオ表現1230-1は、ユーザ700が話しているか否かとは無関係に、時間と共に外観を変化させる。いくつかの実施形態では、オーディオ表現1230-1、1230-2、1230-3、及び1230-4は、異なる時点で示されるような単一のオーディオ表現の異なる外観を表し、オーディオ表現を形成する粒子1235は、異なるポジション、サイズ、及び色を有し、それによって、アニメーションの結果として経時的に変化するオーディオ表現の外観を示す。
上述したように、図12Eに示すオーディオ表現は、異なる瞬間に決定された物理環境1200におけるユーザ700のポジション及び/又は挙動に基づいて、オーディオ表現の異なる外観に対応する。例えば、デバイス901aは、図12Eに示すように、ユーザ700がロケーション1200-1におり、デバイス901のカメラ(例えば、カメラ904)から見て外方を向いているとき、XR環境1215内のユーザ700を表すオーディオ表現1230-1と共に、XRインタフェース1216を表示する。同様に、デバイス901aは、ユーザ700がロケーション1200-2にいるときにオーディオ表現1230-2を表示する。デバイス901aは、ユーザ700がロケーション1200-3にいるときにオーディオ表現1230-3を表示する。デバイス901aは、ユーザ700がロケーション1200-4にいるときにオーディオ表現1230-4を表示する。いくつかの実施形態では、物理環境1200内の異なるロケーション(例えば、1200-1~1200-4)は、デバイス901のカメラからの異なる深度に対応する。例えば、ロケーション1200-2は、ロケーション1200-4よりもカメラからの距離が大きいことを表し、したがって、図12Eでは、より小さいサイズを有して示されている。いくつかの実施形態では、ロケーション1200-1、1200-3、及び1200-4は全て、カメラから同様の距離を有する。
オーディオ表現1230-1は、オーディオ表現をユーザ700に関連付ける二次元(又は実質的に二次元)特徴である要素1232を含む。例えば、図12Eにおいて、要素1232は、ユーザ700のイニシャルを含むモノグラムである。いくつかの実施形態では、要素1232は、イニシャルの代わりに、又はイニシャルに加えて、ユーザの名前及び/若しくは名字、又はユーザの電話番号、電子メールアドレス、ユーザ名などの他の識別情報を含むことができる。
いくつかの実施形態では、複数のユーザがXRセッションに参加することができ、XRセッションに参加している各ユーザにとって、オーディオ表現1230-1は、ユーザ700が実際に物理環境又はXR環境においてそれぞれのユーザに面しているかどうかにかかわらず、それぞれのユーザに面しているように見える。例えば、図12Eでは、ユーザ700は第2のユーザから見て外方を向いているが、デバイス901aは、第2のユーザの方を向いているXR環境1215においてオーディオ表現1230-1(要素1232を含む)を表示し、ユーザ700が第2のユーザの方を向いている外観を第2のユーザに与え、それによって、オーディオ表現1230-1によってXR環境1215においてユーザと対話及び/又は通信する。いくつかの実施形態では、第3(又は第4、第5、第6など)のユーザなどの追加のユーザも、ユーザ700及び第2のユーザとのXRセッションに参加している。これらの追加のユーザの各々に対して、ユーザ700のオーディオ表現は、オーディオ表現(要素1232を含む)がその特定のユーザに面しているように見えるように、オーディオ表現1230-1と同じ外観を有する。いくつかの実施形態では、オーディオ表現1230-1は、ユーザがXR環境を動き回る(向きが変化する)ときであっても、それぞれのユーザに面しているように見える。
いくつかの実施形態では、デバイス901aは、物理環境1200内のユーザ頭部700-3のロケーション(例えば、1200-1)及び/又はユーザがアバター1220によってXR環境1215内で表されていた場合にアバターの頭部が表示されるポジションに対応する、XR環境1215内のロケーションにオーディオ表現1230-1を表示する。オーディオ表現1230-1をユーザ及び/又はアバターの頭部のポジションに表示することによって、オーディオ表現1230-1は、第2のユーザがオーディオ表現1230-1を見ているとき、第2のユーザが(ユーザ700の視点から)アイコンタクトを維持しているように見えるように、ユーザ700の目線と位置合わせされたままである。いくつかの実施形態では、デバイス901aは、XR環境1215内の(例えば、ユーザ700からのオーディオに対応する)オーディオ源の知覚又は決定された空間ロケーションに対応するXR環境1215内のロケーションにオーディオ表現1230-1を表示する。
いくつかの実施形態において、要素1232の様々な属性は、物理環境1200又はXR環境1205内のユーザ700のポジション及び/又はロケーションに関する情報を示すために使用される。例えば、いくつかの実施形態では、要素1232のサイズは、デバイス901のカメラからのユーザ700の距離を伝えるために使用される。例えば、ユーザ700がロケーション1200-2にいるとき、デバイス901aは、オーディオ表現1230-1と同じサイズを有するオーディオ表現1230-2を表示するが、要素1232は、(オーディオ表現1230-1における要素1232のサイズと比較して)より小さいサイズを有して、カメラからのユーザ700のより大きな距離を伝える。したがって、ユーザ700がロケーション1200-1からロケーション1200-2までカメラから離れると、デバイス901aは、オーディオ表現1230-1のロケーションからオーディオ表現1230-2のロケーションまで移動するオーディオ表現を表示し、要素1232は、ユーザ700がカメラから遠くに移動するにつれてサイズが縮小する。逆に、オーディオ表現1230-1内の要素1232のサイズが大きいほど、ユーザ700がロケーション1200-1にいるときにカメラに近いことを示す。いくつかの実施形態では、デバイス901aは、オーディオ表現全体(要素1232を含む)の表示サイズを修正して、カメラからのユーザ700の距離の変化を示す。
いくつかの実施形態では、デバイス901aは、(ユーザ700が話しているときに)ユーザ700からのオーディオを検出したことに応じてオーディオ表現を修正する。いくつかの実施形態では、修正は、表示されたオーディオ表現のサイズ、輝度、又は他の視覚的特性の変化を含む。例えば、図12Eでは、オーディオ表現1230-3は、ユーザ700がロケーション1200-3にいるときに話していることを検出したことに応じて、一時的に表示されたより大きなサイズのオーディオ表現を表す。いくつかの実施形態では、オーディオ表現は、トーン、ピッチ、音量などの変化など、ユーザ700が話しているオーディオ特性の検出された変化と同期して拡大及び縮小する。いくつかの実施形態では、ディスプレイ901aは、例えば、表示されたオーディオ表現の輝度をパルス化するなど、オーディオに応じてオーディオ表現1230-3の他の視覚的特性を変変化させる。いくつかの実施形態では、ユーザ700が話していることを検出したことに応じて、デバイス901aは、上述したように、オーディオ表現1230-3の視覚的特性を修正するが、アバター1220の視覚的特性は修正しない。
いくつかの実施形態では、デバイス901aは、(例えば、デバイス901で検出されるような)ユーザ700のオーディオがミュートされるとき、オーディオ表現の外観を修正する。例えば、図12Eでは、デバイス901aは、ユーザ700がロケーション1200-4にいるときにユーザ700のオーディオがミュートされていることを示すために、ミュートアイコン1240を有するオーディオ表現1230-4を表示する。
いくつかの実施形態では、デバイス901aは、アバター表現(例えば、アバター1220)が利用不可能であるとき、オーディオ表現(例えば、オーディオ表現1230-1)を有するユーザ700の表現を表示する。いくつかの実施形態では、オーディオ表現は、条件がXR環境においてアバターをレンダリングするのに不十分である場合(例えば、環境1200及び/又は第2のユーザの環境における照明が弱い場合)、又はアバター表現を描写するのに不十分なデータがある場合、利用不可能である。いくつかの実施形態では、ユーザ700が図7A~図7Hに関して上述した登録動作を実行していない場合、アバター表現を描写するのに不十分なデータが存在する。
図12A~図12Eに関する追加の説明は、以下の図13A~図13B及び図14に関して記載された方法1300及び1400を参照して以下に提供される。
図13A及び図13Bは、いくつかの実施形態による、XR環境において表されるユーザに関連付けられた異なる提示モード間で切り替えるための例示的な方法1300のフローチャートである。方法1300は、表示生成コンポーネント(例えば、902a)(例えば、視覚出力デバイス、3Dディスプレイ、画像が投影され得る透明又は半透明である少なくとも一部を有するディスプレイ(例えば、シースルーディスプレイ)、プロジェクタ、ヘッドアップディスプレイ、ディスプレイコントローラ)、及び第1のユーザ(例えば、700)に関連付けられた外部コンピュータシステム(例えば、901)と通信するコンピュータシステム(例えば、101、901a)(例えば、スマートフォン、タブレット、ヘッドマウント表示生成コンポーネント)において行われる(例えば、第1のユーザによって操作されている(例えば、コンピュータシステムのユーザ(例えば、第2のユーザ)と通信セッションにあるユーザ(例えば、拡張現実及び/又はビデオ会議))。
コンピュータシステム(例えば、901a)は、表示生成コンポーネント(例えば、902a)を介して、第1の提示モード(例えば、1224bによって示される)(例えば、仮想プレゼンスモード、第1のユーザが、拡張現実環境において、人間又は擬人化された特徴(例えば、頭部、腕、脚、手など)を有するレンダリング(例えば、仮想アバター)によって、又はアニメーション化されたキャラクタ(例えば、人間、漫画のキャラクタ、犬、ロボットなどの非人間キャラクタの擬人化された構成物)として表現されるモード)で、外部コンピュータシステム(例えば、901)の第1のユーザ(例えば、700)の表現(例えば、1220)(例えば、アニメーション表現、アバター表現、仮想アバター(例えば、アバターは第1のユーザの少なくとも一部の仮想表現である),いくつかの実施形態では、拡張現実環境において、第1のユーザの代わりに、仮想アバターが表示される)を含む通信ユーザインタフェース(例えば、1216)を表示する(1302)。いくつかの実施形態では、第1のユーザの表現は、第1のユーザの同じ姿勢を有して表示される。一部の実施形態では、第1のユーザの表現は、第1のユーザの対応する部分(例えば、1220-1、1220-2、1220-3)と同じ姿勢を有する部分(例えば、700-1、700-2、700-3)を有して表示される。
通信ユーザインタフェース(例えば、1216)は、拡張現実環境(例えば、1215)において第1のユーザ(例えば、1220)の表現を表示する(1304)(例えば、コンピュータシステム(例えば、901a)は、拡張現実環境において第1のユーザの表現を有する通信ユーザインタフェースを表示する)。第1のユーザ(例えば、1220)の表現は、第1の提示モード(例えば、1224b)にある間、外部コンピュータシステム(例えば、901)によって検出される第1のユーザ(例えば、700)の第1の部分(例えば、700-1、700-2、700-3)(例えば、手又は手の一部(例えば、手のひら、指など))の移動の変化に視覚的に反応する(例えば、それに応じて外観を変化させる)形状(例えば、外観、幾何学形状)を有するように、(例えば、コンピュータシステムによって(例えば、表示生成コンポーネント(例えば、902a)を介して)表示される(1306)(例えば、第1の提示モードにあるとき、ユーザの表現は、物理環境及び/又は拡張現実環境において検出されるユーザの手(単数又は複数)の移動に応じて視覚的に反応する)。いくつかの実施形態では、第1のユーザの表現は、物理環境における第1のユーザの少なくとも一部の姿勢の検出された変化に応じて姿勢を変化させるアバター(例えば、仮想アバター)である。例えば、アバターは、物理環境における第1のユーザの検出された移動を模倣するアニメーションキャラクタとして拡張現実環境に表示される。
コンピュータシステム(例えば、901a)が第1の提示モード(例えば、1224b)で第1のユーザ(例えば、1220)の表現を表示する(1308)間に、コンピュータシステムは、第1のユーザ(例えば、700)の第1の部分(例えば、700-1、700-2、700-3)の移動を示す第1のデータ(例えば、深度データ、画像データ、センサデータ(例えば、カメラからの画像データ))を外部コンピュータシステム(例えば、901、904)から受信する(1310)。いくつかの実施形態では、第1のデータは、センサデータ(例えば、カメラ(例えば、904)からの画像データ)、加速度計からの移動データ、GPSセンサからのロケーションデータ、近接センサからのデータ、ウェアラブルデバイス(例えば、腕時計、ヘッドセット)からのデータ)を含む。
コンピュータシステム(例えば、901a)が第1の提示モード(例えば、1224b)で第1のユーザ(例えば、1220)の表現を表示している間(1308)、第1のデータを受信したことに応じて、コンピュータシステムは、第1のユーザ(例えば、700)(例えば、図12B参照)の第1の部分(例えば、700-1、700-2、700-3)の移動(例えば、移動の大きさ及び/又は方向)に基づいて、第1のユーザの表現の形状を修正する(1312)(例えば、ユーザの表現(例えば、仮想アバター)のより多くの量又はより少ない量を表示する、ユーザの表現の一部(例えば、1220-2、1220-3)の形状を変化させ、ユーザの表現の一部の幾何学形状を変化させ、ユーザの表現の外観の輪郭を変化させる)。
第1のユーザ(例えば、1220)の表現の形状を修正した後、コンピュータシステム(例えば、901a)は、(例えば、外部コンピュータシステム(例えば、901)から、コンピュータシステム(例えば、701)における入力を介して)第1のユーザの表現が、第1の提示モードとは異なる第2の提示モード(例えば、1224aによって示される)(例えば、オーディオプレゼンスモード、擬人化された特徴を有さない及び/又は無生物であるレンダリング(例えば、1230-1、1230-2、1230-3、1230-4)(例えば、アイコン、モノグラム)によって拡張現実環境において第1のユーザが表現されるモード)で表示されることを示す、第2のデータを受信する(1314)。いくつかの実施形態では、コンピュータシステムは、第1のユーザがその表現を第1の提示モードから第2の提示モードに遷移させたというインジケーションを(例えば、外部コンピュータシステムから)受信する。
第2のデータを受信したことに応じて、コンピュータシステム(例えば、901a)は、表示生成コンポーネント(例えば、902a)を介して、第2の提示モードで第1のユーザの表現(例えば、1230-1、1230-2、1230-3、1230-4)を表示し(1316)、第1のユーザの表現は、第2の提示モードにある間、外部コンピュータシステム(例えば、901)によって検出される第1のユーザ(例えば、700)の第1の部分(例えば、700-1、700-2、700-3)の移動の変化に視覚的に反応しない形状(例えば、外観、幾何学形状(例えば、ディスク又は球形状、立方体、直角プリズム))を有する(例えば、第2の提示モードにあるとき、ユーザの表現は、物理環境及び/又は拡張現実環境において検出されるユーザの手(単数又は複数)の移動に応じて視覚的に反応しない)。
コンピュータシステム(例えば、901a)が第1のユーザの表現を第2の提示モード(例えば、1230-1、1230-2、1230-3、1230-4)で表示している間(1318)、コンピュータシステムは、物理環境(例えば、1200)における(例えば、第1のユーザの物理環境内)第1のロケーション(例えば、1200-1、1200-2、1200-3、1200-4)から、物理環境における第1のロケーションとは異なる物理環境における第2のロケーション(例えば、1200-1、1200-2、1200-3、1200-4)への第1のユーザ(例えば、700)の移動を示す第3のデータを(例えば、外部コンピュータシステム(例えば、901)から、コンピュータシステムにおける入力を介して、移動又は位置付けを検出するセンサから)受信する(1320)。いくつかの実施形態では、第3のデータは、センサデータ(例えば、カメラからの画像データ、加速度計からの移動データ、GPSセンサからのロケーションデータ、近接センサからのデータ、ウェアラブルデバイス(例えば、腕時計、ヘッドセットデバイス)からのデータ)を含む。いくつかの実施形態では、センサは、コンピュータシステムに接続又は統合することができる。いくつかの実施形態では、センサは、外部センサ(例えば、異なるコンピュータシステム(例えば、外部コンピュータシステム)のセンサ)であってもよい。
コンピュータシステム(例えば、901a)が第2の提示モードにおいて第1のユーザの表現(例えば、1230-1、1230-2、1230-3、1230-4)を表示する(1318)間に、第3のデータを受信したことに応じて、コンピュータシステムは、拡張現実環境(例えば、1215)内の第1のロケーション(例えば、図12Eの1230-1のロケーション)から拡張現実環境内の第1のロケーションとは異なる拡張現実環境内の第2のロケーション(例えば、図12Eの1230-2のロケーション)へ移動する第1のユーザの表現を表示する(1322)。第3のデータを受信したことに応じて、拡張現実環境内の第1のロケーションから拡張現実環境内の第2のロケーションに移動する第1のユーザの表現を表示することは、第1のユーザが自分の物理的ロケーションの周りを移動していること、及び物理的ロケーションの周りの移動が拡張現実環境内の第1のユーザの表現の移動に対応することのフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、拡張現実環境(例えば、1215)内の第1のロケーション(例えば、図12Eの1230-1のロケーション)は、第1のユーザの物理環境(例えば、1200)内の第1のユーザ(例えば、700)の第1のロケーション(例えば、1200-1)を表し、拡張現実環境内の第2のロケーション(例えば、図12Eの1230-2のロケーション)は、第1のユーザの物理環境内の第1のユーザの第2のロケーション(例えば、1200-2)を表す(例えば、第1のユーザの表現は、第1のユーザの物理環境の周りの第1のユーザの物理的移動を表すために、拡張現実環境の周りを移動する)。
いくつかの実施形態では、第2の提示モード(例えば、1224a)にある間、第1のユーザの表現(例えば、1230-2、1232)(例えば、第1のユーザの表現(例えば、1232)の一部)は、第1のユーザの表現がコンピュータシステムのユーザ(例えば、901a)(例えば、第2のユーザ)に向かって、又はそこから離れて移動するにつれて、コンピュータシステムのユーザに対する第1のユーザの表現の相対ポジションを示すようにサイズが変化して表示される。例えば、第1のユーザの表現がコンピュータシステムのユーザから離れるにつれて、第1のユーザの表現は、サイズが縮小して表示される。逆に、第1のユーザの表現がコンピュータシステムのユーザの近くに移動するにつれて、第1のユーザの表現はサイズが大きくなって表示される。
いくつかの実施形態では、第1のユーザ(例えば、901)の第1の部分(例えば、700-1、700-2)は、第1のユーザの手の少なくとも一部を含む(例えば、ユーザの手であり、少なくとも外部コンピュータシステム(例えば、700)によってユーザの手の少なくとも一部として検出及び/又は認識される)。
いくつかの実施形態では、第2のデータの受信に応じて、コンピュータシステム(例えば、901a)は、表示生成コンポーネント(例えば、902a)を介して、第1の提示モード(例えば、1224b)から第2の提示モード(例えば、1224a)に遷移する第1のユーザ(例えば、700)の表現のアニメーション(例えば、連続グラフィカル遷移)(例えば、図12Dを参照)を表示する。いくつかの実施形態では、遷移は、第1の提示モードにおける第1のユーザ(例えば、1220)の表現を形成する(例えば、ボケ効果からの)粒子(例えば、1225)が一緒に移動して、第2の提示モードにおける第1のユーザ(例えば、1230-1)の表現を形成するアニメーションとして示される。
いくつかの実施形態では、第2の提示モードにおける第1のユーザ(例えば、1230-1)の表現は、第1のユーザ(例えば、700)に関連付けられた1つ以上の色(例えば、ユーザの外観に基づいて決定される色のセット)に基づいて(例えば、自動的に、ユーザ入力なしに、コンピュータシステムによって)選択される(例えば、粒子1235上の)1つ以上の色のセットを含む。いくつかの実施形態では、第1のユーザに関連付けられた1つ以上の色は、物理環境(例えば、1200)において第1のユーザが着用している衣服(例えば、709)の色、登録プロセス(例えば、図7A~図7Hに関して説明した登録プロセス)中に第1のユーザが着用している衣服の色、XR環境において第1のユーザの表現が着用している衣服の色、第1のユーザの肌のトーンの色、及び/又は第1のユーザの表現の肌のトーンの色を含む。いくつかの実施形態では、第2の提示モードにおける第1のユーザの表現の色を表すデータは、外部コンピュータシステム(例えば、901、701)によってコンピュータシステム(例えば、901a)に提供される。いくつかの実施形態では、第1のユーザとは異なる第2のユーザは、第1のユーザに関連付けられた色とは異なる、第2のユーザに関連付けられた色を使用して、第2の提示モードで表される。
いくつかの実施形態では、第2の提示モード(例えば、1224a)における第1のユーザ(例えば、1230-1)の表現は、カラーパレットの所定のセット(例えば、ユーザの外観に基づいて決定されない色の所定のセット)から(例えば、自動的に、ユーザ入力なしに、コンピュータシステムによって)選択される(例えば、粒子1235上の)1つ以上の色のセットを含む。カラーパレットの所定のセットから選択される1つ以上の色のセットを有する第1のユーザの表現を第2の提示モードで表示することは、第2の提示モードで第1のユーザの表現を表示するのに必要なユーザ入力の数を減らすことによって、ユーザの色をサンプリングする必要性をなくすことによって、及び/又はユーザに関連付けられた色が望ましくない(例えば、黒色及び/又は白色が第2の提示モードで第1のユーザの表現の外観を不明瞭にすることがある)又は検出されない(例えば、登録中に)ときに起こり得る問題をなくすことによって、コンピュータシステムによって消費される計算リソースを減らす。計算作業負荷を低減することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、第2の提示モード(例えば、1224a)における第1のユーザ(例えば、1230-1)の表現は、暖色系カラーパレットのセット(例えば、暖色系トーン(例えば、オレンジ系、赤色系、及び/又は黄色系の色、平均に対してより低い色温度を有する色)のセット)から(例えば、自動的に、ユーザ入力なしに、コンピュータシステムによって)選択される(例えば、粒子1235上の)1つ以上の色のセットを含む。暖色系カラーパレットのセットから選択される1つ以上の色のセットを有する第2の提示モードで第1のユーザの表現を表示することは、第1のユーザの表現が擬人化された構成物でない場合であっても、第1のユーザの表現が人を表すというフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、コンピュータシステム(例えば、901a)は、表示生成コンポーネント(例えば、902a)を介して、システム要素の表現(例えば、仮想アシスタント、第1のユーザ以外の何かの視覚表現)を表示し、システム要素の表現は、寒色系カラーパレットのセット(例えば、寒色系トーン(例えば、青色、緑色、及び/又は紫色ベースの色、平均と比較してより高い色温度を有する色)のセット)から(例えば、自動的に、ユーザ入力なしに、コンピュータシステムによって)選択される1つ以上の色のセットを含む。寒色系カラーパレットのセットから選択される1つ以上の色のセットを有するシステム要素の表現を表示することは、システム要素の表現が人以外の何かを表す(例えば、拡張現実環境内の別のユーザを表さない)というフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、第1のユーザ(例えば、1230-1)の表現を第2の提示モード(例えば、1224a)で表示している間、コンピュータシステム(例えば、901a)は、第1のユーザ(例えば、700、901)から受信したオーディオ(例えば、スピーチ)を表すデータを受信する。第1のユーザから受信されたオーディオを表すデータを受信したことに応じて、コンピュータシステムは、第1のユーザから受信されたオーディオの1つ以上の特性(例えば、トーン、音量、ピッチなどのオーディオ特性)の検出された変化に応じて、第2の提示モードにおける第1のユーザ(例えば、1230-3)の表現の外観(例えば、第2の提示モードにおける第1のユーザの表現及び/又は第2の提示モードにおける第1のユーザの表現を形成する粒子のサイズ、色、形状、明るさ、及び/又は、脈動パターン)を修正する(例えば、第1のユーザが話すとき、第2の提示モードにおける第1のユーザの表現は、第1のユーザの発話の変化に伴ってサイズ、色、形状、輝度、及び/又は脈動を変化させしたことによって外観が変化する)。第1のユーザから受信されたオーディオの1つ以上の特性の検出された変化に応じて、第2の提示モードにおける第1のユーザの表現の外観を修正することは、第1のユーザの表現が擬人化された構成物でない場合であっても、第1のユーザが話しているというフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、第1のユーザ(例えば、1220)の表現を第1の提示モード(例えば、1224b)で表示している間、コンピュータシステム(例えば、901a)は、第1のユーザ(例えば、700、901)から受信したオーディオ(例えば、スピーチ)を表すデータを受信する。第1のユーザから受信されたオーディオを表すデータを受信したことに応じて、コンピュータシステムは、第1のユーザから受信されたオーディオの1つ以上の特性(例えば、トーン、音量、ピッチなどのオーディオ特性)の検出された変化に応じて、第1の提示モードにおける第1のユーザの表現の外観(例えば、第1の提示モードにおける第1のユーザの表現を形成する粒子の色、形状、輝度、及び/又は脈動)を修正することを取り止める(例えば、第1のユーザが話すとき、第1の提示モードにおける第1のユーザの表現を形成する粒子は、第1のユーザの発話の変化に伴って外観が変化しない)。いくつかの実施形態では、第1のユーザが話すにつれて、第1の提示モードにおける第1のユーザの表現は、口の特徴を動かすことによって、又は話す移動を模倣する別のアクションを実行することによって、外観が任意選択的に変化するが(例えば、図12C参照)、第1のユーザの表現を形成する粒子(例えば、1225)は、そうでなければ外観が変化しない。対照的に、第1のユーザの表現が第2の提示モード(1230-3)にあるとき、第1のユーザの表現を形成する粒子(例えば、1235)は、例えば、色、輝度、及び/又はパルス挙動を変化させることによって、外観を変化させる。
いくつかの実施形態では、第2の提示モード(例えば、1224a)における第1のユーザ(例えば、1230-1、1230-2、1230-3、1230-4)の表現は、第1のユーザ(例えば、700)によって出力される(例えば、外部コンピュータシステム(例えば、901)によって出力される)オーディオとは無関係に、その外観の少なくとも一部を変化させる(例えば、第2の提示モードにおける第1のユーザの表現を形成する粒子(例えば、1235)が所定のパターンで移動する、コンピュータシステム(例えば、901a)に提供される)。いくつかの実施形態では、第2の提示モードで第1のユーザの表現を表示することの一部が、第1のユーザに対して所定のレベルのオーディオが検出されなかった(例えば、第1のユーザに対してオーディオデータが受信されなかった、第1のユーザが話していない)所定の期間の後に、コンピュータシステム(例えば、901a)は、第1のユーザが話しているか否かとは無関係に、第2の提示モードで第1のユーザの表現の外観を所定の方法で修正する(例えば、第2のモードで第1のユーザの表現の外観が時間と共に徐々に変化する(例えば、第2の提示モードで第1のユーザの表現を形成する粒子が所定のパターンで移動する))。
いくつかの実施形態では、第2の提示モード(例えば、1224a)における第1のユーザ(例えば、1230-1)の表現は、二次元又は実質的に二次元の外観(例えば、深度を伝えない外観、平坦な外観、奥行きを有するようにモデル化されていない拡張現実環境における外観)を有する要素(例えば、1232)(例えば、モノグラム、第1のユーザのイニシャル)を含む。一部の実施形態では、第2の提示モードにおける第1のユーザの表現(例えば、1230-1)は、三次元外観(例えば、球面形状、湾曲レンズ形状、直角プリズム形状、立方体形状等)を有し、第2の提示モードにおける第1のユーザの表現上に表示される要素は、二次元外観又は実質的に二次元外観(例えば、幾分三次元外観を与え得る厚さ又は視覚効果を有する二次元テキスト)を有する。
いくつかの実施形態では、外部コンピュータシステム(例えば、901)は、第2のユーザ(例えば、第3のユーザ)に関連付けられた第2の外部コンピュータシステムと通信する。いくつかの実施形態では、第2の提示モード(例えば、1224a)で第1のユーザ(例えば、1230-1)の表現を表示することの一部として、コンピュータシステム(例えば、901a)は、表示生成コンポーネント(例えば、902a)を介して、コンピュータシステムのユーザに面する(例えば、ユーザの視点に面するように向けられた)拡張現実環境(例えば、1215)内の第1のポジションを有する要素(例えば、1232)(例えば、第1のユーザのイニシャル)を拡張現実環境内に表示する。いくつかの実施形態では、第2の外部コンピュータシステムは、第2の提示モード(例えば、1230-1に類似)において第1のユーザの表現を表示し、拡張現実環境において第2のユーザに面する拡張現実環境において第2のポジション(例えば、第1のポジションとは異なる)を有する要素(例えば、1232に類似)を表示することを含む(例えば、第2の提示モードにおける第1のユーザの表現は、要素が、コンピュータシステムのユーザには拡張現実環境においてコンピュータシステムのユーザに面しているように見え、第2のユーザには拡張現実環境において第2のユーザに面しているように見えるように表示される)。いくつかの実施形態では、要素は、拡張現実環境を見ており、第2の提示モードで第1のユーザの表現の伝送を受信している各ユーザに対して、要素が各ユーザに対してそのユーザの方を向いているように見えるように、異なって表示される。いくつかの実施形態では、表示生成コンポーネントは、拡張現実環境内のアクティブユーザに面するように要素変化ポジションを表示する。例えば、拡張現実環境内のユーザが話し始めると、要素は、話しているユーザに面するように移動(例えば、回転)する。
いくつかの実施形態では、第1の表示サイズを有する第2の提示モード(例えば、1224a)で第1のユーザ(例えば、1230-1)の表現を表示している間、コンピュータシステム(例えば、901a)は、外部コンピュータシステム(例えば、901)から第4のデータ(いくつかの実施形態では、第3のデータ)(例えば、第1のユーザの物理環境における第1のユーザの移動(例えば、ロケーション1200-1からロケーション1200-2へ)を示すデータ)を受信する。第4のデータの受信に応じて、コンピュータシステム(例えば、901a)は、第2の表示サイズ(例えば、1230-1に示される要素1232のサイズ)から第2の表示サイズとは異なる第3の表示サイズ(例えば、1230-2に示される要素1232のサイズ)に変化する(例えば、拡大又は縮小する)要素(例えば、1232)を表示する(例えば、第2の提示モードにおける第1のユーザの表現のサイズは、(例えば、物理環境における第1のユーザの移動に基づいて)要素のサイズが変化する間、一定である)。第2の提示モードにおける第1のユーザの表現が第1のサイズを有して表示されている間に、第2の表示サイズから第2の表示サイズと異なる第3の表示サイズに変化する要素を表示することは、第1のユーザがコンピュータシステムのユーザに向かって移動している、又はコンピュータシステムのユーザから離れているというフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、第2の提示モード(例えば、1230-1)における第1のユーザの表現のサイズもサイズが変化する。例えば、第2の提示モードにおける第1のユーザの表現のサイズは、拡張現実環境(例えば、1215)におけるコンピュータシステム(例えば、901a)のユーザからの第1のユーザ(例えば、700)の相対距離を示すために、より大きく又はより小さくなり得る。
いくつかの実施形態では、第2の提示モード(例えば、1224a)における第1のユーザ(例えば、1230-4)の表現は、第1のユーザ(例えば、700)のミュート状態(例えば、第1の外部コンピュータシステム(例えば、901)によって検出可能なオーディオがコンピュータシステム(例えば、901a)によって出力されている(又は提供されている)かどうかの状態)の視覚的インジケーション(例えば、1240)(例えば、グリフ)を含む。第1のユーザのミュート状態の視覚的インジケーションを表示することは、第1のユーザのオーディオがミュートされているかどうかを示すフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
一部の実施形態では、第2の提示モード(例えば、1224a)における第1のユーザ(例えば、1230-1)の表現は、第1のユーザ(例えば、700)の識別情報(例えば、名前又はイニシャル、テキストインジケーション)の視覚的インジケーション(例えば、1232)を含む。第1のユーザの識別情報の視覚的インジケーションを表示することは、第1のユーザが拡張現実環境において別様に認識可能でないとき、第1のユーザを識別するフィードバックをコンピュータシステムのユーザに提供する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
一部の実施形態では、第1の提示モード(例えば、1224b)における第1のユーザ(例えば、1220)の表現は、アバター頭部特徴(例えば、部分1220-3の一部)を有するアバターを含む。いくつかの実施形態では、第1のユーザ(例えば、1230-1)の表現を第2の提示モード(例えば、1224a)で表示することは、アバター(例えば、1220)の表示を停止することと、アバター頭部特徴によって以前に占有されていた第2のロケーションと重複する第1のロケーションに、第2の提示モードで第1のユーザ(例えば、1230-1)の表現を表示することとを含む(例えば、第2の提示モードの第1のユーザの表現は、第1のユーザが第1の提示モードから第2の提示モードに遷移したときにアバターの頭部が位置していた位置又はその近くに表示される)。第2のモードにおいて、第1のユーザの表現を、アバター頭部特徴によって以前に占有されていた第2のロケーションと重複する第1のロケーションに表示することは、第1のユーザの顔のロケーションのフィードバックをコンピュータシステムのユーザに提供し、コンピュータシステムのユーザが、第1のユーザの視点から、拡張現実環境において第1のユーザの表現とアイコンタクトしているように見えるように、第1のユーザの表現をコンピュータシステムのユーザの焦点面と位置合わせする。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。いくつかの実施形態では、アバターの頭部のロケーションは、拡張現実環境におけるオーディオ源の知覚又は決定された空間的ロケーションに基づいて決定される。
方法1300に関して上述したプロセス(例えば図13A~図13B)の詳細はまた、本明細書で説明する方法800、1000、1100及び1400にも、類似の方式で適用可能であることに留意されたい。例えば、方法800、1000、1100、及び/又は1400は、任意選択的に、方法1300を参照して上述した様々な方法の特性のうちの1つ以上を含む。簡潔にするために、これらの詳細は、以下で繰り返さない。
図14は、いくつかの実施形態による、XR環境において仮想アバターを表示するための例示的な方法1400のフローチャートである。方法1400は、表示生成コンポーネント(例えば、902a)(例えば、視覚出力デバイス、3Dディスプレイ、画像が投影され得る透明又は半透明である少なくとも一部を有するディスプレイ(例えば、シースルーディスプレイ)、プロジェクタ、ヘッドアップディスプレイ、ディスプレイコントローラ)、及び第1のユーザ(例えば、700)に関連付けられた外部コンピュータシステム(例えば、901)と通信するコンピュータシステム(例えば、101、901a)(例えば、スマートフォン、タブレット、ヘッドマウント表示生成コンポーネント)において行われる(例えば、第1のユーザによって操作されている(例えば、コンピュータシステムのユーザと通信セッションにあるユーザ(例えば、拡張現実及び/又はビデオ会議))。
方法1400において、拡張現実環境(例えば、1215)において第1のユーザ(例えば、700)(例えば、外部コンピュータシステムのユーザ)の表現(例えば、1220)(例えば、アバター、仮想アバター(例えば、アバターは、第1のユーザの少なくとも一部の仮想表現である、いくつかの実施形態では、仮想アバターは、第1のユーザの代わりに、拡張現実環境において表示される)を表示する要求を受信した(1402)ことに応じて、コンピュータシステム(例えば、901a)は、以下の項目を実行する。
眼鏡(例えば、眼鏡、眼鏡、フレーム付き矯正レンズ、フレーム付き装飾レンズ、フレーム付き保護レンズ)表示基準のセットが満たされている(例えば、ユーザ設定(例えば、1226b、1226c、1226d)が眼鏡を表示するために有効にされ、眼鏡(例えば、707)が登録プロセス中に第1のユーザ(例えば、700)上で検出される(例えば、図7A~図7Hに関して説明する、眼鏡の表示は、第1のユーザによって手動で有効化され、眼鏡の表示は、コンピュータシステム又は別のコンピュータシステム(例えば、701、901、901a)によって自動的に有効化され、第1のユーザが眼鏡を着用していることが分かっている場合)との判定(1404)に従って、コンピュータシステム(例えば、901a)は、表示生成コンポーネント(例えば、902a)を介して、拡張現実環境(例えば、1215)において第1のユーザ(例えば、1220)の表現を表示する(例えば、拡張現実環境においてアバターを表示する)(1406)。いくつかの実施形態では、第1のユーザの表現は、第1のユーザが、拡張現実環境において、人間又は擬人化された特徴(例えば、頭部、腕、脚、手など)を有するレンダリング(例えば、仮想アバター)によって、又はアニメーション化されたキャラクタ(例えば、人間、漫画のキャラクタ、犬、ロボットなどの非人間キャラクタの擬人化された構成物)として表現されるモード(例えば、1224b)(例えば、仮想プレゼンスモード)を有して表示される。いくつかの実施形態では、第1のユーザ(例えば、1220)の表現は、第1のユーザ(例えば、700)の同じ姿勢を有して表示される。一部の実施形態では、第1のユーザの表現は、第1のユーザの対応する部分(例えば、1220-2)と同じ姿勢を有する部分(例えば、700-2)を有して表示される。いくつかの実施形態では、第1のユーザの表現は、物理環境における第1のユーザの少なくとも一部の姿勢の検出された変化に応じて姿勢を変化させるアバター(例えば、仮想アバター)である。例えば、アバターは、物理環境における第1のユーザの検出された移動を模倣するアニメーションキャラクタとして拡張現実環境に表示される)。
眼鏡表示基準のセットが満たされているとの判定に従って、コンピュータシステム(例えば、901a)は、表示生成コンポーネント(例えば、902a)を介して、拡張現実環境(例えば、1215)において第1のユーザ(例えば、1220)の表現上に配置された眼鏡(例えば、1221)(例えば、アバター眼鏡)の表現を表示する(1408)(例えば、アバターは、拡張現実環境において、(例えば、目の上にヘッドセットデバイスを有するアバターを表示する代わりに)目の前に眼鏡を着用して表示される)。
眼鏡表示基準のセットが満たされていない(例えば、図12Aにおいてオプション1226aが選択されている)との判定(1410)に従って、コンピュータシステム(例えば、901a)は、表示生成コンポーネント(例えば、902a)を介して、拡張現実環境(例えば、1215)内の第1のユーザの表現上に配置された眼鏡の表現を表示することなく(例えば、拡張現実環境において、第1のユーザの表現上に配置された眼鏡の表現を表示することを取り止める(例えば、拡張現実環境において同じアバターが表示されるが、目の前に眼鏡を着用しない))、拡張現実環境内の第1のユーザの表現(例えば、1220)を表示する(1412)(例えば、図12A参照)。眼鏡表示基準のセットが満たされるか否かに応じて、拡張現実環境において第1のユーザの表現上に配置された眼鏡の表現を選択的に表示することは、第1のユーザの外観(第1のユーザが眼鏡を着用しているか否かなど)に関するフィードバックをコンピュータシステムのユーザに提供し、第1のユーザの表現のより現実的な外観を提供することによって人間-システム対話を改善する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、眼鏡表示基準のセットは、眼鏡(例えば、1221)の表現を表示するために、ユーザ設定(例えば、1226b、1226c、1226d)(例えば、ユーザ設定インタフェース(例えば、1204、704)内の選択可能なオプション(例えば、トグルスイッチ))が(例えば、第1のユーザ(例えば、700)によって)有効にされるときに満たされる基準を含む。
いくつかの実施形態では、眼鏡表示基準のセットは、登録プロセス中に眼鏡のセット(例えば、707)(例えば、ユーザによって装着されている眼鏡のセット)が(例えば、自動的に、外部コンピュータシステム(例えば、901、701)によって)検出された(例えば、外部コンピュータシステムが、登録プロセス(例えば、図7A-7Hに関して議論されるような登録プロセス)中に第1のユーザが眼鏡のセットを装着又は保持していることを検出した)ときに満たされる基準を含む。
いくつかの実施形態では、拡張現実環境(例えば、1215)において第1のユーザ(例えば、1220)の表現上に配置された眼鏡(例えば、1221)の表現を表示することの一部として、コンピュータシステム(例えば、901a)は、以下の項目を実行する。第1の外観(例えば、眼鏡の表現(例えば、図12Bの眼鏡1221)の第1の外観)に対するオプション(例えば、1226b)が第1のユーザ(例えば、700)によって選択された(例えば、第1のユーザによる以前の手動選択)(例えば、第1の外観オプションが第1のユーザによって現在選択/有効化されている)との判定に従って、コンピュータシステムは、(例えば、図12Bに示すように)第1の外観を有する眼鏡の表現(例えば、1221)を表示する。第2の外観(例えば、第1の外観(例えば、図12Cの眼鏡1221)とは異なる眼鏡の表現の第2の外観)に対するオプション(例えば、1226c)が第1のユーザによって選択された(例えば、第2の外観オプションが第1のユーザによって現在選択/有効化されている)との判定に従って、コンピュータシステムは、(例えば、図12Cに示すように)第2の外観を有する眼鏡の表現(例えば、1221)を表示する。どのオプションが第1のユーザによって選択されたかに依存して、第1又は第2の外観を有する眼鏡の表現を表示することは、第1のユーザの外観(第1のユーザが着用する眼鏡の外観など)についてのフィードバックをコンピュータシステムのユーザに提供し、第1のユーザの表現のより現実的な外観を提供することによって人間-システム対話を改善する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、第1の外観は、コンピュータシステムの表示生成コンポーネント(例えば、ヘッドセットコンポーネント、例えば、拡張現実ヘッドセット)に基づく外観である(例えば、図7H及び図12Aに示されるオプション1226d)。いくつかの実施形態では、眼鏡の表現(例えば、1221)は、ヘッドセットデバイスの外観を有する。
いくつかの実施形態では、拡張現実環境(例えば、1215)において第1のユーザ(例えば、1220)の表現上に配置された眼鏡(例えば、1221)の表現を表示することの一部として、コンピュータシステム(例えば、901a)は、以下の項目を実行する。第3の外観基準が満たされる(例えば、眼鏡の表現について第3の外観が(例えば、自動的に、コンピュータシステム及び/又は外部コンピュータシステムによって(例えば、登録プロセス中に))検出されたことを示すデータ(例えば、入力データ、コンピュータシステムのカメラ(例えば、904と同様)又はセンサからのデータ、外部コンピュータシステム(例えば、901、701)からのデータ)が受信される)との判定に従って、コンピュータシステム(例えば、901a)は、ユーザ(例えば、700)の顔で検出された眼鏡(例えば、707)に基づいて選択された第3の外観(例えば、図12Bの眼鏡1221の外観)を有する眼鏡(例えば、1221)の表現を表示する(例えば、拡張現実ヘッドセットを使用するための登録プロセス中など、拡張現実ヘッドセットを置く前に)。いくつかの実施形態では、第3の外観は、例えば、登録プロセス中にコンピュータシステム(例えば、701)(例えば、外部コンピュータシステム)によって自動的に検出される眼鏡の外観である。例えば、登録中に、コンピュータシステムは、ユーザが厚いフレームを有する眼鏡を着用していることを検出し、したがって、検出された眼鏡の外観(例えば、厚いフレームを有する)に類似する眼鏡の表現の外観を自動的に選択する。第3の外観基準が満たされているとの判定に従って第3の外観を有する眼鏡の表現を表示することは、第1のユーザの外観(第1のユーザが着用している眼鏡の外観など)に関するフィードバックをコンピュータシステムのユーザに提供し、第1のユーザの表現のより現実的な外観を提供することによってシステムインタラクションを改善する。改善されたフィードバックを提供することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
いくつかの実施形態では、第1のユーザ(例えば、700)は、外観特性(例えば、スタイル、サイズ、色、形状、色合い)の第1のセットを有する眼鏡(例えば、707)のセットに関連付けられる。いくつかの実施形態では、第1のユーザのための登録プロセス中に眼鏡のセットが検出及び/又は選択されたとき、第1のユーザは眼鏡のセットに関連付けられる。いくつかの実施形態では、眼鏡の表現(例えば、1221)は、眼鏡のセットの1つ以上の視覚的詳細を省略することによって、外観特性の第1のセットとは異なる外観特性の第2のセットを有する(例えば、眼鏡の表現は、第1のユーザに関連付けられた眼鏡のセットの抽象的な表現である)。
いくつかの実施形態では、眼鏡の表現(例えば、1221)は、半透明の外観を有する(例えば、図12Cに示されるように)(例えば、ユーザ(例えば、1220)の表現の外観、仮想オブジェクトの1つ以上の表現の外観、及び/又は1つ以上の物理的オブジェクトの外観が眼鏡の表現を通して見えるように、外観はオブジェクトの形状、色、数、又はサイズのうちの1つ以上を含む)。
いくつかの実施形態では、拡張現実環境(例えば、1215)内の第1のユーザ(例えば、1220)の表現上に位置付けられた眼鏡(例えば、1221)の表現は、眼鏡の1つ以上のリム部分(例えば、図12B及び図12Cに示すように)(例えば、任意選択的にレンズを有する又は有さないレンズフレーム(単数又は複数))の表現を含み、眼鏡のテンプル部分(例えば、1つ以上のアーム)の表現を含まない(例えば、眼鏡の表示された表現は、眼鏡のアーム又はテンプルを含まない)。眼鏡のテンプル部分の表現なしに眼鏡の表現を表示することは、眼鏡の表現のテンプル部分の位置決め及び表示を考慮する必要性を排除することによって、コンピュータシステムによって費やされる計算リソースを低減する。計算作業負荷を低減することにより、コンピュータシステムの操作性を向上させ、(例えば、コンピュータシステムを操作する/コンピュータシステムと対話するときに、適切な入力を提供するようにユーザを支援し、ユーザの誤りを低減することによって)ユーザシステムインタフェースをより効率的にし、加えて、ユーザがシステムをより素早くかつ効率的に使用できるようにすることによって、電力使用を低減し、コンピュータシステムのバッテリ寿命を改善する。
方法1400に関して上述されたプロセス(例えば、図14)の詳細はまた、前述の方法800、1000、1100及び1300にも類似の方式で適用可能であることに留意されたい。例えば、方法800、1000、1100、及び/又は1300は、任意選択的に、方法1400を参照して上述した様々な方法の特性のうちの1つ以上を含む。
いくつかの実施形態では、方法800、1000、1100、1300、及び1400の態様及び/又は動作は、これらの方法の間で交換、置換、及び/又は追加されてもよい。簡潔にするために、それらの詳細はここでは繰り返さない。
上記は、説明を目的として、特定の実施形態を参照して記述されている。しかしながら、上記の例示的な論考は、網羅的であること、又は開示される厳密な形態に本発明を限定することを意図するものではない。上記の教示を考慮して、多くの修正及び変形が可能である。本発明の原理及びその実際的な応用を最良の形で説明し、それによって他の当業者が、想到される特定の用途に適した様々な変更で本発明及び様々な記載された実施形態を最良の形で使用することを有効化するために、これらの実施形態を選択し記載した。
上述したように、本技術の一態様は、ユーザのXR体験を改善するために、様々なソースから入手可能なデータを収集及び使用することである。本開示は、いくつかの場合には、この収集されたデータが、特定の人を一意に識別する個人情報データ、又は特定の人に連絡する若しくはその所在を突き止めるために使用できる個人情報データを含み得ることを考察する。そのような個人情報データとしては、人口統計データ、ロケーションベースのデータ、電話番号、電子メールアドレス、ツイッターID、自宅の住所、ユーザの健康若しくはフィットネスのレベルに関するデータ若しくは記録(例えば、バイタルサイン測定値、投薬情報、運動情報)、生年月日、又は任意の他の識別情報若しくは個人情報を挙げることができる。
本開示は、本技術におけるそのような個人情報データの使用がユーザの利益になる使用であり得る点を認識するものである。例えば、個人情報データは、ユーザのXR体験を向上させるために使用することができる。更に、ユーザに利益をもたらす個人情報データに関する他の使用も本開示によって意図されている。例えば、健康データ及びフィットネスデータは、ユーザの全般的なウェルネスについての洞察を提供するために使用することができ、又は、ウェルネスの目標を追求する技術を使用している個人への、積極的なフィードバックとして使用することもできる。
本開示は、そのような個人情報データの収集、分析、開示、送信、記憶、又は他の使用に関与するエンティティが、確固たるプライバシーポリシー及び/又はプライバシー慣行を遵守するものとなることを想到する。具体的には、そのようなエンティティは、個人情報データを秘密として厳重に保守するための、業界又は政府の要件を満たしているか又は上回るものとして一般に認識されている、プライバシーのポリシー及び慣行を実施し、一貫して使用するべきである。そのようなポリシーは、ユーザによって容易にアクセス可能とするべきであり、データの収集及び/又は使用が変化するにつれて更新されるべきである。ユーザからの個人情報は、そのエンティティの合法的かつ正当な使用のために収集されるべきであり、それらの合法的使用を除いては、共有又は販売されるべきではない。更には、そのような収集/共有は、ユーザに告知して同意を得た後に実施されるべきである。その上、そのようなエンティティは、そのような個人情報データへのアクセスを保護及び安全化し、個人情報データへのアクセス権を有する他者が、それらのプライバシーポリシー及び手順を忠実に守ることを保証するための、あらゆる必要な措置を講じることを考慮するべきである。更に、そのようなエンティティは、広く受け入れられているプライバシーポリシー及び慣行に対する自身の遵守を証明するために、サードパーティによる評価を自らが受けることができる。更には、ポリシー及び慣行は、収集及び/又はアクセスされる具体的な個人情報データのタイプに適合されるべきであり、また、管轄権固有の考慮事項を含めた、適用可能な法令及び規格に適合されるべきである。例えば、アメリカ合衆国では、特定の健康データの収集又はそれへのアクセスは、医療保険の相互運用性と説明責任に関する法律(HIPAA)などの、連邦法及び/又は州法に準拠し得る。その一方で、他国における健康データは、他の規制及びポリシーの対象となり得るものであり、それに従って対処されるべきである。それゆえ、各国において、異なる個人データのタイプに関して異なるプライバシー慣行が保たれるべきである。
前述のことがらにも関わらず、本開示はまた、個人情報データの使用又は個人情報データへのアクセスを、ユーザが選択的に阻止する実施形態も想到する。すなわち、本開示は、そのような個人情報データへのアクセスを防止又は阻止するために、ハードウェア要素及び/又はソフトウェア要素が提供され得ることを意図している。例えば、XR体験の場合において、本技術は、ユーザが、サービスの登録中又はその後のいつでも、個人情報データの収集への参加の「オプトイン」又は「オプトアウト」を選択できるように構成され得る。別の例では、ユーザは、サービスのカスタマイズのためにデータを提供しないことを選択することができる。更に別の実施例では、ユーザは、データが維持される時間長を制限するか、又はカスタマイズされたサービスの展開を完全に禁止するかを選択することができる。「オプトイン」及び「オプトアウト」のオプションを提供することに加えて、本開示は、個人情報のアクセス又は使用に関する通知を提供することを意図している。例えば、ユーザの個人情報データにアクセスすることとなるアプリのダウンロード時にユーザに知らされ、その後、個人情報データがアプリによってアクセスされる直前に再びユーザに注意してもよい。
更には、本開示の意図は、個人情報データを、非意図的若しくは許可のないアクセス又は使用の危険性を最小限に抑える方法で、管理及び処理するべきであるという点である。データの収集を制限し、データがもはや必要とされなくなると削除することにより、リスクを最小化することができる。加えて、特定の健康関連アプリケーションにおいて適用可能な場合、ユーザのプライバシーを保護するために、データの匿名化を使用することができる。非特定化は、適切な場合には、特定の識別子(例えば、生年月日など)を除去すること、記憶されたデータの量又は特異性を制御すること(例えば、ロケーションデータを住所レベルよりも都市レベルで収集すること)、データがどのように記憶されるかを制御すること(例えば、データをユーザ全体にわたって集約すること)及び/又は他の方法によって、容易にすることができる。
それゆえ、本開示は、1つ以上の様々な開示された実施形態を実施するための、個人情報データの使用を広範に網羅するものであるが、本開示はまた、そのような個人情報データにアクセスすることを必要とせずに、それらの様々な実施形態を実施することも可能であることを想到する。すなわち、本技術の様々な実施形態は、そのような個人情報データの全て又は一部が欠如することにより、動作不可能にされるものではない。例えば、ユーザに関連付けられたデバイスによって要求されているコンテンツなどの非個人情報データ若しくは必要最小量の個人情報、サービスに利用可能な他の非個人情報、又は公的に入手可能な情報に基づき嗜好を推測することによって、XR体験を生成できる。