(57)【要約】  本開示の態様は、３次元（３Ｄ）環境オーサリングおよび生成に関する。例において、３Ｄ環境を、１つまたは複数のモデルを使用してオーサリングすることがあり、モデルの２次元（２Ｄ）表現を、オーサリングアプリケーションを使用して操作することがある。モデルは、３Ｄ環境をレンダリングするときに、モデルを一体にスティッチするために使用されることがある、アンカーポイントを含むことがある。別の例において、モデルは、３Ｄ環境の中でコンテンツを位置決めするために使用されることがある、１つまたは複数のコンテンツポイントを含むことがある。環境データファイルを、１つまたは複数のモデル、および、コンテンツポイントと関連付けられるコンテンツに基づいて生成し、それによって、他のコンピューティングデバイスに配布されることがあるファイルを作成することがある。ビューアアプリケーションを、環境データファイルに基づいて３Ｄ環境を生成するために使用することがある。よって、ビューアアプリケーションは、モデルをスティッチし、３Ｄ環境にコンテンツを取り込むことがある。
2020518071.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つのプロセッサと、
命令を記憶するメモリと
を備えるシステムであって、前記命令が、前記少なくとも１つのプロセッサにより実行されるときに、前記システムに動作のセットを実施させ、動作の前記セットは、
環境データファイルを検索することであって、前記環境データファイルは、３次元（３Ｄ）環境に対する複数のモデルを含む、検索することと、
前記３Ｄ環境内で、前記複数のモデルのうちの第１のモデルの第１の３Ｄ表現を生成することであって、前記第１のモデルは、出口アンカーポイントと関連付けられる、生成することと、
前記環境データファイルが、前記複数のモデルのうちの第２のモデルが前記第１のモデルの近隣であるということを指示すると決定することであって、前記第２のモデルは、入口アンカーポイントと関連付けられる、決定することと、
前記第２のモデルが前記第１のモデルの近隣であると決定することに基づいて、前記第２のモデルの第２の３Ｄ表現を生成することであって、前記第２のモデルの前記表現は、前記第２のモデルと関連付けられる前記入口アンカーポイントが、前記第１のモデルの入口ポイントに近接して位置決めされるように、前記３Ｄ環境内で位置決めされる、生成することと
を含む、システム。
【請求項２】
前記第１のモデルの前記第１の３Ｄ表現を生成することは、
前記環境データファイルが、前記第１のモデルのコンテンツポイントと関連付けられるコンテンツアイテムを指定すると決定することと、
前記第１の３Ｄ表現内の前記第１のモデルの前記コンテンツポイントにおいて前記コンテンツアイテムの表現を生成することと
を含む、請求項１に記載のシステム。
【請求項３】
動作の前記セットは、
ユーザデバイスのディスプレイ上で前記３Ｄ表現を提示すること
をさらに含む、請求項１に記載のシステム。
【請求項４】
３次元（３Ｄ）環境を表す環境データファイルを生成するためのコンピュータ実装方法であって、
前記３Ｄ環境に対する環境テンプレートのユーザ選択を受信するステップと、
第１のモデルのユーザ選択を受信するステップであって、前記第１のモデルは、前記選択された環境テンプレートと関連付けられる、受信するステップと、
前記第１のモデルの２次元（２Ｄ）表示を提示するステップであって、前記２Ｄ表示は、前記第１のモデルの１つまたは複数のコンテンツポイントの表示を含む、提示するステップと、
前記１つまたは複数のコンテンツポイントからのコンテンツポイントのユーザ選択を受信するステップであって、前記ユーザ選択は、前記選択されたコンテンツポイントにおける表示のためのコンテンツを指示する、受信するステップと、
前記環境データファイルを生成するステップであって、前記環境データファイルは、前記選択された環境テンプレート、前記第１のモデル、および、前記選択されたコンテンツポイントに関する情報を含み、前記選択されたコンテンツポイントは、前記指示されたコンテンツと関連付けられる、生成するステップと
を含む、コンピュータ実装方法。
【請求項５】
前記選択された環境テンプレートと関連付けられる、１つまたは複数のモデルの表示を提示するステップであって、前記１つまたは複数のモデルは、２Ｄ表現を使用して表示される、提示するステップ
をさらに含む、請求項４に記載のコンピュータ実装方法。
【請求項６】
第２のモデルの選択を受信するステップであって、前記選択は、前記第２のモデルが前記第１のモデルの近隣で位置決めされるという指示を含む、受信するステップ
をさらに含む、請求項４に記載のコンピュータ実装方法。
【請求項７】
環境データファイルを使用して３次元（３Ｄ）環境を生成するためのコンピュータ実装方法であって、
前記環境データファイルを検索するステップであって、前記環境データファイルは、前記３Ｄ環境に対する複数のモデルを含む、検索するステップと、
前記３Ｄ環境内で、前記複数のモデルのうちの第１のモデルの第１の３Ｄ表現を生成するステップであって、前記第１のモデルは、出口アンカーポイントと関連付けられる、生成するステップと、
前記環境データファイルが、前記複数のモデルのうちの第２のモデルが前記第１のモデルの近隣であるということを指示すると決定するステップであって、前記第２のモデルは、入口アンカーポイントと関連付けられる、決定するステップと、
前記第２のモデルが前記第１のモデルの近隣であると決定することに基づいて、前記第２のモデルの第２の３Ｄ表現を生成するステップであって、前記第２のモデルの前記表現は、前記第２のモデルと関連付けられる前記入口アンカーポイントが、前記第１のモデルの入口ポイントに近接して位置決めされるように、前記３Ｄ環境内で位置決めされる、生成するステップと
を含む、コンピュータ実装方法。
【請求項８】
ユーザデバイスのディスプレイ上で前記３Ｄ表現を提示するステップ
をさらに含む、請求項７に記載の方法。
【請求項９】
前記第１のモデルは、ユーザの観点に対する初期位置を指示し、前記３Ｄ表現を提示するステップは、前記ユーザの前記観点に対する前記初期位置からの前記３Ｄ表現を提示するステップを含む、請求項８に記載の方法。
【請求項１０】
前記環境データファイルを検索するステップは、前記環境データファイルの少なくとも一部分を、リモートデータストアに対して要求するステップを含む、請求項７に記載の方法。
【請求項１１】
前記第１のモデルは、ユーザの観点に対する初期位置を指示し、前記３Ｄ表現を提示することは、前記ユーザの前記観点に対する前記初期位置からの前記３Ｄ表現を提示することを含む、請求項３に記載のシステム。
【請求項１２】
前記第１のモデルおよび前記第２のモデルは、類似のテーマを有するモデルのセットを含む、請求項１に記載のシステム。
【請求項１３】
ユーザの観点に対する初期位置の選択を受信するステップであって、前記選択は、前記第１のモデルの中にある、受信するステップと、
前記環境データファイルの一部分として、前記受信された選択を記憶するステップと
をさらに含む、請求項４に記載のコンピュータ実装方法。
【請求項１４】
前記環境データファイルは、前記第１のモデルと関連付けられる識別子と、前記第２のモデルと関連付けられる識別子とを含む、請求項６に記載のコンピュータ実装方法。
【請求項１５】
前記第１のモデルの前記第１の３Ｄ表現を生成するステップは、
前記環境データファイルが、前記第１のモデルのコンテンツポイントと関連付けられるコンテンツアイテムを指定すると決定するステップと、
前記第１の３Ｄ表現内の前記第１のモデルの前記コンテンツポイントにおいて前記コンテンツアイテムの表現を生成するステップと
を含む、請求項７に記載の方法。
【発明の詳細な説明】
【背景技術】
【０００１】
[0001]パブリッシングサイトは、ウェブ上で情報を共有および消費するための主要な手立てであり続けている。ウェブサイト作成を大衆的なものにする少数のサービスが存在する。しかしながら、３次元（３Ｄ）コンテンツの最大限の潜在能力を現実化するサイトを作成することの問題を解決するためのサービスは存在しない。３Ｄコンテンツを容易に作成および共有するための取組みが増大していることもあり、３Ｄコンテンツのオーサリングおよび／または消費を手助けする、ツールおよび／またはサービスに対する必要性がある。
【０００２】
[0002]これらおよび他の一般的な考察に関して、実施形態を説明している。さらには、比較的に具体的な問題について論じているが、実施形態は、背景技術において特定される具体的な問題を解決することに制限されるべきでないということを理解すべきである。
【発明の概要】
【課題を解決するための手段】
【０００３】
[0003]本開示の態様は、３次元（３Ｄ）環境オーサリングおよび生成に関する。例において、３Ｄ環境を、１つまたは複数のモデルを使用してオーサリングすることがあり、モデルの２次元（２Ｄ）表現を、オーサリングアプリケーションを使用して選択および位置決めすることがある。モデルは、３Ｄ環境をレンダリングするときに、モデルを１つまたは複数の他のモデルと一体にスティッチ（ｓｔｉｔｃｈ）するために使用されることがある、１つまたは複数のアンカーポイント(ａｎｃｈｏｒ  ｐｏｉｎｔ)を含むことがある。別の例において、モデルは、３Ｄ環境の中でコンテンツアイテムを位置決めするために使用されることがある、１つまたは複数のコンテンツポイントを含むことがある。環境データファイルを、１つまたは複数のモデル、および、コンテンツポイントと関連付けられるコンテンツに基づいて生成し、それによって、他のコンピューティングデバイスに配布してもよいファイルを作成することがある。
【０００４】
[0004]ビューアアプリケーションを、環境データファイルに基づいて３Ｄ環境を生成するために使用することがある。例として、ビューアアプリケーションは、環境データファイルにより指示されるモデル（ｍｏｄｅｌｓ ｉｎｄｉｃａｔｅｄ）にアクセスし、モデルの、外見上は連続的な組み合わせを作成するように、スティッチング動作(ｓｔｉｔｃｈｉｎｇ  ｏｐｅｒａｔｉｏｎ)に基づいてモデルをレンダリングすることがある。ビューアアプリケーションは、さらには、モデルのコンテンツポイントに基づいて、３Ｄ環境にコンテンツを取り込むことがある。よって、ユーザが潜在的に、以前の３Ｄ設計経験が、ほとんどない場合からまったくない場合でも、本明細書において開示する態様によって、３Ｄ環境を容易にオーサリングすることが可能であり得る。
【０００５】
[0005]本概要は、発明を実施するための形態において下記でさらに説明する、選択された概念を単純化された形式で紹介するために提供されている。本概要は、請求される主題の主要な特徴または本質的な特徴を識別させる意図はなく、本概要を、請求される主題の範囲を制限するために使用する意図もない。
【０００６】
[0006]非制限的および非網羅的な例を、後に続く図を参照して説明する。
【図面の簡単な説明】
【０００７】
【図１】[0007]３次元環境オーサリングおよび生成のための例システムの概観を示す図である。
【図２】[0008]２次元表現を使用して３次元環境をオーサリングするための方法例の概観を示す図である。
【図３】[0009]３次元環境を生成するための方法例の概観を示す図である。
【図４】[0010]２次元モデルを使用して３次元環境をオーサリングするための例ユーザインターフェイスの概観を示す図である。
【図５】[0011]３次元環境の中の例ビューを示す図である。
【図６】[0012]用いて本開示の態様が実践されることがある、コンピューティングデバイスの例物理的構成要素を示すブロック線図である。
【図７Ａ】[0013]用いて本開示の態様が実践されることがある、モバイルコンピューティングデバイスの、単純化されたブロック線図である。
【図７Ｂ】[0013]用いて本開示の態様が実践されることがある、モバイルコンピューティングデバイスの、単純化されたブロック線図である。
【図８】[0014]本開示の態様が実践されることがある、分散型コンピューティングシステムの、単純化されたブロック線図である。
【図９】[0015]本開示の１つまたは複数の態様を実行するためのタブレットコンピューティングデバイスを示す図である。
【発明を実施するための形態】
【０００８】
[0016]後に続く詳細な説明において、参照を、本明細書の一部分を形成する、付随する図面に対して行い、それらの図面において、例示として、特定の実施形態または例を示す。これらの態様を組み合わせてもよく、他の態様を利用してもよく、構造的変更を、本開示から逸脱することなく行ってもよい。実施形態を、方法、システム、またはデバイスとして実践してもよい。よって、実施形態は、ハードウェア実装形態、もっぱらソフトウェア実装形態、または、ソフトウェアおよびハードウェア態様を組み合わせる実装形態の形式をとってもよい。後に続く詳細な説明を、それゆえに、制限的な意味にとるべきではなく、本開示の範囲を、添付の特許請求の範囲、および、その均等物により定義する。
【０００９】
[0017]本開示の態様は、３次元（３Ｄ）環境オーサリングおよび生成に関する。例において、３Ｄ環境を、オーサリングアプリケーションを使用してオーサリングすることがあり、オーサリングアプリケーションのユーザは、環境データファイルとして記憶されることがある、モデルの２次元（２Ｄ）表現をグラフィカルに選択することがある。環境データファイルを、次いで、後で、選択されたモデルの３Ｄレンダリングを含む３Ｄ環境を生成するために使用することがある。一部の例において、コンテンツの異なるタイプを、３Ｄ環境内に嵌め込む、または含めることがある。コンテンツ例は、コンテンツの中でもとりわけ、３Ｄオブジェクト（例えば、３Ｄモデル、図形、形状、その他）または２Ｄオブジェクト（例えば、ファイル、画像、プレゼンテーション、文書、ウェブサイト、ビデオ、リモートリソース、その他）を含むが、それらに制限されない。例において、３Ｄ環境は、拡張現実（ＡＲ）または仮想現実（ＶＲ）技法の中でもとりわけ、ＶＲ世界などの仮想空間であることがあり、または、コンテンツが現実世界の上部上で表示される、もしくは層にされることがある、現実世界空間であることがある。
【００１０】
[0018]本明細書において開示する態様によってオーサリングされる３Ｄ環境を、次いで、デスクトップコンピュータまたはスマートフォンなどのコンピューティングデバイス上のビューアアプリケーションを使用して消費することがある。例において、３Ｄ環境は、ローエンドデバイス（例えば、ＧＯＯＧＬＥ  ＣＡＲＤＢＯＡＲＤ）からハイエンドデバイス（例えば、ＭＩＣＲＯＳＯＦＴ  ＨＯＬＯＬＥＮＳ、ＯＣＵＬＯＵＳ  ＲＩＦＴ、ＨＴＣ  ＶＩＶＥ、その他）までの範囲に及ぶ、広い領域のデバイスにわたって体験されることがある。同じ３Ｄ環境を、デスクトップまたはモバイルコンピューティングデバイスを使用して、同じほど良好に生成することができるので、追加的なオーバーヘッド（例えば、すべての要するテクスチャ、ライトマップ、オーディオファイル、その他の送信）を、３Ｄ環境を生成するために要さないことがある。さらに、デバイスまたはプラットフォーム固有の特異性を、ビューアアプリケーションにより取り扱い、それによって、そのような特異性を、３Ｄ環境のエンドユーザおよび作者の両方に対して見えなくすることがある。
【００１１】
[0019]３Ｄ環境は、１つまたは複数のモデルを含むことがあり、モデルは、仮想部屋、仮想景色、または、仮想世界の任意の他のサブパートを含むことがある。上記で説明したように、ユーザは、オーサリングアプリケーションを使用して、１つまたは複数のモデルを、選択、配置構成、および／またはカスタマイズして、３Ｄ環境を作成することがある。３Ｄ環境を、次いで、環境データファイルとして記憶することがあり、環境データファイルは、３Ｄ環境内に含めるための、１つもしくは複数のモデル、および／またはコンテンツに関する情報を記憶することがある。ビューアアプリケーションを、環境データファイルに基づいて３Ｄ環境をレンダリングするために使用することがある。ビューアアプリケーションは、環境データファイルにより使用されるモデルと関連付けられるコンピューティングリソースを含むことがあり、そのことによって、環境データファイルは、そのようなリソースを含むことを必要としない。一部の例において、例の中でもとりわけ、環境データファイルは、３Ｄ環境をレンダリングするときの使用のためのコンピューティングリソースを含むことがあり、または、リソースは、サーバ、もしくは、他のリモートの場所から検索されることがある。
【００１２】
[0020]３Ｄ環境をレンダリングするとき、ビューアアプリケーションは、モデルの中の１つまたは複数のアンカーポイントを識別することがあり、それらのアンカーポイントは、環境データファイルにより指定される、近隣の、または接続されるモデルを、３Ｄ環境へと一体にスティッチするときに使用されることがある。例として、モデルは、入口（ｅｎｔｒｙ）アンカーポイントおよび出口（ｅｘｉｔ）アンカーポイントを含むことがあり、入口アンカーポイントは、モデル内への戸口（ｄｏｏｒｗａｙ）または他のエントランス（ｅｎｔｒａｎｃｅ）を指示する（ｉｎｄｉｃａｔｅ）ことがあり、出口アンカーポイントは、モデルからの戸口または他の出口を指示することがある。こうして、複数個のモデル（例えば、近隣の、または接続されるモデル）を一体にスティッチするとき、第１のモデルの出口アンカーポイントを、第２のモデルの入口アンカーポイント（および、延長線上で考えれば、第２のモデル）を位置決めし、それによって、モデルの連続的な組み合わせを作成するために使用することがある。一部の例において、アンカーポイントは、方向を指定することがあり、入口アンカーポイントの方向は、モデルの方を向くことがあり、一方で、出口アンカーポイントの方向は、モデルから離れる方を向くことがある。
【００１３】
[0021]所定の態様において、コンテンツポイントは、どこにコンテンツを（例えば、コンテンツアイテムとして）３Ｄ環境の中で配置することができるかを定めることがある。例において、アンカーまたはコンテンツポイントは、モデルの中のレンダリング位置を規定することがある。態様において、１つまたは複数のアンカーポイントを、モデルの一部分として（例えば、基本的な番号付け規則を使用するヌルポイントオブジェクトとして）含めることがあり、それらのアンカーポイントを、ビューアアプリケーションまたは他のレンダラにより、アンカーポイントに対する子（例えば、他のモデル）を取得および付加するために使用することがある。同様に、コンテンツポイントを、モデルの中でコンテンツを位置決めするために使用することがある。こうして、異なるアンカーポイントおよび／またはコンテンツポイントにおいて位置決めされるコンテンツを有する３Ｄ環境を、レンダリングより前に、３Ｄ環境に関する情報を要することなく作成することがある。一部の例において、３Ｄ環境をオーサリングするユーザは、コードを追加することを必要とすることなく、３Ｄ環境の中でアンカーポイントおよび／またはコンテンツポイントを配置することができることがある。他の例において、ユーザは、モデルからのコンテンツポイントおよび／またはアンカーポイントを、追加する、移動させる、または削除することができることがある。
【００１４】
[0022]一部の例において、モデルのセットを生成することがあり、異なる部屋タイプ（ｒｏｏｍ  ｔｙｐｅ）を、セットの一部分としてあらかじめ規定することがある。モデルを同じセットからの別のモデルと一体にスティッチすることが、外見上は連続的なモデルを形成することがあるように、モデルのセットが設計されることがある。他の例において、モデルの態様を、動的に、またはプログラムによって生成することがある。例において、モデルは、そのモデルが一緒にスティッチされることがあるモデルに依存して、所定の態様が取り替えられることがあるということを指示することがある。例として、第１のモデルは、第２のモデルの入口ポイントがドアにおいて第１のモデルにスティッチされることがあるように、壁またはアーチ道がドアに置換されることがあるということを指示することがある。他の置換またはモデル生成技法を、本開示の趣旨から逸脱することなく使用することがあるということを察知するであろう。
【００１５】
[0023]図１は、３次元環境オーサリングおよび生成のためのシステム例１００の概観を示す。示されるように、システム１００は、コンピューティングデバイス１０２および１０４と、３Ｄ環境サービス１０６とを備える。例において、コンピューティングデバイス１０２および１０４は、モバイルコンピューティングデバイス、ラップトップコンピューティングデバイス、タブレットコンピューティングデバイス、またはデスクトップコンピューティングデバイスを含むが、それらに制限されない、種々のコンピューティングデバイスの任意のものであってもよい。一部の例において、３Ｄ環境サービス１０６を、協働的、通信、または生産性プラットフォームの一部分として用意することがある。３Ｄ環境サービス１０６および要素１０８〜１１４を、コンピューティングデバイス１０２および／または１０４とは別個であるように示すが、要素１０８〜１１４のうちの１つまたは複数を、コンピューティングデバイス１０２および／または１０４の他の例により用意することがあるということを察知するであろう。例として、コンピューティングデバイス１０２は、オーサリングアプリケーション１０８を含むことがあり、一方でコンピューティングデバイス１０４は、ビューアアプリケーション１１０を含むことがある。
【００１６】
[0024]３Ｄ環境サービス１０６は、オーサリングアプリケーション１０８と、ビューアアプリケーション１１０と、モデルデータストア１１２と、オーサリングされた環境データストア１１４とを含む。オーサリングアプリケーション１０８を、本明細書において開示する態様によって３Ｄ環境をオーサリングするために使用することがある。例において、オーサリングアプリケーション１０８は、３Ｄ環境をオーサリングするために、ユーザにより選択、位置決め、および／またはカスタマイズされることがある、１つまたは複数の３Ｄモデルの２Ｄ表現を表示することがある。モデルは、ユーザにより、３Ｄ環境の中でコンテンツを位置決めするために使用されることがある、１つまたは複数のコンテンツポイントを含むことがある。一部の例において、オーサリングアプリケーション１０８は、種々のテーマを提供することがあり、モデルは、１つもしくは複数のテーマと関連付けられることがあり、または、ユーザの選択されたテーマに基づいて改変される、もしくは適合させられることがある（例えば、色、テクスチャ、ライティング、その他を修正することがある）。例において、モデルを、複数個のテーマにより使用することがあり、モデルの幾何学的態様のうちの少なくとも一部（例えば、レイアウト、アーキテクチャ的または地理的特徴、その他）は不変であることがあり、一方で、モデルの美観は変動させられることがある（例えば、配色、ライティング、オーディオ、その他）。
【００１７】
[0025]オーサリングアプリケーション１０８は、オーサリングされた３Ｄ環境を環境データファイルとして出力することがあり、環境データファイルは、情報の中でもとりわけ、選択されたモデルと関連付けられる情報（例えば、モデル識別子、モデル名、モデルタイプ、その他）、位置決め情報（例えば、座標、アンカーポイント識別子、その他）、コンテンツ情報（例えば、どのコンテンツを１つまたは複数のコンテンツポイントに対して表示すべきか、表示されるべきコンテンツ、コンテンツへの参照、その他）、カスタムリソース（例えば、カスタムテクスチャ、サウンド、その他）を含むことがある。一部の例において、オーサリングアプリケーション１０８は、ウェブベースのアプリケーションであることがあり、ユーザのコンピューティングデバイスは、ウェブブラウザを使用してオーサリングアプリケーション１０８にアクセスすることがある。他の例において、オーサリングアプリケーション１０８は、ユーザのコンピューティングデバイスにより検索および実行されることがある、実行可能アプリケーションであることがある。
【００１８】
[0026]ビューアアプリケーション１１０を、環境データファイルに基づく３Ｄ環境を生成する、目視する、探索する、および／または、その３Ｄ環境と相互作用するために使用することがある。例において、ビューアアプリケーション１１０は、ウェブベースのアプリケーションであることがあり、ユーザのコンピューティングデバイスは、ウェブブラウザを使用してビューアアプリケーション１１０にアクセスすることがある。他の例において、ビューアアプリケーション１１０は、ユーザのコンピューティングデバイスにより検索および実行されることがある、実行可能アプリケーションであることがある。本明細書において開示する態様によれば、ビューアアプリケーション１１０は、環境データファイルを評価して、３Ｄ環境の、１つまたは複数のモデルを識別することがある。環境データファイルが複数のモデルを参照するならば、モデルは、３Ｄ環境をレンダリングするときに一体にスティッチされることがある。ビューアアプリケーション１１０は、環境データファイルにより指定されるコンテンツに基づいて、１つまたは複数のモデルの様々なコンテンツポイントにおいて、レンダリングされる３Ｄ環境にコンテンツを取り込むことがある。例において、ビューアアプリケーション１１０は、種々の３Ｄレンダリングエンジンの任意のものを使用することがあり、３Ｄ環境をレンダリングするときにデバイスおよび／またはエンジン固有の実装形態細部を取り扱うことがあり、そのことによって、環境データファイルの作者は、デバイスおよび／またはエンジン固有の特異性に精通していることを必要としない。
【００１９】
[0027]モデルデータストア１１２は、３Ｄ環境をオーサリングおよび／または生成するために使用されることがある、１つまたは複数のモデルを記憶することがある。例において、モデルデータストア１１２により記憶されるモデルを、１つまたは複数のテーマと関連付けることがあり、そのことによって、オーサリングアプリケーション１０８のユーザは、テーマを選択することがあり、選択されたテーマと関連付けられるモデルを提示されることがある。一部の例において、モデルのセットを、モデルデータストア１１２により記憶することがあり、異なる部屋タイプを、セットの一部分としてあらかじめ規定することがある。モデルを同じセットからの別のモデルと一体にスティッチすることが、外見上は連続的なモデルを形成することがあるように、モデルのセットが設計されることがある。他の例において、モデルデータストア１１２により記憶されるモデルの態様を、動的に、またはプログラムによって生成することがある。例において、モデルは、そのモデルが一緒にスティッチされることがあるモデルに依存して、所定の態様が取り替えられることがあるということを指示することがある。例として、第１のモデルは、第２のモデルの入口ポイントがドアにおいて第１のモデルにスティッチされることがあるように、壁またはアーチ道がドアに置換されることがあるということを指示することがある。他の置換またはモデル生成技法を、本開示の趣旨から逸脱することなく使用することがあるということを察知するであろう。
【００２０】
[0028]オーサリングされた環境データストア１１４は、１つまたは複数の環境データファイルを記憶することがある。一部の例において、「環境データファイル」は、本明細書において使用される際、ファイルシステム上のファイル、データベースにおけるエントリであることがあり、または、種々の他のデータストレージ技法の任意のものを使用して記憶されることがある。オーサリングアプリケーション１０８によりオーサリングされる３Ｄ環境を、オーサリングされた環境データストア１１４内で記憶することがある。オーサリングアプリケーション１０８が、ローカルで実行されるアプリケーションである例において、環境データファイルの少なくとも一部分を、コンピューティングデバイス１０２および１０４のうちの１つから受信し、オーサリングされた環境データストアを使用して記憶することがある。一部の例において、ビューアアプリケーション１１０は、環境データファイルを、オーサリングされた環境データストア１１４から検索することがあり、その環境データファイルは、モデルデータストア１１２からの１つまたは複数のモデルと連関して、３Ｄ環境を生成するために使用されることがある。ビューアアプリケーションが、ローカルで実行されるアプリケーションである例において、モデルデータストアを、アプリケーションを実行するデバイスに対してローカルおよび／またはリモートで記憶することがあり、環境データファイルの少なくとも一部分を、オーサリングされた環境データストア１１４から検索することがある。一部の例において、データファイルを、帯域幅消費を低減するように、および／または、応答性を改善するように、チャンクの形でストリーミングまたは検索することがある。他のデータストレージおよび／または検索技法を、本開示の趣旨から逸脱することなく使用することがあるということを察知するであろう。
【００２１】
[0029]コンピューティングデバイス１０２および１０４の、アプリケーション１１６および１１８は、それぞれ、種々のアプリケーションの任意のものであることがある。例において、アプリケーション１１６および／または１１８は、上記で説明したようなオーサリングアプリケーションであることがあり、コンピューティングデバイス１０２および／または１０４のユーザは、アプリケーションを使用して、環境データファイルにより記述される３Ｄ環境をオーサリングすることがある。一部の例において、環境データファイルを、オーサリングされた環境データストア１１４により記憶することがある。別の例において、アプリケーション１１６および／または１１８は、上記で説明したようなビューアアプリケーションであることがあり、そのビューアアプリケーションは、コンピューティングデバイス１０２および／または１０４のユーザにより、環境データファイルにより少なくとも部分的に規定される３Ｄ環境を、目視、レンダリング、および／または探索するために使用されることがある。他の例において、コンピューティングデバイス１０２および／または１０４は、モデルデータストア１１２と類似のモデルデータストア、および／または、オーサリングされた環境データストア１１４と類似のオーサリングされた環境データストアを含むことがある。例において、ハードウェアＡＲおよび／またはＶＲデバイス（絵で表されない）を、コンピューティングデバイス１０２および／または１０４に取り付け、レンダリングされる３Ｄ環境を目視する、および／または、その３Ｄ環境と関わり合うために使用することがある。例えば、ＶＲまたはＡＲヘッドセットを使用することがある。
【００２２】
[0030]図２は、２次元表現を使用して３次元環境をオーサリングするための方法例２００の概観を示す。例において、方法２００の態様を、コンピューティングデバイス（例えば、図１におけるコンピューティングデバイス１０２および／または１０４）により実施することがあり、または、オーサリングアプリケーション（例えば、オーサリングアプリケーション１０８）により実施することがある。フローは、動作２０２において始まり、そこでは、環境テンプレートが選択されることがある。環境テンプレートは、３Ｄ環境の全般的な見かけおよび／または感じ（例えば、ライティング、配色、テクスチャ、サウンド、場所、その他）を規定することがある。例えば、事務所を表す３Ｄ環境を生成するために使用することができる、事務所テンプレートを選択することがあり、庭園テンプレートを、屋外空間を表す３Ｄ環境を生成するために選択することがあり、その他のことがある。
【００２３】
[0031]環境テンプレートを選択することを基に、フローは、動作２０４に続き、そこでは、モデル選択が受信されることがある。本明細書において説明するように、１つまたは複数のモデルを、ユーザに、３Ｄ環境をオーサリングするときに提示することがある。一部の例において、モデルのセットを提示することがあり、セットからのモデルは、セットからの別のモデルと一体にスティッチされ、それによって、外見上は連続的なモデルを生成するように設計されていることがある。例として、セット内のモデルは、類似の色、テクスチャ、オブジェクトのスケール、またはテーマ、その他を有することがある。態様において、３Ｄ環境は、１つまたは複数の異なるモデル（例えば、部屋、景色、その他）を含むことがある。
【００２４】
[0032]フローは、動作２０６に進行し、そこでは、コンテンツポイントが、選択されたモデルの中で選択されることがある。上記で説明したように、モデルは、モデルの中の異なる位置においてコンテンツを表示または提供するために使用されることがある、１つまたは複数のコンテンツポイントを含むことがある。コンテンツポイントの選択を基に、選択されたコンテンツポイントにおいて位置決めされることがある、コンテンツの異なるタイプを表示する、メニューを生成することがある。例として、ユーザは、３Ｄオブジェクト、ビデオ、画像、文書、プレゼンテーション、スプレッドシート、オブジェクトの集合体、および同類のものに関するコンテンツを選択することができる。動作２０６において表示されるメニューは、選択されたコンテンツポイントにおいて位置決めされることになる、コンテンツの、１つまたは複数のタイプの選択を含むユーザ入力を受信するように動作可能であることがある。一部の例において、複数個のコンテンツポイントを、別個に、または一体でのいずれかで選択することがあり、そのことによって、コンテンツを、動作２０６における選択されたモデルの複数個のコンテンツポイントと関連付けることがある。
【００２５】
[0033]様々な態様において、３Ｄ環境は、複数個の相互接続されるモデルを含むことがある。フローは、決定２０８に継続し、そこでは、追加的なモデルを３Ｄ環境に追加すべきであるかどうかが決定される。例において、決定は、別のモデルを追加すべきであるという指示をユーザが提供したかどうかを決定することを含むことがある。新しいモデルの選択を受信することに加えて、１つまたは複数の既存のモデルに相対的なモデルの配置を、さらには受信することがある。１つの態様において、ユーザインターフェイス要素を、既存のモデルに対するアンカーポイントの付近で位置決めすることがある。ユーザインターフェイス要素の選択を基に、アンカーポイントにおいて既存のモデルに接続することができるモデルのタイプを示すメニューを表示することがある。選択可能なモデルは、個々のスキーマを有することがあり、態様において、複数個の異なる変形例（例えば、ドアなし、１つのドア、２つのドア、円形、正方形、屋内、屋外、その他）を有することがある。メニューは、メニューからのモデルの選択を受信するように動作可能であることがある。選択の受信を基に、新しいモデルを、アンカーポイントにおいて既存のモデルに接続することがある。追加的なモデルを選択するならば、フローは、「はい」に分岐し、動作２０４に戻る。フローは、次いで、動作２０４と２０８との間をループし、それによって、ユーザにより望まれることがあるのと同じくらい多くのモデルを３Ｄ環境に追加することがある。
【００２６】
[0034]しかしながら、追加されることになる追加的な部屋がないならば、フローは、代わりに、動作２１０へと「いいえ」に分岐する。動作２１０において、オーサリングされた３Ｄ環境を記述する環境データファイルを生成することがある。例において、環境データファイルは、１つもしくは複数の選択されたモデル、および／または、モデルのコンテンツポイントに対して選択されたコンテンツに関する情報を記憶することがある。環境データファイルを、ビューアアプリケーションにより、本明細書において開示する態様によって３Ｄ環境をレンダリングするために使用することがある。一部の例において、例の中でもとりわけ、環境データファイルは、３Ｄ環境をレンダリングするときの使用のためのコンピューティングリソースを含むことがあり、または、リソースは、サーバ、もしくは、他のリモートの場所から検索されることがある。
【００２７】
[0035]動作２１２に移ると、環境データファイルを記憶することがある。環境データファイルを記憶することは、ストレージ技法の中でもとりわけ、１つもしくは複数の出力ファイル、または、データベースにおけるエントリを生成することを含むことがある。一部の例において、環境データファイルを、図１におけるオーサリングされた環境データストア１１４などの、他のユーザによるアクセスのためのオーサリングされた環境データストアに提供することがある。フローは、動作２１２において終結する。よって、方法２００は、技術的な３Ｄ経験を欠くユーザが、３Ｄ環境を設計およびオーサリングすることを可能とする。
【００２８】
[0036]図３は、３次元環境を生成するための方法例３００の概観を示す。例において、方法３００の態様を、コンピューティングデバイス（例えば、図１におけるコンピューティングデバイス１０２および／または１０４）により実施することがあり、または、ビューアアプリケーション（例えば、ビューアアプリケーション１１０）により実施することがある。フローは、動作３０２において始まり、そこでは、環境データファイルが検索されることがある。環境データファイルを、ローカルまたはリモートのデータストアから検索することがある。一部の例において、環境データファイルを、図１におけるオーサリングされた環境データストア１１４などの、オーサリングされた環境データストアから検索することがある。一部の例において、例の中でもとりわけ、環境データファイルの一部分のみを、初期に検索することがあり、一方で、後続の一部分を、オンデマンドで、または、利用可能なコンピューティングリソースに基づいてのいずれかで検索することがある。
【００２９】
[0037]フローは、動作３０４に進行し、そこでは、モデルが、検索された環境データファイル内で識別されることがある。例において、モデルを、モデル識別子、モデル名、その他により指定することがある。別の例において、モデルを、いくつかのエントランスもしくは出口、またはテーマを含むが、それらに制限されない、他の情報と関連付けることがある。一部の例において、モデルを、判定基準の中でもとりわけ、３Ｄ環境内のユーザの位置に対するモデルの近接度に基づいて、または、モデルをレンダリングするための要するアセットを獲得するための予測される時間に基づいて、環境データファイルから選択することがある。
【００３０】
[0038]動作３０６において、モデルの３Ｄ表現を、３Ｄ環境内でレンダリングすることがある。モデルをレンダリングすることは、モデルと関連付けられるリソースにアクセスすることを含むことがある。例において、リソースを、ローカルで、もしくはリモートで、またはそれらの組み合わせで記憶することがある。一部の例において、サードパーティレンダリングエンジンを、環境をレンダリングするために使用することがある。一部の例において、モデルを、そのモデルをレンダリングする前または間に、調整または修正することがある。例として、エントランスおよび／または出口を、本明細書において開示する態様によって、動的に更新することがある。別の例において、モデルの色、ライティング、またはテクスチャを改変することがある。種々のレンダリング技法の任意のものを、本開示の趣旨から逸脱することなく使用することがあるということを察知するであろう。
【００３１】
[0039]動作３０８に移ると、モデルのコンテンツポイントに、環境データファイルにより指示されるようにコンテンツを取り込むことがある。例として、コンテンツの２Ｄ表現を、文書、ウェブページ、または、他の２次元コンテンツに対して生成することがある。別の例において、コンテンツの中でもとりわけ、３Ｄオブジェクトを、モデル内で浮かんでいるようにレンダリングすることがあり、または、台座上に配置することがある。コンテンツの少なくとも一部分を、環境データファイルにより記憶することがあり、デバイス上のどこか他にローカルで記憶することがあり、または、リモートの場所から検索することがある。
【００３２】
[0040]決定３１０において、環境データファイルが別のモデルを含むかどうかを決定することがある。一部の例において、決定は、利用可能なコンピューティングリソースを評価することをさらに含むことがあり、フローは、コンピューティングリソースが、動作の中でもとりわけ、３Ｄ環境の他の一部分をレンダリングすることに充てられてもよいように、決定３１０において一時停止することがある。環境データファイルが別のモデルを含まないと決定するならば、フローは、動作３１６へと「いいえ」に分岐し、そこでは、レンダリングされた３Ｄ環境が、ユーザに提示されることがある。一部の例において、少なくとも部分的なレンダリングされた環境を、方法３００において、より早期にユーザに提示することがある。一部の例において、ユーザを、３Ｄ環境内の歓迎部屋内に、または、あらかじめ規定された場所に、初期に配置することがある。フローは、動作３１６において終結する。
【００３３】
[0041]しかしながら、決定３１０において、環境データファイルが追加的なモデルを含むと決定するならば、フローは、代わりに、動作３１２へと「はい」に分岐し、そこでは、次のモデルが、環境データファイルから識別されることがある。例において、モデルを、モデル識別子、モデル名、その他により指定することがある。別の例において、モデルを、いくつかのエントランスもしくは出口、またはテーマを含むが、それらに制限されない、他の情報と関連付けることがある。一部の例において、モデルを、判定基準の中でもとりわけ、３Ｄ環境内のユーザの位置に対するモデルの近接度に基づいて、または、モデルをレンダリングするための要するアセットを獲得するための予測される時間に基づいて、環境データファイルから選択することがある。
【００３４】
[0042]フローは、動作３１４に進行し、そこでは、新しく識別されたモデルを、先のモデルとスティッチすることがある。例において、両方のモデルのアンカーポイントを、次のモデルをレンダリングすべきである場所を決定するために識別および使用することがある。例えば、先のモデルの出口アンカーポイントを、新しいモデルの入口アンカーポイントに対する場所を決定するために識別および使用することがある。他の例において、モデルを調整することがある（例えば、壁をドアに置換する、テクスチャを精緻化する、スケーリングを変化させる、その他）。他の動作を、本開示の趣旨から逸脱することなく、２つのモデルをスティッチするために実施することがあるということを察知するであろう。フローは、次いで、動作３０６に移り、そこでは、新しいモデルを、動作３１４からのスティッチング決定によって、３Ｄ環境内でレンダリングすることがある。フローは、次いで、新しく識別されたモデルに基づいて、動作３０８および３１０を通って継続する。ついには、レンダリングするための追加的なモデルが存在しなくなることになり、フローは、上記で論じたように、動作３１６において終結する。
【００３５】
[0043]図４は、２次元モデルを使用して３次元環境をオーサリングするためのユーザインターフェイス例４００の概観を示す。ユーザインターフェイス４００において示される３Ｄ環境例は、この例においては部屋：部屋４０２、４０４、および４０６である、３つの異なるモデルを含む。例において、星４２６は、３Ｄ環境が最初にレンダリングされるときの、ユーザの観点に対する初期位置を指示することがある。一部の例において、初期位置は、ユーザインターフェイス４００を使用して移動可能であることがあり、一方で、他の例において、「歓迎」部屋タイプが、３Ｄ環境内のユーザの初期位置を指定することがある。
【００３６】
[0044]示されるように、部屋４０２、４０４、および４０６は、コンテンツポイント４１６などの、１つまたは複数のコンテンツポイントを含む。コンテンツポイント４１６は、チェックマークとして示され、それによって、コンテンツがコンテンツポイント４１６と関連付けられるということを指示する。対照的に、コンテンツポイント４０８は、コンテンツポイント４０８が現在選択されているということを指示するために、（灰色の、関連付けられないコンテンツポイントと比較して）濃いプラスとして示される。選択に応答して、利用可能なコンテンツの異なるタイプを表示するメニュー４１０を表示することがある。メニュー４１０を、３つのコンテンツ選択肢を提供するように示すが、種々のコンテンツの任意のものを、上記でさらに詳細に論じたように選択することがあるということを察知するであろう。メニュー４１０による、利用可能なコンテンツタイプのうちの１つの選択を受信することを基に、選択されたコンテンツを、コンテンツポイント４０８において位置決めすることがある。
【００３７】
[0045]アンカーポイント４１８、４２０、４２２、および４２４は、部屋４０２、４０４、および４０６に対するアンカーポイントを指示することがある。アンカーポイントは、３Ｄ環境が最終的にレンダリングされるときには見えなくてもよいが、ユーザインターフェイス４００は、３Ｄ環境のフローを示すために、ならびに、どのように部屋４０２、４０４、および４０６が一体に合わさるかに関しての指示を提供するために、入口アンカーポイント４１８および４２４を、出口アンカーポイント４１８および４２２の横側に表示することがある。
【００３８】
[0046]ユーザインターフェイス４００は、さらには、既存のモデルの接続ポイントにおける新しいモデルの追加を可能なものにする、１つまたは複数のユーザインターフェイス要素を含むことがある。例えば、ユーザインターフェイス要素４１２は、新しい部屋を追加するための選択を受信するように動作可能であることがある。ユーザインターフェイス要素４１２における選択を受信することを基に、部屋メニュー４１４を表示することがある。部屋メニュー４１４は、接続ポイントにおいて接続することができる、部屋の、１つまたは複数の異なるタイプを表示することがある。部屋メニュー４１４における部屋の選択を受信することを基に、新しい部屋を、３Ｄ環境が表示される２Ｄ表現に追加することがある。部屋例およびモデル例を、本明細書において論じているが、種々のモデルおよび／または部屋タイプの任意のものを、本開示の趣旨から逸脱することなく使用することがあるということを察知するであろう。
【００３９】
[0047]図５は、３次元環境の中のビュー例５００を示す。例において、ビュー５００は、本明細書において開示する態様によって、環境データファイルに基づいて生成されるビューであることがある。ビュー５００は、３Ｄ環境のモデル（例えば、図４における部屋４０２）の中のユーザの観点であることがあり、そのことによって、３Ｄ環境の作者は、コンテンツ５０２および５０４が、モデルのコンテンツポイントにおいてユーザに提示されるべきであるということを指定しておくことがある。
【００４０】
[0048]図６から図９、および、関連付けられる説明は、本開示の態様が実践されることがある、種々の動作環境を論じることを提供する。しかしながら、図６から図９に関して示され論じられるデバイスおよびシステムは、例および例示の目的のためのものであり、本明細書において説明する、本開示の態様を実践するために利用されることがある、膨大な数のコンピューティングデバイス構成について制限的ではない。
【００４１】
[0049]図６は、本開示の態様が実践されることがある、コンピューティングデバイス６００の物理的構成要素（例えば、ハードウェア）を示すブロック線図である。下記で説明するコンピューティングデバイス構成要素は、コンピューティングデバイス１０２および１０４、ならびに３Ｄ環境サービス１０６を含む、上記で説明したコンピューティングデバイスに適したものであることがある。基本的な構成において、コンピューティングデバイス６００は、少なくとも１つの処理ユニット６０２と、システムメモリ６０４とを含むことがある。コンピューティングデバイスの構成およびタイプに依存して、システムメモリ６０４は、揮発性ストレージ（例えば、ランダムアクセスメモリ）、不揮発性ストレージ（例えば、読み出し専用メモリ）、フラッシュメモリ、または、そのようなメモリの任意の組み合わせを含むことがあるが、それらに制限されない。
【００４２】
[0050]システムメモリ６０４は、オペレーティングシステム６０５と、本明細書において説明するシステムによりサポートされる１つまたは複数の構成要素などの、ソフトウェアアプリケーション６２０を実行するのに適した、１つまたは複数のプログラムモジュール６０６とを含むことがある。例として、システムメモリ６０４は、オーサリングアプリケーション６２４および環境データストア６２６を記憶することがある。オペレーティングシステム６０５は、例えば、コンピューティングデバイス６００の動作を制御するのに適したものであることがある。
【００４３】
[0051]さらにまた、本開示の実施形態を、グラフィックスライブラリ、他のオペレーティングシステム、または、任意の他のアプリケーションプログラムと連関して実践することがあり、任意の個別のアプリケーションまたはシステムに制限しない。この基本的な構成を、破線６０８の中のそれらの構成要素により、図６において示す。コンピューティングデバイス６００は、追加的な特徴または機能性を有することがある。例えば、コンピューティングデバイス６００は、さらには、例えば、磁気ディスク、光学ディスク、またはテープなどの、追加的なデータストレージデバイス（リムーバブルおよび／または非リムーバブル）を含むことがある。そのような追加的なストレージを、図６において、リムーバブルストレージデバイス６０９および非リムーバブルストレージデバイス６１０により示す。
【００４４】
[0052]上記で明言したように、いくつかのプログラムモジュールおよびデータファイルを、システムメモリ６０４内で記憶することがある。処理ユニット６０２上で実行する間に、プログラムモジュール６０６（例えば、アプリケーション６２０）は、本明細書において説明するような態様を含むが、それらに制限されない、プロセスを実施することがある。本開示の態様によって使用されることがある他のプログラムモジュールは、電子メールおよび連絡先アプリケーション、ワードプロセッシングアプリケーション、スプレッドシートアプリケーション、データベースアプリケーション、スライドプレゼンテーションアプリケーション、描画またはコンピュータ支援アプリケーションプログラム、その他を含むことがある。
【００４５】
[0053]さらにまた、本開示の実施形態を、ディスクリート電子要素を備える電気回路、論理ゲートを含むパッケージ化もしくは集積電子チップ、マイクロプロセッサを利用する回路内で、または、電子要素もしくはマイクロプロセッサを含む単一のチップ上で実践することがある。例えば、本開示の実施形態を、図６において示される構成要素の各々または多くが単一の集積回路上へと集積されることがある、システムオンチップ（ＳＯＣ）によって実践することがある。そのようなＳＯＣデバイスは、１つまたは複数の処理ユニット、グラフィックスユニット、通信ユニット、システム仮想化ユニット、および、様々なアプリケーション機能性を含むことがあり、それらの列挙したもののすべては、単一の集積回路としてチップ基板上へと集積される（または、「埋め込まれる」）。ＳＯＣによって動作するとき、プロトコルを切り替えるためのクライアントの能力に関しての、本明細書において説明する機能性を、単一の集積回路（チップ）上でコンピューティングデバイス６００の他の構成要素とともに集積される特定用途向け論理によって動作させることがある。本開示の実施形態を、さらには、機械、光学、流体、および量子技術を含むが、それらに制限されない、例えばＡＮＤ、ＯＲ、およびＮＯＴなどの論理演算を実施する能力のある他の技術を使用して実践することがある。加えて、本開示の実施形態を、汎用目的コンピュータの中で、または、任意の他の回路もしくはシステム内で実践することがある。
【００４６】
[0054]コンピューティングデバイス６００は、さらには、キーボード、マウス、ペン、サウンドまたはボイス入力デバイス、タッチまたはスワイプ入力デバイス、その他などの、１つまたは複数の入力デバイス６１２を有することがある。ディスプレイ、スピーカ、プリンタ、その他などの出力デバイス６１４を、さらには含むことがある。上述のデバイスは例であり、他のものが使用されることがある。コンピューティングデバイス６００は、他のコンピューティングデバイス６５０との通信を可能とする、１つまたは複数の通信接続６１６を含むことがある。適した通信接続６１６の例は、無線周波数（ＲＦ）送信器、受信器、および／またはトランシーバ回路網、ユニバーサルシリアルバス（ＵＳＢ）、パラレル、および／またはシリアルポートを含むが、それらに制限されない。
【００４７】
[0055]用語、コンピュータ可読媒体は、本明細書において使用される際、コンピュータストレージ媒体を含むことがある。コンピュータストレージ媒体は、コンピュータ可読命令、データ構造、またはプログラムモジュールなどの情報のストレージのために、任意の方法または技術の形で実施される、揮発性および不揮発性、リムーバブルおよび非リムーバブル媒体を含むことがある。システムメモリ６０４、リムーバブルストレージデバイス６０９、および非リムーバブルストレージデバイス６１０は、すべてコンピュータストレージ媒体例（例えば、メモリストレージ）である。コンピュータストレージ媒体は、ＲＡＭ、ＲＯＭ、電気的消去可能読み出し専用メモリ（ＥＥＰＲＯＭ）、フラッシュメモリ、もしくは他のメモリ技術、ＣＤ−ＲＯＭ、デジタルバーサタイルディスク（ＤＶＤ）、もしくは他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ、もしくは他の磁気ストレージデバイスを含むことがあり、または、コンピュータストレージ媒体は、情報を記憶するために使用することができる、および、コンピューティングデバイス６００によりアクセスすることができる、任意の他の製造品を含むことがある。任意のそのようなコンピュータストレージ媒体は、コンピューティングデバイス６００の一部分であることがある。コンピュータストレージ媒体は、搬送波、または、他の伝搬させられる、もしくは変調されるデータ信号を含まない。
【００４８】
[0056]通信媒体は、搬送波などの変調されるデータ信号、または他の移送機構の形の、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータにより実施されることがあり、任意の情報送達媒体を含む。用語「変調されるデータ信号」は、１つまたは複数の特性を有する信号であって、それらの特性が、その信号内で情報を符号化するような様式でセットされる、または変化させられる、信号を説明することがある。制限ではなく例として、通信媒体は、有線ネットワークまたは直接有線接続などの有線媒体、および、音響、無線周波数（ＲＦ）、赤外線などのワイヤレス媒体、および、他のワイヤレス媒体を含むことがある。
【００４９】
[0057]図７Ａおよび７Ｂは、用いて本開示の実施形態が実践されることがある、モバイルコンピューティングデバイス７００、例えば、モバイル電話、スマートフォン、ウェアラブルコンピュータ（スマートウォッチなど）、タブレットコンピュータ、ラップトップコンピュータ、および同類のものを示す。一部の態様において、クライアントは、モバイルコンピューティングデバイスであることがある。図７Ａを参照すると、態様を実施するための、モバイルコンピューティングデバイス７００の１つの態様が示されている。基本的な構成において、モバイルコンピューティングデバイス７００は、入力要素および出力要素の両方を有するハンドヘルドコンピュータである。モバイルコンピューティングデバイス７００は、典型的には、ディスプレイ７０５と、ユーザが情報をモバイルコンピューティングデバイス７００内へと入れることを可能とする、１つまたは複数の入力ボタン７１０とを含む。モバイルコンピューティングデバイス７００のディスプレイ７０５は、さらには、入力デバイス（例えば、タッチスクリーンディスプレイ）として機能することがある。
【００５０】
[0058]含まれるならば、任意選択の側部入力要素７１５が、さらなるユーザ入力を可能とする。側部入力要素７１５は、ロータリスイッチ、ボタン、または、任意の他のタイプの手動入力要素であることがある。代替的態様において、モバイルコンピューティングデバイス７００は、より多い、または、より少ない入力要素を組み込むことがある。例えば、ディスプレイ７０５は、一部の実施形態において、タッチスクリーンではないことがある。
【００５１】
[0059]さらに別の代替的実施形態において、モバイルコンピューティングデバイス７００は、セルラーフォンなどのポータブルフォンシステムである。モバイルコンピューティングデバイス７００は、さらには、任意選択のキーパッド７３５を含むことがある。任意選択のキーパッド７３５は、物理的キーパッド、または、タッチスクリーンディスプレイ上で生成される「ソフト」キーパッドであることがある。
【００５２】
[0060]様々な実施形態において、出力要素は、グラフィカルユーザインターフェイス（ＧＵＩ）を示すためのディスプレイ７０５、視覚インジケータ７２０（例えば、発光ダイオード）、および／またはオーディオトランスデューサ７２５（例えば、スピーカ）を含む。一部の態様において、モバイルコンピューティングデバイス７００は、ユーザに触覚フィードバックを提供するための振動トランスデューサを組み込む。さらに別の態様において、モバイルコンピューティングデバイス７００は、信号を外部デバイスに送出する、または、信号を外部デバイスから受信するための、オーディオ入力（例えば、マイクロホンジャック）、オーディオ出力（例えば、ヘッドホンジャック）、およびビデオ出力（例えば、ＨＤＭＩポート）などの、入力および／または出力ポートを組み込む。
【００５３】
[0061]図７Ｂは、モバイルコンピューティングデバイスの、１つの態様のアーキテクチャを示すブロック線図である。すなわち、モバイルコンピューティングデバイス７００は、一部の態様を実施するためのシステム（例えば、アーキテクチャ）７０２を組み込むことができる。１つの実施形態において、システム７０２を、１つまたは複数のアプリケーション（例えば、ブラウザ、ｅメール、カレンダリング、連絡先マネージャ、メッセージングクライアント、ゲーム、およびメディアクライアント／プレーヤ）を走らせる能力のある「スマートフォン」として実施する。一部の態様において、システム７０２を、統合された携帯情報端末（ＰＤＡ）およびワイヤレスフォンなどのコンピューティングデバイスとして統合する。
【００５４】
[0062]１つまたは複数のアプリケーションプログラム７６６を、メモリ７６２内へとロードし、オペレーティングシステム７６４上で、または、オペレーティングシステム７６４と関連して走らせることがある。アプリケーションプログラムの例は、フォンダイアラ（ｐｈｏｎｅ  ｄｉａｌｅｒ）プログラム、ｅメールプログラム、個人情報管理（ＰＩＭ）プログラム、ワードプロセッシングプログラム、スプレッドシートプログラム、インターネットブラウザプログラム、メッセージングプログラム、等々を含む。システム７０２は、さらには、メモリ７６２の中に不揮発性ストレージエリア７６８を含む。不揮発性ストレージエリア７６８を、システム７０２をパワーダウンする場合に失うべきではない永続的情報を記憶するために使用することがある。アプリケーションプログラム７６６は、ｅメールアプリケーションにより使用されるｅメールまたは他のメッセージ、および同類のものなどの、不揮発性ストレージエリア７６８内の情報を使用および記憶することがある。同期アプリケーション（示されない）が、さらには、システム７０２上に常駐するものであり、ホストコンピュータ上に常駐の対応する同期アプリケーションと相互作用して、不揮発性ストレージエリア７６８内で記憶される情報を、ホストコンピュータにおいて記憶される対応する情報と同期された状態に保つようにプログラムされる。察知すべきであるように、他のアプリケーションを、メモリ７６２内へとロードし、本明細書において説明するモバイルコンピューティングデバイス７００上で走らせることがある（例えば、サーチエンジン、抽出器モジュール、適切性ランキングモジュール、回答スコアリング（ａｎｓｗｅｒ  ｓｃｏｒｉｎｇ）モジュール、その他）。
【００５５】
[0063]システム７０２は、１つまたは複数の電池として実施されることがある、電力供給装置７７０を有する。電力供給装置７７０は、電池を補完または再充電する、ＡＣアダプタ、または、給電されるドッキングクレードルなどの、外部電力源をさらに含むことがある。
【００５６】
[0064]システム７０２は、さらには、無線周波数通信を送信および受信する機能を実施する無線インターフェイス層７７２を含むことがある。無線インターフェイス層７７２は、通信キャリアまたはサービスプロバイダを経た、システム７０２と「外側世界」との間のワイヤレス接続性を手助けする。無線インターフェイス層７７２への、および、無線インターフェイス層７７２からの送信を、オペレーティングシステム７６４の制御のもとで行う。言い換えれば、無線インターフェイス層７７２により受信される通信を、オペレーティングシステム７６４によってアプリケーションプログラム７６６へと広めることがあり、逆も同じことである。
【００５７】
[0065]視覚インジケータ７２０を、視覚的通知を提供するために使用することがあり、および／または、オーディオインターフェイス７７４を、オーディオトランスデューサ７２５によって可聴の通知を生み出すために使用することがある。例示される実施形態において、視覚インジケータ７２０は発光ダイオード（ＬＥＤ）であり、オーディオトランスデューサ７２５はスピーカである。これらのデバイスを、電力供給装置７７０に直接結合することがあり、そのことによって、活動化されるとき、それらのデバイスは、プロセッサ７６０および他の構成要素が、電池電力を節約するためにシャットダウンすることがあるとしても、通知機構により定められる持続時間の間はオンのままである。ＬＥＤを、デバイスのパワーオンされているステータスを指示するために、ユーザが行動をとるまで無期限にオンのままであるようにプログラムすることがある。オーディオインターフェイス７７４を、可聴の信号をユーザに提供し、可聴の信号をユーザから受信するために使用する。例えば、オーディオトランスデューサ７２５に結合することに加えて、オーディオインターフェイス７７４を、さらには、通話を手助けするためなどで、可聴の入力を受信するためにマイクロホンに結合することがある。本開示の実施形態によれば、マイクロホンは、さらには、下記で説明するように、通知の制御を手助けするためのオーディオセンサとして働くことがある。システム７０２は、オンボードカメラ７３０の動作が、静止画像、ビデオストリーム、および同類のものを記録することを可能にする、ビデオインターフェイス７７６をさらに含むことがある。
【００５８】
[0066]システム７０２を実施するモバイルコンピューティングデバイス７００は、追加的な特徴または機能性を有することがある。例えば、モバイルコンピューティングデバイス７００は、さらには、磁気ディスク、光学ディスク、またはテープなどの、追加的なデータストレージデバイス（リムーバブルおよび／または非リムーバブル）を含むことがある。そのような追加的なストレージを、図７Ｂにおいて、不揮発性ストレージエリア７６８により示す。
【００５９】
[0067]モバイルコンピューティングデバイス７００により生成もしくは捕捉される、および、システム７０２によって記憶されるデータ／情報を、上記で説明したように、モバイルコンピューティングデバイス７００上で、ローカルで記憶することがあり、または、データを、任意の数のストレージ媒体上で記憶することがあり、それらのストレージ媒体に、無線インターフェイス層７７２を経て、もしくは、インターネットなどの分散型コンピューティングネットワーク内の、モバイルコンピューティングデバイス７００と、モバイルコンピューティングデバイス７００と関連付けられる別個のコンピューティングデバイス、例えばサーバコンピュータとの間の有線接続を経て、デバイスによりアクセスすることがある。察知すべきであるように、そのようなデータ／情報に、無線インターフェイス層７７２を経て、または、分散型コンピューティングネットワークを経て、モバイルコンピューティングデバイス７００によってアクセスすることがある。同様に、そのようなデータ／情報を、電子メール、および、協働的データ／情報共有システムを含む、よく知られているデータ／情報転送およびストレージ手段によって、ストレージおよび使用のためにコンピューティングデバイスの間で、たやすく転送することがある。
【００６０】
[0068]図８は、上記で説明したような、パーソナルコンピュータ８０４、タブレットコンピューティングデバイス８０６、またはモバイルコンピューティングデバイス８０８などのリモートソースから、コンピューティングシステムにおいて受信されるデータを処理するためのシステムのアーキテクチャの１つの態様を示す。サーバデバイス８０２において表示されるコンテンツを、異なる通信チャネルまたは他のストレージタイプ内で記憶することがある。例えば、様々な文書を、ディレクトリサービス８２２、ウェブポータル８２４、メールボックスサービス８２６、インスタントメッセージングストア８２８、またはソーシャルネットワーキングサイト８３０を使用して記憶することがある。
【００６１】
[0069]環境ビューアプリケーション８２０を、サーバデバイス８０２と通信するクライアントにより使うことがあり、および／または、３Ｄ環境データストア８２１を、サーバデバイス８０２により使うことがある。サーバデバイス８０２は、ネットワーク８１５を通しての、パーソナルコンピュータ８０４、タブレットコンピューティングデバイス８０６、および／またはモバイルコンピューティングデバイス８０８（例えば、スマートフォン）などのクライアントコンピューティングデバイスへの、ならびに、そのクライアントコンピューティングデバイスからのデータを提供することがある。例として、上記で説明したコンピュータシステムを、パーソナルコンピュータ８０４、タブレットコンピューティングデバイス８０６、および／またはモバイルコンピューティングデバイス８０８（例えば、スマートフォン）の形で実施することがある。コンピューティングデバイスのこれらの実施形態の任意のものは、グラフィックを創作するシステムにおいて前処理されるか、または受信するコンピューティングシステムにおいて後処理されるかのいずれかであるように使用可能なグラフィカルデータを受信することに加えて、ストア８１６からコンテンツを取得することがある。
【００６２】
[0070]図９は、本明細書において開示する１つまたは複数の態様を実行することがある、例示的なタブレットコンピューティングデバイス９００を示す。加えて、本明細書において説明する態様および機能性は、分散型システム（例えば、クラウドベースのコンピューティングシステム）にわたって動作することがあり、アプリケーション機能性、メモリ、データストレージおよび検索、ならびに、様々な処理機能を、インターネットまたはイントラネットなどの分散型コンピューティングネットワークにわたって、互いからリモートで動作させることがある。様々なタイプのユーザインターフェイスおよび情報を、オンボードのコンピューティングデバイスディスプレイによって、または、１つもしくは複数のコンピューティングデバイスと関連付けられるリモートディスプレイユニットによって表示することがある。例えば、様々なタイプのユーザインターフェイスおよび情報を、壁面上で表示し、それらのユーザインターフェイスおよび情報と、壁面上で相互作用することがあり、その壁面上へと、様々なタイプのユーザインターフェイスおよび情報を投射する。用いて本発明の実施形態が実践されることがある、多数のコンピューティングシステムとの相互作用は、キーストロークエントリ、タッチスクリーンエントリ、ボイスまたは他のオーディオエントリ、ジェスチャエントリ、および同類のものを含み、そのジェスチャエントリの場合、関連付けられるコンピューティングデバイスは、コンピューティングデバイスの機能性を制御するためにユーザジェスチャを捕捉および解釈するための検出（例えば、カメラ）機能性を装備する。
【００６３】
[0071]前述の開示から理解されるように、本技術の１つの態様は、少なくとも１つのプロセッサと、命令を記憶するメモリとを備えるシステムであって、命令が少なくとも１つのプロセッサにより実行されるときに、システムに動作のセットを実施させる、システムに関する。動作のセットは、環境データファイルを検索することであって、環境データファイルは、３次元（３Ｄ）環境に対する複数のモデルを含む、検索することと、３Ｄ環境内で、複数のモデルのうちの第１のモデルの第１の３Ｄ表現を生成することであって、第１のモデルは、出口アンカーポイントと関連付けられる、生成することと、環境データファイルが、複数のモデルのうちの第２のモデルが第１のモデルの近隣であるということを指示すると決定することであって、第２のモデルは、入口アンカーポイントと関連付けられる、決定することと、第２のモデルが第１のモデルの近隣であると決定することに基づいて、第２のモデルの第２の３Ｄ表現を生成することであって、第２のモデルの表現は、第２のモデルと関連付けられる入口アンカーポイントが、第１のモデルの入口ポイントに近接して位置決めされるように、３Ｄ環境内で位置決めされる、生成することとを含む。例において、第１のモデルの第１の３Ｄ表現を生成することは、環境データファイルが、第１のモデルのコンテンツポイントと関連付けられるコンテンツアイテムを指定すると決定することと、第１の３Ｄ表現内の第１のモデルのコンテンツポイントにおいてコンテンツアイテムの表現を生成することとを含む。別の例において、コンテンツアイテムの表現を生成することは、コンテンツアイテムと関連付けられるリモートリソースに対する要求を生成することを含む。さらなる例において、動作のセットは、ユーザデバイスのディスプレイ上で３Ｄ表現を提示することをさらに含む。さらに別の例において、第１のモデルは、ユーザの観点に対する初期位置を指示し、３Ｄ表現を提示することは、ユーザの観点に対する初期位置からの３Ｄ表現を提示することを含む。さらにその上の例において、環境データファイルを検索することは、環境データファイルの少なくとも一部分を、リモートデータストアに対して要求することを含む。別の例において、第１のモデルおよび第２のモデルは、類似のテーマを有するモデルのセットの構成物である。
【００６４】
[0072]別の態様において、本技術は、３次元（３Ｄ）環境を表す環境データファイルを生成するための方法に関する。方法は、３Ｄ環境に対する環境テンプレートのユーザ選択を受信するステップと、第１のモデルのユーザ選択を受信するステップであって、第１のモデルは、選択された環境テンプレートと関連付けられる、受信するステップと、第１のモデルの２次元（２Ｄ）表示を提示するステップであって、２Ｄ表示は、第１のモデルの１つまたは複数のコンテンツポイントの表示を含む、提示するステップと、１つまたは複数のコンテンツポイントからのコンテンツポイントのユーザ選択を受信するステップであって、ユーザ選択は、その選択されたコンテンツポイントにおける表示のためのコンテンツを指示する、受信するステップと、環境データファイルを生成するステップであって、環境データファイルは、選択された環境テンプレート、第１のモデル、および、選択されたコンテンツポイントに関する情報を含み、選択されたコンテンツポイントは、指示されたコンテンツと関連付けられる、生成するステップとを含む。例において、方法は、選択された環境テンプレートと関連付けられる、１つまたは複数のモデルの表示を提示するステップであって、１つまたは複数のモデルは、２Ｄ表現を使用して表示される、提示するステップをさらに含む。別の例において、方法は、ユーザの観点に対する初期位置の選択を受信するステップであって、選択は、第１のモデルの中にある、受信するステップと、環境データファイルの一部分として、受信された選択を記憶するステップとをさらに含む。さらなる例において、方法は、第２のモデルの選択を受信するステップであって、選択は、第２のモデルが第１のモデルの近隣で位置決めされるという指示を含む、受信するステップをさらに含む。さらに別の例において、環境データファイルは、第１のモデルと関連付けられる識別子と、第２のモデルと関連付けられる識別子とを含む。さらにその上の例において、方法は、１つまたは複数のユーザデバイスによるアクセスのために、リモートデータストアにおいて、生成された環境データファイルを記憶するステップをさらに含む。
【００６５】
[0073]さらなる態様において、本技術は、環境データファイルを使用して３次元（３Ｄ）環境を生成するための方法に関する。方法は、環境データファイルを検索するステップであって、環境データファイルは、３Ｄ環境に対する複数のモデルを含む、検索するステップと、３Ｄ環境内で、複数のモデルのうちの第１のモデルの第１の３Ｄ表現を生成するステップであって、第１のモデルは、出口アンカーポイントと関連付けられる、生成するステップと、環境データファイルが、複数のモデルのうちの第２のモデルが第１のモデルの近隣であるということを指示すると決定するステップであって、第２のモデルは、入口アンカーポイントと関連付けられる、決定するステップと、第２のモデルが第１のモデルの近隣であると決定することに基づいて、第２のモデルの第２の３Ｄ表現を生成するステップであって、第２のモデルの表現は、第２のモデルと関連付けられる入口アンカーポイントが、第１のモデルの入口ポイントに近接して位置決めされるように、３Ｄ環境内で位置決めされる、生成するステップとを含む。例において、第１のモデルの第１の３Ｄ表現を生成するステップは、環境データファイルが、第１のモデルのコンテンツポイントと関連付けられるコンテンツアイテムを指定すると決定するステップと、第１の３Ｄ表現内の第１のモデルのコンテンツポイントにおいてコンテンツアイテムの表現を生成するステップとを含む。別の例において、コンテンツアイテムの表現を生成するステップは、コンテンツアイテムと関連付けられるリモートリソースに対する要求を生成するステップを含む。さらなる例において、方法は、ユーザデバイスのディスプレイ上で３Ｄ表現を提示するステップをさらに含む。さらに別の例において、第１のモデルは、ユーザの観点に対する初期位置を指示し、３Ｄ表現を提示するステップは、ユーザの観点に対する初期位置からの３Ｄ表現を提示するステップを含む。さらにその上の例において、環境データファイルを検索するステップは、環境データファイルの少なくとも一部分を、リモートデータストアに対して要求するステップを含む。別の例において、第１のモデルおよび第２のモデルは、類似のテーマを有するモデルのセットの構成物である。
【００６６】
[0074]本開示の態様を、例えば、本開示の態様による方法、システム、およびコンピュータプログラム製品の、ブロック線図および／または動作図を参照して、上記で説明している。ブロックにおいて記した機能／行為は、任意のフローチャートにおいて示されるような順序を外れて発生することがある。例えば、連続して示される２つのブロックを、実際は、実質的に同時に実行することがあり、または、ブロックを、時には、関与する機能性／行為に依存して、逆の順序で実行することがある。
【００６７】
[0075]本出願において提供される１つまたは複数の態様の説明および例示は、請求されるような本開示の範囲を制限または限定させる意図は決してない。本出願において提供される態様、例、および詳細は、所有について伝えるのに、また請求される開示の最良の形態を他者が作製および使用することを可能にするのに十分と考える。請求される開示を、本出願において提供される任意の態様、例、または詳細に制限されると解するべきではない。示され説明されるのが、組み合わせてか、または別個であるかに関わらず、様々な特徴（構造的および方法論的の両方）を、特徴の個別のセットを伴う実施形態を生み出すために、選択的に含める、または省略する意図がある。本出願の説明および例示を提供されたことで、当業者は、請求される開示のより広範な範囲から逸脱しない、本出願において実施される一般的な発明概念のより広範な態様の趣旨の中に当てはまる、変形、修正、および代替の態様を構想することがある。
【図１】
2020518071.tif 000003
【図２】
2020518071.tif 000004
【図３】
2020518071.tif 000005
【図４】
2020518071.tif 000006
【図５】
2020518071.tif 000007
【図６】
2020518071.tif 000008
【図７Ａ】
2020518071.tif 000009
【図７Ｂ】
2020518071.tif 000010
【図８】
2020518071.tif 000011
【図９】
2020518071.tif 000012
【国際調査報告】
2020518071.tif 000013
2020518071.tif 000014