IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ アップル インコーポレイテッドの特許一覧

特許7033218仮想オブジェクトとしての物理入力デバイスの表示
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-03-01
(45)【発行日】2022-03-09
(54)【発明の名称】仮想オブジェクトとしての物理入力デバイスの表示
(51)【国際特許分類】
   G06F 3/01 20060101AFI20220302BHJP
【FI】
G06F3/01 510
【請求項の数】 20
(21)【出願番号】P 2020565377
(86)(22)【出願日】2019-05-21
(65)【公表番号】
(43)【公表日】2021-09-16
(86)【国際出願番号】 US2019033253
(87)【国際公開番号】W WO2019236280
(87)【国際公開日】2019-12-12
【審査請求日】2020-11-20
(31)【優先権主張番号】62/680,819
(32)【優先日】2018-06-05
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】16/410,547
(32)【優先日】2019-05-13
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】503260918
【氏名又は名称】アップル インコーポレイテッド
【氏名又は名称原語表記】Apple Inc.
【住所又は居所原語表記】One Apple Park Way,Cupertino, California 95014, U.S.A.
(74)【代理人】
【識別番号】100094569
【弁理士】
【氏名又は名称】田中 伸一郎
(74)【代理人】
【識別番号】100103610
【弁理士】
【氏名又は名称】▲吉▼田 和彦
(74)【代理人】
【識別番号】100067013
【弁理士】
【氏名又は名称】大塚 文昭
(74)【代理人】
【識別番号】100086771
【弁理士】
【氏名又は名称】西島 孝喜
(74)【代理人】
【識別番号】100139712
【弁理士】
【氏名又は名称】那須 威夫
(74)【代理人】
【識別番号】100121979
【弁理士】
【氏名又は名称】岩崎 吉信
(72)【発明者】
【氏名】プラ アイ コネサ ポル
(72)【発明者】
【氏名】オルソン アール
(72)【発明者】
【氏名】トンプソン アーロン ピー
【審査官】円子 英紀
(56)【参考文献】
【文献】米国特許出願公開第2017/0262045(US,A1)
【文献】米国特許出願公開第2017/0308258(US,A1)
【文献】米国特許出願公開第2018/0004312(US,A1)
【文献】米国特許出願公開第2011/0063224(US,A1)
【文献】米国特許出願公開第2013/0194188(US,A1)
【文献】米国特許出願公開第2014/0191977(US,A1)
【文献】米国特許第11045725(US,B1)
【文献】米国特許出願公開第2017/0300116(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/01
(57)【特許請求の範囲】
【請求項1】
ディスプレイを有する電子デバイスにおいて、
コンピュータ生成現実(CGR)環境の、表示されたアプリケーション内で入力フィールドを検出したことに応じて、前記CGR環境において、前記表示されたアプリケーションの少なくとも一部分の表現を物理入力デバイスの表現上に表示することであって、前記表示されたアプリケーションの前記少なくとも一部分の表現が、前記検出された入力フィールドの表現を含む、ことと、
前記物理入力デバイスにおいて受信された入力を検出したことに応じて、前記入力に基づいて前記入力フィールドを更新することであって、更新された外観を有する前記入力フィールドの前記表現を表示することを含む、ことと、
を含む、方法。
【請求項2】
前記入力が、前記物理入力デバイスの前記表現上に表示された前記入力フィールドの場所に対応する前記物理入力デバイス上の場所におけるタッチ入力を含む、請求項1に記載の方法。
【請求項3】
前記更新された外観を有する前記入力フィールドの前記表現を表示することが、前記表示されたアプリケーション内の前記更新された外観を有する前記入力フィールドを表示することを含む、請求項1又は2に記載の方法。
【請求項4】
前記更新された外観を有する前記入力フィールドの前記表現を表示することが、前記物理入力デバイスの前記表現上に前記更新された外観を有する前記入力フィールドの前記表現を表示することを含む、請求項1~3のいずれか一項に記載の方法。
【請求項5】
前記物理入力デバイスにおいて受信された前記入力を検出したことに応じて、触覚フィードバックを生成すること、
を更に含む、請求項1~4のいずれか一項に記載の方法。
【請求項6】
前記表示されたアプリケーション内の前記入力フィールドを検出したことに応じて、前記物理入力デバイスの前記表現上にキーボードキーを表示すること、
を更に含む、請求項1~5のいずれか一項に記載の方法。
【請求項7】
前記入力が、キーボードキーの表示された場所に対応する前記物理入力デバイス上の場所におけるタッチ入力を含む、請求項6に記載の方法。
【請求項8】
前記物理入力デバイスが、物理キーボードキーを有する物理キーボードであり、
前記キーボードキーが、前記検出された入力フィールドがテキスト入力フィールドであるとの判定に従って表示され、
それぞれの表示されたキーボードキーが、それらが表示される前記物理キーボードキーとは異なる値を有する、
請求項6又は7に記載の方法。
【請求項9】
前記物理入力デバイスが、タッチ感知面である、請求項1~8のいずれか一項に記載の方法。
【請求項10】
前記タッチ感知面が、表示構成要素を含まない、請求項9に記載の方法。
【請求項11】
前記物理入力デバイスが、前記電子デバイスの外部にある、請求項1~10のいずれか一項に記載の方法。
【請求項12】
前記入力に基づいて前記入力フィールドを更新することが、
前記物理入力デバイスにおける前記入力を示す入力データを受信することと、
前記受信された入力データに従って、前記入力フィールドを更新することと、
を含む、請求項1~11のいずれか一項に記載の方法。
【請求項13】
前記表示されたアプリケーションの前記少なくとも一部分の表現を前記物理入力デバイスの前記表現上に表示することが、前記CGR環境において、前記物理入力デバイスの前記表現上に配置された、前記検出された入力フィールドの前記表現を表示することを含む、請求項1~12のいずれか一項に記載の方法。
【請求項14】
前記検出された入力フィールドがテキスト入力フィールドであるとの判定に従って、前記表示されたアプリケーションの前記少なくとも一部分の表現を前記物理入力デバイスの前記表現上に表示することが、前記CGR環境において、前記物理入力デバイスの前記表現上に配置されたテキストボックスを表示することを含む、
ことを更に含む、請求項1~13のいずれか一項に記載の方法。
【請求項15】
前記検出された入力フィールドがデジタル署名フィールドであるとの判定に従って、前記表示されたアプリケーションの前記少なくとも一部分の表現を前記物理入力デバイスの前記表現上に表示することが、前記CGR環境において、前記物理入力デバイスの前記表現上に配置されたデジタル署名ボックスを表示することを含む、
ことを更に含む、請求項1~14のいずれか一項に記載の方法。
【請求項16】
前記検出された入力フィールドが1つ以上のラジオボタンを含むとの判定に従って、前記表示されたアプリケーションの前記少なくとも一部分の表現を前記物理入力デバイスの前記表現上に表示することが、前記CGR環境において、前記物理入力デバイスの前記表現上に配置された1つ以上のラジオボタンを表示することを含む、
ことを更に含む、請求項1~15のいずれか一項に記載の方法。
【請求項17】
前記表示されたアプリケーションの前記少なくとも一部分の表現を前記物理入力デバイスの前記表現上に表示することが、前記CGR環境において、前記検出された入力フィールドの前記1つ以上のラジオボタンに関連付けられたテキストを表示することを更に含む、請求項16に記載の方法。
【請求項18】
請求項1~17のいずれか一項に記載の方法をコンピュータに実行させる、コンピュータプログラム。
【請求項19】
請求項18に記載の前記コンピュータプログラムを記憶するメモリと、
前記メモリに記憶された前記コンピュータプログラムを実行することができる1つ以上のプロセッサと、
を備える、電子デバイス。
【請求項20】
請求項1~17のいずれか一項に記載の方法を実行する手段と、
を備える、電子デバイス。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願の相互参照)
この出願は、2018年6月5日に出願された「Displaying Physical Input Devices as Augmented-Reality Objects in a Mixed Reality Environment」と題する米国仮出願第62/680,819号、及び2019年5月13日に出願された「Displaying Physical Input Devices as Virtual Objects」と題する米国特許出願第16/410,547号の利益を主張するものであり、その内容は、参照によりその全体が本明細書に組み込まれる。
【0002】
本開示は、概して、コンピュータ生成現実(CGR)環境に関し、より詳細には、CGR環境における電子製品の表現に関する。
【背景技術】
【0003】
モバイル電話などのデバイスは、様々なタスクを実行するためのコンピュータアプリケーションを実行する。ユーザは、アプリケーションユーザインタフェースを使用してコンピュータアプリケーションと対話する。ユーザは、キーボードなどの入力デバイスを使用してアプリケーションユーザインタフェースと対話して、入力データを提供する。例えば、ユーザは、キーボードと対話して、アプリケーションユーザインタフェースを使用してコンピュータアプリケーションに情報を入力する。別の例では、コンピュータアプリケーションは、アプリケーションユーザインタフェースを使用して、受信されたユーザ入力に基づいたフィードバックを生成する。
【発明の概要】
【0004】
本明細書には、物理入力デバイスの表現を表示し、かつ、コンピュータ生成現実(CGR)環境において物理入力デバイスの表現上に視覚的特徴をオーバーレイするための技術が記載されている。いくつかの実施形態では、本技術は、ディスプレイを有する電子デバイスにおいて、コンピュータ生成現実(CGR)環境の表示されたアプリケーション内で入力フィールドを検出したことに応じて、表示されたアプリケーションの少なくとも一部分を物理入力デバイスの表現上に表示することであって、表示されたアプリケーションの少なくとも一部分が、検出された入力フィールドを含む、ことと、物理入力デバイスにおいて受信された入力を検出したことに応じて、入力フィールドを入力で更新することと、更新された入力フィールドを表示することと、を含む。
【0005】
いくつかの実施形態では、入力は、物理入力デバイスの表現上に表示される入力フィールドの場所に対応する物理入力デバイス上の場所におけるタッチ入力を含む。いくつかの実施形態では、タッチ入力は強度構成要素を有し、強度は閾値を超える。いくつかの実施形態では、タッチ入力は、物理入力デバイス上のスワイプである。
【0006】
いくつかの実施形態では、更新された入力フィールドを表示することは、アプリケーション内に更新された入力フィールドを表示することを含む。
【0007】
いくつかの実施形態では、更新された入力フィールドを表示することは、物理入力デバイス上の入力フィールド内に更新された入力フィールドを表示することを含む。
【0008】
いくつかの実施形態では、本技術は、物理入力デバイスにおいて受信された入力を検出したことに応じて、触覚フィードバックを生成することを更に含む。
【0009】
いくつかの実施形態では、本技術は、表示されたアプリケーション内の入力フィールドを検出したことに応じて、物理入力デバイスの表現上に仮想キーボードキーを表示することを更に含む。
【0010】
いくつかの実施形態では、入力は、仮想キーボードキーの表示された場所に対応する物理入力デバイス上の場所におけるタッチ入力を含む。
【0011】
いくつかの実施形態では、物理入力デバイスは、物理キーボードキーを備えた物理キーボードであり、仮想キーボードキーは、検出された入力フィールドがテキスト入力フィールドであるとの判定に従って表示され、それぞれの表示されたキーボードキーは、それらが表示される物理キーボードキーとは異なる値を有する。
【0012】
いくつかの実施形態では、物理入力デバイスは、タッチ感知面である。いくつかのそのような実施形態では、タッチ感知面は、表示構成要素を含まない。
【0013】
いくつかの実施形態では、物理入力デバイスは、電子デバイスの外部にある。
【0014】
いくつかの実施形態では、入力フィールドを入力で更新することは、物理入力デバイスにおける入力を示す入力データを受信することと、受信された入力データに従って入力フィールドを更新することと、を含む。
【0015】
いくつかの実施形態では、表示されたアプリケーションの一部分を物理入力デバイスの表現上に表示することは、CGR環境において、物理入力デバイスの表現上に配置された、検出された入力フィールドを表示することを含む。
【0016】
いくつかの実施形態では、本技術は、検出された入力フィールドがテキスト入力フィールドであるとの判定に従って、表示されたアプリケーションの少なくとも一部分を物理入力デバイスの表現上に表示することが、CGR環境において、物理入力デバイスの表現上に配置された仮想テキストボックスを表示することを含む、ことを更に含む。
【0017】
いくつかの実施形態では、本技術は、検出された入力フィールドがデジタル署名フィールドであるとの判定に従って、表示されたアプリケーションの少なくとも一部分を物理入力デバイスの表現上に表示することが、CGR環境において、物理入力デバイスの表現上に配置された仮想デジタル署名ボックスを表示することを含む、ことを更に含む。
【0018】
いくつかの実施形態では、本技術は、検出された入力フィールドが1つ以上のラジオボタンを含むとの判定に従って、表示されたアプリケーションの少なくとも一部分を物理入力デバイスの表現上に表示することが、CGR環境において、物理入力デバイスの表現上に配置された1つ以上の仮想ラジオボタンを表示することを含む、ことを更に含む。
【0019】
いくつかの実施形態では、物理入力デバイスの表現を表示し、かつ、CGR環境内において物理入力デバイスの表現上に視覚的特徴をオーバーレイするためのデバイスは、1つ以上のプロセッサ、及び1つ以上のプロセッサによって実行されるように構成された1つ以上のプログラムを記憶するメモリを含む。1つ以上のプログラムは、CGR環境の表示されたアプリケーション内の入力フィールドを検出したことに応じて、表示されたアプリケーションの少なくとも一部分を物理入力デバイスの表現上に表示し、この表示されたアプリケーションの少なくとも一部分が、検出された入力フィールドを含み、物理入力デバイスにおいて受信された入力を検出したことに応じて、入力フィールドを入力で更新し、更新された入力フィールドを表示する、ための命令を含む。
【0020】
いくつかの実施形態では、1つ以上のプロセッサによって実行されるように構成された1つ以上のプログラムを記憶する非一時的(又は、任意選択的に一時的)コンピュータ可読記憶媒体は、物理入力デバイスの表現を表示し、CGR環境において物理入力デバイスの表現上に視覚的特徴をオーバーレイする。1つ以上のプログラムは、ディスプレイを有する電子デバイスにおいて、CGR環境の表示されたアプリケーション内の入力フィールドを検出したことに応じて、表示されたアプリケーションの少なくとも一部分を物理入力デバイスの表現上に表示し、この表示されたアプリケーションの少なくとも一部分が、検出された入力フィールドを含み、物理入力デバイスにおいて受信された入力を検出したことに応じて、入力フィールドを入力で更新し、更新された入力フィールドを表示する、ための命令を含む。
以下の説明では、その一部を形成し、いくつかの実施形態を示す、添付図面を参照する。本開示の範囲から逸脱することなく、他の実施形態を利用してもよく、構造及び動作の変更を行うことができることが理解されよう。異なる図面における同じ参照シンボルの使用は、類似又は同一のアイテムを示している。
【図面の簡単な説明】
【0021】
図1A】様々なコンピュータ生成現実技術で使用するための例示的なシステムを示す。
図1B】様々なコンピュータ生成現実技術で使用するための例示的なシステムを示す。
図2A】物理入力デバイスの表現を表示し、かつ、CGR環境において物理入力デバイスの表現上に視覚的特徴をオーバーレイするデバイスを示す。
図2B】物理入力デバイスの表現を表示し、かつ、CGR環境において物理入力デバイスの表現上に視覚的特徴をオーバーレイするデバイスを示す。
図2C】物理入力デバイスの表現を表示し、かつ、CGR環境において物理入力デバイスの表現上に視覚的特徴をオーバーレイするデバイスを示す。
図2D】物理入力デバイスの表現を表示し、かつ、CGR環境において物理入力デバイスの表現上に視覚的特徴をオーバーレイするデバイスを示す。
図2E】物理入力デバイスの表現を表示し、かつ、CGR環境において物理入力デバイスの表現上に視覚的特徴をオーバーレイするデバイスを示す。
図2F】物理入力デバイスの表現を表示し、かつ、CGR環境において物理入力デバイスの表現上に視覚的特徴をオーバーレイするデバイスを示す。
図3】物理入力デバイスの表現を表示し、かつ、CGR環境において物理入力デバイスの表現上に視覚的特徴をオーバーレイするための例示的な技術を示す。
図4A】物理入力デバイスの表現を表示し、かつ、CGR環境において物理入力デバイスの表現上に視覚的特徴をオーバーレイするデバイスを示す。
図4B】物理入力デバイスの表現を表示し、かつ、CGR環境において物理入力デバイスの表現上に視覚的特徴をオーバーレイするデバイスを示す。
図5】物理入力デバイスの表現を表示し、かつ、CGR環境において物理入力デバイスの表現上に視覚的特徴をオーバーレイするための例示的な技術を示す。
【発明を実施するための形態】
【0022】
様々なコンピュータ生成現実技術に関連してそのようなシステムを使用するための電子システム及び技術の様々な実施形態を説明する。特に、本開示は、物理入力デバイスの表現を表示し、かつ、CGR環境において物理入力デバイスの表現上に視覚的特徴をオーバーレイするための技術を提供する。本技術は、CGR環境において仮想アプリケーションを表示することと、表示された仮想アプリケーション内の入力フィールドを検出したことに応じて、物理入力デバイスの表現上に、表示されたアプリケーションの少なくとも一部分を投影することと、を含む。表示されたアプリケーションの少なくとも一部分は、検出された入力フィールドを含む。物理入力デバイスにおいて受信された入力を検出したことに応じて、入力フィールドは入力で更新され、更新された入力フィールドは表示される。
【0023】
物理的環境(又は現実環境)とは、人々が電子システムの助けを借りずに、感知及び/又は相互作用することができる物理的世界を指す。物理的な公園などの物理的環境には、物理的な木々、物理的な建物、及び物理的な人などの物理的物品(又は物理的オブジェクト又は現実のオブジェクト)が挙げられる。人々は、視覚、触覚、聴覚、味覚、及び臭覚などを介して、物理的環境を直接感知し、及び/又はそれと相互作用することができる。
【0024】
対照的に、コンピュータ生成現実(CGR)環境は、人々が電子システムを介して感知及び/又は相互作用する全体的又は部分的にシミュレーションされた環境を指す。CGRでは、人の身体運動のサブセット又はその表現が追跡され、それに応じて、CGR環境内でシミュレートされた1つ以上の仮想オブジェクトの1つ以上の特性が、少なくとも1つの物理学の法則でふるまうように調整される。例えば、CGRシステムは、人の頭部の回転を検出し、それに応じて、そのようなビュー及び音が物理的環境においてどのように変化し得るかと同様の方法で、人に提示されるグラフィックコンテンツ及び音場を調整することができる。状況によっては(例えば、アクセス性の理由から)、CGR環境における仮想オブジェクト(単数又は複数)の特性(単数又は複数)に対する調整は、身体運動の表現(例えば、音声コマンド)に応じて行われてもよい。
【0025】
人は、視覚、聴覚、触覚、味覚及び嗅覚を含むこれらの感覚のうちのいずれか1つを使用して、CGRオブジェクトを感知し、かつ/又はCGRオブジェクトと相互作用してもよい。例えば、人は、3D空間内のポイントオーディオソースの知覚を提供する、3D又は空間オーディオ環境を作り出すオーディオオブジェクトを感知し、及び/又はそれと対話することができる。別の例では、オーディオオブジェクトは、コンピュータ生成オーディオを含め、又は含めずに、物理的環境から周囲音を選択的に組み込むオーディオ透過性を可能にすることができる。いくつかのCGR環境では、人は、オーディオオブジェクトのみを感知し、及び/又はそれと相互作用することができる。
【0026】
CGRの例としては、仮想現実及び複合現実が挙げられる。
【0027】
仮想現実(VR)環境(又は仮想環境)とは、1つ以上の感覚のためのコンピュータ生成感覚入力に完全に基づくように設計されたシミュレーション環境を指す。VR環境は、人が感知及び/又は相互作用することができる複数の仮想オブジェクトを含む。例えば、木、建物、及び人々を表すアバターのコンピュータ生成画像は、仮想オブジェクトの例である。人は、コンピュータ生成環境内に人が存在することのシミュレーションを通じて、かつ/又はコンピュータ生成環境内での人の身体運動のサブセットのシミュレーションを通じて、VR環境における仮想オブジェクトを感知し、かつ/又はそれと相互作用することができる。
【0028】
コンピュータ生成感覚入力に全面的に基づくように設計されたVR環境とは対照的に、複合現実(MR)環境は、コンピュータ生成感覚入力(例えば、仮想オブジェクト)を含むことに加えて、物理的環境からの感覚入力又はその表現を組み込むように設計されたシミュレーション環境を指す。仮想の連続体上で、MR環境は、一方の端部における完全に物理的な環境と、他方の端部におけるVR環境との間の、両端部は含まない、どこかである。
【0029】
MR環境によっては、コンピュータ生成感覚入力は、物理的環境からの感覚入力の変更に応答し得る。また、MR環境を提示するためのいくつかの電子システムは、仮想オブジェクトが現実のオブジェクト(すなわち、物理的環境からの物理的物品又はその表現)と相互作用することを可能にするために、物理的環境に対する所在場所及び/又は向きを追跡することができる。例えば、システムは、仮想の木が物理的な地面に対して静止して見えるように、移動を考慮することができる。
【0030】
複合現実の例としては、拡張現実及び拡張仮想が挙げられる。
【0031】
拡張現実(AR)環境は、1つ以上の仮想オブジェクトが物理的環境上又はその表現上に重ねられたシミュレーション環境を指す。例えば、AR環境を提示するための電子システムは、人が物理的環境を直接見ることができる透明又は半透明のディスプレイを有してもよい。システムは、透明又は半透明のディスプレイ上に仮想オブジェクトを提示するように構成されていてもよく、それによって、人はシステムを使用して、物理的環境上に重ねられた仮想オブジェクトを知覚する。あるいは、システムは、不透明ディスプレイと、物理的環境の表現である、物理的環境の画像又はビデオをキャプチャする1つ以上の撮像センサとを有してもよい。システムは、画像又はビデオを仮想オブジェクトと合成し、その合成物を不透明なディスプレイ上に提示する。人は、システムを使用して、物理的環境の画像又はビデオによって物理的環境を間接的に見て、物理的環境上に重ねられた仮想オブジェクトを知覚する。本明細書で使用するとき、不透明ディスプレイ上に示される物理的環境のビデオは、「パススルービデオ」と呼ばれ、システムが、1つ以上の撮像センサ(単数又は複数)を使用して、物理的環境の画像をキャプチャし、不透明ディスプレイ上にAR環境を提示する際にそれらの画像を使用することを意味する。更に代替的に、システムは、仮想オブジェクトを、物理的環境に、例えば、ホログラムとして又は物理的表面上に投影するプロジェクションシステムを有してもよく、それによって、人は、システムを使用して、物理的環境上に重ねられた仮想オブジェクトを知覚する。
【0032】
拡張現実環境はまた、物理的環境の表現がコンピュータ生成感覚情報によって変換されるシミュレーション環境を指す。例えば、パススルービデオを提供する際に、システムは、1つ以上のセンサ画像を変換して、撮像センサによってキャプチャされた遠近法とは異なる選択された遠近法(例えば、視点)による面付けを行うことができる。別の例として、物理的環境の表現は、その一部分をグラフィカルに変更(例えば、拡大)することによって変換されてもよく、それにより、変更された部分を元のキャプチャ画像を表すが非写実的であるバージョンとすることができる。更なる例として、物理的環境の表現は、その一部分をグラフィカルに除去又は曖昧化することによって変換されてもよい。
【0033】
拡張仮想(AV)環境は、物理的環境からの1つ以上の感覚入力を仮想環境又はコンピュータ生成環境が組み込むシミュレーション環境を指す。感覚入力は、物理的環境の1つ以上の特性の表現であり得る。例えば、AVパークには、仮想の木及び仮想の建物があり得るが、顔がある人々は、物理的な人々が撮られた画像から写実的に再現される。別の例として、仮想オブジェクトは、1つ以上の撮像センサによって撮像された物理的物品の形状又は色を採用してもよい。更なる例として、仮想オブジェクトは、物理的環境における太陽の位置と一致する影を採用することができる。
【0034】
多種多様の電子システムが存在することによって、人が様々なCGR環境を感知し、かつ/又はCGR環境と相互作用できるようになる。例としては、ヘッドマウントシステム、プロジェクションベースシステム、ヘッドアップディスプレイ(HUD)、統合表示機能を有する車両ウィンドシールド、統合表示機能を有する窓、(例えば、コンタクトレンズと同様に)人の目の上に配置されるように設計されたレンズとして形成されたディスプレイ、ヘッドホン/イヤフォン、スピーカアレイ、入力システム(例えば、触覚フィードバックを有する又は有さない、ウェアラブル又はハンドヘルドコントローラ)、スマートフォン、タブレット、及びデスクトップ/ラップトップコンピュータ、が挙げられる。ヘッドマウントシステムは、1つ以上のスピーカ(単数又は複数)及び一体型不透明ディスプレイを有してもよい。あるいは、ヘッドマウントシステムは、外部の不透明ディスプレイ(例えば、スマートフォン)を受け入れるように構成されていてもよい。ヘッドマウントシステムは、物理的環境の画像若しくはビデオをキャプチャするための1つ以上の撮像センサ、及び/又は物理的環境の音声をキャプチャするための1つ以上のマイクロフォンを組み込んでいてもよい。不透明ディスプレイではなく、ヘッドマウントシステムは、透明又は半透明のディスプレイを有してもよい。透明又は半透明のディスプレイは、画像を表す光が人の目に向けられる媒体を有してもよい。ディスプレイは、デジタル光投影、OLED、LED、uLED、液晶オンシリコン、レーザスキャン光源、又はこれらの技術の任意の組み合わせを利用することができる。媒体は、光導波路、ホログラム媒体、光結合器、光反射器、又はこれらの任意の組み合わせであってもよい。一実施形態では、透明又は半透明のディスプレイは、選択的に不透明になるように構成されていてもよい。プロジェクションベースシステムは、グラフィック画像を人間の網膜上に投影する網膜投影技術を採用することができる。プロジェクションシステムはまた、例えば、ホログラムとして、又は物理的表面上に、仮想オブジェクトを物理的環境内に投影するように構成されていてもよい。
【0035】
図1A及び図1Bは、様々なコンピュータ生成現実技術で使用するための例示的なシステム100を示す。
【0036】
いくつかの実施形態において、図1Aに示すように、システム100は、デバイス100aを含む。デバイス100aは、プロセッサ(単数又は複数)102、RF回路(単数又は複数)104、メモリ(単数又は複数)106、画像センサ(単数又は複数)108、向きセンサ(単数又は複数)110、マイクロフォン(単数又は複数)112、位置センサ(単数又は複数)116、スピーカ(単数又は複数)118、ディスプレイ(単数又は複数)120、及びタッチ感知面122などの様々な構成要素を含む。これらの構成要素は、任意選択的に、デバイス100aの通信バス(単数又は複数)150を介して通信する。
【0037】
いくつかの実施形態では、システム100の要素は、基地局デバイス(例えば、リモートサーバ、モバイルデバイス、又はラップトップなどのコンピューティングデバイス)内に実装され、システム100の他の要素は、電話又はタブレット内に実装され、この電話又はタブレットは、基地局デバイスと通信している。いくつかの実施形態では、デバイス100aは、基地局デバイス、又は電話若しくはタブレット内に実装される。いくつかの実施形態では、電話又はタブレットは、代わりに、ユーザが装着するように設計されたヘッドマウントディスプレイ(HMD)デバイスとすることができる。
【0038】
図1Bに示すように、いくつかの実施形態において、システム100は、有線接続又は無線接続などを介して通信する2つ(又はそれより多)のデバイスを含む。第1のデバイス100b(例えば、基地局デバイス)は、プロセッサ(単数又は複数)102、RF回路(単数又は複数)104、及びメモリ(単数又は複数)106を含む。これらの構成要素は、任意選択的に、デバイス100bの通信バス(単数又は複数)150を介して通信する。第2のデバイス100c(例えば、電話又はタブレット)は、プロセッサ(単数又は複数)102、RF回路(単数又は複数)104、メモリ(単数又は複数)106、画像センサ(単数又は複数)108、向きセンサ(単数又は複数)110、マイクロフォン(単数又は複数)112、位置センサ(単数又は複数)116、スピーカ(単数又は複数)118、ディスプレイ(単数又は複数)120、及びタッチ感知面(単数又は複数)122などの、様々な構成要素を含む。これらの構成要素は、任意選択的に、デバイス100cの通信バス(単数又は複数)150を介して通信する。
【0039】
いくつかの実施形態では、システム100は、電話又はタブレットなどのモバイルデバイスである。いくつかの実施形態では、システム100は、ヘッドマウントディスプレイ(HMD)デバイスである。
【0040】
システム100は、プロセッサ(単数又は複数)102及びメモリ(単数又は複数)106を含む。プロセッサ(単数又は複数)102は、1つ以上の汎用プロセッサ、1つ以上のグラフィックプロセッサ、及び/又は1つ以上のデジタル信号プロセッサを含む。いくつかの実施形態において、メモリ(単数又は複数)106は、後述する技術を実行するためにプロセッサ(単数又は複数)102によって実行されるように構成されているコンピュータ可読命令を記憶する1つ以上の非一時的コンピュータ可読記憶媒体(例えば、フラッシュメモリ、ランダムアクセスメモリ)である。
【0041】
システム100は、RF回路(単数又は複数)104を含む。RF回路(単数又は複数)104は、任意選択的に、電子デバイス、インターネット、イントラネット及び/又は、セルラーネットワーク及び無線ローカルエリアネットワーク(LAN)などの無線ネットワークなどのネットワークと通信するための回路を含む。RF回路(単数又は複数)104は、任意選択的に、近距離通信及び/又はBluetooth(登録商標)などの短距離通信を使用して通信するための回路を含む。
【0042】
システム100は、ディスプレイ(単数又は複数)120を含む。いくつかの実施形態では、ディスプレイ(単数又は複数)120は、第1のディスプレイ(例えば、左目ディスプレイパネル)及び第2のディスプレイ(例えば、右目ディスプレイパネル)を含み、各ディスプレイは、ユーザのそれぞれの目に画像を表示する。対応する画像は、第1のディスプレイ及び第2のディスプレイ上に同時に表示される。任意選択的に、対応する画像は、異なる視点からの同じ物理的オブジェクトの同じ仮想オブジェクト及び/又は表現を含み、結果として、ディスプレイ上のオブジェクトの深さの錯覚をユーザに提供する視差効果をもたらす。いくつかの実施形態では、ディスプレイ(単数又は複数)120は、単一のディスプレイを含む。対応する画像は、ユーザのそれぞれの目のために、単一のディスプレイの第1の領域及び第2の領域上に同時に表示される。任意選択的に、対応する画像は、異なる視点からの同じ物理的オブジェクトの同じ仮想オブジェクト及び/又は表現を含み、結果として、単一のディスプレイ上のオブジェクトの深さの錯覚をユーザに提供する視差効果をもたらす。いくつかの実施形態では、ディスプレイ(単数又は複数)120は、遮断層を有する又は有さない、透明な追加のディスプレイを含む。
【0043】
いくつかの実施形態において、システム100は、タップ入力及びスワイプ入力などのユーザ入力を受け取るためのタッチ感知面(単数又は複数)122を含む。いくつかの実施形態では、ディスプレイ(単数又は複数)120及びタッチ感知面(単数又は複数)122は、タッチ感知ディスプレイ(単数又は複数)を形成する。
【0044】
システム100は、画像センサ(単数又は複数)108を含む。画像センサ(単数又は複数)108は、任意選択的に、電荷結合デバイス(CCD)センサなどの1つ以上の可視光画像センサ、及び/又は現実環境から物理的オブジェクトの画像を取得するように動作可能な相補型金属酸化膜半導体(CMOS)センサを含む。画像センサ(単数又は複数)はまた、任意選択的に、現実環境からの赤外光を検出するための、パッシブIRセンサ又はアクティブIRセンサなどの1つ以上の赤外線(IR)センサ(単数又は複数)を含む。例えば、アクティブIRセンサは、赤外光を現実環境に放射するためのIRドットエミッタなどのIRエミッタを含む。画像センサ(単数又は複数)108はまた、任意選択的に、現実環境における物理的オブジェクトの移動をキャプチャするように構成されている1つ以上のイベントカメラを含む。画像センサ(単数又は複数)108はまた、任意選択的に、システム100からの物理的オブジェクトの距離を検出するように構成されている1つ以上の深さセンサを含む。いくつかの実施形態では、システム100は、CCDセンサ、イベントカメラ、及び深さセンサを組み合わせて使用して、システム100周囲の物理的環境を検出する。いくつかの実施形態では、画像センサ(単数又は複数)108は、第1の画像センサ及び第2の画像センサを含む。第1の画像センサ及び第2の画像センサは、任意選択的に、2つの異なるパースペクティブから、現実環境内の物理的オブジェクトの画像をキャプチャするように構成されている。いくつかの実施形態では、システム100は、画像センサ(単数又は複数)108を使用して、ハンドジェスチャなどのユーザ入力を受け取る。いくつかの実施形態では、システム100は、画像センサ(単数又は複数)108を使用して、現実環境におけるシステム100及び/又はディスプレイ(単数又は複数)120の位置及び向きを検出する。例えば、システム100は、画像センサ(単数又は複数)108を使用して、現実環境内の1つ以上の固定オブジェクトに対するディスプレイ(単数又は複数)120の位置及び向きを追跡する。
【0045】
いくつかの実施形態において、システム100は、マイクロフォン(単数又は複数)112を含む。システム100は、マイクロフォン(単数又は複数)112を使用して、ユーザ及び/又はユーザの現実環境からの音を検出する。いくつかの実施形態では、マイクロフォン(単数又は複数)112は、周囲ノイズを特定するか、又は現実環境の空間内の音源の位置を特定するために、任意選択的に並んで動作するマイクロフォンのアレイ(複数のマイクロフォンを含む)を含む。
【0046】
システム100は、システム100及び/又はディスプレイ(単数又は複数)120の向き及び/又は移動を検出するための向きセンサ(単数又は複数)110を含む。例えば、システム100は、向きセンサ(単数又は複数)110を使用して、システム100及び/又はディスプレイ(単数又は複数)120の位置及び/又は向きの変化を、現実環境内の物理的オブジェクトなどに関して追跡する。向きセンサ(単数又は複数)110は、1つ以上のジャイロスコープ及び/又は1つ以上の加速度計を含む。
【0047】
デバイス100aは、描画アプリケーション、プレゼンテーションアプリケーション、ワードプロセッシングアプリケーション、ウェブサイト作成アプリケーション、ディスクオーサリングアプリケーション、スプレッドシートアプリケーション、ゲームアプリケーション、電話アプリケーション、テレビ会議アプリケーション、電子メールアプリケーション、インスタントメッセージングアプリケーション、トレーニングサポートアプリケーション、写真管理アプリケーション、デジタルカメラアプリケーション、デジタルビデオカメラアプリケーション、ウェブブラウジングアプリケーション、デジタル音楽プレーヤアプリケーション、デジタルビデオプレーヤアプリケーション、及び/又はナビゲーションアプリケーションのうちの1つ以上などの、様々なアプリケーションをサポートするように構成されている。デバイス100aは、本明細書に列挙される実施例以外のアプリケーションをサポートすることができることを理解されたい。また、アプリケーションは、CGR環境において仮想オブジェクトとして現れ得ることも理解されたい。
【0048】
いくつかの実施形態では、デバイス100aは、ユーザからのジェスチャ又は他の入力を、現実環境において(例えば、画像センサ(単数又は複数)108を使用して)検出することによって、アプリケーション又は他の仮想オブジェクトとのユーザの対話を容易にする。例えば、画像センサ(単数又は複数)108を使用して、デバイス100aは、現実環境においてユーザの手及び/若しくは指の位置、又は一連の動きを検出することができる。次いで、デバイス100aは、これらの検出された位置及び/又は動きを、CGR環境内に表示されたアプリケーション(例えば、仮想アプリケーション)などの仮想オブジェクトとインタフェースするための入力として解釈する。このようにして、デバイス100aは、ユーザが、現実環境においてジェスチャ又は動きを実行することによって、CGR環境内に表示された仮想アプリケーション及び/又は他の仮想オブジェクトと対話することを可能にする。
【0049】
いくつかの実施形態では、現実世界内の1つ以上の物理的オブジェクトの表現は、デバイス100aのディスプレイ120上に表示され、その結果、ユーザは、CGR環境内の物理的オブジェクト(単数又は複数)を見ることができるため、現実世界の物理的オブジェクト(単数又は複数)と対話することができる。現実世界における物理的オブジェクト(単数又は複数)とのユーザ対話の結果としてデバイス100aにおいて受信された入力データは、デバイス100aによって使用されて、ユーザがCGR環境内のアプリケーション及び/又は他の仮想オブジェクトとインタフェースすることを可能にする。いくつかの実施形態では、デバイス100aが、1つ以上の物理的オブジェクトに関するジェスチャ(例えば、現実環境におけるユーザの手及び/若しくは指の位置又は一連の動き)を、現実環境において(例えば、画像センサ(単数又は複数)108を使用して)検出すると、この入力データがデバイス100aによって生成される。例えば、物理キーボードの1つ以上のキーに対応する場所(単数又は複数)においてデバイス100aによって(例えば、画像センサ(単数又は複数)108を使用して)検出された指ジェスチャは、物理キーボードのそれぞれのキー(単数又は複数)に対応するユーザ入力として解釈される。より具体的には、物理キーボードの特定のキーのアクティブ化を(例えば、画像センサ(単数又は複数)108を使用して)検出することにより、デバイス100aは、入力フィールドに入力するためのその特定のキーを含む入力文字列を生成する結果となる。直下に記載されるものなどのいくつかの実施形態では、物理キーボードは、ユーザによってアクティブ化されたキーを識別することによって、物理キーボードにおけるユーザ入力を検出し、かつ、物理キーボードは、デバイス100aによる入力フィールドへの入力のために、(例えば、通信バス(単数又は複数)150を使用して)アクティブ化されたキーをデバイス100aに通信する。そのような実施形態では、入力データは、現実世界内の物理デバイスによって生成され、(例えば、通信バス(単数又は複数)150を使用して)デバイス100aに通信される。デバイス100aは、入力データを受信し、上述したように、入力データを処理して、ユーザが、CGR環境内のアプリケーション(単数又は複数)及び/又は他の仮想オブジェクトとインタフェースすることを可能にする。
【0050】
いくつかの実施形態では、デバイス100aは、物理的オブジェクト(例えば、物理キーボード又は物理トラックパッド)によって入力が検出されている物理的オブジェクトからの入力を受信することによって、CGR環境内のアプリケーション又は他の仮想オブジェクトとのユーザの対話を容易にする。いくつかの実施形態では、デバイス100aは、ジェスチャを検出することもなく、物理的オブジェクト(単数又は複数)から入力を受信する。例えば、キーボード又はトラックパッドなどの物理デバイスは、(例えば、通信バス150(単数又は複数)を使用して)デバイス100aにユーザ入力を送信する。いくつかの実施形態では、デバイス100aは、物理的オブジェクト(単数又は複数)から入力を受信し、上述のように、ユーザからのジェスチャを(例えば、画像センサ(単数又は複数)108を使用して)検出することによって取得されたデータを用いて、受信された入力を補完する。そのような物理的オブジェクトの表現は、任意選択的に、CGR環境内に表示される。
【0051】
いくつかの実施形態では、デバイス100aは、物理的オブジェクトの表現の上に、又はその周囲に(例えば、近接して又は隣接して)配置された1つ以上の仮想オブジェクトを表示することによって、物理的オブジェクトの表現を拡張する。例えば、図2A図2Fに関して以下に説明するように、デバイス100aは、物理トラックパッドの表現上に仮想アプリケーションの一部分を表示する。別の例として、図4A図4Bに関して以下に説明するように、デバイス100aは、物理キーボードの表現上に仮想の入力制御のセットを表示する(オーバーレイする)。いくつかの実施形態では、仮想オブジェクトは、物理的オブジェクトの表現をオーバーレイして表示される(例えば、物理的オブジェクトの表現の最上に配置されるように表示される)。いくつかの実施形態では、オーバーレイされた仮想オブジェクト、又は任意選択的にその一部分は不透明であり、それによって、物理的オブジェクトの表現は、オーバーレイされた仮想オブジェクト(又はオーバーレイされた仮想オブジェクトの一部分)によって不明瞭になる。いくつかの実施形態では、オーバーレイされた仮想オブジェクト、又は任意選択的にその一部分は半透明であり、それによって物理的オブジェクトの表現は、オーバーレイされた仮想オブジェクト(又はオーバーレイされた仮想オブジェクトの一部分)によって部分的に不明瞭になる。そのような実施形態では、物理的オブジェクトの表現の一部分は、物理的オブジェクトの表現にオーバーレイして表示された仮想オブジェクトを通して可視(例えば、識別可能)である。図2A図2F及び図4A図4Bは、ディスプレイ120上に、物理入力デバイスの表現を表示し、かつ、CGR環境において物理入力デバイスの表現上に視覚的特徴をオーバーレイするデバイス100aを示す。換言すれば、デバイス100aは、CGR環境において、物理入力デバイスの表現に関連付けられた1つ以上の仮想的特徴を有する物理入力デバイスの表現を表示する。図2A図2F及び図4A図4Bでは、デバイス100aは、単一の表示構成要素(ディスプレイ120)を有する電話又はタブレットデバイスとして示されている。しかしながら、デバイス100aは、HMDデバイスなどの、CGR環境を表示するように構成された任意のデバイス、又はディスプレイを通して物理的オブジェクトが直接視認可能な、透明ディスプレイを有するデバイスであってもよく、ここで仮想オブジェクトは、透明ディスプレイ上に表示されるか、又は別の方法で視認可能であることを理解されたい。
【0052】
図2A図2F及び図4A図4Bに示される各物理入力デバイスは、デバイス100aの外部の現実環境における物理的オブジェクトである。物理入力デバイスは、仮想オブジェクトと、物理的オブジェクトの表現との組み合わせとして、CGR環境内に表示される(又は、あるいは、物理的オブジェクトが、透明ディスプレイを通してなどディスプレイを通して直接視認可能である)。例えば、いくつかの実施形態では、デバイス100aは、1つ以上の仮想の(例えば、コンピュータ生成された)属性又は特徴が、CGR環境の構成要素としてディスプレイ120上に表示され、かつ、物理入力デバイスの表現と関連付けられるように、物理入力デバイスの表現を拡張する。いくつかの実施例では、デバイス100aは、仮想アプリケーションの一部分の画像を生成し、CGR環境内の物理トラックパッドの表現の表示された場所に対応するディスプレイ120上の位置に、画像を表示する。いくつかの実施例では、デバイス100aは、ユーザ入力機能に関連付けられた様々なキーボードキーの画像を生成し、CGR環境内の物理キーボードの表現のそれぞれのキーの表示された場所に対応するディスプレイ120上の位置に、画像を表示する。あるいは、ディスプレイは透明であり、キーボードキーは、物理キーボードが透明ディスプレイを通して可視である場所に対応するディスプレイ上の位置に表示される。
【0053】
いくつかの実施形態では、デバイス100aは、ディスプレイ120上に仮想アプリケーションを生成及び表示する。仮想アプリケーションは、CGR環境の構成要素として、ディスプレイ120上にデバイス100aによって表示されるコンピュータ生成ユーザインタフェース(UI)である。デバイス100aは、例えば、アプリケーションの視覚的外観、アプリケーションの表示された向き、アプリケーションの動作、アプリケーションの構成要素、及びアプリケーションの様々な構成要素の機能などの、様々な属性を備えた仮想アプリケーションを生成する。いくつかの実施形態では、デバイス100aは、アプリケーションの様々な構成要素を検出し、アプリケーションの検出された構成要素に基づいて動作を実行する。例えば、デバイス100aは現実環境内の物理入力デバイスを識別し、表示されたアプリケーションの入力フィールドを検出したことに応じて、デバイス100aはCGR環境内の物理入力デバイスの表現を拡張し、それによって、デバイス100aは、以下でより詳細に説明するように、(その拡張機能に従って)現実環境内で物理入力デバイスを使用して提供される入力(例えば、ユーザ入力)を受信することができ、かつ、仮想アプリケーションの入力フィールドを更新することができる。
【0054】
いくつかの実施形態では、アプリケーションの表示される向きは、ユーザの実際の場所、又はユーザの予測される若しくは予期される場所に対する(例えば、デバイス100aの場所に基づく)CGR環境において表示されるアプリケーションの向き(例えば、角度又は位置)を含む。例えば、仮想アプリケーションは、ユーザがアプリケーションを容易に視認することができるように、ユーザに面するように方向付けられる。より具体的には、いくつかの実施形態では、(例えば、ユーザがデバイス100aを着用しているために)ユーザはデバイス100aと同一位置にあると推定されるため、アプリケーションは、デバイス100aに面するように方向付けられる。いくつかの実施形態では、(現実の、予測される、予期される、又は他のものの)ユーザの場所は、デバイス100aの場所若しくは位置、及び/又はCGR環境を含む1つ以上の物理的オブジェクトの場所若しくは位置などの、1つ以上の要因に基づいて近似される。例えば、いくつかの実施形態では、ユーザの予期される場所は、アプリケーションが投影される場所に配置される物理キーボード又は物理トラックパッドの表現の近くにあると判定される。
【0055】
ここで図2A図2Fを参照すると、デバイス100aは、物理的な卓上面212上に配置された物理入力デバイス210(例えば、トラックパッド)を(例えば、画像センサ(単数又は複数)108を使用して)検出し、ディスプレイ120上に、物理的な卓上面の表現222上に配置された物理入力デバイスの表現221を表示する。あるいは、図2A図2Fに関して説明した実施形態は、透明ディスプレイを有するデバイスを含むことができ、仮想オブジェクトは透明ディスプレイ上に表示され、一方、物理的オブジェクトは透明ディスプレイを通して視認可能である。物理入力デバイスの表現221は、物理的な卓上面212に対する物理入力デバイス210の位置と同じ位置を、物理的な卓上面の表現222に対して有する。デバイス100aはまた、仮想アプリケーション201を表示する。仮想アプリケーション201は、入力フィールド201a~201dを含む。入力フィールド201a~201dのうちの1つ以上を検出したことに応じて、デバイス100aは、仮想アプリケーション201の一部分201’を物理入力デバイスの表現221上に表示(例えば、投影)し、この一部分201’は検出された入力フィールド201a~201dを含む。例えば、図2Aに示されるように、物理入力デバイスの表現221上に投影される仮想アプリケーションの一部分201’は、検出された入力フィールド201a及び201bの投影201a’及び201b’を含む。次いで、デバイス100aは、物理入力デバイス210から、入力(例えば、ユーザ入力)(例えば、物理入力デバイス210とのユーザ対話を検出する物理入力デバイス210によって検出された入力)を(例えば、通信バス(単数又は複数)150を使用して)受信し、入力フィールド201a~201d/201a’~201d’を更新する。
【0056】
いくつかの実施形態では、物理入力デバイス(例えば、トラックパッド210、キーボード410)は、デバイス100aの外部にあり(例えば、デバイス100aから分離しており)、現実環境内に、例えばタッチスクリーンディスプレイなどの表示構成要素を含まない。したがって、デバイス100aは、CGR環境において、物理入力デバイスを物理入力デバイスの表現に変換するように構成されているが、現実環境では物理入力デバイスから欠落している表示機能が追加されている。デバイス100aはまた、仮想的な特徴(例えば、入力機能)を物理入力デバイスの表現と関連付けることによって、CGR環境内の物理入力デバイスの表現の機能を拡張することができる。例えば、タッチ感知面を有し、かつ、現実環境内では表示能力を有さないトラックパッド(例えば、トラックパッド210)は、現実環境内の物理トラックパッドのタッチ入力が、CGR環境内のトラックパッドの表現上に表示されるコンテンツに関連付けられるように、CGR環境においてデバイス100aによって拡張されて、トラックパッドの表現上に配置されたコンピュータアプリケーション(例えば、アプリケーション201)の少なくとも一部分(例えば、201’)のディスプレイを組み込む。このようにして、デバイス100aは、CGR環境における物理入力デバイス(例えば、トラックパッド)の機能をカスタマイズすることによって(例えば、物理入力デバイスの表現上に表示されるアプリケーションの外観をカスタマイズすることによって)、システム100の動作を拡張する。例えば、デバイス100aは、仮想的な特徴を生成及び表示し、かつ、CGR環境内に表示された特定のアプリケーションにカスタマイズされる方法でそれらの仮想的な特徴を物理入力デバイスと関連付けることによって、システム100を拡張する。物理入力デバイスの表現を拡張させて、その機能をCGR環境内でカスタマイズすることによって、デバイス100aは、追加の表示された制御オプション(例えば、メニューオプションなど)で、CGR環境を乱すことなく、コンピュータアプリケーション(例えば、201)とインタフェースするためのカスタマイズされた制御オプションをユーザに提示する。これにより、デバイス100aの操作性を向上させ、ユーザデバイスインタフェースをより効率的にし(例えば、拡張された物理入力デバイスと操作/インタフェースする際にユーザが適切な入力を提供するのを助け、ユーザの誤りを低減することによって)、加えて、ユーザがデバイス100aをより迅速かつ効率的に使用するのを可能にすることによって、電力使用量を低減し、デバイス100aのバッテリ寿命を改善する。
【0057】
図2Aを参照すると、デバイス100aは、(例えば、画像センサ(単数又は複数)108を使用して)現実環境内の物理的な卓上面212上に配置された物理トラックパッド210を検出する。トラックパッド210は、(例えば、タッチ感知面によって提供される)タッチ感知機能を有する現実環境内の物理入力デバイスであるが、表示構成要素及び任意の表示能力を欠いている。デバイス100aは、ディスプレイ120上に示されるCGR環境において、卓上面212の表現222、卓上面の表現222上に配置されたトラックパッド210の表現221、及び卓上面の表現222上に投影された仮想アプリケーション201を表示する。図2A図2Fに示されるもののような、いくつかの実施形態では、デバイス100aは、CGR環境において、壁又は卓上面などの物理的表面の表現上に、仮想アプリケーション201をオーバーレイする。いくつかの実施形態では、デバイス100aは、仮想アプリケーション201がCGR環境内で浮いているように見えるように、仮想表面上に仮想アプリケーション201をオーバーレイする。仮想アプリケーション201は、例えば、ワードプロセッシングアプリケーション、ポータブルドキュメントフォーマット(PDF)アプリケーション、又はウェブブラウジングアプリケーションを使用して変更され得る、ユーザ同意を実行するための形態を含む。仮想アプリケーション201は、(例えば、ユーザ入力に基づいて)「同意する」オプションを選択するためのラジオボタンである入力フィールド201a、(例えば、ユーザ入力に基づいて)「辞退する」オプションを選択するためのラジオボタンである入力フィールド201b、ユーザ同意フォームに対する署名を受信するためのデジタル署名フィールドである入力フィールド201c、及び日付を受信するためのテキスト入力フィールドである入力フィールド201dを含む。
【0058】
デバイス100aは、表示された仮想アプリケーション201内の入力フィールド201a~201dを検出し、混合環境内のトラックパッドの表現221上に、検出された入力フィールド201a~201dのうちの1つ以上を含む仮想アプリケーションの一部分201’を(例えば、同時に)表示する。例えば、図2Aに示されるように、入力フィールド201a及び201bを検出したことに応じて、デバイス100aは、CGR環境内のトラックパッドの表現221上に、入力フィールド201aの投影201a’及び入力フィールド201bの投影201b’を含む一部分201’を、それぞれの入力フィールド201a及び201bに対応する「同意する」及び「辞退する」のテキストと共に表示する。
【0059】
ここで図2Bを参照すると、デバイス100aは、「同意する」ラジオボタン201aの選択/アクティブ化に対応する入力(例えば、ユーザ入力)を受信する。具体的には、物理トラックパッド210は、CGR環境内のトラックパッドの表現221上の入力フィールド201aにおける投影201a’の表示された場所に対応する物理トラックパッド210上の場所での入力215(例えば、破線円によって表されているユーザ入力)を受信する。入力215は、例えば、タッチアンドリフトジェスチャ、タッチアンドホールドジェスチャ、タッチアンドスライド(例えば、スワイプ)ジェスチャ、又は強度構成要素を有するタッチ入力などのタッチ入力であることができ、その強度は閾値を超える(例えば、強度(力又は圧力)を有するトラックパッド210上のタッチ入力であり、その接触の強度が、トラックパッドのタッチ感知面の下の又は隣接する1つ以上の力又は圧力センサを使用して判定又は測定される値の範囲を有する)。いくつかの実施形態では、入力(例えば、ユーザ入力)は、これらのタッチ入力のうちの1つ以上を含む。
【0060】
デバイス100aは、CGR環境内のトラックパッドの表現221上に仮想アプリケーションの一部分201’を表示するため、かつ、CGR環境内のトラックパッドの表現221の場所及び位置が、現実環境内の物理トラックパッド210の実際の場所に対応するため、ユーザは、現実環境内のトラックパッド210に関する入力フィールドの投影201a’及び201b’の場所を正確に判定する(及び実際には、CGR環境内を視認する)ことができる。デバイス100aは、物理トラックパッド210からタッチ入力を(例えば、通信バス(単数又は複数)150を使用して)受信し、かつ、トラックパッド210上のタッチ入力215の場所を、CGR環境内のトラックパッドの表現221上に表示される仮想コンテンツ(例えば、仮想アプリケーションの一部分201’)の場所に関連付けて、タッチ入力215が、現実環境において、CGR環境内の「同意する」オプションに関連付けられたラジオボタン入力フィールドの投影201a’の場所に対応すると判定する。いくつかの実施形態では、デバイス100aは、入力(例えば、ユーザ入力)(例えば、タッチ入力215)を検出したことに応じて、フィードバックを提供する。例えば、デバイス100aは、入力によって実行される選択を示すオーディオ(例えば、「クリック」音)を生成する。任意選択的に、デバイス100aは、トラックパッド210において(例えば、マウスクリックを示す)振動を生成するコマンドを(例えば、通信バス(単数又は複数)150を使用して)通信することによって、触覚フィードバックを提供する。いくつかの実施例では、デバイス100aは、入力(例えば、ユーザ入力)の受信(及び、指示)に応じて、CGR環境内に視覚フィードバックを表示する。
【0061】
タッチ入力215が「同意する」オプションに関連付けられたラジオボタン入力フィールドの投影201a’に対応すると判定したことに応じて、デバイス100aは、入力フィールド201aの選択としてタッチ入力215を解釈し、それに応じて入力フィールド201aを更新する。例えば、図2Bに示されるように、デバイス100aは、入力フィールド201aの選択を示すために仮想アプリケーション201上に表示された入力フィールド201aを暗くする。いくつかの実施形態では、デバイス100aはまた、仮想アプリケーションの表示された一部分201’上の「同意する」ラジオボタンの投影201a’も暗くする。タッチ入力215は入力フィールド201bの選択として解釈されなかったため、デバイス100aは、投影201b’又は入力フィールド201bを暗くしない。
【0062】
図2C及び図2Dに示されるように、デバイス100aは、入力フィールド201cを検出し、CGR環境内のトラックパッドの表現221上に、ユーザ同意フォームに署名するためのデジタル署名フィールドである入力フィールド201cの投影201c’を含む、仮想アプリケーション201の一部分201’を表示する。デバイス100aは、仮想アプリケーション201上に、暗くされたラジオボタン入力フィールド201a、及び変更されていないラジオボタン入力フィールド201bを表示する。図2C及び図2Dに示されるもののような、いくつかの実施形態では、デバイス100aは、トラックパッドの表現221上に表示される一部分201’の境界を表す、仮想アプリケーション201上のインジケータ225を表示する。インジケータ225は、デバイス100aによって検出された入力フィールドをユーザにハイライトし、物理入力デバイス(例えば、トラックパッド)の表現221上に表示される仮想アプリケーションの一部分の視覚的表現を提供する。
【0063】
図2Dに示されるように、デバイス100aは、デジタル署名フィールドに署名するための入力(例えば、ユーザ入力)を受信する。物理トラックパッド210は、CGR環境内のトラックパッドの表現221上の入力フィールド201cにおける投影201c’の表示された場所に対応する、物理トラックパッド210上の場所でのタッチ入力217(破線で表されている)を受信する。任意選択的に、タッチ入力217は、例えば、タッチアンドリフトジェスチャ、タッチアンドホールドジェスチャ、タッチアンドスライド(例えば、スワイプ)ジェスチャ、又は強度構成要素を有するタッチ入力などのタッチ入力であり、その強度は閾値を超える(例えば、強度(力又は圧力)を有するトラックパッド210上のタッチ入力であり、その接触の強度が、トラックパッドのタッチ感知面の下の又は隣接する1つ以上の力又は圧力センサを使用して判定又は測定される値の範囲を有する)。
【0064】
デバイス100aは、CGR環境内のトラックパッドの表現221上に仮想アプリケーションの一部分201’を表示するため、かつ、CGR環境内のトラックパッドの表現221の場所及び位置が、現実環境内の物理トラックパッド210の実際の場所に対応するため、ユーザは、現実環境内のトラックパッド210に関する入力フィールドの投影201c’の場所を正確に判定する(及び実際には、CGR環境内を視認する)ことができる。これにより、ユーザは、物理トラックパッド210のタッチ感知面に沿って指を正確にトレースして、CGR環境においてデジタル署名を入力すること可能になる。デバイス100aは、物理トラックパッド210からタッチ入力を(例えば、通信バス(単数又は複数)150を使用して)受信し、かつ、トラックパッド210上のタッチ入力217の動きを、CGR環境内のトラックパッドの表現221上に表示される仮想コンテンツ(例えば、一部分201’)の場所に関連付けて、タッチ入力217が、現実環境において、CGR環境内のデジタル署名入力フィールドの投影201c’上の署名に対応すると判定する。いくつかの実施形態では、デバイス100aは、タッチ入力217を検出したことに応じて、フィードバックを提供する。
【0065】
タッチ入力217を受信したことに応じて、デバイス100aは、タッチ入力をデジタル署名として解釈し、それに応じて入力フィールド201cを更新する。例えば、図2Dに示されるように、デバイス100aは、仮想アプリケーション201内のデジタル署名入力フィールド201c上に、デジタル署名227を表示する。いくつかの実施形態では、デバイス100aはまた、仮想アプリケーションの一部分201’上に表示されるデジタル署名入力フィールドの投影201c’上に、デジタル署名227を(例えば、同時に)表示する。いくつかの実施形態では、デバイス100aは、タッチ入力217を検出すると同時に、入力フィールド201cを更新する。いくつかの実施形態では、デバイス100aは、タッチ入力217が完了した(例えば、入力のリフトオフが検出された)後に、入力フィールド201cを更新する。
【0066】
図2E及び図2Fに示されるように、デバイス100aは、入力フィールド201dを検出し、CGR環境内のトラックパッドの表現221上に、入力フィールド201dの「日付:」テキスト228、及び日付入力を受信するためのテキスト入力フィールドである入力フィールド201dの投影201d’を含む、仮想アプリケーション201の一部分201’を表示する。デバイス100aは、入力フィールド201dがテキスト入力フィールドであると判定し、それに応じて、CGR環境内のトラックパッドの表現221上に仮想キーボード229を表示する。図2E及び図2Fに示されるものなどの、いくつかの実施形態では、デバイス100aは、仮想アプリケーションの一部分201’、並びに入力フィールド(及びテキスト228)の含まれる投影201d’に加えて、仮想キーボード229を表示する。他の実施形態では、デバイス100aは、入力フィールド(及びテキスト228)の投影201d’の代わりに、又は仮想アプリケーションの一部分201’の代わりに、仮想キーボード229を表示する。図2Eに示されるように、デバイス100aはまた、仮想アプリケーション201上に、暗くされたラジオボタン入力フィールド201a、変更されていないラジオボタン入力フィールド201b、及び署名されたデジタル署名入力フィールド201cを表示する。
【0067】
図2Fに示されるように、デバイス100aは、テキスト入力入力フィールドのテキストに入力するための入力(例えば、ユーザ入力)を受信する。物理トラックパッド210は、CGR環境内のトラックパッドの表現221上に表示される仮想キーボード229上のキーのそれぞれの表示された場所に対応する物理トラックパッド210上の場所において、タッチ入力219A、219B、及び219C(破線円で表さていれる)を受信する。それぞれのユーザ入力219A~219Cは、任意選択的に、例えば、タッチアンドリフトジェスチャ、タッチアンドホールドジェスチャ、タッチアンドスライド(例えば、スワイプ)ジェスチャ、又は強度構成要素を有するタッチ入力などのタッチ入力であり、その強度は閾値を超える(例えば、強度(力又は圧力)を有するトラックパッド210上のタッチ入力であり、その接触の強度が、トラックパッドのタッチ感知面の下の又は隣接する1つ以上の力又は圧力センサを使用して判定又は測定される値の範囲を有する)。
【0068】
デバイス100aは、CGR環境内のトラックパッドの表現221上に仮想キーボード229を表示するため、かつ、CGR環境内のトラックパッドの表現221の場所及び位置が、現実環境内の物理トラックパッド210の実際の場所に対応するため、ユーザは、現実環境内のトラックパッド210に関する仮想キーボード229のキーの場所を正確に判定する(及び実際には、CGR環境内を視認する)ことができる。デバイス100aは、物理トラックパッド210からタッチ入力を(例えば、通信バス(単数又は複数)150を使用して)受信し、トラックパッド210上のそれぞれのタッチ入力219A~219Cのそれぞれの場所を、CGR環境内のトラックパッドの表現221上に表示された仮想キーボード229のキーの場所と関連付ける。このようにして、デバイス100aは、現実環境におけるタッチ入力219A~219Cが、それぞれ、CGR環境内の「D」、「E」、及び「C」キーの場所に対応すると判定する。いくつかの実施形態では、デバイス100aは、ユーザ入力(例えば、タッチ入力219)を検出したことに応じて、フィードバックを提供する。例えば、デバイス100aは、仮想キーボードキーの選択を示すオーディオ(例えば、「クリック」音)を生成する。デバイス100aは、任意選択的に、トラックパッド210において(例えば、キー押圧を示す)振動を生成するコマンドを(例えば、通信バス(単数又は複数)150を使用して)通信することによって、触覚フィードバックを提供する。いくつかの実施例では、デバイス100aは、入力(例えば、ユーザ入力)の受信を示すために、CGR環境内に視覚フィードバックを表示する。
【0069】
タッチ入力219Aが仮想キーボード229上の「D」キーの場所に対応すると判定したことに応じて、デバイス100aは、タッチ入力219Aを仮想キーボード229上の「D」キーの選択として解釈し、それに応じて入力フィールド201dを更新する。例えば、図2Fに示されるように、デバイス100aは、仮想アプリケーション201上に表示されたテキスト入力入力フィールド201d内に「D」の文字を表示する。タッチ入力219B及び219Cが、仮想キーボード229上の「E」及び「C」キーの場所にそれぞれ対応すると判定したことに応じて、デバイス100aは、タッチ入力219B及び219Cを仮想キーボード229上のそれぞれの「E」及び「C」キーの選択として解釈し、図2Fに示されるように、仮想アプリケーション201上に表示されたテキスト入力入力フィールド201d内に「E」及び「C」の文字を含むように、入力フィールド201dを更新する。いくつかの実施形態では、デバイス100aは、トラックパッドの表現221上のテキスト入力フィールド201dに対する更新を表示する。例えば、図2Fに示されるように、文字「DEC」が、テキスト入力入力フィールドの投影201d’に示される。
【0070】
図3は、物理入力デバイスの表現を表示し、かつ、CGR環境において物理入力デバイスの表現上に視覚的特徴をオーバーレイするための例示的な技術300を示す。いくつかの実施形態では、本技術は、図1A図1B及び図2A図2Fを参照して説明されるシステム100によって実行される。
【0071】
デバイス(例えば、100a)は、CGR環境内にアプリケーション(例えば、仮想アプリケーション)(例えば、201)(例えば、ウェブブラウザ、PDF、メッセージングアプリケーションなど)を表示する。いくつかの実施形態では、アプリケーションは、CGR環境内の物理的表面の表現上にアプリケーションを投影すること、又はCGR環境内の仮想表面上にアプリケーションを投影することによって表示される。
【0072】
ブロック304において、表示されたアプリケーション内の入力フィールド(例えば、テキスト入力フィールド(201d)、データ(例えば、デジタル署名)入力フィールド(201c)、ラジオボタン(201a、201b))を検出したことに応じて、デバイス(例えば、100a)は、物理入力デバイス(例えば、210)の表現(例えば、221)上に、表示されたアプリケーション(例えば、201)の少なくとも一部分(例えば、201’)を表示し(例えば、投影し)、この表示されたアプリケーションの一部分は、検出された入力フィールド(例えば、201a’、201b’、201c’、201d’)を含む。いくつかの実施形態では、物理入力デバイスは、トラックパッド(例えば、210)、又は表示構成要素を含まない、CGR環境を視認/表示するための電子デバイス(例えば、100a)と、仮想アプリケーションが元々表示されている表面(例えば、卓上212)との両方から分離されかつ離れている(例えば、外部の)他の物理的な(例えば、仮想ではない)タッチ感知面である。
【0073】
いくつかの実施形態では、本技術は、表示されたアプリケーション(例えば、201)内の入力フィールド(例えば、201a、201b、201c、201d)を検出したことに応じて、物理入力デバイスの表現(例えば、221)上に仮想キーボードキー(例えば、229)を表示するデバイス(例えば、100a)を更に含む。いくつかの実施形態では、仮想キーボード(例えば、ソフトキーボード)は、図2Fに示されるように、表示されたアプリケーションの一部分(例えば、201’)及び含まれた入力フィールド(例えば、201d’)に加えて、物理入力デバイスの表現上に表示/投影される。いくつかの実施形態では、仮想キーボードは、仮想入力フィールドの代わりに、又は表示されたアプリケーションの代わりに、物理入力デバイスの表現上に表示/投影される。
【0074】
いくつかの実施形態では、入力は、仮想キーボードキーの表示された場所に対応する物理入力デバイス(例えば、210)上の場所におけるタッチ入力(例えば、219A~219C)を含む。図2E及び図2Fに示されるもののような、いくつかの実施形態では、入力フィールド(例えば、201d’)の投影は、1つ以上の仮想キーを有する仮想キーボード(例えば、ソフトキーボード229)と共に表示され、入力は、仮想キーの1つ以上が表示される場所に対応する物理入力デバイス上の場所におけるユーザタッチを含む。いくつかの実施形態では、仮想キーボードキーは、検出された入力フィールドがテキスト入力フィールド(例えば、201d)であるとの判定に従って表示される。いくつかの実施形態では、物理入力デバイスは、物理キーボードキーを備えた物理キーボードであり、それぞれの表示されたキーボードキーは、それらが表示される物理キーボードキーとは異なる値を有する(例えば、物理キーボードキーは、数字キーパッドに対応するキーのサブセットを含み、表示されたキーは、数字キーパッド用のキーの上に表示される編集機能(例えば、コピーコマンド、ペーストコマンドなど)として表示される)。
【0075】
いくつかの実施形態では、物理入力デバイスは、タッチ感知面(例えば、トラックパッド210)である。いくつかの実施形態では、タッチ感知面は、表示構成要素(例えば、表示スクリーン又はタッチスクリーンディスプレイ)を含まない。いくつかの実施形態では、物理入力デバイス(例えば、210)は、電子デバイス(例えば、100a)の外部にある。
【0076】
いくつかの実施形態では、表示されたアプリケーションの少なくとも一部分(例えば、201’)を物理入力デバイス(例えば、210)の表現(例えば、221)上に投影することは、CGR環境において、物理入力デバイスの表現上に配置された(例えば、オーバーレイされた)、検出された入力フィールド(例えば、201a’、201b’、201c’、201d’)の投影を表示することを含む。
【0077】
いくつかの実施形態では、本技術は、デバイス(例えば、100a)を更に含み、検出された入力フィールドがテキスト入力フィールド(例えば、201d)であるとの判定に従って、表示されたアプリケーションの少なくとも一部分(例えば、201’)を物理入力デバイスの表現(例えば、221)上に表示することが、CGR環境において、物理入力デバイスの表現上に配置された(例えば、オーバーレイされた)仮想テキストボックス(例えば、201d’)を表示することを含む。
【0078】
いくつかの実施形態では、本技術は、デバイス(例えば、100a)を更に含み、検出された入力フィールドがデジタル署名フィールド(例えば、201c)であるとの判定に従って、表示されたアプリケーションの少なくとも一部分(例えば、201’)を物理入力デバイスの表現(例えば、221)上に表示することが、CGR環境において、物理入力デバイスの表現上に配置された(例えば、オーバーレイされた)仮想デジタル署名ボックス(例えば、201c’)を表示することを含む。
【0079】
いくつかの実施形態では、本技術は、デバイス(例えば、100a)を更に含み、検出された入力フィールドが1つ以上のラジオボタン(例えば、201a、201b)を含むとの判定に従って、表示されたアプリケーションの少なくとも一部分(例えば、201’)を物理入力デバイスの表現(例えば、221)上に表示することが、CGR環境において、物理入力デバイスの表現上に配置された(例えば、オーバーレイされた)1つ以上の仮想ラジオボタン(例えば、201a’、201b’)を表示することを含む。いくつかの実施形態では、物理入力デバイスの表現上に、表示されたアプリケーションの少なくとも一部分を表示することは、CGR環境において、検出された入力フィールドの1つ以上のラジオボタンに関連付けられたテキストを表示することを更に含む。
【0080】
ブロック306において、物理入力デバイス(例えば、210)で受信された入力(例えば、215、217、219A~219C)を検出したことに応じて、デバイス(100a)は、入力フィールド(例えば、201a、201b、201c、201d)を入力で更新する。例えば、電子デバイスは、ユーザスワイプジェスチャ又はタッチジェスチャが、トラックパッド(例えば、210)、又は表示構成要素を含まない、CGR環境を視認/表示するための電子デバイスと、仮想アプリケーションが元々表示される面(例えば、212)との両方の外部にある他の物理的な(例えば、仮想ではない)タッチ感知面、において受信されたことを検出する。電子デバイスは、物理入力デバイスにおける入力を示す入力データを受信し、入力データを使用して入力フィールドを更新する。
【0081】
いくつかの実施形態では、入力(例えば、215、217、219A~219C)は、物理入力デバイスの表現(例えば、221)上に表示される入力フィールド(例えば、201a’、201b’、201c、201d’)の投影の場所に対応する、物理入力デバイス(例えば、210)上の場所におけるタッチ入力を含む。いくつかの実施形態では、投影された入力フィールドは、物理入力デバイスの表現上に表示された仮想テキストボックス(例えば、テキスト入力フィールド201d’)であり、入力は、(例えば、テキスト入力カーソルを配置するために)CGR環境内で仮想テキストボックスが表示される場所に対応する、現実環境における、物理入力デバイス上の場所におけるユーザタッチを含む。いくつかの実施形態では、投影された入力フィールドは、物理入力デバイスの表現上に表示された仮想デジタル署名ボックス(例えば、201c’)であり、入力は、CGR環境内で仮想デジタル署名ボックスが表示される場所に対応する、現実環境における、物理入力デバイス上の場所におけるユーザタッチ(例えば、217)を含む。いくつかの実施形態では、投影された入力フィールドは、物理入力デバイス上に表示された1つ以上の仮想ラジオボタン(例えば、201a’、201b’)を含み、入力は、CGR環境内で1つ以上の仮想ラジオボタンが表示される場所に対応する、現実環境における、物理入力デバイス上の場所におけるユーザタッチ(例えば、215)を含む。いくつかの実施形態では、タッチ入力は強度構成要素を有する。いくつかの実施形態では、タッチ入力は、物理入力デバイス上のスワイプである。
【0082】
いくつかの実施形態では、本技術は、物理入力デバイス(例えば、210)で受信された入力(例えば、215、217、219A~219C)を検出したことに応じて、触覚フィードバックを生成するデバイス(例えば100a)を更に含む。例えば、デバイスは、(例えば、通信バス(単数又は複数)150を使用して)入力デバイスと通信して、振動などの物理的フィードバックを提供する。いくつかの実施形態では、触覚フィードバックは、マウスボタン、トラックパッド上のボタン、又はキーボード上のキーをクリックする際などのクリック応答を模倣する。いくつかの実施形態では、触覚フィードバックは、クリック音などの聴覚フィードバックを含む。
【0083】
いくつかの実施形態では、デバイス(例えば、100a)が入力フィールドを入力で更新することは、物理入力デバイス(例えば、210)における入力(例えば、215、217、219A~219C)を示す入力データを受信することと、受信された入力データに従って入力フィールド(例えば、201a、201b、201c、201d)を更新することと、を含む。
【0084】
ブロック308において、デバイス(例えば、100a)は、更新された入力フィールド(例えば、201a、201b、201c、201d)を表示する。いくつかの実施形態では、更新された入力フィールド(例えば、図2Fに示される、201a、201c、201d)は、アプリケーション内に表示される。いくつかの実施形態では、更新された入力フィールドは、物理入力デバイス(例えば、210)の表現(例えば、221)上に表示された入力フィールドの投影(例えば、201a’、201b’、201c’、201d’)内に表示される。いくつかの実施形態では、更新された入力フィールドは、物理入力デバイスの表現上に投影されたアプリケーションの一部分(例えば、201’)内に表示された、アプリケーション及び投影された入力フィールドの両方に表示される。
【0085】
いくつかの実施形態では、更新された入力フィールドを表示することは、アプリケーション(例えば、201)内に更新された入力フィールドを表示することを含む。例えば、表示されたアプリケーション内に表示された入力フィールド(例えば、201a、201b、201c、201d)は、ユーザからの入力を含むように更新される。いくつかの実施形態では、更新された入力フィールドは、(例えば、図2Fに示されるように)ユーザによって入力されたテキストを有するテキストボックス(例えば、201d)として表示される。いくつかの実施形態では、更新された入力フィールドは、ユーザによって入力されたテキスト(例えば、デジタル署名227)を有するデジタル署名ボックス(例えば、201c)として表示される。いくつかの実施形態では、更新された入力フィールドは、ユーザによって選択された1つ以上のラジオボタン(例えば、201a)として表示される。
【0086】
いくつかの実施形態では、更新された入力フィールドを表示することは、物理入力デバイス(例えば、210)の表現(例えば、221)上に投影されたアプリケーションの一部分(例えば、201’)に表示された入力フィールド(例えば、201a’、201b’、201c’、201d’)の投影内に、更新された入力フィールドを表示することを含む。例えば、物理入力デバイスの表現上に表示/投影される入力フィールドの投影は、ユーザからの入力を含むように更新される。いくつかの実施形態では、更新された入力フィールドは、(例えば、図2Fに示されるように)ユーザによって入力されたテキストを有するテキストボックス(例えば、201d’)の表現として表示される。いくつかの実施形態では、更新された入力フィールドは、ユーザによって入力されたテキスト(例えば、デジタル署名)を有するデジタル署名ボックス(例えば、201c’)の表現として表示される。いくつかの実施形態では、更新された入力フィールドは、ユーザによって選択された1つ以上のラジオボタン(例えば、201a’)として表示される。
【0087】
図4A図4Bに示されるように、デバイス100aは、物理的な卓上面212上に配置された物理入力デバイス410(例えば、(ファンクションキー415を含む)キーを有するキーボード)を(例えば、画像センサ(単数又は複数)108を使用して)検出し、ディスプレイ120上に、物理的な卓上面の表現222上に配置された物理入力デバイスの表現421を表示する。物理入力デバイスの表現421は、物理的な卓上面212に対する物理入力デバイス410の位置と同じ位置を、物理的な卓上面の表現222に対して有する。更に、キーボード410の表現421は、(ファンクションキー415の表現425及び数字キーの表現を含む)キーボード410上の全てのキーの表現421aを含み、それぞれのキーボードキーのそれぞれの表現421aは、物理キーボード410に対する、対応する物理キーの位置と同じ位置を、キーボードの表現421に対して有する。
【0088】
デバイス100aはまた、第1の状態401aを有する仮想アプリケーション401を表示する。デバイス100aは、仮想アプリケーションの現在の(第1の)状態401aに固有の第1の入力制御のセットを判定し、物理入力デバイスの表現421上に第1の入力制御のセットを投影する。仮想アプリケーションの第2の状態401b(例えば、仮想アプリケーションの第1の状態、又は全く異なるアプリケーションへの更新)を検出したことに応じて、デバイス100aは、仮想アプリケーションの第2の状態401bに固有の第2の入力制御のセットを判定し、物理入力デバイスの表現421上に第2の入力制御のセットを投影する。
【0089】
いくつかの実施形態では、物理入力デバイス(例えば、トラックパッド210、キーボード410)は、デバイス100aの外部にあり(例えば、デバイス100aから分離しており)、現実環境内に、例えばタッチスクリーンディスプレイなどの表示構成要素を含まない。したがって、デバイス100aは、CGR環境において、物理入力デバイスを物理入力デバイスの表現に変換することができるが、現実環境では物理的デバイスから欠落している表示機能が追加されている。デバイス100aはまた、仮想的な特徴(例えば、入力機能又は入力制御)を物理入力デバイスの表現と関連付けることによって、CGR環境内の物理入力デバイスの機能を拡張することができる。例えば、異なる機能(例えば、コンピュータアプリケーションがワードプロセッシングアプリケーションである場合に、コピー又はペーストコマンド)をキーと関連付けることによって、現実環境内において数を入力するようにプログラムされたキー(例えば、数字キー9)を有する物理キーボードを、CGR環境内でデバイス100aによって再構成することができる。更に、デバイス100aは、CGR環境内のキーボードキーの表現上に、カスタマイズされた機能の仮想表現(例えば、キーボードキーの表現上に表示されたコピー又はペーストアイコン)を表示する。したがって、デバイス100aは、仮想的な特徴を生成及び表示し、かつ、CGR環境内に表示された特定のアプリケーションにカスタマイズされる方法でそれらの仮想的な特徴を物理入力デバイスと関連付けることで、物理入力デバイスの機能をCGR環境内でカスタマイズすることによって、システム100の動作を拡張する。物理入力デバイスを拡張させて、その機能をCGR環境内でカスタマイズすることにより、デバイス100aは、追加の表示された制御オプション(例えば、メニューオプションなど)でCGR環境を乱すことなく、コンピュータアプリケーション(例えば、401)とインタフェースするためのカスタマイズされた制御オプションをユーザに提示する。これにより、デバイス100aの操作性を向上させ、ユーザデバイスインタフェースをより効率的にし(例えば、拡張された物理入力デバイスと操作/インタフェースする際にユーザが適切な入力を提供するのを助け、ユーザの誤りを低減することによって)、加えて、ユーザがデバイス100aをより迅速かつ効率的に使用するのを可能にすることによって、電力使用量を低減し、デバイス100aのバッテリ寿命を改善する。
【0090】
ここで図4Aを参照すると、デバイス100aは、(例えば、画像センサ(単数又は複数)108を使用して)現実環境において物理的な卓上面212上に配置された物理キーボード410を検出する。キーボード410は、(例えば、キーボードキー410a及びファンクションキー415によって提供される)ユーザ入力機能を有するが、表示構成要素及び任意の表示能力を欠く、現実環境内の物理入力デバイスである。デバイス100aは、ディスプレイ120上に示されるCGR環境において、卓上面212の表現222、卓上面の表現222上に配置されたキーボード410の表現421、及び卓上面の表現222上に投影された仮想アプリケーション401を表示する。図4A図4Bに示されるもののような、いくつかの実施形態では、デバイス100aは、CGR環境における壁又は卓上面などの物理的表面の表現上に、仮想アプリケーション401を投影する。いくつかの実施形態では、デバイス100aは、仮想アプリケーション401が例えばCGR環境内で浮いているように見えるように、仮想表面上に仮想アプリケーション401を投影する。
【0091】
図4Aに示されるように、仮想アプリケーション401は、テキストを入力するためのテキスト入力フィールド403を有する第1の状態401aに示されるメッセージングアプリケーションである。デバイス100aは、仮想アプリケーションの状態に固有の入力制御のセットを判定するように構成されている。したがって、デバイス100aは、仮想アプリケーション401の現在の状態401aがテキスト入力フィールド403にテキストを入力/受信するためのものであると判定する。この判定に応じて、デバイス100aは、テキストの入力/受信に対応する入力機能のセット(例えば、コマンド又はデータ)を判定し、CGR環境内のキーボードの表現421上にそれらの入力機能の仮想表現を表示する。例えば、デバイス100aは、現在のテキスト入力状態401aに対する入力機能のセットが、テキスト入力フィールド403への数字、文字、及び句読点の入力を含むが、コピー、カット、又はペースト操作などの編集操作は含まないと判定する。したがって、図4Aでは、デバイス100aは、(数字キーパッドを含む)キーボードキーのそれぞれの表現421a上に仮想文字、数字、又は句読点マークを表示するが、例えば、編集操作に関連付けられたものなどの任意の不必要な入力機能の表現は表示しない。したがって、デバイス100aは、各ファンクションキーの表現425に関連付けられた任意の入力機能が無関係であると判定し、したがって、(例えば、表示された表現425から、物理キーボードキー上に存在する任意のしるしを省略したり、又はキーボードキーの表現をブランクに見えるように不明瞭にする仮想機能を表示したりすることによって)ファンクションキーの各表現425をブランクとして表示し、ファンクションキーの表現425がアプリケーションの現在の状態401aに対して非アクティブであることを示す。このようにして、デバイス100aは、仮想アプリケーション401の現在の状態(例えば、401a)とインタフェースするための所望の又は必要な入力機能のみがユーザに提示されるように、物理入力デバイスによって提供される機能をカスタマイズする。
【0092】
デバイス100aは、現実環境内でユーザによってアクティブ化された物理キーボードキーが、CGR環境内でそのそれぞれのキーの表現に関連付けられた入力(もしあれば)を提供するように、キーボードの表示された表現421の機能を物理キーボード410と関連付けることによって、物理キーボード410が提供する機能を変更する。例えば、ユーザが、現実環境内で文字「H」に対応する物理キーボードキーをアクティブ化すると、デバイス100aは、CGR環境内のそのキーに関連付けられた入力機能を実行する。図4Aの例によれば、キーボードの表現421の文字キーの表現421aが物理キーボード410のキーに対応するため、デバイス100aは、物理キーボード410からの入力を文字「H」として解釈する。同様に、ユーザがファンクションキー415のうちの1つに対応する物理キーボードキーをアクティブ化すると、デバイス100aは、ファンクションキーの表現425がCGR環境内で非アクティブであるため、入力を無視する。この例では、CGR環境における文字「H」の表現は、現実環境における「H」キーボードキーに対応しているが、キーボードキーの表現に関連付けられた入力機能は、任意の所望の入力機能であってもよく、物理キーボード410のキーに対応するものだけではないことを理解されたい。例えば、デバイス100aは、物理キーボード410の「H」キーが、CGR環境内の文字「Q」を入力するための入力機能に対応するように、入力機能を構成することができる。別の例として、デバイス100aは、以下でより詳細に説明するように、物理キーボード410の「H」キーが、コピー又はペーストコマンドを実行する入力機能に対応するように、入力機能を構成することができる。
【0093】
ここで図4Bを参照すると、デバイス100aは、テキスト「NOW」が選択された(405)仮想アプリケーション401の第2の状態401bを検出する。デバイス100aは、テキストが選択されるときに実行されるコマンドに対応する入力機能のセットを判定し、CGR環境内のキーボードの表現421上にそれらの入力機能の仮想表現を表示する。例えば、デバイス100aは、アプリケーションの現在のテキスト選択状態401bに対する入力機能のセットが、数字、文字、句読点の入力、並びにコピー、カット、及びペースト操作を含む様々な編集操作を含むと判定する。したがって、図4Bでは、デバイス100aは、(数字キーパッドを含む)キーボードキーのそれぞれの表現421a上に仮想文字、数字、又は句読点マークを表示し、ファンクションキーの表現425のうちの選択されたものを更新して、コピー、カット、又はペースト操作の仮想表現425a、425b、425cをそれぞれ表示する。このようにして、デバイス100aは、物理入力デバイス(例えば、キーボード410)の表現421上に表示された(及び関連付けられた)仮想的な特徴を変更する。
【0094】
図4A及び図4Bに示される実施形態では、単一の仮想アプリケーション(アプリケーション401)の異なる状態401a及び401bを検出したことに基づいて、デバイス100aが、異なる入力制御のセットを判定することを示しており、そのような判定は、全く異なるアプリケーションを検出したことに基づいて行うことができることを理解されたい。例えば、デバイス100aは、第1のアプリケーション(例えば、ウェブブラウザアプリケーション)とインタフェースするための第1の入力制御のセットを判定し、仮想アプリケーションが第1のアプリケーションとは異なる第2のアプリケーション(例えば、写真編集アプリケーション)に変更したことに応じて、第2のアプリケーションと対話するための第2の入力制御のセットを判定することができる。また、デバイス100aによって判定される入力制御は、本明細書に開示されるものに限定されず、それらの命令が仮想アプリケーションの現在の状態に関連する限り、仮想アプリケーションの現在の状態とインタフェースするための任意のコンピュータ実行可能命令を含むことができることを理解されたい。
【0095】
図5は、物理入力デバイスの表現を表示し、かつ、CGR環境(例えば、拡張現実、仮想現実)内で物理入力デバイスの表現上に視覚的特徴をオーバーレイするための例示的な技術500を示す。いくつかの実施形態では、本技術は、図1A図1B及び図4A図4Bを参照して説明されるシステム100によって実行される。
【0096】
ブロック502において、デバイス(例えば、100a)は、CGR環境内にアプリケーション(例えば、仮想アプリケーション(例えば、401))(例えば、ウェブブラウザ、PDF、メッセージングアプリケーション、写真編集アプリケーションなど)を表示する。いくつかの実施形態では、アプリケーションは、CGR環境内で物理的表面の表現上に仮想アプリケーションを投影すること、又はCGR環境内で仮想表面上に仮想アプリケーションを投影することによって表示される。
【0097】
ブロック504において、表示されたアプリケーション(例えば、401)の第1の状態(例えば、401a)を検出したことに応じて、デバイス(例えば、100a)は、表示されたアプリケーションの第1の状態に固有の第1の入力制御のセット(例えば、数字、文字、句読点)を判定し、CGR環境内の物理入力デバイス(例えば、410)の表現(例えば、421)上に、アプリケーションの第1の状態に固有の第1の入力制御のセットのみを表示する。そのような実施形態の例が図4Aに示されており、デバイス100aは、テキスト入力状態401aに対する入力機能のセットが、テキスト入力フィールド403への数字、文字、及び句読点の入力を含むが、コピー、カット、又はペースト操作などの編集操作は含まないと判定する。
【0098】
ブロック506において、表示されたアプリケーション(例えば、401)の第2の状態(例えば、401b)を検出したことに応じて、デバイス(例えば、100a)は、表示されたアプリケーションの第2の状態に固有の、第1の入力制御のセットと異なる第2の入力制御のセット(例えば、数字、文字、句読点、並びにカット、コピー、及びペースト操作などの編集操作)を判定し、CGR環境内の物理入力デバイス(例えば、410)の表現(例えば、421)上に、アプリケーションの第2の状態に固有の第2の入力制御のセットのみを表示する。そのような実施形態の例が図4Bに示されており、デバイス100aは、アプリケーションのテキスト選択状態401bに対する入力機能のセットが、数字、文字、句読点の入力、並びにコピー、カット、及びペースト操作を含む様々な編集操作を含むと判定する。
【0099】
いくつかの実施形態では、物理入力デバイスは、キーボード(例えば、410)であり、CGR環境内のキーボードの表現(例えば、421)は、現実環境内のキーボード上の物理キー(例えば、410a、415)の場所に対応するキーボードキー(例えば、421a、425)の表現を含む、キーボードの表現を含む。いくつかの実施形態では、デバイス100aは、現実環境内のキーボードの物理キーのアクティブ化を検出したことに応じて、現実環境においてアクティブ化された物理キーに対応する、CGR環境内のキーボードキーの表現に関連付けられたコマンドを実行する。
【0100】
いくつかの実施形態では、デバイス(例えば、100a)は、第1のアプリケーション(例えば、第1の仮想アプリケーション)から第2のアプリケーション(例えば、第2の仮想アプリケーション)への切り替えを検出したことに応じて、CGR環境において、キーボードの表現(例えば、421)上に表示された、表示された制御機能のセットを更新する。いくつかの実施形態では、第1のアプリケーションは、ウェブブラウザアプリケーションであり、第1の入力制御のセットは、ウェブブラウザ制御(例えば、次のページ、前のページ、ロード、停止、リフレッシュなど)である。いくつかの実施形態では、第2のアプリケーションは、写真編集アプリケーションであり、第2の入力制御のセットは、編集制御(例えば、拡張、カット、ペースト、挿入、選択など)である。
【0101】
本開示は、本明細書で提供される実施形態を参照して示されて説明されてきたが、当業者によれば、本開示の範囲から逸脱することなく、形態及び詳細の様々な変更がなされ得ることが理解されるであろう。
図1A
図1B
図2A
図2B
図2C
図2D
図2E
図2F
図3
図4A
図4B
図5