(57)【要約】【課題】２Ｄ及び３Ｄコンテンツを共有及び表示するためのシステム、方法、及びデバイスを提供する。【解決手段】第１デバイスが、ウェブページによって参照される２次元（２Ｄ）コンテンツを取得することを可能にする及び第１デバイスと通信する第２デバイスが、ウェブページによって参照される３Ｄコンテンツを表示することを可能にする、デバイス、システム及び方法を含む。一実施例において、ウェブページが２Ｄコンテンツに関連付けられた３Ｄコンテンツを参照することが検出され、ウェブページによって参照される３Ｄコンテンツを表示することができる第２デバイスが、第１デバイスにリンクされているか又は第１デバイスと通信していることが検出される。一実施例において、第２デバイスは、３Ｄコンテンツを閲覧するためのユーザ選択に対応する入力を受信し、それに応じて、３Ｄコンテンツを含む３Ｄ環境を表示する。【選択図】図１
2020074058.tif 000002
【特許請求の範囲】
【請求項１】
動作を実行するためにコンピュータ実行可能であるプログラム命令を記憶する非一時的コンピュータ可読記憶媒体であって、
前記動作が、
第１デバイスのディスプレイ上にアプリケーションを介して表示するためのコンテンツ項目によって参照される２次元（２Ｄ）コンテンツを取得することと、
前記コンテンツ項目が前記２Ｄコンテンツに関連付けられた３次元（３Ｄ）コンテンツを参照することを検出することと、
第２デバイスが前記第１デバイスと通信していることを検出することであって、前記第２デバイスが、前記コンテンツ項目によって参照される前記３Ｄコンテンツを表示することが可能である、ことと、
前記第２デバイスへの前記コンテンツ項目によって参照される前記３Ｄコンテンツを識別することと、
を含む、非一時的コンピュータ可読記憶媒体。
【請求項２】
前記コンテンツ項目がウェブページであり、前記ウェブページが前記３Ｄコンテンツを参照することを検出することは、前記３Ｄコンテンツに対応する前記ウェブページ内のマークアップ言語ステートメントを識別することを含む、請求項１に記載の非一時的コンピュータ可読記憶媒体。
【請求項３】
前記３Ｄコンテンツが立体表示情報を有する仮想オブジェクトである、請求項１に記載の非一時的なコンピュータ可読記憶媒体。
【請求項４】
前記動作は、
前記第２デバイスが前記第１デバイスと通信していることを検出することに応じて、前記３Ｄコンテンツの可用性を示すアフォーダンスを表示することを更に含む、請求項１に記載の非一時的なコンピュータ可読記憶媒体。
【請求項５】
前記第２デバイスが前記第１デバイスと通信していることを検出することは、
前記第１デバイス及び前記第２デバイスが両方とも同じアカウントに関連付けられていることを検出することと、
前記第２デバイスが前記第１デバイスの閾値近接度内にあることを検出すること、又は
前記第１デバイスが前記第２デバイスのカメラ視野内にあることを検出すること、
を含む、請求項１に記載の非一時的なコンピュータ可読記憶媒体。
【請求項６】
前記動作は、
前記第１デバイスと前記第２デバイスとの間の第１空間的関係を判定することと、
前記第１空間的関係に基づいて、検出された前記第２デバイスの前記ディスプレイ上に前記３Ｄコンテンツを表示することと、
を更に含む、請求項１に記載の非一時的なコンピュータ可読記憶媒体。
【請求項７】
前記動作は、
前記第２デバイスに対する前記第１デバイスの位置の変化を識別することと、
前記第１デバイスと前記第２デバイスとの間の第２空間的関係を判定することと、
前記第２空間的関係に基づいて、検出された前記第２デバイスの前記ディスプレイ上の前記３Ｄコンテンツを更新することと、
を更に含む、請求項６に記載の非一時的なコンピュータ可読記憶媒体。
【請求項８】
前記動作は、
前記第２デバイスのタイプを検出すること、又は
前記３Ｄコンテンツを表示することが可能な前記第２デバイス上のアプリケーションを検出すること、
に基づいて、前記第２デバイスが、前記コンテンツ項目によって参照される前記３Ｄコンテンツを表示することができることを検出することを更に含む、請求項１に記載の非一時的なコンピュータ可読記憶媒体。
【請求項９】
前記動作は、
前記第１デバイスの前記ディスプレイ上にある前記２Ｄコンテンツへの変化に関連付けられたデータを共有することと、
前記２Ｄコンテンツへの前記変化に基づいて、検出された前記第２デバイスの前記コンテンツ項目によって参照される前記３Ｄコンテンツを識別することと、
を更に含む、請求項１に記載の非一時的なコンピュータ可読記憶媒体。
【請求項１０】
プロセッサ、コンピュータ可読記憶媒体、画像センサ及びディスプレイを備える第１デバイスにおいて、
前記画像センサを使用して、物理的環境を表す画像データを取得することと、
第２デバイスが前記画像データ内に描写されていることを検出することであって、前記第２デバイスが、前記コンテンツ項目によって参照される３次元（３Ｄ）コンテンツなしで、コンテンツ項目によって参照される２次元（２Ｄ）コンテンツを表示する、ことと、
前記検出に基づいて、前記コンテンツ項目によって参照される前記３Ｄコンテンツを取得することと、
前記ディスプレイ上に表示するための前記コンテンツ項目によって参照される前記３Ｄコンテンツを含む３Ｄ環境のビューを提供することと、
を含む、方法。
【請求項１１】
前記コンテンツ項目はウェブページである、請求項１０に記載の方法。
【請求項１２】
前記画像データにおいて、前記第１デバイス上のアプリケーションによって表示された前記コンテンツ項目の一部として表示された３Ｄコンテンツインジケータを検出することを更に含む、請求項１０に記載の方法。
【請求項１３】
前記３Ｄコンテンツインジケータを検出することに基づいて、
前記第１デバイスから前記３Ｄコンテンツを取得することを判定すること、又は
前記第１デバイスを介して前記３Ｄコンテンツを表示するためのユーザインタフェースオプションを提供すること、
を更に含む、請求項１２に記載の方法。
【請求項１４】
前記第２デバイスが前記第１デバイスと通信していることを検出することを更に含む、請求項１０に記載の方法。
【請求項１５】
前記３Ｄコンテンツが前記第１デバイスから取得される、請求項１０に記載の方法。
【請求項１６】
前記３Ｄ環境の前記ビューは、
前記コンテンツ項目によって参照される前記２Ｄコンテンツを表示する前記第２デバイスの描写と、
前記第２デバイスの前記描写に隣接した前記コンテンツ項目によって参照される前記３Ｄコンテンツと、
を含む、請求項１０に記載の方法。
【請求項１７】
前記３Ｄ環境の前記ビュー内の関連付けインジケータが、前記コンテンツ項目によって参照される前記３Ｄコンテンツと、前記コンテンツ項目によって参照される前記２Ｄコンテンツを表示する前記第２デバイスの前記描写との間の関連付けを示す、請求項１６に記載の方法。
【請求項１８】
ディスプレイ及び画像センサを持つ電子デバイスと、
プロセッサと、前記プロセッサによって実行されると前記システムに動作を実行させる命令を含むコンピュータ可読記憶媒体と、
を備えるシステムであって、
前記動作が、
第１デバイスのディスプレイ上に表示するためのウェブページによって参照される２次元（２Ｄ）コンテンツを取得することと、
前記ウェブページが、前記２Ｄコンテンツに関連付けられた３次元（３Ｄ）コンテンツを参照することを検出することと、
第２デバイスが前記第１デバイスと通信していることを検出することであって、前記第２デバイスが、前記ウェブページによって参照される前記３Ｄコンテンツを表示することが可能である、ことと、
前記第２デバイスの前記ウェブページによって参照される前記３Ｄコンテンツを識別することと、
を含む、システム。
【請求項１９】
前記３Ｄコンテンツが、立体表示情報を有する仮想オブジェクトである、請求項１８に記載のシステム。
【請求項２０】
前記動作が、
前記第２デバイスが前記第１デバイスと通信していることを検出することと、
前記第２デバイスが前記第１デバイスと通信していることを検出することに応じて、前記３Ｄコンテンツの可用性を示すアフォーダンスを表示することと、
を更に含む、請求項１８に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、全般的には２次元（２Ｄ）及び３次元（３Ｄ）コンテンツを表示することに関し、特に２Ｄ及び３Ｄコンテンツを共有及び表示するためのシステム、方法、及びデバイスに関する。
【０００２】
（関連出願の相互参照）
本出願は、２０１８年８月７日に出願された米国特許仮出願第６２／７１５，３３１号の利益を主張し、その全体を本明細書に組み込む。
【背景技術】
【０００３】
電子デバイスは、電子コンテンツの閲覧及び相互作用に関して異なる機能を有する。例えば、多くのデスクトップコンピュータ及びラップトップコンピュータは、２Ｄコンテンツを閲覧するのに一般的に適した単一のフラットスクリーンディスプレイを利用すると同時に、そのデバイスは机上及び他の平面上の固定位置に静止している。従来のウェブページには、そのようなデバイス上で容易に閲覧できる２Ｄコンテンツが含まれる。しかしながら、このようなデバイスは、３Ｄコンテンツの閲覧に関して制限がある。対照的に、モバイル機器、ヘッドマウントデバイス（ＨＭＤ）、及び他のそのようなデバイスは多くの場合、３Ｄコンテンツの閲覧により適した属性及び機能を有する。例えば、３Ｄコンテンツ（例えば、仮想オブジェクト）を携帯電話上で閲覧でき、携帯電話の向き／位置を使用して、３Ｄコンテンツのビューを変更することができる。ユーザが歩き回り電話を傾けると、ユーザは異なる相対位置及び角度からの３Ｄコンテンツを閲覧することができる。別の例として、ＨＭＤなどのいくつかのデバイスには、３Ｄコンテンツの立体レンダリング機能を提供する複数のスクリーンが含まれる。これにより、３Ｄコンテンツの閲覧時にユーザは奥行きをより良く知覚することが可能になる。既存の技術及びシステムでは、これら電子デバイスの異なった機能を有効かつ直感的に使用可能にするための２Ｄ及び３Ｄコンテンツの配信、閲覧及び共有が十分に促進されない。
【発明の概要】
【０００４】
本明細書にて開示された様々な実装形態には、第１デバイスがコンテンツ項目（例えば、ウェブページ）によって参照される２Ｄコンテンツを表示できるようになり、第１デバイスと通信する第２デバイスがコンテンツ項目によって参照される３Ｄコンテンツを表示できるようになるデバイス、システム及び方法が含まれる。一実施例において、第１デバイスは、ウェブページの２Ｄコンテンツを表示する。第１デバイス又は第２デバイスは、２Ｄコンテンツに関連付けられた３Ｄコンテンツをウェブページが参照することを検出する。第２デバイスは、ウェブページによって参照される３Ｄコンテンツを表示することができ、第１デバイスにリンクされるか又は別の方法で通信することができる。第１又は第２デバイスは、第２デバイスが３Ｄコンテンツを表示すべきであるかを判定する。第２デバイス上で３Ｄコンテンツを表示するかの判定は、デバイスが互いに通信していることを検出すること、デバイスが互いに近接位置にあることを検出すること、第１デバイスが第２デバイスによってキャプチャされた画像範囲内にあることを検出すること、ユーザの入力を検出すること、又は他の関連状況若しくは情報を検出することに基づいてもよい。第２デバイスで３Ｄコンテンツを表示すべきと判定した後、第２デバイスはウェブページによって参照される３Ｄコンテンツを第１デバイス又は別のウェブページソースから受信し、３Ｄコンテンツを表示する。一実施例において、第１デバイスはウェブページコンテンツの一部として３Ｄコンテンツを予めダウンロードし、表示のために３Ｄコンテンツを第２デバイスに自動送信する。別の実施例において、第２デバイスは、第１デバイスから又はウェブページ若しくはウェブページの３Ｄコンテンツをホストするウェブサーバから、３Ｄコンテンツを要求する。
【０００５】
３Ｄコンテンツの受信後、第２デバイスは様々な実装形態において３Ｄコンテンツを表示する。第１デバイスで利用不可能な３Ｄコンテンツを表示するために、３Ｄコンテンツの表示で１つ以上の機能を利用してもよい。例えば、第２デバイスは、立体レンダリングを使用して又はコンピュータが生成した現実（ＣＧＲ）環境において、ユーザ／デバイス位置ベースの視点（例えば、デバイスが移動し傾くことによる変化）からの３Ｄコンテンツを表示してもよい。第２デバイスは、１つ以上のこれらの表示モード又は第１デバイス上では利用不可能な別の方法を使用して、３Ｄコンテンツを表示してもよい。いくつかの実装形態において、第２デバイスはカメラを使用して画像をキャプチャし、３Ｄコンテンツ及びキャプチャ画像を使用してＣＧＲ環境を構築する。
【０００６】
いくつかの実装形態において、第２デバイスのユーザは、第２デバイス上の特定の記憶装置場所に３Ｄコンテンツを移動させる必要なく簡潔かつ簡単に３Ｄコンテンツを受信、閲覧及び使用すること、第２デバイスで３Ｄコンテンツを体験し得ることを識別すること、アプリを識別して３Ｄコンテンツを体験すること、そのようなアプリを起動すること、又は受信した３Ｄコンテンツをインポートすること若しくはそのようなアプリにより提供されたＣＧＲ環境に追加することができる。２つ以上のデバイスを使用してウェブサイトの２Ｄ及び３Ｄコンテンツを体験するユーザ体験は、効率的及び直感的である。
【０００７】
本明細書に開示されるデバイス、システム及び方法によって、第１デバイスで閲覧した２Ｄウェブページコンテンツに対応する３Ｄコンテンツを表示できるようになる。このデバイス、システム及び方法によって、３Ｄコンテンツと組み合わされた２Ｄコンテンツを使用する、共有する及び相互作用するユーザの能力が向上する。例えば、第１デバイスを使用している第１ユーザは、オンライン小売業者が販売するソファーに対応している２Ｄコンテンツを含むウェブページを閲覧することができる。ウェブページは、例えば、２Ｄコンテンツ内にあるソファーの２Ｄ画像に対応するウェブページの一部である３Ｄコンテンツの可用性を示すマークアップ言語ステートメントなどの３Ｄコンテンツインジケータを含むことができる。２Ｄコンテンツは、この３Ｄコンテンツが利用可能であることを示す視覚的なインジケータを含むことができる。次に、第１ユーザ又は第２ユーザは、第２デバイスを使用して３Ｄコンテンツを閲覧することができる。ソファーの例において、例えばソファーの３Ｄモデルを含むデータオブジェクトやファイルにアクセスするか又はファイル若しくはソファーの３Ｄモデルを含むファイルのデータストレージアドレスを識別するなど、ソファーに対応する３Ｄコンテンツへのアクセスするために、第２デバイスが使用される。一実施例において、第１デバイスは、３Ｄコンテンツを含む又は３Ｄコンテンツへのアクセスを提供する第２デバイスに、通信を発信する。
【０００８】
第１デバイスから通信を受信することに基づき、第２デバイスによって３Ｄコンテンツを閲覧又は使用できるようになる。一実施例において、第２デバイスは、ＣＧＲ環境内の３Ｄコンテンツを閲覧するためのユーザ選択に対応する入力を受信する。この入力の検出に応じて、第２デバイスは３ＤコンテンツをＣＧＲ環境の一部として表示する。カメラを使用して画像（例えば、動画）をキャプチャし、３Ｄコンテンツ及びキャプチャ画像を使用してＣＧＲ環境を構築することによって、このようなＣＧＲ環境を設けることができる。いくつかの実装形態において、第２デバイスはキャプチャ画像上に３Ｄコンテンツを重ね合わせる。
【０００９】
いくつかの実装形態において、方法は、デスクトップコンピュータ、ラップトップコンピュータ、タブレットなどの１つ以上のプロセッサ及びコンピュータ可読記憶媒体を有する第１デバイスにおいて実行される。この方法は、第１デバイスによって、３Ｄコンテンツも参照するウェブページによって参照される２Ｄコンテンツを取得することを伴う。この方法はまた、タブレット、ＨＭＤ、携帯電話などの、３Ｄコンテンツを提示することができる（例えば、立体レンダリングを使用して又はＣＧＲ環境内でユーザ／デバイス位置ベースの視点からのビューを提供することができる）第２デバイスを伴う。第２デバイスは、ウェブページによって参照される３Ｄコンテンツを受信し提示する。この方法は、第１デバイスによって表示され得ない３Ｄコンテンツをウェブページが参照することを検出すること又は第１デバイス及び第２デバイス間の自動通信を誘発するか若しくは第２デバイス上の３Ｄコンテンツの自動表示がもたらすその他の状況を検出することを含んでもよい。
【００１０】
従って、いくつかの実装形態は、上記の実施例及び本明細書の他の箇所に例示されるように、第１デバイス上のウェブページによって参照される２Ｄコンテンツ及び第２デバイス上のウェブページによって参照される３Ｄコンテンツが閲覧できるようになる。これらの実装形態によって、ユーザの視覚体験が改善される。例えば、２つのデバイス（例えば、ラップトップコンピュータ及びＨＭＤ）を有する単一ユーザはウェブページをブラウズすることができ、ウェブページが対象の３Ｄコンテンツを参照するときに、ＨＭＤをつけ、自動的に又は直感的なユーザ体験を介してアクセスし、３Ｄコンテンツを閲覧することができる。別の実施例において、複数のユーザは同様に便利な共有体験下で、ウェブページによって参照される２Ｄ及び３Ｄコンテンツを体験することができる。例えば、１人のユーザはラップトップコンピュータ上の自動車を表示するウェブページを閲覧してもよく、それと同時に他のユーザはＨＭＤを使用して、自動車に関するウェブサイトの３Ｄコンテンツを体験してもよい。
【００１１】
いくつかの実装形態によれば、非一時的コンピュータ可読記憶媒体はコンピュータ実行可能な命令を記憶しており、本明細書に記載される方法のいずれかを実行するか又は実行を引き起こす。いくつかの実装形態によれば、デバイスは、１つ以上のプロセッサと、非一時的メモリと、１つ以上のプログラムと、を含み、１つ以上のプログラムは非一時的メモリに記憶され、１つ以上のプロセッサによって実行されるように構成されており、１つ以上のプログラムは、本明細書に記載の方法のいずれかを実行するか又は実行を引き起こす命令を含む。
本開示は、当業者によって理解され得るように、いくつかの例示的な実装形態の態様を参照することによって、より詳細な説明を有してもよく、そのいくつかは添付図面に示されている。
【図面の簡単な説明】
【００１２】
【図１】いくつかの実装形態に係る、第１デバイスが３Ｄコンテンツも参照するウェブページによって参照される２Ｄコンテンツを表示し、第２デバイスが３Ｄコンテンツを表示する例示的なシステムを示す。
【図２】いくつかの実装形態に係る、第２デバイスがＨＭＤである、図１のシステムを示す。
【図３】いくつかの実装形態に係る、第１デバイスが３Ｄコンテンツを含む２Ｄコンテンツを表示し、第２デバイスが３Ｄコンテンツを表示する例示的なシステムを示す。
【図４】いくつかの実装形態に係る、３Ｄコンテンツの共有に関連する通信の流れを示すフローチャートである。
【図５】いくつかの実装形態に係る、例示的な第１デバイスのデバイス構成要素を示すブロック図である。
【図６】いくつかの実装形態に係る、例示的な第２デバイスのデバイス構成要素を示すブロック図である。
【図７】第１デバイスがウェブページによって参照される２Ｄコンテンツを取得できるようにする及び、第１デバイスと通信している第２デバイスがウェブページによって参照される３Ｄコンテンツを表示できるようにする方法を示すフローチャートである。
【図８】いくつかの実装形態に係る、第１デバイスから受信した３Ｄコンテンツを有する第２デバイス上にＣＧＲ環境を表示するための方法を示すフローチャートである。
【図９】いくつかの実装形態に係る、ウェブページによって参照される３Ｄコンテンツを参照する第１デバイスにおいて３Ｄ環境のビューを提供するための方法を示すフローチャートであり、この３Ｄコンテンツはウェブページによって参照される２Ｄコンテンツを表示する第２デバイスを検出することに基づいて取得される。
【図１０】いくつかの実装形態に係る、３Ｄ環境の現状に関連付けられた情報に基づいて、第１デバイスが２Ｄコンテンツ又は３Ｄコンテンツを更新できるようになるための方法を示すフローチャートである。
【発明を実施するための形態】
【００１３】
慣例により、図面に示される様々な特徴は縮尺どおりに描かれていない場合がある。従って、明確にするために、様々な特徴の寸法は任意に拡大または縮小されている場合がある。加えて、いくつかの図面は、所与のシステム、方法、又はデバイスの構成要素のすべてを表現していない場合がある。最後に、本明細書および図の全体を通して、同様の特徴を示すために同様の参照番号が使用される場合がある。
【００１４】
図面に示される例示的な実装形態の十分な理解を提供するために、数多くの詳細が記載されている。しかしながら、図面は単に本開示のいくつかの例示的な態様を示すものであり、従って限定的であると考慮されるべきではない。当業者は、他の有効な態様又は変形が本明細書に記載される特定の詳細全てを含まないことを理解するであろう。更に、周知のシステム、方法、構成要素、デバイス及び回路は、本明細書に記載される例示的な実装形態のより適切な態様を不明瞭にしないように、網羅的に詳細を記載していない。
【００１５】
図１を参照すると、本発明の態様を実装するための例示的な動作環境５が示されている。一般に、動作環境５は、２Ｄ及び３Ｄコンテンツを参照するコンテンツ項目（例えば、ウェブページ）の体験に関連する２つのデバイス、第１デバイス１０及び第２デバイス１５を表す。本明細書の実施例は、ウェブページを例示的なコンテンツ項目として利用する一方で、本明細書に開示される技術は、アプリケーション１つ以上のデバイスによって閲覧できる２Ｄ及び３Ｄコンテンツを参照するコンテンツ項目に適用される。
【００１６】
この実施例において、第１デバイス１０及び第２デバイス１５は、リンク２０を介して接続されており、リンク２０は、例えば、ユニバーサルシリアルバス（ＵＳＢ）ケーブル／インタフェース、ＵＳＢ−Ｃケーブル／インタフェース、ＴＨＵＮＤＥＲＢＯＬＴ（サンダーボルト）ｖ１、ｖ２又はｖ３ケーブル／インタフェース、ＩＥＥＥ  １３９４ケーブル／インタフェース（例えば、ＦＩＲＥＷＩＲＥ、ｉ．ＬＩＮＫ、ＬＹＮＸ）、ＩＥＥＥ  ８０２．３ｘケーブル／インタフェース（例えば、イーサネット（登録商標））などを使用する有線通信を含み、及びＩＥＥＥ  ８０３．１１送信（例えば、ＷｉＦｉ）、ＩＥＥＥ  ８０２．１１送信（例えば、無線ＬＡＮ）、ＩＥＥＥ  ８０２．１６ｘ送信（例えば、ＷｉＭＡＸ）、短波長送信（例えば、ＢＬＵＥＴＯＯＴＨ（登録商標））、ＩＥＥＥ  ８０２．１５．４送信（例えば、ＺＩＧＢＥＥ（登録商標））、ＧＳＭ送信、ＥＣＭＡ−３４０並びにＩＳＯ／ＩＥＣ  １８０９２（例えば、近距離通信（ＮＦＣ））など使用する無線通信を含む有線又は無線リンクであるが、これらに限定されない。リンク２０は直接的であってもよい、すなわち、第１デバイス１０と第２デバイス１５との間の介在デバイス又はネットワークノードがなくてもよい。例えば、リンク２０は、各デバイスに接続する単一ケーブルを介して又は第１デバイス１０と第２デバイス１５との間のＢｌｕｅｔｏｏｔｈ通信を介して、第１デバイス１０を第２デバイス１５に直接接続することを含み得る。リンク２０は間接的であってもよい、すなわち、１つ以上の介在デバイス又はネットワークノードがあってもよい。例えば、リンク２０は、インターネット経由で送信された通信を介して、第１デバイス１０を第２デバイス１５に接続することができる。更に、デバイス間の相互作用、例えば、第１デバイス１０と第２デバイス１５との間は双方向であってもよく、例えば、一方のデバイスは、ウェブページに対するアクションを実行するために、他方のデバイスに通信を送信することができる。
【００１７】
図１の例において、第１デバイス１０は、２Ｄコンテンツ３０（例えば、ソファーの画像）及び２Ｄコンテンツ３０に関連付けられた３Ｄコンテンツ５０のインジケータ３５を含んでいるウェブページコンテンツ２５（例えば、ウェブブラウザ上の）を取得する。例えば、３Ｄコンテンツ５０は、ソファーの３Ｄモデルを含んでもよい。３Ｄコンテンツ５０は、ＣＧＲ環境において第２デバイス１５上で確認される。例えば、第２デバイス２０はカメラを使用して近隣の環境、例えば、エンドテーブル及び壁写真を含む現実世界シーン４５をキャプチャし、キャプチャされた景色をソファーの３Ｄモデルとともに表示することができる。
【００１８】
デバイス、システム及び方法によって、ユーザは、関連付けられた３Ｄコンテンツ５０が利用可能であるというインジケータ３５を見ることができ、また３Ｄコンテンツ５０、例えばソファーを表す３Ｄコンテンツを第２デバイス１５に送信することができるようになる。次に、第２デバイス１５のユーザ（例えば、第１デバイス１０のユーザと同じ又は異なるユーザ）は、第２デバイス１５のディスプレイ４０上で３Ｄコンテンツ５０を体験することができる。この例において、３Ｄコンテンツ５０はＣＧＲ環境の一部として表示される。
【００１９】
ＣＧＲ環境は、人々が電子システムを介して感知する及び／又は対話する、完全に又は部分的にシミュレートされた環境を指す。ＣＧＲにおいて、人の身体的動作のサブセット又はその表現が追跡され、それに応じて、ＣＧＲ環境内でシミュレートされた１つ以上の仮想オブジェクトの１つ以上の特徴が、少なくとも１つの物理法則に従うように調整される。例えば、ＣＧＲシステムは人の頭部の回転を検出し、それに応じて、そうしたビュー及び音の物理的環境における変化の仕方と同様な方法で、その人に提示されたグラフィックコンテンツ及び音場を調整することができる。状況によっては（例えば、アクセシビリティの理由のため）、ＣＧＲ環境における仮想オブジェクト（単数又は複数）の特徴（単数又は複数）に対する調節は、身体的動作（例えば、声のコマンド）の表現に応じて行われてもよい。
【００２０】
人は、視覚、聴覚、触覚、味覚及び嗅覚を含むこれらの感覚のうちのいずれか１つを使用して、ＣＧＲオブジェクトを感知する及び／又はＣＧＲオブジェクトと対話してもよい。例えば、人は、３Ｄ空間内でポイントオーディオソースの知覚を提供する３Ｄ又は空間的オーディオ環境を生成するオーディオオブジェクトを感知する及び／又はオーディオオブジェクトと対話することができる。別の実施例において、オーディオオブジェクトによってオーディオの透明性が可能となり、コンピュータ生成オーディオを用いて又は用いることなく、物理的環境から周囲のサウンドを選択的に組み込むことができる。ＣＧＲ環境によっては、人はオーディオオブジェクトのみを感知する及び／又はオーディオオブジェクトのみと対話することができる。
【００２１】
ＣＧＲの例としては、仮想現実及び複合現実が挙げられる。仮想現実（ＶＲ）環境とは、１つ以上の感覚のためのコンピュータ生成感覚入力に完全に基づくように設計されたシミュレーション環境を指す。ＶＲ環境は、人が感知する及び／又は対話することができる仮想オブジェクトを備える。例えば、木、建物及び人々を表すアバターのコンピュータ生成イメージは、仮想オブジェクトの例である。人は、コンピュータ生成環境内にある人の存在のシミュレーションを通じて、及び／又はコンピュータ生成環境内にある人の身体的動きのサブセットのシミュレーションを通じて、ＶＲ環境内の仮想オブジェクトを感知する及び／又は仮想オブジェクトと対話することができる。
【００２２】
コンピュータ生成感覚入力に完全に基づくように設計されたＶＲ環境とは対照的に、複合現実（ＭＲ）環境は、コンピュータ生成感覚入力（例えば、仮想オブジェクト）を含むことに加えて、物理的環境からの感覚入力又はその表現を組み込むように設計されたシミュレーション環境を指す。仮想連続体上において、複合現実環境は、一方の端部である完全な物理的環境と、他方の端部である仮想現実環境との間にあるが、これらを含まない。
【００２３】
ＣＧＲ環境によっては、コンピュータ生成感覚入力は、物理的環境からの感覚入力の変化に応答し得る。また、ＣＧＲ環境を提示するためのいくつかの電子システムでは、物理的環境に対して位置及び／又は向きを追跡してもよく、仮想オブジェクトが実際のオブジェクト（すなわち、物理的環境からの物理的項目又はその表現）と相互作用することができるようになる。例えば、システムは、仮想の木が物理的地面に対して静止して見えるように、動きを考慮してもよい。
【００２４】
複合現実の例としては、拡張現実及び拡張仮想感が挙げられる。拡張現実（ＡＲ）環境は、１つ以上の仮想オブジェクトが物理的環境上か又はその表現上に重ね合わさったシミュレーション環境を指す。例えば、ＡＲ環境を提示するための電子システムは、人が物理的環境を直接見ることができる透明又は半透明のディスプレイを有してもよい。システムは、透明又は半透明のディスプレイ上に仮想オブジェクトを提示するように構成されてもよく、そのため、人物はシステムを使用して、物理的環境上に重ね合わさった仮想オブジェクトを知覚する。あるいは、システムは不透明なディスプレイ及び物理的環境の画像又は動画をキャプチャする１つ以上の撮像センサを有していてもよく、これは物理的環境を表現したものである。システムは、画像又は動画を仮想オブジェクトと合成し、不透明なディスプレイ上に合成物を提示する。人はシステムを使用して、物理的環境の画像又は動画によって物理的環境を間接的に閲覧し、物理的環境上に重ね合わさった仮想オブジェクトを知覚する。本明細書で使用する場合、不透明なディスプレイ上に表示される物理的環境の動画は「パススルービデオ」と呼ばれ、システムは１つ以上の画像センサ（単数又は複数）を使用して、物理的環境の画像をキャプチャし、不透明なディスプレイ上にＡＲ環境を提示する際にそれらの画像を使用することを意味する。更に別の方法として、システムは、例えばホログラムとしての又は物理的表面上の物理的環境に仮想オブジェクトを投影する投影システムを有してもよく、そのため、人物はシステムを使用して、物理的環境上に重ね合わさった仮想オブジェクトを知覚する。
【００２５】
拡張現実環境もまた、物理的環境の表現がコンピュータ生成感覚の情報によって変換されたシミュレーション環境を指す。例えば、パススルービデオを提供する際、システムは１つ以上のセンサ画像を変換して、撮像センサによってキャプチャされた観点とは異なる選択された観点（例えば、視点）を設けることができる。別の実施例として、物理的環境の表現はその一部分を図形的に修正（例えば、拡大）することによって変換されてもよく、そのため修正された部分は表現されるが、本来のキャプチャ画像の写実的なバージョンではない。更なる例として、物理的環境の表現は、物理的環境の一部分を図形的に削除することか又は曖昧化することによって変換されてもよい。
【００２６】
拡張仮想感（ＡＶ）環境は、物理的環境からの１つ以上の感覚入力を仮想環境又はコンピュータ生成環境が組み込むシミュレーション環境を指す。感覚入力は、物理的環境の１つ以上の特徴の表現であってもよい。例えば、ＡＶ公園は、仮想的な木及び仮想的ビルを有してもよいが、顔を持つ人々は、物理的な人々の画像から写実的に再現される。別の例として、仮想オブジェクトは１つ以上の撮像センサによって撮像された物理的項目の形状又は色を採用することができる。更なる例として、仮想オブジェクトは物理的環境における太陽の位置と一致する影を採用することができる。
【００２７】
多種多様の電子システムが存在することによって、人が様々なＣＧＲ環境を感知する及び／又はＣＧＲ環境と対話できるようになる。例としては、ヘッドマウントシステム、投影ベースのシステム、ヘッドアップディスプレイ（ＨＵＤ）、統合表示機能を有する車両フロントガラス、統合表示機能を有する窓、人の目に載せるように設計されたレンズとして形成されるディスプレイ（例えば、コンタクトレンズと同様）、ヘッドホン／イヤホン、スピーカアレイ、入力システム（例えば、触覚フィードバックありの若しくははなしのウェアラブル又はハンドヘルドコントローラ）、スマートホン、タブレット及びデスクトップ／ラップトップコンピュータが挙げられる。ヘッドマウントシステムは、１つ以上のスピーカ（単数又は複数）及び一体型の不透明なディスプレイを有してもよい。あるいは、ヘッドマウントシステムは、外部の不透明なディスプレイ（例えば、スマートホン）を受け入れるように構成されてもよい。ヘッドマウントシステムは、物理的環境の画像又は動画をキャプチャするための１つ以上の撮像センサ、及び／又は物理的環境の音声をキャプチャするための１つ以上のマイクロホンを組み込んでもよい。不透明なディスプレイではなく、ヘッドマウントシステムは、透明又は半透明のディスプレイを有してもよい。透明又は半透明のディスプレイは、画像を表す光が人の目に向けられる媒質を有してもよい。ディスプレイは、デジタル光投影、ＯＬＥＤ、ＬＥＤ、ｕＬＥＤ、ＬＣＯＳ（ｌｉｑｕｉｄ−ｃｒｙｓｔａｌ  ｏｎ  ｓｉｌｉｃｏｎ）、レーザ走査光源又はこれらの技術の任意の組み合わせを利用してもよい。媒体は、光導波路、ホログラム媒体、光結合器、光学リフレクタ又はこれらの任意の組み合わせであってもよい。一実施形態において、透明又は半透明のディスプレイは、選択的に不透明になるように構成されてもよい。投影ベースのシステムは、人の網膜上にグラフィック画像を投影する網膜投影技術を採用してもよい。投影システムはまた、仮想オブジェクトを物理的環境に、例えばホログラムとして又は物理的表面上に、投影するように構成されてもよい。
【００２８】
図１の例において、ＣＧＲ環境は、現実世界（例えば、現実世界シーン４５の局所的にキャプチャされた画像を介して）と３Ｄコンテンツ５０（例えば、ソファーの３Ｄ外観を定義するファイル又はモデル）を組み合わせる。
【００２９】
この例において、第２デバイス１５は、３Ｄコンテンツ５０（例えば、図１のソファー）に対応するデータオブジェクトを受信している。第１デバイス１０によって取得されたウェブページコンテンツ２５は、３Ｄコンテンツ５０を表すか又は３Ｄコンテンツ５０に対応するインジケータ３５（例えば、サムネイル画像、アイコン、リンク又はボタン）を含んでもよい。アイコン又はサムネイル画像の場合、例えば、アイコン又はサムネイル画像は、単一の又は標準的な視点からの３Ｄオブジェクトのコンテンツの２Ｄ画像を含んでもよい。サムネイル画像、アイコン、リンク及びボタンは、追加の３Ｄコンテンツが利用可能であることを示すことができるグラフィック機能の例である。これに加えて又はこの代わりに、利用可能な３Ｄコンテンツの視覚的なインジケータは、第２デバイス１５のディスプレイ４０上にある３Ｄコンテンツ５０を閲覧するためのユーザ選択に対応する入力（例えば、クリック、タッチなど）を受信するように構成されてもよい。例えば、第１デバイス１０は、インジケータ３５（例えば、３Ｄコンテンツ５０に対応するサムネイル画像）上でマウスクリックを受信することによって、第２デバイス１５のディスプレイ４０上に３Ｄコンテンツ５０（例えば、ソファー）を表示するために選択する入力を受信することができる。
【００３０】
第２デバイス１５は、第２デバイス１５上にある１つ以上のカメラを制御して現実世界シーン４５の画像をキャプチャし、３Ｄコンテンツ５０及びキャプチャ画像を使用して、第２デバイス１５のディスプレイ４０上にＣＧＲコンテンツを表示する。いくつかの実装形態において、第２デバイス１５は、ＣＧＲ環境を提供するためのソフトウェア、ファームウェア又はハードウェアの好適な組み合わせを含む。他の実装において、第２デバイス１５は、１つ以上の他のデバイス（ローカル又はリモート）と相互作用して第２デバイス１５のディスプレイ４０上にＣＧＲ環境を提供する。例えば、第２デバイス１５は、ＣＧＲ環境の提供に必要とされる処理及び記憶の一部又は全てを実行する別個の制御装置（図示せず）と通信してもよい。いくつかの実装形態によれば、第２デバイス１５は、現実世界シーン４５に基づいてＣＧＲ環境を表示すると同時に、第２デバイス１５は、現実世界シーン４５内に物理的に存在する。いくつかの実装形態において、第２デバイス１５（例えば、眼鏡、ヘッドアップディスプレイなど）は、現実世界シーン４５の光学透過を使用して、第２デバイス１５のディスプレイ４０上にＣＧＲ環境を提供するように構成されている。いくつかの実装形態において、第２デバイス１５は、現実世界シーン４５のビデオパススルーを使用して、第２デバイス１５のディスプレイ４０上にＣＧＲ環境を提供するように構成されている。いくつかの実装形態において、第２デバイス１５は、ディスプレイスクリーンを有する必要はなく、仮想要素をユーザの網膜に投影することができる。
【００３１】
いくつかの実装形態において、図１に示すように、第２デバイス１５は、第２デバイス１５のディスプレイ４０上にＣＧＲ環境を表示するように構成されたハンドヘルド電子デバイス（例えば、スマートホン又はタブレット）である。いくつかの実装形態において、第２デバイス１５は、ユーザが第２デバイス１５を装着しないか又は手に持たないＣＧＲ環境を提示するように構成されたチャンバ、エンクロージャ又は部屋である。いくつかの実装形態において、第２デバイス１５のタイプを検出することによって、すなわち、第２デバイス１５のタイプが３Ｄコンテンツ５０を表示することができるデバイスのタイプであることを識別することによって、第２デバイス１５が３Ｄコンテンツ５０を表示できることを検出することができる。更に、第２デバイス１５は、３Ｄコンテンツ５０を表示することができる第２デバイス１５に記憶されたアプリケーションを検出することによって、３Ｄコンテンツ５０を表示できることを検出することができる。
【００３２】
図１の例において、第２デバイス１５は、第２デバイス１５上のカメラ若しくは他のセンサに基づいて検出された画像又は他の現実世界の情報を使用するように構成されている。いくつかの実装形態において、第２デバイス１５のディスプレイ４０上にＣＧＲ環境を提供するために、第２デバイス１５は、カメラによってキャプチャされた１つ以上のカメラ画像の少なくとも一部分を使用する。図１の例において、第２デバイス１５のディスプレイ４０は、第２デバイス１５のカメラによってキャプチャされた項目（例えば、床、壁、壁写真、２つのエンドテーブル及び２つの花瓶）の描写を含む。また、第２デバイス１５のディスプレイ４０は、第１デバイス１０上に表示された２Ｄコンテンツ３０に対応する３Ｄコンテンツ５０（例えば、ソファー）を表す。
【００３３】
いくつかの実装形態において、第２デバイス１５によって、ユーザ５５が視点を変更できるようになるか又は別の方法で３Ｄコンテンツ５０を修正若しくは３Ｄコンテンツ５０と対話できるようになる。例えば、ユーザが第２デバイス１５を移動させると、視点が変化し得る。いくつかの実装形態において、第２デバイス１５は、第２デバイス１５のディスプレイ４０上に示された現実世界シーン４５の現実世界項目の描写に対して受信した３Ｄコンテンツ５０を再配置（例えば、壁写真又はエンドテーブルに対してソファーを再配置）するユーザ入力を受信するように構成されてもよい。
【００３４】
いくつかの実装形態において、第１デバイス１０は、第２デバイス１５に提供されるソファーに対応する３Ｄコンテンツ５０を受信するか又は記憶する。いくつかの実装形態において、第１デバイス１０は次に、第２デバイス１５が３Ｄコンテンツ５０を表示できるように、３Ｄコンテンツ５０を第２デバイス１５に提供する。他の実装において、第１デバイス１０は３Ｄコンテンツ５０を受信又は記憶せず、第２デバイス１５は、ウェブページを供給するウェブサーバなどの別のソースから３Ｄコンテンツ５０を取得する。
【００３５】
いくつかの実装形態において、複数のデバイスは、同じか又は異なる表示モードで３Ｄコンテンツを識別することができる。一実施例において、第１デバイス１０は３Ｄコンテンツ５０を含まない２Ｄ表示モードを提供し、第２デバイス１５は現実世界のコンテンツと組み合わされた３Ｄコンテンツ５０のＭＲ表示モードを提供し、第３デバイス（図示せず）は３Ｄコンテンツ５０のＶＲ表示モードを提供する。別の実施例において、第１デバイス１０及び第２デバイス１５の両方は、３Ｄコンテンツ５０のＭＲビューを提供することができる。一実施例において、第２デバイス１５は、それぞれのデバイスを取り囲んでいるか又はそれぞれのデバイスによって別の方法で観察される現実世界コンテンツに依存している種々の現実世界コンテンツを含む３Ｄコンテンツ５０のビューを表示する。第１デバイス１０及び第２デバイス１５の一方又は両方は、自身のカメラ又は他のセンサを使用して検出された受信データ若しくは画像又は他の現実世界情報を使用するように構成されてもよい。いくつかの実装形態において、ＭＲ表示モードを提供するために、第２デバイス１５は、第１デバイス１０上のカメラによってキャプチャされた１つ以上のカメラ画像の少なくとも一部分を使用する。この例において、第２デバイス１５は、第１デバイス１０を取り囲む現実世界の現実世界情報を使用してビューを提供する。
【００３６】
いくつかの実装形態において、図２に示すように、第２デバイス１５は、ユーザ５５の頭部に装着されるように構成されたＨＭＤである。このようなＨＭＤは、ユーザ５５の視野を取り囲むことができる。図２の例に示すように、ＨＭＤは、ユーザ５５の視野内で３Ｄコンテンツを表示するように構成された１つ以上のスクリーン又は他のディスプレイを含むことができる。図２に示すように、いくつかの実装形態において第２デバイス１５は、ユーザ５５の視野内で３Ｄコンテンツを表示するようにスクリーンが配置される方法で装着される。更にＨＭＤは、様々な構成要素を収容する筐体（又はエンクロージャ）を含むことができる。筐体は、筐体の（ユーザ５５の）近位端に配置されたアイパッド（eye pad）を含むことができる（又はアイパッドに結合することができる）。いくつかの実装形態において、アイパッドはプラスチック又はゴム片であり、ユーザ５５の顔の上で適切な位置（例えば、ユーザ５５の眼を取り囲む）に快適かつぴったりとＨＭＤを保持する。筐体は、画像を表示するディスプレイを収容することができ、ユーザ５５の片目又は両目に向けて光を放射する。
【００３７】
図３は、いくつかの実装形態に応じて、第１デバイス１０が３Ｄコンテンツも参照するウェブページからの２Ｄコンテンツを表示し、第２デバイス１５が３Ｄコンテンツを表示する例示的なシステムを示す。図３に示されるように、例えば両方のデバイス１０、１５を同時に使用して、第１デバイス１０を使用してインターネットをブラウズするときに、ユーザ５５は第２デバイス１５（例えば、ＨＭＤ）を装着してもよい。例えば、ユーザ５５は、２Ｄコンテンツ３０（例えば、植木鉢）及び２Ｄコンテンツ３０に関連付けられた３Ｄコンテンツ５０のインジケータ３５を含むウェブページコンテンツ２５を閲覧するために第１デバイス１０を使用すると同時に、第２デバイス１５を装着してもよい。インジケータ３５は、第１デバイス１０上に表示された２Ｄコンテンツ３０の可視部分であってもよく、従って、第２デバイス１５によってキャプチャ及び表示された画像の一部として視認できる。あるいは、インジケータ３５は第１デバイス１０上の２Ｄコンテンツ３０に含まれずに、第２デバイス１５上にのみ表示されてもよい。一実施例において、第２デバイス１５によってキャプチャされた画像内にある第１デバイス１０を検出する第２デバイス１５に基づいて、インジケータ３５は第２デバイス１５上に表示される。
【００３８】
いくつかの実装形態において、第２デバイス１５は、第２デバイス１５のキャプチャ画像内で示された他のデバイスを検出し、そのようなデバイスが第２デバイス１５と通信しているか（例えば、リンクされている）かどうかを判定し、他のデバイスとの通信（例えば、リンク）を確立し、他のデバイスのいずれかが３Ｄコンテンツに関連付けられた２Ｄコンテンツを表示しているかどうかを識別し、３Ｄコンテンツを取得し、その３Ｄコンテンツを表示するように構成されている。
【００３９】
第２デバイス１５に様々な技術を使用することで、画像又はビュー内の第１デバイス１０の存在を検出することができる。例えば、第２デバイス１５は、第１デバイス１０が第２デバイス１５の現在の画像／ビュー内にあることを検出してもよい。このような検出は、第２デバイス１５における現実世界環境の画像又はビューの画素内に表示された形状、色若しくは他の属性に基づいて、第１デバイス１０の描写を検出することを含み得る。物体検出技術は、例えば、第２デバイス１５の周囲における現実世界環境のキャプチャ画像内にある第１デバイス１０を検出するために、ニューラルネットワーク又は他の機械学習ベースの技術の使用を伴うことができる。このような機械学習ベースの技術は、デバイスのサンプル画像（例えば、ラップトップコンピュータ、デスクトップコンピュータ及びモバイル機器の形状並びに他の空間的特性で標識された画像）を使用して訓練され得る。別の実施例において、第２デバイス１５はその環境の画像を使用して現実世界環境の３Ｄモデルを判定し、第１デバイス１０の３Ｄ形状は３Ｄモデル内で検出される。
【００４０】
第２デバイス１５における画像／ビュー内の第１デバイス１０の検出は、第１デバイス１０のディスプレイ上に表示されたコンテンツを含むことができる。例えば、第１デバイス１０は、第１デバイス１０のディスプレイ上にウェブページの２Ｄコンテンツを表示することができ、第２デバイス１５は、第１デバイス１０を含む現実世界環境の画像をキャプチャすることができ、また第１デバイス１０のディスプレイ上に表示されるウェブページの２Ｄコンテンツを認識することができる。一実施例において、現実世界環境の画像／ビューにおける第１デバイス１０の存在又は空間的関係を検出するために、第１デバイス１０の表示は、第２デバイス１５によって使用されるテキストベース又はグラフィックベースのマーカ若しくはコード（ウェブページの２Ｄコンテンツの一部であってもなくてもよい）を含む。
【００４１】
いくつかの実装形態において、第２デバイス１５は、例えば、現実世界環境の画像／ビューに基づいて、第１デバイス１０と第２デバイス１５との間の空間的関係を検出する。いくつかの実装形態において、第２デバイス１５は、現実世界環境に関連付けられた３Ｄ座標系における第１デバイス１０の位置、向き、サイズ又は他の属性を判定する。第２デバイス１５は、その３Ｄ座標系における第２デバイス１５自身のポーズ（例えば、位置及び向き）を知ることにより、第１デバイス１０と第２のデバイス１０との間の空間的関係を判定することができる。いくつかの実装形態において、第１デバイス１０及び第２のデバイス２０はそれぞれセンサを含むことで、時間の経過による位置及び向きにおける各デバイス自身の変化を各デバイスが追跡できるようになる。従って、デバイス間の初期の空間的関係が判定されると（例えば、画像データに基づいて）、空間的関係の変化は、追加の画像ベースの判定、デバイス自身の位置／向きの変化を追跡するデバイス、又はそのような追跡技術の組み合わせに基づいて判定することができる。
【００４２】
いくつかの実装形態において、第１デバイス１０と第２デバイス１５との間の空間的関係は、第２デバイス１５に３Ｄコンテンツを提示するために使用される。第１デバイスがラップトップコンピュータであり、第２デバイスがＨＭＤである例において、ラップトップコンピュータの相対位置、向き、サイズ又は他の属性が、ＨＭＤ上に３Ｄコンテンツを提示するのに使用される。具体的な例として、ＨＭＤ上の３Ｄコンテンツの表示は、空間的関係に依存し得る（例えば、ラップトップコンピュータが現在の画像／ビューであるとき、又はＨＭＤの特定の閾値距離内にあるときにのみ、３Ｄコンテンツが表示され得る）。
【００４３】
いくつかの実装形態において、第２デバイス１５は、第１デバイス１０及びウェブページの３Ｄコンテンツにおける第１デバイス１０の表示を含む、第２デバイス１５の周囲の現実世界環境の画像をキャプチャする。第２デバイス１５は、位置、向き、サイズが追加された及び他の属性を有するウェブページの追加３Ｄコンテンツが付いたこれらの画像を表示して、第１デバイス１０のディスプレイ上にある２Ｄコンテンツを補完し、第２デバイス１５によってキャプチャされた及び表示された画像内で見られるようにする。
【００４４】
一実施例において、第１デバイス１０の位置、サイズ又は他の属性に基づいて、第２デバイス１５は、第２デバイス１５を介して３Ｄコンテンツを表示するための位置、サイズ、又は他の属性を判定する。例えば、第２デバイス１５は、ユーザ５５が第１デバイス１０のディスプレイの遮られていないビューを維持するように、ユーザ５５の視線を遮らない方法で３Ｄコンテンツを表示することを判定してもよい。第２デバイス１５は、ユーザが第１デバイス１０に表示された２Ｄコンテンツと第２デバイス１５によって表示された近くの３Ｄコンテンツとの間のコンテキスト関係を容易に理解できるように、第１デバイス１０に隣接する場所に３Ｄコンテンツを表示することを判定してもよい。第２デバイス１５は、３Ｄコンテンツのサイズが第１デバイス１０において表示される２Ｄコンテンツのサイズに対応するように、例えば、２Ｄ及び３Ｄコンテンツ内のテキストが同じサイズを有するように、３Ｄコンテンツを表示することを判定してもよい。第２デバイス１５は、第２デバイス１５を介して表示された３Ｄコンテンツを持つ第１デバイス１０で表示された２Ｄコンテンツを接続して又は他の方法でグラフィカルに関連付けて、視覚的なインジケータを表示することを判定してもよい。
【００４５】
別の実施例において、第２デバイス１５は、第２デバイス１５によってキャプチャされた１つ以上の画像内の第１デバイス１０のポーズ（例えば、位置及び向き）を検出し、この情報を使用して３Ｄコンテンツを表示する。例えば、第１デバイス１０のディスプレイ（例えば、モニタ）の面の向きを検出することができ、この面は表示された２Ｄコンテンツと位置合わせされた３Ｄコンテンツの位置決めのために使用される。
【００４６】
いくつかの実装形態において、第２デバイス１５は、第２デバイス１５に対する第１デバイス１０の位置変化を検出するか又は識別し、第１デバイス１０と第２デバイス１５との間の第２空間的関係を判定するように構成されている。次いで、第２デバイス１５は、第２空間的関係に基づいて３Ｄコンテンツの表示を更新してもよい。例えば、ユーザ５５が第２デバイス１５に対する第１デバイス１０の位置をシフトする場合、第２デバイス１５は、第１デバイス１０のディスプレイの遮られていないビューをユーザが維持するように、３Ｄコンテンツの表示を変更することができる。
【００４７】
いくつかの実装形態において、第２デバイス１５は、ユーザ入力を必要とせずに、３Ｄコンテンツ５０を自動的に取得及び表示する。例えば、第２デバイス１５は、第２デバイス１５がユーザ５５によって装着され、第２デバイス１５が第１デバイス１０から閾値距離内にあることを検出すると、３Ｄコンテンツ５０を表示する。他の実装形態において、第２デバイス１５は、別のデバイス上の２Ｄコンテンツに関連付けられた３Ｄコンテンツが利用可能であり、その３Ｄコンテンツの検索及び表示を開始するための入力を受信するという指示を提供する。
【００４８】
第２デバイス１５は、３Ｄコンテンツを表示するための表示特徴を判定するように構成されてもよい。いくつかの実装形態において、第２デバイスは、所定の又はユーザ指定の表示基準に基づいて、他の表示されたコンテンツに対して、例えば、現実世界コンテンツ又は他の仮想オブジェクトに対して、３Ｄコンテンツ５０を表示する位置を判定する。一実施例において、第１デバイス１０と第２デバイス１５との間の空間的関係の認識に基づいて、３Ｄコンテンツ５０は、ユーザ５５の視野内にある第２デバイス（例えば、ＨＭＤ）上のユーザ５５に表示される。いくつかの実装形態において、第２デバイス１５は、第１デバイス１０上に表示されたウェブページコンテンツ２５のビューを遮ることなく仮想コンテンツを表示できる場所を識別することによって、３Ｄコンテンツ５０を表示する位置を判定する。例えば、図３に示されるように、３Ｄコンテンツ５０は、第１デバイス１０のビューを遮ることなく、第１デバイス１０の隣のテーブル５７上に表示される。
【００４９】
いくつかの実装形態において、例えば対話型ウェブページの場合、３Ｄコンテンツ５０に対して行われる変更は、第１デバイス１０のユーザインタフェース又は第２デバイス１５のユーザインタフェースを介して、第１デバイス１０及び第２デバイス１５の両方で維持されるか又は別の方法で同期される。例えば、第１デバイス１０又は第２デバイス１５のユーザは、第１デバイス１０又は第２デバイス１５いずれかのソファーの色を変更させることができ、その変更は他のデバイス上で検出及び表示され得る。第１デバイス１０又は第２デバイス１５のいずれかで維持されたウェブページの状態は、デバイス１０、１５が同じ状態及び同期を維持するように、例えば、ウェブページの同じインスタンスを表示するように、デバイス１０とデバイス１５間で共有されてもよい。例として、ユーザとの対話に基づいて第１デバイス１０上で強調表示された項目は、第２デバイス１５上でも強調表示され、３Ｄコンテンツ５０が変更されるとそれに対応して２Ｄコンテンツ３０が変更され、逆もまた同様である。
【００５０】
図４は、いくつかの実装形態による、３Ｄコンテンツ５０の共有に関与する通信６０の流れを示すフローチャートである。図４において、ウェブサーバ７０は、２Ｄコンテンツ３０及び３Ｄコンテンツ５０を含むウェブページの送信７５を、第１デバイス１０へ提供する。第１デバイス１０は、リンク２０を介して第２デバイス１５と通信し、第２デバイス１５は３Ｄコンテンツ５０を受信する。いくつかの実装において、第１デバイス１０は、第２デバイス１５に関連付けられた情報に基づいて、どの３Ｄコンテンツ５０を提供するかを識別する。例えば、第２デバイス１５は、電話、タブレット又はＨＭＤであってもよく、３Ｄコンテンツ５０は、そのようなデバイス上で利用可能な３Ｄコンテンツの閲覧機能に基づいて、そのようなデバイス上で閲覧するのに適切な形態で提供されてもよい。
【００５１】
２Ｄ及び３Ｄコンテンツに示され得るオブジェクトの例としては、テーブル、床、壁、机、書籍、水域、山、野原、車両、カウンタ、人間の顔、人間の手、人間の毛髪、別の人体部位、人体全体、動物又は他の生物、衣類、用紙、雑誌、書籍、車両、機械又は他の人工物体、及び識別され得る並びに表現され得る任意の他の３Ｄ物品又は物品群を含むが、それに限定されるものではない。２Ｄ及び３Ｄコンテンツは追加として又は代替として、宇宙人、魔法使い、宇宙船、ユニコーン、コンピュータ生成グラフィック及びそのようなその他の項目を含むが、それに限定されるものではない現実世界コンテンツに対応してもよい又は対応しなくてもよい作成コンテンツを含むことができる。
【００５２】
図５は、いくつかの実装による、第１デバイス１０のデバイス構成要素を示すブロック図である。特定の特徴が示されているが、当業者は、本明細書に開示される実装形態のより適切な態様を曖昧にしないよう、簡潔にするために様々な他の特徴が示されていないことを、本開示から理解されよう。その目的のために、非限定的な例として、いくつかの実施例において、第１デバイス１０は、１つ以上の処理ユニット１０２（例えば、マイクロプロセッサ、ＡＳＩＣ、ＦＰＧＡ、ＧＰＵ、ＣＰＵ、処理コアなど）、１つ以上の入出力（Ｉ／Ｏ）機器及びセンサ１０６、１つ以上の通信インタフェース１０８（例えば、ＵＳＢ、ＦＩＲＥＷＩＲＥ（登録商標）、ＴＨＵＮＤＥＲＢＯＬＴ、ＩＥＥＥ  ８０２．３ｘ、ＩＥＥＥ  ８０２．１１ｘ、ＩＥＥＥ８０２．１６ｘ、ＧＳＭ（登録商標）、ＣＤＭＡ、ＴＤＭＡ、ＧＰＳ、赤外線、ＢＬＵＥＴＯＯＴＨ、ＺＩＧＢＥＥ、ＳＰＩ、Ｉ２Ｃ又は同様のタイプのインタフェース）、１つ以上のプログラミング（例えば、Ｉ／Ｏ）インタフェース１１０、１つ以上のディスプレイ１１２、１つ以上の内部又は外部対向画像センサシステム（interior or exterior facing image sensor systems）１１４、メモリ１２０、及びこれら並びに様々な他の構成要素を相互接続するための１つ以上の通信バス１０４が挙げられる。
【００５３】
いくつかの実装形態において、１つ以上の通信バス１０４は、システム構成要素間の通信を相互接続する及び制御する回路を含む。いくつかの実装形態において、１つ以上のＩ／Ｏ機器及びセンサ１０６は、少なくとも１つのタッチスクリーン、ソフトキー、キーボード、仮想キーボード、ボタン、ノブ、ジョイスティック、スイッチ、ダイアル、慣性測定装置（ＩＭＵ）、加速度計、磁力計、ジャイロスコープ、温度計、１つ以上の生理的センサ（例えば、血圧モニタ、心拍数モニタ、血液酸素センサ、血糖センサなど）、１つ以上のマイクロホン、１つ以上のスピーカ、触覚エンジン、１つ以上の深度センサ（例えば、ストラクチュアドライト、飛行時間など）などが挙げられる。いくつかの実装形態において、１つ以上のＩ／Ｏ機器及びセンサ１０６によって検出された第１デバイス１０の動き、回転又は位置は、第１デバイス１０へ入力を提供する。
【００５４】
いくつかの実装形態において、１つ以上のディスプレイ１１２は、ユーザインタフェースを提示するように構成されている。いくつかの実装形態において、１つ以上のディスプレイ１１２は、ホログラフィック、デジタル光処理（ＤＬＰ）、液晶ディスプレイ（ＬＣＤ）、ＬＣｏＳ（ｌｉｑｕｉｄ−ｃｒｙｓｔａｌ  ｏｎ  ｓｉｌｉｃｏｎ）、有機発光電界効果トランジスタ（ＯＬＥＴ）、有機発光ダイオード（ＯＬＥＤ）、表面伝導型電子放出素子ディスプレイ（ＳＥＤ）、電界放出ディスプレイ（ＦＥＤ）、量子ドット発光ダイオード（ＱＤ−ＬＥＤ）、ＭＥＭＳ（ｍｉｃｒｏ−ｅｌｅｃｔｒｏ−ｍｅｃｈａｎｉｃａ  ｓｙｓｔｅｍ）又は同様のディスプレイタイプに相当する。いくつかの実装形態において、１つ以上のディスプレイ１１２は、回折、反射、偏光、ホログラフィックなどの、導波管ディスプレイに相当する。１つの実施例において、第１デバイス１０は単一のディスプレイを含む。別の実施例において、第１デバイス１０は、各眼用のディスプレイを含む。いくつかの実装形態において、１つ以上のディスプレイ１１２は、ＭＲ又はＶＲコンテンツを提示することができる。
【００５５】
いくつかの実装形態において、１つ以上の画像センサシステム１１４は、第１デバイス１０に対してローカルなシーンの少なくとも一部分に対応する画像データを取得するように構成されている。１つ以上の画像センサシステム１１４は、１つ以上のＲＧＢカメラ（例えば、相補型金属酸化膜半導体（ＣＭＯＳ）画像センサ又は電荷結合デバイス（ＣＣＤ）画像センサを備えた）、モノクロカメラ、赤外線カメラ、イベントベースのカメラなどを含むことができる。様々な実装形態において、１つ以上の画像センサシステム１１４は、フラッシュなどの光を発する照明光源を更に含む。
【００５６】
メモリ１２０は、ＤＲＡＭ、ＳＲＡＭ、ＤＤＲ  ＲＡＭ又は他のランダムアクセスソリッドステートメモリデバイスなどの、高速ランダムアクセスメモリを含む。いくつかの実装形態において、メモリ１２０は、１つ以上の磁気ディスク記憶デバイス、光ディスク記憶デバイス、フラッシュメモリデバイス又は他の不揮発性記憶デバイスなどの、不揮発性メモリを含む。メモリ１２０は、１つ以上の処理ユニット１０２からリモートに位置する１つ以上の記憶デバイスを任意選択的に含む。メモリ１２０は、非一時的コンピュータ可読記憶媒体を含む。いくつかの実装形態において、メモリ１２０又はメモリ１２０の非一時的コンピュータ可読記憶媒体は、以下のプログラム、モジュール及びデータ構造、又はそれらのサブセットを記憶し、任意選択のオペレーティングシステム１３０及びウェブブラウザ１３２を含む。オペレーティングシステム１３０は、様々な基本システムサービスを処理するための及びハードウェア依存タスクを実行するための手順を含む。更に、いくつかの実装形態において、オペレーティングシステム１３０の機能はまた、ブラウザ若しくはブラウザプラグインに位置するか又はブラウザから分離し得る。
【００５７】
いくつかの実装形態において、オペレーティングシステム１３０は、ウェブページコンテンツを受信又は表示するためのウェブブラウザ１３２を含む。更に、検査ユニット１３４は、３Ｄコンテンツが利用可能であることのタグ若しくは他の表示のためのマークアップ言語又は他のウェブページコンテンツを検査するために、ウェブブラウザ１３２によって使用されてもよい。いくつかの実装形態において、オペレーティングシステム１３０は、表示されたコンテンツにインジケータを追加して３Ｄコンテンツの存在を示すインジケータユニット１３６を含む。更に、オペレーティングシステム１３０は、３Ｄコンテンツの転送又は他の情報の交換を含む、第２デバイス１５と通信するためのインタフェースユニット１３８を含んでもよい。いくつかの実装形態において、検査ユニット１３４の１つ以上は、インジケータユニット１３６及びインタフェースユニット１３８がウェブブラウザ１３２の一部でもあり得又は別個でもあり得る。いくつかの実装形態において、検査ユニット１３４、インジケータユニット１３６及びインタフェースユニット１３８の１つ以上は、オペレーティングシステム１３０とは別個のアプリケーションの一部として提供されるか又は第１デバイス１０に対してローカル若しくは第１デバイス１０からリモートな別個のデバイス上に実装される。
【００５８】
図５は、本明細書に記載される実装形態の構造概略とは対照的に、特定の実装形態に存在する様々な特徴の機能的説明を更に意図している。当業者によって認識されるように、別々に示された項目を組み合わせることができ、一部の項目を分離することができる。例えば、図５に別個に示されるいくつかの機能モジュールは、単一のモジュール内に実装することができ、単一の機能ブロックの様々な機能は、様々な実装形態において１つ以上の機能ブロックによって実装され得る。モジュールの実際の数並びに特定の機能の分割及びそれらの間にどのように機能が割り当てられるかは、実装形態によって異なり、いくつかの実装形態において、特定の実装形態のために選択されたハードウェア、ソフトウェア又はファームウェアの特定の組み合わせに部分的に依存する。
【００５９】
図６は、いくつかの実施形態による、第２デバイス１５のデバイス構成要素を示すブロック図である。特定の特徴が示されているが、当業者は、本明細書に開示される実装形態のより適切な態様を曖昧にしないよう、簡潔にするために様々な他の特徴が示されていないことを、本開示から理解されよう。その目的のために、非限定的な例として、いくつかの実施例において、第２デバイス１５は、１つ以上の処理ユニット１５２（例えば、マイクロプロセッサ、ＡＳＩＣ、ＦＰＧＡ、ＧＰＵ、ＣＰＵ、処理コアなど）、１つ以上の入出力（Ｉ／Ｏ）機器及びセンサ１５６、１つ以上の通信インタフェース１５８（例えば、ＵＳＢ、ＦＩＲＥＷＩＲＥ、ＴＨＵＮＤＥＲＢＯＬＴ、ＩＥＥＥ  ８０２．３ｘ、ＩＥＥＥ  ８０２．１１ｘ、ＩＥＥＥ  ８０２．１６ｘ、ＧＳＭ、ＣＤＭＡ、ＴＤＭＡ、ＧＰＳ、赤外線、ＢＬＵＥＴＯＯＴＨ、ＺＩＧＢＥＥ、ＳＰＩ、Ｉ２Ｃ又は同様のタイプのインタフェース）、１つ以上のプログラミング（例えば、Ｉ／Ｏ）インタフェース１６０、１つ以上のディスプレイ１６２、１つ以上の内部又は外部対向画像センサシステム１６４、メモリ１７０、及びこれら並びに様々な他の構成要素を相互接続するための１つ以上の通信バス１５４を含む。
【００６０】
いくつかの実装形態において、１つ以上の通信バス１５４は、システム構成要素間の通信を相互接続する及び制御する回路を含む。いくつかの実装形態において、１つ以上のＩ／Ｏ機器及びセンサ１５６は、少なくとも１つのタッチスクリーン、ソフトキー、キーボード、仮想キーボード、ボタン、ノブ、ジョイスティック、スイッチ、ダイアル、慣性測定装置（ＩＭＵ）、加速度計、磁力計、ジャイロスコープ、温度計、１つ以上の生理的センサ（例えば、血圧モニタ、心拍数モニタ、血液酸素センサ、血糖センサなど）、１つ以上のマイクロホン、１つ以上のスピーカ、触覚エンジン、１つ以上の深度センサ（例えば、ストラクチュアドライト、飛行時間など）などが挙げられる。いくつかの実装形態において、１つ以上のＩ／Ｏ機器及びセンサ１５６によって検出された第２デバイス１５の動き、回転又は位置は、第２デバイス１５へ入力を提供する。
【００６１】
いくつかの実装形態において、１つ以上のディスプレイ１６２は、別のデバイス上で閲覧されているか又は編集されている３Ｄモデルのビューを提示するように構成される。いくつかの実装形態において、１つ以上のディスプレイ１６２は、ホログラフィック、デジタル光処理（ＤＬＰ）、液晶ディスプレイ（ＬＣＤ）、ＬＣｏＳ、有機発光電界効果トランジスタ（ＯＬＥＴ）、有機発光ダイオード（ＯＬＥＤ）、表面伝導型電子放出素子ディスプレイ（ＳＥＤ）、電界放出ディスプレイ（ＦＥＤ）、量子ドット発光ダイオード（ＱＤ−ＬＥＤ）、ＭＥＭＳ又は同様のディスプレイタイプに相当する。いくつかの実装形態において、１つ以上のディスプレイ１６２は、回折、反射、偏光、ホログラフィックなどの、導波管ディスプレイに相当する。一実施例において、第２デバイス１５は単一のディスプレイを含む。別の実施例において、第２デバイス１５は各眼用のディスプレイを含む。いくつかの実装形態において、１つ以上のディスプレイ１６２は、ＣＧＲコンテンツを提示することができる。
【００６２】
いくつかの実装形態において、１つ以上の画像センサシステム１６４は、第２デバイス１５に対してローカルなシーンの少なくとも一部分に対応する画像データを取得するように構成されている。１つ以上の画像センサシステム１６４は、１つ以上のＲＧＢカメラ（例えば、相補型金属酸化膜半導体（ＣＭＯＳ）画像センサ又は電荷結合デバイス（ＣＣＤ）画像センサを備えた）、モノクロカメラ、赤外線カメラ、イベントベースのカメラなどを含むことができる。様々な実装形態において、１つ以上の画像センサシステム１６４は、フラッシュなどの光を発する照明光源を更に含む。
【００６３】
メモリ１７０は、ＤＲＡＭ、ＳＲＡＭ、ＤＤＲ  ＲＡＭ又は他のランダムアクセスソリッドステートメモリデバイスなどの、高速ランダムアクセスメモリを含む。いくつかの実装形態において、メモリ１７０は、１つ以上の磁気ディスク記憶デバイス、光ディスク記憶デバイス、フラッシュメモリデバイス又は他の不揮発性記憶デバイスなどの、不揮発性メモリを含む。メモリ１７０は、１つ以上の処理ユニット１５２からリモートに位置する１つ以上の記憶デバイスを任意選択的に含む。メモリ１７０は、非一時的コンピュータ可読記憶媒体を含む。いくつかの実装形態において、メモリ１７０又はメモリ１７０の非一時的コンピュータ可読記憶媒体は、以下のプログラム、モジュール及びデータ構造、又はそれらのサブセットを記憶し、任意選択のオペレーティングシステム１８０及びウェブブラウザ１８２を含む。オペレーティングシステム１８０は、様々な基本システムサービスを処理するための及びハードウェア依存タスクを実行するための手順を含む。更に、いくつかの実装形態において、オペレーティングシステム１８０の機能はまた、ブラウザ、ブラウザプラグインに位置するか又はブラウザから分離し得る。
【００６４】
いくつかの実装形態において、オペレーティングシステム１８０は、ウェブページコンテンツを受信又は表示するためのウェブブラウザ１８２を含む。更に、検査ユニット１８４は、３Ｄコンテンツが利用可能であることのタグ若しくは他の表示のためのマークアップ言語又は他のウェブページコンテンツを検査するために、ウェブブラウザ１８２によって使用されてもよい。実装形態において、オペレーティングシステム１３０は、３Ｄコンテンツなどの情報を第１デバイス１０から受信するか、又は３Ｄコンテンツの受信若しくは表示に関する情報を交換するためのインタフェースユニット１８６を含む。更に、オペレーティングシステム１３０は、複数のソース、例えば、カメラからの現実世界データ及び第１デバイス１０から受信した３Ｄコンテンツからのデータを使用して、ＣＧＲコンテンツ又はＣＧＲ環境のビューを生成するためのＣＧＲコンテンツ作成ユニット１８８を含んでもよい。いくつかの実装形態において、検査ユニット１８４、インタフェースユニット１８６及びＣＧＲコンテンツ作成ユニット１８８の１つ以上は、ウェブブラウザ１８２の一部であり又は別個である。いくつかの実装形態において、検査ユニット１８４、インタフェースユニット１８６及びＣＧＲコンテンツ作成ユニット１８８の１つ以上は、オペレーティングシステム１８０とは別個のアプリケーションの一部として提供されるか又は第１デバイス１５に対してローカル若しくは第１デバイス１５からリモートな別個のデバイス上に実装される。
【００６５】
図６は、本明細書に記載される実装形態の構造概略とは対照的に、特定の実装形態に存在する様々な特徴の機能的説明を更に意図している。当業者によって認識されるように、別々に示された項目を組み合わせることができ、一部の項目を分離することができる。例えば、図６に別個に示されるいくつかの機能モジュールは、単一のモジュール内に実装することができ、単一の機能ブロックの様々な機能は、様々な実装形態において１つ以上の機能ブロックによって実装され得る。モジュールの実際の数並びに特定の機能の分割及びそれらの間にどのように機能が割り当てられるかは、実装形態によって異なり、いくつかの実装形態において、特定の実装形態のために選択されたハードウェア、ソフトウェア又はファームウェアの特定の組み合わせに部分的に依存する。
【００６６】
図７は、第１デバイスがウェブページによって参照される２Ｄコンテンツを提示できるようにする及び、第１デバイスと通信している第２デバイスがウェブページによって参照される３Ｄコンテンツを表示できるようにする方法２００を示すフローチャートである。いくつかの実装形態において、方法２００は、１つ以上のデバイス、例えば、図１〜図５の第１デバイス１０によって実行される。方法２００は、モバイル機器、ＨＭＤ、デスクトップコンピュータ、ラップトップコンピュータ又はサーバデバイスで実行することができる。いくつかの実装形態において、方法２００は、ハードウェア、ファームウェア、ソフトウェア又はそれらの組み合わせを含む処理ロジックによって実行される。いくつかの実装形態において、方法２００は、非一時的コンピュータ可読媒体（例えば、メモリ）に記憶されたコードを実行するプロセッサによって実行される。
【００６７】
ブロック２１０において、方法２００は、第１デバイスのディスプレイ上に表示するためのウェブページによって参照される２Ｄコンテンツを取得する。いくつかの実装形態において、方法２００は、ＨＴＭＬタグ又はＪａｖａＳｃｒｉｐｔ（登録商標）を解釈して、タイトル、テキスト、画像などの２Ｄコンテンツを表示する。例えば、方法２００は、画像要素に関連付けられたタグ（例えば、「＜ｉｍｇ＞」）などのＨＴＭＬメタデータを処理して、ウェブページ内に埋め込まれた２Ｄ画像を取得することができる。実装形態において、２Ｄコンテンツはオブジェクトの２Ｄビューを含む。他の実装において、２Ｄコンテンツは３Ｄ閲覧用にフォーマットされていないコンテンツを含む。
【００６８】
ブロック２２０において、方法２００は、ウェブページが２Ｄコンテンツに関連付けられた３Ｄコンテンツを参照することを検出する。いくつかの実装形態において、これには、例えば、複合現実マークアップ言語（Mixed Reality Markup Language、ＭＲＭＬ）プロトコル若しくはアプリケーションプログラムインタフェース（ＡＰＩ）を介してマークアップ言語を検査するか又はウェブページの他の態様を検査して、マークアップ言語ステートメント若しくは３Ｄコンテンツの他のインジケータを識別することが含まれる。従って、マークアップ言語ファイルは、３Ｄコンテンツに対応する１つ以上のステートメント又はウェブページに関連付けられた３Ｄコンテンツの可用性を別の方法で示す１つ以上のステートメントを含んでもよい。マークアップ言語インジケータは、ウェブページによって参照される２Ｄコンテンツの一部として、例えば、３Ｄコンテンツの可用性を示すサムネイル画像、リンク、アイコン又はボタンの形態で、表示される視覚的なインジケータに関連付けられてもよい。
【００６９】
ブロック２３０において、方法２００は、第２デバイスが第１デバイスと通信していることを検出する。通信は、第１デバイスと第２デバイスとの間のリンクに基づいて検出されてもよい。いくつかの実装形態において、第１デバイスと第２デバイスとの間のリンクを検出することは、第２デバイスがＵＳＢ又は他のケーブルを介して第１デバイスに接続されていることを検出することを伴う。いくつかの実装形態において、第１デバイスと第２デバイスとの間のリンクを検出することは、デバイス間で無線通信チャネルが確立されたことを検出することを伴う。いくつかの実装形態において、第１デバイスと第２デバイスとの間の無線若しくは有線接続又は他のリンクは、第１又は第２デバイスによって自動的に検出される。いくつかの実装形態において、これは、接続されたデバイスが、特定のユーザ、所有者若しくはアカウントに関連付けられた特定のデバイス、デバイスのタイプ又はデバイスであると認識することを、追加として又は代替として伴ってもよい。
【００７０】
接続が存在しない場合、接続を確立してもよい。いくつかの実装形態において、接続を確立するためのオプションを識別するメッセージが、第１デバイスのユーザに提示される。例えば、ユーザが接続を確立したいかどうかを尋ねるテキスト、グラフィカル又は音声メッセージが提示される。他の実施例において、第１デバイス及び第２デバイスの両方が同じアカウントか又はユーザプロファイルに関連付けられていることに基づいて、接続が自動的に確立される。別の実施例において、１つのデバイス上の２Ｄコンテンツが別のデバイス上で表示され得る３Ｄコンテンツと関連付けられていることを検出することに基づいて、接続が自動的に確立される。別の実施例において、３Ｄコンテンツを互いのデバイスで共有するというユーザの意図を検出することに基づいて、接続が自動的に確立される。別の実施例において、デバイス間の近接性、例えば、デバイスが互いに閾値距離内にあることを検出するか又は推定することに基づいて、接続が自動的に確立される。いくつかの実装形態において、接続は、オペレーティングシステム（ＯＳ）レベルのサービスコールを介して確立される。接続はまた、第２デバイス上の共有メモリを呼び出すか又はそのメモリにアクセスしてもよい。デーモンはこの共有メモリをデーモンの処理空間内にマッピングすることができるため、デーモンは第１デバイスが第２デバイスにシームレスにリンクするためのパイプ役となり、３Ｄコンテンツの閲覧／編集体験を提供する。
【００７１】
ブロック２４０において、方法２００は、ウェブページによって参照される３Ｄコンテンツを第２デバイスに提供する。いくつかの実装形態において、第１デバイスは第２デバイスに通信を送信し、第２デバイス上の３Ｄ閲覧インタフェースを自動的に起動する。
【００７２】
ブロック２５０において、方法２００は第２デバイスで受信された入力に対応する通信を受信する。例えば第２デバイスのユーザは、例えば、入力、手振り、選択などを介して第２デバイスと対話してもよく、第２デバイスにおける入力は、その後第１デバイスに伝達されてもよい。
【００７３】
ブロック２６０において、方法２００は、第１デバイスのディスプレイ上のウェブページによって参照される２Ｄコンテンツに、第２デバイスで受信した入力を適用する。いくつかの実装形態において、第２デバイスから受信された入力に基づいて、３Ｄコンテンツを、追加として又は代替として、リフレッシュするか、更新するか、選択するか、又は他の方法で修正してもよい。次に、方法はブロック２４０において、更新された３Ｄコンテンツを第２デバイスに提供することができる。
【００７４】
図８は、いくつかの実装形態による、第１デバイスから受信した３Ｄコンテンツを有する第２デバイス上にＣＧＲ環境を表示するための方法３００を示すフローチャートである。いくつかの実装形態において、方法３００は、１つ以上のデバイス（例えば、図１〜図４及び図６の第２デバイス１５）によって実行される。方法３００は、モバイル機器、ＨＭＤ、デスクトップコンピュータ、ラップトップコンピュータ又はサーバデバイスで実行することができる。方法３００は、３Ｄ画像を表示するためのスクリーン又は立体画像を閲覧するためのスクリーンを有するＨＭＤ上で実行することができる。いくつかの実装形態において、方法３００は、ハードウェア、ファームウェア、ソフトウェア又はそれらの組み合わせを含む処理ロジックによって実行される。いくつかの実装形態において、方法３００は、非一時的コンピュータ可読媒体（例えば、メモリ）に記憶されたコードを実行するプロセッサによって実行される。
【００７５】
ブロック３１０において、方法３００は、２Ｄコンテンツに対応する３Ｄコンテンツを受信する。３Ｄコンテンツは、３Ｄコンテンツを送信するために別のユーザが使用するデバイスからか又はウェブページサーバデバイスからのような別個のデバイスから受信される。いくつかの実装形態において、３Ｄコンテンツはユーザ入力に基づいて受信される。例えば、第２デバイスは、選択可能なオプションを介して３Ｄコンテンツが利用可能であるという指示を表示し、そのオプションのユーザ選択を検出してもよい。
【００７６】
ブロック３２０において、方法３００は、３Ｄコンテンツを閲覧するためのユーザ選択に対応する入力を受信する。いくつかの実装形態において、方法３００は、ユーザインタフェース上の３Ｄコンテンツを表すアイコン、グラフィック又テキストを提示し、アイコン、グラフィック又はテキストのユーザ選択に対応する入力を受信する。いくつかの実装形態において、ユーザインタフェースは、受信した３Ｄコンテンツを表すアイコン、グラフィック又はテキストを表示し、また、アイコン、グラフィック又はテキストの選択によって、受信した３Ｄコンテンツを閲覧するためにビューアが起動することを示すインジケータ（テキスト、グラフィックなど）を表示する。
【００７７】
ブロック３３０及び３４０は、３Ｄコンテンツを閲覧するための入力を検出することに応じて実行される。ブロック３３０において、方法３００は、カメラを使用して画像をキャプチャする。カメラによってキャプチャされた画像は、ＣＧＲ環境に含まれ得るデバイスのシーンにおける現実世界のコンテンツを描写する。
【００７８】
ブロック３４０において、方法３００は、３Ｄコンテンツ及びキャプチャ画像を使用して、ＣＧＲ環境を構築する。いくつかの実装形態において、ＣＧＲ環境の構築は、キャプチャ画像上に３Ｄコンテンツを重ね合わせることによって実行される。いくつかの実装形態において、ＣＧＲ環境の構築は、画像内に示された現実世界コンテンツ内の１つ以上の平面を検出し、検出された平面に基づいて、ＣＧＲ環境内に３Ｄコンテンツを位置付けることによって実行される。例えば、第１の時点で、受信した３Ｄコンテンツの画像を、キャプチャ画像の中で最も最近キャプチャされた画像の上に配置することができ、追加のキャプチャ画像をキャプチャした後の第２の時点で、受信した３Ｄコンテンツの（同じか又は異なる）画像を、新たにキャプチャされた画像などの上に配置することができる。いくつかの実装形態において、ＣＧＲ環境の構築は、画像に示された現実世界コンテンツの一部又は全てに対応する３Ｄモデルを構築し、３Ｄコンテンツをモデルに追加し、次に特定の視点から合成コンテンツの画像を作成することによって実行される。
【００７９】
ユーザはＣＧＲ環境と対話し、ＣＧＲ環境を変化させることができる。一実施例において、ユーザはウェブページの３Ｄコンテンツの位置又は回転を変更する。例えば、ユーザは、シーン内の別の場所にソファーの描写を移動させることができる。いくつかの実装形態において、変更は視点の変化を伴う。例えばこれは、動きに基づいて、デバイスの動き又は回転を受信すること及びＣＧＲ環境の表示を更新することを伴うことがある。ユーザが頭部を動かしたり、部屋を動き回ったり、飛び跳ねたりなどすると、ユーザの視点はＣＧＲ環境内で変化する。しかし、ＣＧＲ環境で示されている現実世界オブジェクトに対する３Ｄコンテンツの位置及び回転は、一定のままであることが可能で、例えば、ソファーは、シーンに示されている床及び他の現実世界オブジェクトに対して、その位置に留まる。一定の相対的位置を維持するために、平坦な表面又は特徴が画像内で識別され、受信された３Ｄコンテンツの相対位置を維持するために使用される。
【００８０】
図９は、いくつかの実装形態による、ウェブページによって参照される３Ｄコンテンツを含む第１デバイスで３Ｄ環境のビューを提供するための方法４００を示すフローチャートであり、この３Ｄコンテンツは、ウェブページによって参照される２Ｄコンテンツを表示する第２デバイスを検出することに基づいて取得される。いくつかの実装形態において、方法４００は、１つ以上のデバイス（例えば、図１〜図４及び図６の第２デバイス１５）によって実行される。方法４００は、モバイル機器、ＨＭＤ、デスクトップコンピュータ、ラップトップコンピュータ又はサーバデバイスで実行することができる。方法４００は、３Ｄ画像を表示するためのスクリーン又は立体画像を閲覧するためのスクリーンを有するＨＭＤ上で実行することができる。いくつかの実装形態において、方法４００は、ハードウェア、ファームウェア、ソフトウェア又はそれらの組み合わせを含む処理ロジックによって実行される。いくつかの実装形態において、方法４００は、非一時的コンピュータ可読媒体（例えば、メモリ）に記憶されたコードを実行するプロセッサによって実行される。
【００８１】
ブロック４１０において、方法４００は画像センサを使用して物理的環境を表す画像データを取得する。画像センサによってキャプチャされた画像データは、第２デバイスを含む現実世界コンテンツを含んでもよい。
【００８２】
ブロック４２０において、方法４００は、第２デバイスが画像データ内に描写されていることを検出する。方法４００は、ウェブページによって参照される３Ｄコンテンツのないウェブページによって参照される２Ｄコンテンツを第２デバイスが表示することを、更に検出することができる。いくつかの実装形態において、方法４００は、３Ｄコンテンツを表すアイコン、グラフィック又はテキストを検出する。他の実装形態において、方法４００は、３Ｄコンテンツに対応するウェブページの定義ＨＴＭＬ内又は他のマークアップ言語ファイル内のマークアップステートメントを検出する。
【００８３】
ブロック４３０において、方法４００は、ウェブページによって参照される３Ｄコンテンツのないウェブページによって参照される２Ｄコンテンツを第２デバイスのディスプレイが含むことを検出することに基づいて、ウェブページによって参照される３Ｄコンテンツを取得する。いくつかの実装形態において、３Ｄコンテンツは、２Ｄコンテンツを表示する第２デバイスから取得される。いくつかの実装形態において、３Ｄコンテンツは、第２デバイス上に表示されたウェブページに関連付けられたウェブアドレスから取得される。
【００８４】
方法４００のブロック４４０において、第１デバイスは、ディスプレイ用ウェブページによって参照される３Ｄコンテンツを含む３Ｄ環境のビューを提供する。方法４００は、３Ｄコンテンツ及び画像データを使用して、３Ｄ環境のビューを構築してもよい。いくつかの実装形態において、３Ｄ環境のビューは、リアルタイムの又は録画済みの画像データを使用して構築される。いくつかの実装形態において、３Ｄ環境のビューの構築は、画像データ上に３Ｄコンテンツを重ね合わせることによって実行される。いくつかの実装形態において、３Ｄ環境のビューの構築は、画像データに描写された現実世界コンテンツの一部又は全てに対応する３Ｄモデルを構築し、３Ｄコンテンツをモデルに追加し、次に特定の視点から合成コンテンツの画像を作成することによって実行される。
【００８５】
方法４００のブロック４５０において、第１デバイスは、ユーザからの入力（例えば、入力、手振り、選択など）を受信する。方法４００のブロック４６０において、第２デバイスが第２デバイスで表示されたウェブページコンテンツに入力を適用することができるように、第１デバイスは受信した入力を第２デバイスに通信する。いくつかの実装形態において、入力に基づいて３Ｄコンテンツを、追加として又は代替として、リフレッシュするか、更新するか、選択するか、又は他の方法で修正してもよい。第１デバイスは第２デバイスからの入力に対する応答、例えば、入力が受信したか又は適用されたという通知を受信してもよく、ブロック４３０におけるように、第１デバイスはウェブページによって参照される３Ｄコンテンツを第２デバイスから繰り返して取得してもよい。
【００８６】
図１０は、３Ｄ環境の現状に関連付けられた情報に基づいて、第１デバイスが２Ｄコンテンツ又は３Ｄコンテンツを更新できるようになるための方法５００を示すフローチャートである。いくつかの実装形態において、方法５００は、３つ以上のデバイス、例えば、図１〜図５の第１デバイス１０及び第２デバイス１５、並びに第３デバイスによって実行される。方法５００は、モバイル機器、ＨＭＤ、デスクトップコンピュータ、ラップトップコンピュータ又はサーバデバイスで実行することができる。いくつかの実装形態において、方法５００は、ハードウェア、ファームウェア、ソフトウェア又はそれらの組み合わせを含む処理ロジックによって実行される。いくつかの実装形態において、方法５００は、非一時的コンピュータ可読媒体（例えば、メモリ）に記憶されたコードを実行するプロセッサによって実行される。
【００８７】
ブロック５１０において、方法５００はウェブページによって参照される３Ｄコンテンツを第２デバイス及び第３デバイスに提供する。いくつかの実装形態において、第１デバイスは、第２デバイス又は第３デバイスに通信を送信し、３Ｄ閲覧インタフェースを自動的に起動する。いくつかの実装形態において、第３デバイスは、閲覧インタフェース、例えば、ウェブ対応カメラを含まない。
【００８８】
ブロック５２０において、方法５００は、第３デバイスに修正権限を付与する。いくつかの実装形態において、第３デバイスは、読取り専用モードで３Ｄ閲覧インタフェースを起動することができ、すなわち、第３デバイスは、テキストメッセージ又は絵文字を使用して、３Ｄコンテンツ又は３Ｄコンテンツ上のコメントを閲覧することのみを許可されることがあり、第３デバイスは、３Ｄコンテンツ又は３Ｄ環境の状態の修正を許可されないことがある。第１デバイス又は第２デバイスは次に、それぞれのユーザインタフェースを介して、第３デバイスに修正権限を付与することができる。従って、ブロック５２０において、方法５００は第３デバイスに修正権限を付与する。
【００８９】
ブロック５３０において、方法５００は、第３デバイスから３Ｄ環境の現状に関連付けられた情報を取得する。いくつかの実施形態では、３Ｄ環境に関連図けられた情報は、第３デバイスのシーンにおける現実世界コンテンツを示す第３デバイスの内蔵カメラによってキャプチャされた画像を含み、この画像は、ＣＧＲ環境に含まれるか又はＣＧＲ環境を作成するために使用され得る。
【００９０】
ブロック５４０において、方法５００は、３Ｄ環境の現状、例えば、現実世界環境の画像又はモデルに関連付けられた情報に基づいて、ウェブページによって参照される２Ｄコンテンツ又は３Ｄコンテンツを更新する。いくつかの実装形態において、２Ｄ又は３Ｄコンテンツは、第３デバイスから受信された情報に基づいて、リフレッシュするか、更新するか、選択するか又は他の方法で修正される。いくつかの実装形態において、第１デバイスは、３Ｄ環境の現状に関連付けられた情報を含むか、組み込むか又は使用するウェブページコンテンツのビューを提供する。一実施例において、第１デバイスは、内蔵カメラなしのラップトップコンピュータであり、接続された第３デバイスは、内蔵カメラ付きの携帯電話である。携帯電話は、３Ｄ環境の画像をラップトップコンピュータに提供し、このラップトップコンピュータは、３Ｄ環境を組み込んだウェブページコンテンツのビューを提供する。別の実施例において、第１デバイスはデスクトップコンピュータであり、第３デバイスはウェブ対応カメラである。カメラは、３Ｄ環境の画像をデスクトップコンピュータに提供する。デスクトップコンピュータは、デスクトップコンピュータが表示しているウェブページによって参照される２Ｄコンテンツの背景内に、カメラから受信した画像を含む。
【００９１】
ブロック５５０において、方法５００は、ウェブページによって参照される更新コンテンツを、第２デバイス又は第３デバイスと共有する。例えば、第１デバイスで受信された第３デバイスからの３Ｄ環境情報を使用して、第２デバイス上で閲覧するために配信されるウェブページコンテンツを更新することができる。一実施例において、第１デバイスはラップトップコンピュータであり、第２デバイスは携帯電話であり、第３デバイスはＨＭＤである。この実施例において、ＨＭＤは、ＨＭＤの周囲にある３Ｄ環境の画像をキャプチャし、第１デバイス、第２デバイス、又はその両方でのウェブページ体験に組み込むために、それらの画像を共有する。
【００９２】
請求項記載対象の完全な理解を提供するために、多数の具体的な詳細が本明細書に記載されている。しかしながら、当業者であれば、請求項記載対象は、これらの具体的な詳細を伴わずに実施され得ることを理解するであろう。他の例において、当業者によって既知である方法、装置又はシステムは、請求項記載対象を不明瞭にしないように、詳細に記載されていない。
【００９３】
特に明記しない限り、本明細書の説明全体を通して、「処理する」、「計算する（computing）」、「計算する（calculating）」、「判定する」、及び「識別する」などの用語を利用することは、コンピューティングデバイスのアクション又はプロセスを指すことが理解される。コンピューティングデバイスとは、メモリ、レジスタ若しくは他の情報記憶デバイス、送信デバイス又はコンピューティングプラットフォームの表示デバイス範囲内にある物理電子量又は磁気量として表されるデータを操作するか又は変換する、１つ以上のコンピュータ又は類似の電子コンピューティングデバイス（単数又は複数）などである。
【００９４】
本明細書で論じられるシステム（単数又は複数）は、いかなる特定のハードウェアアーキテクチャ又は構成にも限定されない。コンピューティングデバイスは、１つ以上の入力が条件づけられた結果を提供する、任意の好適な構成要素の配置を含み得る。好適なコンピューティングデバイスは、汎用計算装置から本対象の１つ以上の実装形態を実装する専用計算装置まで、コンピューティングシステムをプログラミングするか又は構成するよう記憶されたソフトウェアにアクセスする汎用マイクロプロセッサベースのコンピュータシステムを含む。任意の好適なプログラミング、スクリプティング又は他のタイプの言語若しくは言語の組み合わせを使用して、本明細書に含まれる教示をソフトウェア内に実装して、コンピューティングデバイスのプログラミング又は構成に使用してもよい。
【００９５】
本明細書に開示される方法の実装形態は、このようなコンピューティングデバイスの動作において実行されてもよい。上述の例で提示されているブロックの順序は、例えば、ブロックを並べ替えるか、組み合わせるか又はサブブロックに分割することができる。特定のブロック又はプロセスは、並行して実行することができる。
【００９６】
本明細書の「に適合する」又は「に構成される」の使用は、追加のタスク若しくはステップを実行するように適合するか又は構成されるデバイスを排除しない、限定されていない及び包括的な言語を意味する。更に、「に基づく」の使用は、１つ以上の列挙された条件又は値に「基づく」プロセス、ステップ、計算又は他のアクションが、実際には、列挙された条件又は値を超える追加の条件又は値に基づいてもよいという点で、限定されていない及び包括的であることを意味する。本明細書に含まれる見出し、リスト及び番号付けは、説明を容易にするためのものであり、限定することを意図するものではない。
【００９７】
本明細書では、様々な要素を説明するために「第１」、「第２」などの用語が使用される場合があるが、これらの要素は、これらの用語によって限定されるべきではないことも理解されるであろう。これらの用語は、ある要素を別の要素と区別するためにのみ使用される。例えば、「第１ノード」の全ての出現について一貫して名前が変更され、「第２ノード」のすべての出現について一貫して名前が変更される限り、説明の意味を変えることなく、第１ノードは第２ノードと呼ぶことができ、同様に、第２ノードは第１ノードと呼ぶことができる。第１ノード及び第２ノードは両方ともノードであるが、それらは同じノードではない。
【００９８】
本明細書で使用される用語は、特定の実施態様を説明する目的のためであり、特許請求の範囲を限定することを意図するものではない。説明される実装形態の説明及び添付の特許請求の範囲で使用されるように、単数形の「ａ」、「ａｎ」、及び「ｔｈｅ」は、文脈がそうではないことを明確に示さない限り、複数形も含むことを意図している。また、本明細書で使用されるとき、用語「及び／又は」は、関連する列挙された項目のうちの１つ以上のいずれか及びすべての考えられる組合せを指し、かつこれを含むことを理解されたい。用語「comprises（含む）」又は「comprising（含む）」が、本明細書で使用される場合、述べられた特徴、整数、ステップ、動作、要素又は構成要素の存在を指定するが、１つ以上の他の特徴、整数、ステップ、動作、要素、構成要素若しくはそれらのグループの存在か又は追加を除外しないことを更に理解されたい。
【００９９】
本明細書で使用される時には、用語「ｉｆ」は、文脈に応じて、「時」又は「際に」又は、先に述べた条件が正しいとの「判定に応じて」又は「判定に従って」、「検出に応じて」を意味するものと解釈できる。同様に、「［先に述べた条件が正しい］と判定される場合」又は「［先に述べた条件が正しい］場合」、又は「［先に述べた条件が正しい］時」というフレーズは、先に述べた条件が正しいとの「判定に際して」又は「判定に応じて」又は「判定に従って」又は「検出した際に」又は「検出に応じて」ということを意味するものと解釈できる。
【０１００】
本発明の前述の説明及び要約は、全ての点で実例及び例示的であるが、限定的ではないとして理解されるべきであり、本明細書に開示される本発明の範囲は、例示的な実装形態の詳細な説明のみからではなく、特許法によって許可される全広に従って判定されるべきであることを理解されたい。本明細書に示され、説明される実装形態は、本発明の原理を単に例示するものにすぎず、本発明の範囲及び趣旨から逸脱することなく、当業者によって様々な修正が実施され得ることを理解されたい。
【図１】
2020074058.tif 000003
【図２】
2020074058.tif 000004
【図３】
2020074058.tif 000005
【図４】
2020074058.tif 000006
【図５】
2020074058.tif 000007
【図６】
2020074058.tif 000008
【図７】
2020074058.tif 000009
【図８】
2020074058.tif 000010
【図９】
2020074058.tif 000011
【図１０】
2020074058.tif 000012
【外国語明細書】
2020074058000001.pdf