(57)【要約】      （修正有）【課題】単一のビューポートを介してシーン内のオブジェクトの斜視図と正投影図の両方を参照してシーンを編集する、非一時的機械可読記録媒体を提供する。【解決手段】編集ビューポートを介して見えるシーン内のオブジェクトの正投影を生成するシーンエディタであって、編集ビューポートを介して見ることができる、３次元オブジェクトを含むシーンをレンダリングさせ、編集ビューポートを介して見ることができる正投影面に３次元オブジェクトの正投影をレンダリングさせ、３次元オブジェクトの操作の入力を受信させ、入力を反映させるように、正投影を更新させる。【選択図】図１０
2020166852.tif 000002
【特許請求の範囲】
【請求項１】
実行されると、コンピューティングデバイスのプロセッサに、
編集ビューポートを介して見ることができる、３次元オブジェクトを含むシーンをレンダリングさせ、
前記編集ビューポートを見ることができる正投影面に前記３次元オブジェクトの正投影をレンダリングさせ、
前記３次元オブジェクトの操作の入力を受信させ、
前記入力を反映させるために正投影を更新させる、
ための命令を備えた非一時的機械可読記憶媒体。
【請求項２】
前記命令は、前記プロセッサに、操作可能なオブジェクトを、前記正投影面に、レンダリングさせ、前記入力は、前記操作可能なオブジェクトとの相互作用により受信される、請求項１に記載の非一時的機械可読記憶媒体。
【請求項３】
前記操作可能なオブジェクトは、正投影を備える、請求項２に記載の非一時的機械可読記憶媒体。
【請求項４】
前記操作可能なオブジェクトは、マニュピュレータウィジェットを備える、請求項２に記載の非一時的機械可読記憶媒体。
【請求項５】
前記命令は、前記プロセッサに、前記編集ビューポートを介して見ることができる正投影面をレンダリングさせる、請求項１に記載の非一時的機械可読記憶媒体。
【請求項６】
前記命令は、前記プロセッサに、前記正投影面を半透明にレンダリングさせる、請求項５に記載の非一時的機械可読記憶媒体。
【請求項７】
前記命令は、前記プロセッサに、前記正投影面に、補助視覚インジケータをレンダリングさせる、請求項１に記載の非一時的機械可読記憶媒体。
【請求項８】
前記命令は、前記プロセッサに、
前記正投影面に垂直な第２の正投影面に、前記３次元オブジェクトの第２の正投影をレンダリングさせ、
前記入力を反映させるように前記３次元オブジェクトの前記第２の正投影を更新させる、
請求項１に記載の非一時的機械可読記憶媒体。
【請求項９】
前記命令は、前記プロセッサに、
前記編集ビューポート内の前記３次元オブジェクトを第１の視覚スタイルでレンダリングさせ、
前記正投影面にレンダリングされた前記３次元オブジェクトの前記正投影を、前記第１の視覚スタイルとは異なる第２の視覚スタイルで、レンダリングさせる、請求項１に記載の非一時的機械可読記憶媒体。
【請求項１０】
前記命令は、前記プロセッサに、前記シーンを、前記編集ビューポートに、斜視図で表示させる、請求項１に記載の非一時的機械可読記憶媒体。
【請求項１１】
前記命令は、前記プロセッサに、前記正投影面をオブジェクトとして前記シーンに介挿させる、請求項１に記載の非一時的機械可読記憶媒体。
【請求項１２】
前記正投影面は、前記シーンの座標軸と位置合わせされる、請求項１に記載の非一時的機械可読記憶媒体。
【請求項１３】
実行されると、コンピューティングデバイスのプロセッサに、
編集ビューポートを介して見ることができる、３次元オブジェクトを含むシーンをレンダリングさせ、
前記編集ビューポートを介して、見ることができる複数の内壁であって、各内壁は、前記３次元オブジェクトを仕切る複数の正投影面の１つの正投影面を備えた、複数の内壁を有する境界ボックスを生成させ、
前記複数の正投影面の各正投影面上に、前記３次元オブジェクトの１つ正投影をレンダリングさせ、
前記３次元オブジェクトの操作の入力を受信させ、
前記入力を反映するように前記正投影の各々を更新させる、
命令を備えた、非一時的機械可読記憶媒体。
【請求項１４】
前記境界ボックスは、前記シーンを仕切る、請求項１３に記載の非一時的機械可読記憶媒体。
【請求項１５】
実行されると、コンピューティングデバイスのプロセッサに、
編集ビューポートを介して見ることができる、３次元オブジェクトを含むシーンをレンダリングさせ、
正投影面上に前記３次元オブジェクトの正投影であって、前記編集ビューポートを介して見ることができる正投影をレンダリングさせ、
前記正投影のスケール、位置、および配向を、前記編集ビューポートを介して見ることができる前記３次元オブジェクトの前記スケール、位置、および配向と同期させる、
命令を備えた非一時的機械可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この明細書は、コンピュータグラフィックスに関し、特に、シーンエディタ（scene editors）とそのツールに関する。
【背景技術】
【０００２】
モデル、キャラクター、およびシーン内の他のオブジェクトなどを編集するためのシーンエディタは、通常、オブジェクトまたはオブジェクトのグループを表示できるビューポート（viewport）を含むユーザインタフェースを提供する。ビューポートは、典型的に斜視図およびいくつかの異なる正投影図（例えば、正面図、側面図および上面図）のようなシーンの、異なるビューを含む象限に分割される。
【０００３】
シーンの斜視図は、シーンエディタのユーザが編集するシーンの全体的な評価（overall appreciation）を得ることを可能にする。正投影ビューは、ユーザが、正射投影ビューに表示される２次元に関してオブジェクト、又はオブジェクトのグループを正確に編集することを可能にする。ユーザは、典型的に、タスクを編集するとき、シーンの異なるビュー間の焦点を切り替える。
【発明の概要】
【０００４】
シーンエディタは、シーンの斜視図、又はその他の図に直接介挿される平面上のシーン内のオブジェクトの正投影を表示する編集ビューポイントを提供するユーザインタフェースを含む。そのような平面は、正投影面（orthographic projection plane）と呼ばれる。正投影は、位置、配向（orientation）、スケール、動き、および他の特性に関して、シーン内のオブジェクトに同期することができる。さらに、ユーザは、オブジェクトを直接操作するか、または、正投影（orthographic projection）を操作するか、または、正投影面に関するウィジェット（widget）を操作することによりオブジェクトを操作することができる。従って、ユーザは、単一のビューポートを介してシーン内のオブジェクトの斜視図と正投影図の両方を参照してシーンを編集することができる。
【０００５】
従って、本明細書の一態様によれば、非一時的機械可読記憶媒体は、編集ビューポイントを介して見ることができるシーンであって、３次元オブジェクトを含むシーンをレンダリングする命令を含む。命令はさらに、３次元オブジェクトの編集ビューポートを介して見ることができる正投影を正投影面にレンダリングする。命令は、さらに、３次元オブジェクトの操作の入力を受信し、入力を反映するように正投影を更新する。命令は、コンピューティングデバイスにより実行することができ、コンピューティングデバイスによる方法として実行することができる。命令は、ツールとして、シーン編集プログラムに組み込むことができる。
【０００６】
命令はさらに、正投影面上の操作可能なオブジェクトをレンダリングすることができ、入力は、操作可能なオブジェクトとの相互作用により受信される。操作可能なオブジェクトは、正投影を含むことができる。操作可能なオブジェクトには、マニピュレータウィジェット（manipulator widget）を含めることができる。
【０００７】
命令はさらに、編集ビューポートを介して見ることができる正投影面をレンダリングすることを可能にする。正投影面は、半透明であり得る。
【０００８】
さらに、命令はさらに、正投影面上に補助視覚インジケータ（assistive visual indicator）をレンダリングすることができる。命令はさらに、正投影面に対して垂直な第２の正投影面上に３次元オブジェクトの第２の正投影をレンダリングすることができ、入力を反映するように３次元オブジェクトの第２の正投影を更新することができる。命令は、さらに、３次元オブジェクトの第２の正投影を、正投影面に垂直な第２の正投影面上にレンダリングすることができ、入力を反映するように３次元オブジェクトとの第２の正投影を更新することができる。
【０００９】
命令はさらに、編集ビューポイント内の３次元オブジェクトを第１の視覚スタイルでレンダリングすることができ、正投影面上にレンダリングされた３次元オブジェクトの正投影を、第１の視覚スタイルと異なる、第２の視覚スタイルで正投影面上にレンダリングすることができる。
【００１０】
命令はさらに、編集ビューポートにシーンを斜視図で表示させることができる。命令はさらに、正投影面をオブジェクトとしてシーンに介挿することができる。正投影面は、シーンの座標軸と位置合わせすることができる。
【００１１】
明細書の他の態様によれば、非一時的機械可読記憶媒体は、編集ビューポートを介して３次元オブジェクトを含むシーンをレンダリングする命令を含む。命令はさらに、編集ビューポートを介して見ることができる内壁であって、各内壁が、３次元オブジェクトの境界を示す複数の正投影面のうちの１つの正投影面を備えた、内壁を有する境界ボックスを生成する。命令はさらに、複数の正投影面の各正投影面上に３次元オブジェクトの正投影をレンダリングする。命令はさらに、３次元オブジェクトの入力を受信し、入力を反映するように正投影の各々を更新する。境界ボックスは、シーンを区切る。命令は、コンピューティングデバイスにより実行することができ、コンピューティングデバイスによる方法として実行することができる。命令は、ツールとしてシーン編集プログラムに組み込むことができる。
【００１２】
さらに、本明細書の他の態様によれば、非一時的機械可読記憶媒体は、編集ビューポイントを介して見ることができる、３次元オブジェクトを含むシーンをレンダリングする命令を含む。命令はさらに、３次元オブジェクトの正投影を、編集ビューポートを介して見ることができる正投影面にレンダリングする。命令はさらに、正投影のスケール、位置、および配向を、編集ビューポートを介して見た３次元オブジェクトのスケール、位置、および配向と同期させる。記憶媒体は、編集ビューポートを介して見ることができるシーン内のオブジェクトの正投影を生成するためのタスクを、コンピューティングデバイスのプロセッサに実行させる命令を記憶する。
【図面の簡単な説明】
【００１３】
【図１】図１は、例示非一時機械可読媒体の概略図である。
【図２】図２は、シーン内のオブジェクトの正投影が見える編集ビューポートを提供する例示コンピューティングデバイスの概略図である。
【図３】図３は、編集ビューポートを介して見えるシーン内のオブジェクトの正投影を生成するための例示方法のフローチャートである。
【図４】図４は、シーン内のオブジェクトの正投影が見える編集ビューポートを提供する他の例示コンピューティングデバイスの概略図である。
【図５】図５は、動いているオブジェクトを示す他の例示シーンを表示する図４の編集ビューポートの概略図である。
【図６】図６は、オブジェクトと視覚インジケータを有する正投影面と、オブジェクトと相互作用するマニピュレータウィジェットを示す他の例示シーンを表示する図４の編集ビューポートの概略図である。
【図７】図７は、異なる視覚スタイルのオブジェクトと正投影を示す他の例示シーンを表示する図４の編集ビューポートの概略図である。
【図８】図８は、オブジェクトと、２つの正投影面上に表示されたオブジェクトの２つの正投影を示す他の例示シーンを表示する図４の編集ビューポートの概略図である。
【図９】図９は、シーンを取り囲む境界ボックスの内壁上に表示されたシーンのオブジェクトの正投影を示す他の例示シーンを表示する図４の編集ビューポートの概略図である。
【図１０】図１０は、境界ボックスの内壁上の編集ビューポートを介して見えるシーン内のオブジェクトの正投影を生成する例示方法のフローチャートである。
【発明を実施するための形態】
【００１４】
シーンエディタは、典型的にシーンのいくつかの異なるビューを提供するユーザインタフェースを含む。シーンエディタのユーザは、典型的に、２つの異なるビュー間のフォーカスを切り替えて所定の編集タスクを達成する。例えば、ユーザは、斜視図を参照して、おおよその方法でシーン内のオブジェクトを配置し、１つの正投影ビューを参照してオブジェクトを正確に配置し、別の正投影ビューを参照してオブジェクトをスケーリングすることができる。斜視図は、典型的に、ユーザがシーンの全体的な評価（overall appreciation）を得ることができ、ユーザは、典型的に正投影図を参照してより正確な編集を行う。
【００１５】
異なるビュー間でフォーカスを切り替えて特定の編集タスクを実行すると、ユーザに、認識能力上の負担がかかる可能性がある。異なるビューは、一般に、相互間の接続性の感覚をほとんど提供しないため、切り替えが混乱したり、面倒な場合がある。例えば、正投影図で編集しながら、斜視図により提供されるシーンの全体の評価を維持することは、困難である可能性がある。
【００１６】
さらに、ユーザインタフェースに、シーンのいくつかの個別のビューを同時に表示する必要があるため、任意の１つのビューに専念するためのユーザインタフェースのためのスペースの量が制限され、他のユーザインタフェース要素に専念できるスペースが制限される可能性がある。ユーザは、一方ではシーンの１つ以上のビューのサイズを縮小して、他の望ましいユーザインタフェース要素のためのスペースを空けることと、他方では、他の望ましいユーザインタフェースのユーザインタフェース要素を使用して、いくつかの個別のビューのためのスペースを確保することとの間のトレードオフを強要される可能性がある。
【００１７】
さらに、シーンのいくつかの異なるビューを同時に表示するユーザインタフェースは、より少ないシーンのビューを表示するユーザインタフェースよりもより多くの処理パワーとメモリを消費する可能性がある。
【００１８】
シーンエディタは、シーンの斜視図に直接介挿される平面上のシーン内のオブジェクトの正投影を表示する編集ビューポートを含むユーザインタフェースを備えることができ、それにより、ユーザに、斜視図または他の図内に直接埋め込まれたオブジェクトの正投影への参照を有するという利点をもたらす。そのような平面は、正投影面と呼ばれる。正投影は、シーン内のオブジェクトを、位置、配向、スケール、動き、および他の特性と同期させることができる。ユーザはそれにより、それぞれのビューを介して直接オブジェクトの正投影を見ることができ、斜視図により提供されるシーンの全体の評価と、正投影図により提供される精度の両方を同時に得ることができる。
【００１９】
さらに、ユーザは、正投影の操作による正投影、またはシーンに介挿された正投影面上のウィジェットの操作により正投影を操作することができ、操作は、シーン内の実際のオブジェクトに反映される。あるいは、ユーザは、正投影に反映された操作で実際のオブジェクトを直接操作することが出来る。したがって、ユーザは、単一のビューポートを介して斜視図と正投影図の両方を参照してシーン内のオブジェクトを操作することができる。
【００２０】
さらに、オブジェクトのいくつかの異なる正投影を提供することができる。例えば、各々が、異なる方向から投影されたオブジェクトの異なる正投影を有する、１つ、２つ、３つ、またはそれ以上の正投影面をシーン内に介挿することができる。例えば、２つの正投影面は、オブジェクトの正面と側面の両方の正投影を提供することができる。さらに、いくつかの正投影面は、オブジェクト又はシーンの周りに境界ボックスを形成することができ、正投影は、境界ボックスの内壁の各々に提供することができ、それにより、任意の方向から見たとき、オブジェクトの１つ以上の正投影参照を与えることができる。
【００２１】
このようなシーンエディタは、ユーザへの認知的負担が少なく、より直感的で使いやすい場合がある。さらに、そのようなシーンエディタは、より大きなビューポート、またはさらなるユーザインタフェースエレメントに対してより多くの空間を提供する余裕があり得る。さらに、そのようなシーンエディタは、より少ない処理パワーとメモリしか必要とせず、それにより処理パワーとメモリを他のタスクのために使用することができる。
【００２２】
図１は、コンピューティングデバイスのプロセッサが、タスクを実行して編集ビューポートを介して見える、シーン内のオブジェクトの正投影を生成させる命令を記憶する、例示非一時的機械可読記憶媒体１００の概略図である。コンピューティングデバイスは、ノートブックコンピュータ、デスクトップコンピュータ、スマートフォン、サーバ、または任意のコンピューティングデバイス、または、記憶媒体１００にアクセスするコンピューティングデバイスの組み合わせを含むことができる。記憶媒体１００に記憶された命令は、そのようなコンピューティングデバイスによる方法として実行することができる。
【００２３】
記憶媒体１００は、編集ビューポートを介して見ることができるシーンをレンダリングするためのシーンレンダリング命令１０２を含む。シーンは、正投影が生成される３次元オブジェクトを含む。シーンは、シーンエディタが、単一モデルが編集されるモデルエディタの一部である例のような、単一オブジェクトを含むことができる。シーンエディタが、複数のオブジェクトが配置され、編集されるゲームエディタの一部である例の場合のように、シーンは、正投影が生成される複数のオブジェクトを含むことができる。
【００２４】
編集ビューポートは、シーンの３つの空間次元を表示する斜視図、等角図、または類似の図でシーンを表示することができる。従って、シーンレンダリング命令１０２は、プロセッサに、シーンを斜視図で表示するための編集ビューポートを生じさせることができる。
【００２５】
記憶媒体１００はさらに、３次元オブジェクトの正投影をレンダリングするための正投影レンダリング命令１０４を含む。正投影は、編集ビューポートを介して見ることができる。３次元オブジェクトの正投影は、正投影面にレンダリングすることができる。
【００２６】
いくつかの例において、正投影面自体は、編集ビューポートを介して見るがことができる。言い換えれば、正投影面は、透明または半透明であり得る。従って、正投影レンダリング命令１０４は、プロセッサに、編集ビューポートを介して見ることができる正投影面をレンダリングさせることができる。いくつかの例において、正投影レンダリング命令１０４は、プロセッサに、正投影面を透明または半透明としてレンダリングさせることができる。他の例において、正投影面は、編集ビューポートを介して見ることができない。言い換えれば、正投影面は、透明であり得る。
【００２７】
さらに、いくつかの例において、正投影面は、シーンに介挿された実際のオブジェクトであり得る。したがって、正投影レンダリング命令１０４は、プロセッサに、正投影面をオブジェクトとしてシーンに介挿させることができる。他の例において、正投影面は、シーンに介挿された実際のオブジェクトではなく、編集ビューポートで生成されたグラフィックオーバーレイ（graphical overlay）であり得る。
【００２８】
記憶媒体１００は、さらに、３次元オブジェクトの操作の入力を受信するためのオブジェクト操作入力受信命令１０６を含む。さらに、記憶媒体１００は、入力を反映するように正投影を更新させる正投影更新命令１０８を含む。３次元オブジェクトの操作は、オブジェクトの正投影との相互作用として、またはシーン内に介挿された正投影面上のウィジェットの操作により、受け取ることができる。この場合、操作は、シーン内のオブジェクトの図に反映される。３次元オブジェクトの操作は、シーン内のオブジェクトの図との相互作用として受信することができ、この場合、操作は、オブジェクトの正投影に反映される。したがって、オブジェクト操作入力受信命令１０６は、プロセッサに、操作可能なオブジェクトを正投影面にレンダリングさせ、この場合、入力は、操作可能なオブジェクトとの相互作用により受信され、操作可能なオブジェクトは、正投影またはマニュピュレータウィジェットであり得る。したがって、正投影は、シーン内のオブジェクトのビューに同期され、シーン内のオブジェクトのビューは、正投影に同期化される。
【００２９】
図２は、例示コンピューティングデバイス２００の概略図である。コンピューティングデバイス２００は、プロセッサ２１０と非一時的機械可読記憶媒体２２０を含む。コンピューティングデバイス２００は、編集ビューポイント２３０を含むユーザインタフェースでシーンを編集するためのシーンエディタを提供する。編集ビューポート２３０は、３次元オブジェクト２３２を含むシーンを表示する。編集ビューポート２３０は、さらに、３次元オブジェクト２３２の正投影２３６をシーン内に直接表示する。編集ビューポート２３０は、また、３次元オブジェクト２３２が正投影２３６として投影される正投影面２３４を表示することができる。
【００３０】
記憶媒体２２０は、プロセッサ２１０により実行可能なシーン編集プログラム２２２を記憶し、編集ビューポート２３０を介してシーンをレンダリングし、ユーザがシーンを編集することを可能にすることができる。シーンエディタプログラム２２２は、図１の記憶媒体１００に記憶された命令に類似した機械可読命令を含み、従って、シーンレンダリング命令、正投影レンダリング命令、オブジェクト操作受信命令、および正投影更新命令を含むことができる。例えば、シーンエディタプログラム２２２は、図１を参照して上述したように、３次元オブジェクト２３２の正投影２３６をレンダリングする命令を含む。上述したエレメントのさらなる記述、および図１の記憶媒体１００の記述を参照することができる。
【００３１】
コンピューティングデバイス２００は、ノートブックコンピュータ、デスクトップコンピュータ、スマートフォン、または、入力、処理および表示能力を有するコンピューティングデバイスの組み合わせを含むことができる。いくつかの例において、コンピューティングデバイス２００は、編集ビューポート２３０を表示するためのディスプレイデバイスと、コンピューティングデバイス２００が、コンピューティングデバイス２００に、ローカルに記憶されたシーンエディタアプリケーションを実行させるように構成された例の場合のように、編集ビューポート２３０を介してオブジェクトを操作するための入力を受信するための、キーボード、マウス、および／またはタッチスクリーンのような入力デバイスを含むことができる。他の例において、コンピューティングデバイス２００は、コンピューティングデバイス２００がリモートコンピューティングデバイスにより実行可能なブラウザを介してアクセス可能なシーンエディタプログラムをホスト（host）するウェブサーバである例のように、入力を受信するシーンエディタプログラムをホストし、入力デバイスとディスプレイデバイスを有するリモートコンピューティングデバイスに編集ビューポート２３０を表示するサーバであり得る。さらに、単一のプロセッサ２１０が示されるけれども、プロセッサという用語は、プロセッサ、中央処理装置（ＣＰＵ）、グラフィクスプロセッシングユニット（ＧＰＵ）、マイクロプロセッサ、マイクロコントローラ、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）および類似のものの任意の数量と組み合わせを指すことが理解される。さらに、単一の記憶媒体２２０が図示されるけれども、記憶媒体という用語は、ランダムアクセスメモリ（ＲＡＭ）、ハードドライブ、フラッシュメモリ、および類似のもののような揮発性記憶媒体および不揮発性記憶媒体の任意の数量および組み合わせを指すことが理解される。
【００３２】
図３は、編集ビューポートを介して見ることができるシーン内のオブジェクトの正投影を生成するための例示方法３００のフローチャートである。方法３００は、図１の記憶媒体１００に記憶された命令、および図２のコンピューティングデバイス２００、および図４のコンピューティングデバイス４００のように、ここに記載された任意の命令またはコンピューティングデバイスを用いて実行することができる。方法３００は、他の命令および／またはデバイスを用いて実行することができる。方法３００は、非一時的機械可読記憶媒体で具現化することができる。
【００３３】
ブロック３０２において、シーンは、編集ビューポート、３次元オブジェクトを含むシーンを介して見ることができるようにレンダリングされる。ブロック３０４において、３次元オブジェクトの正投影がレンダリングされる。正投影は、編集ビューポートを介して見ることができる。正投影は、正投影面にレンダリングすることができる。ブロック３０６において、３次元オブジェクトの操作の入力が受信される。ブロック３０８において、正投影への更新は、入力を反映するように行われる。従って、言い換えれば、正投影は、３次元オブジェクトと同期化される。正投影は、スケール、位置、および方位において３次元オブジェクトと同期化することができる。
【００３４】
方法３００のブロックは、シーンレンダリング命令１０２、正投影レンダリング命令１０４、オブジェクト操作入力受信命令１０６、および正投影更新命令を含む、図１の記憶媒体１００に記憶される命令と同様である。従って、方法３００のブロックのさらなる記述に関して、図１の記憶媒体の命令を参照することができる。例えば、３次元オブジェクトの操作は、図１を参照して記載したような、シーン内の３次元オブジェクト、オブジェクトの正投影、または操作ウィジェット、との相互作用として受信することができる。
【００３５】
図４は、他の例示コンピューティングデバイスの概略図である。コンピューティングデバイス４００は、図２のコンピューティングデバイス２００と同様であり、同様のエレメントは２００シリーズではなく、４００シリーズで番号付けされ、プロセッサ４１０、編集ビューポート４３０を含むユーザインタフェースを介して編集可能なシーンを提供するシーンエディタプログラム４２２を含む非一時的機械可読記憶媒体４２０を含む。上記エレメントのさらなる記載のために、図２のコンピューティングデバイスの記述を参照することができる。
【００３６】
編集ビューポート４３０は、３次元オブジェクト４３２を含むシーン４３１を表示する。編集ビューポート４３０は、さらに３次元オブジェクト４３２の正投影４３６をシーン４３１内に直接表示する。編集ビューポート４３０はまた、３次元オブジェクト４３２が正投影４３６として投影される正投影面４３４を表示する。いくつかの例において、正投影面４３４が無限平面（infinite plane）であり得、正投影面４３４は、一般的に、図示例では、正方形のような２次元形状により横方向に囲まれた平面の有限断面（finite section）である。正投影面４３４の横方向の境界は、方形、三角形、それ以外の多角形、円形、楕円形、曲線、または、それらの組み合わせまたは、類似のものとすることができる。
【００３７】
３次元オブジェクト４３２は、正投影面４３４上の、正投影面に直交する３次元オブジェクト４３２の断面プロファイルの正投影に対応する正投影４３４の領域上に投影することができる。正投影４３６は、３次元オブジェクト４３２のスケールをシーンに一致させることができる。例えば、正投影面４３４に直交する３次元オブジェクト４３２の断面プロファイルが、１０単位平方のエリアをシーン４３１に有する場合、正投影４３６は、１０単位平方のエリアを正投影面４３４上に有することができる。
【００３８】
ユーザに見える正投影面４３４の側面であって、正投影面４３４の横方向境界内に位置するシーン４３１内の任意のオブジェクトは、正投影面４３４上に投影することができる。言い換えれば、正投影面４３４は、一端において、正投影面４３４により定義される正投影空間４３５に関連づけられ、他端において、任意の距離だけ、正投影面４３４から垂直に延伸し、正投影面４３４の境界と同じ２次元形状により横方向に区切られている。この例では、正投影面４３４は、方形の形状であり、正投影空間４３５は、直交投影面４３４から遠ざかる方向に延伸する方形プリズムである。正投影空間４３５内の任意のオブジェクトは、正投影面４３４に正射影に投影することができる。正投影空間４３５が延伸する任意の距離は、多かれ少なかれ、オブジェクトが正投影面４３４に投影されるように選択することができる。この例では、３次元オブジェクト４３２は、立方体であるが、３次元オブジェクト４３２は、キャラクタモデル、環境モデル、または他のオブジェクトのモデルのような、任意の形状、サイズ、または他の構成であり得ることが理解される。さらに、シーン４３１は、複数の３次元オブジェクト４３２を含むことができる。編集ビューポート４３０は、シーン４３１を斜視図で表示する。しかしながら、他の例において、等価図のような、シーン４３１の３つの空間次元を表示する他のビューを表示することができる。
【００３９】
編集ビューポート４３０は、３次元オブジェクト４３２の斜視図、または、他の図内に直接正投影４３６を表示し、それにより、シーンエディタのユーザに、非正投影ビュー内に直接埋め込まれた３次元オブジェクト４３２の正投影ビューを参照するという利点を提供する。
【００４０】
いくつかの例において、正投影面４３４は、シーン４３１の座標軸と位置合わせをすることができる。例えば、正投影面４３４は、Ｘ、ＺまたはＹ座標軸に垂直であり得、従って、シーン４３１のＺ−Ｙ、Ｘ−Ｙ、またはＸ−Ｚ座標平面に平行であり得る。正投影面４３４をシーン４３１の座標軸の１つと位置合わせすることは、シーン４３１の座標軸に関連づけてシーン４３１を設計することに関心があるユーザに、さらなる配向情報を提供することができる。他の例において、正投影面４３４は、シーン４３１の座標軸に対して任意の方位であり得る。潜在的には、シーン４３１の任意の座標軸に関係ない、任意の他の配向に正投影面４３４を位置合わせすることは、シーン４３１の任意の座標軸に関係することなしに、シーン４３１内のオブジェクト間のスケール、位置および／または配向間の関係を維持しながら、任意の座標軸を参照することなしに、シーン４３１を設計するユーザに高度の柔軟性を可能にすることができる。
【００４１】
ユーザは、編集ビューポート４３０を介して３次元オブジェクト４３２および正投影４３６と相互作用することができる。例えば、ユーザは、オブジェクトを選択し、ボタンをドラッグし、ウィジェットと相互作用する等のために、カーソル４３８を用いて相互作用することができる。タッチスクリーンのような他のユーザインタフェースエレメントを使用することができる。
ユーザは、３次元オブジェクト４３２の位置、スケール、配向、または他の特性を操作することができる。いくつかの例において、ユーザは、この場合、操作が正投影４３６に反映される、シーン４３１内の３次元オブジェクト４３２と相互作用することにより、または、操作がシーン４３１内の３次元オブジェクト４３２に反映される、正投影４３６と相互作用することにより、３次元投影４３２と相互作用することができる。
【００４２】
ユーザは、３次元オブジェクト４３２の位置、スケール、および／または配向を調節するためのサイドメニューのような、シーンエディタ内の他のツールにより３次元オブジェクト４３２と相互作用することができ、この場合、操作が、シーン４３１内の３次元オブジェクト４３２と、正投影４３６の両方に反映される。従って、正投影４３６は、スケール、位置、および配向において３次元オブジェクト４３２に同期化される。
【００４３】
図５は、３次元オブジェクト４３２が動いているシーン５３１を示す編集ビューポート４３０を示す。正投影空間４３５は、明瞭さのために省略される。正投影面４３４上の正投影４３６の位置は、シーン５３１内の３次元オブジェクト４３２の位置に同期化される。従って、３次元オブジェクト４３２が動くと、正投影４３６は、同期した関係で動く。
【００４４】
図６は、３次元オブジェクト４３２が、正投影６３６として、正投影面６３４上に投影されるシーン６３１を示す編集ビューポート４３０を示す。正投影空間は、明瞭さのために省略される。正投影面６３４は、ユーザが３次元オブジェクト４３２を操作するのを助けるためのツールを含む。
【００４５】
正投影面６３４は、正投影面６３４にレンダリングされた補助視覚インジケータ６０２Ａ、６０２Ｂを含む。この例では、第１の補助視覚インジケータ６０２Ａは、正投影面６３４に投影されるオブジェクトのスケールに関連した情報を提供するためのルーラを含む。ユーザはそれにより、３次元オブジェクト４３２を、ルーラを参照して、正投影面６３４の寸法にスケーリングすることができる。第２の補助視覚インジケータ６０２Ｂは、正投影面６３４上に投影したオブジェクトに関連した位置と配向情報を提供するための１つ以上の格子線（grid lines）を含む。ユーザは、それにより１つまたは複数の光子線を参照してシーン６３１内に３次元オブジェクト４３２を配置することができる。格子線６０２は、正投影面６３４の一部のみをカバーするように示されるけれども、いくつかの例において、格子線６０２は、正投影面６３４全体をカバーするすることができることに留意する必要がある。
【００４６】
正射投影面６３４は、三次元オブジェクト４３２を変換、平行移動、回転、拡大縮小、または他の方法で操作するマニピュレータウィジェット６０４Ａ、６０４Ｂをさらに含む。第１のマニュピュレータウィジェット６０４Ａは、３次元オブジェクト４３２の配向を調節するように相互作用することができる。第２のマニュピュレータウィジェット６０４Ｂは、３次元オブジェクト４３２のスケールを調節するように相互作用することができる。第３のマニュピュレータウィジェット６０４Ｃは、座標軸に沿って３次元オブジェクト４３２をスライドするように相互作用することができる。さらに、正投影６３６自体は、ドラッグアンドドロップを介して、正投影面６３４上の正投影を位置決めするように相互作用することができる。
【００４７】
正投影面６３４は、不透明、透明、または半透明のいずれかとしてレンダリングすることができる。さらに、補助視覚インジケータ６０２Ａ、６０２Ｂおよびマニピュレータウィジェット６０４Ａ、６０４Ｂのいずれかは、不透明、透明または半透明としてレンダリングすることができる。正投影面６３４を透明または半透明にレンダリングすることは、ユーザが、正投影面６３４の正投影空間内に無いシーン内の他のオブジェクトを見ることを可能にする。代替的に、正投影面６３４を不透明にレンダリングすることは、ユーザが正投影面６３４の正投影空間内で操作されるオブジェクトにフォーカス可能にする。
【００４８】
図７は、３次元オブジェクト４３２が正投影面７３４に投影されるシーン７３１を示す。正投影空間は明瞭さのために省略する。正投影面７３４は、３次元オブジェクト４３２とは異なる視覚スタイルである、３次元オブジェクト４３２の正投影７３６を表示する。従って、３次元オブジェクト４３２は、第１の視覚スタイルでレンダリングすることができ、正投影７３６は、第１の視覚スタイルとは異なる第２の視覚スタイルでレンダリングすることができる。
【００４９】
例えば、三次元オブジェクト４３２は立体的（solid）にレンダリングされ、正投影図７３６は、三次元オブジェクトのワイヤフレームとしてレンダリングすることができる。他の例として、３次元オブジェクト４３２は、フルカラーでレンダリングすることができ、同様に、正投影７３６は、グレイスケールでレンダリングすることができる。３次元オブジェクト４３２とは異なる視覚スタイルである正投影図７３６は、正投影図７３６が参照または編集ツールであるという直感的な視覚的合図（cue）をユーザに提供することができる。さらに、正投影７３６の異なる視覚スタイルは、編集目的に関連する３次元オブジェクト４３２の特定の物理特性を強調することができる。たとえば、オブジェクトのフルカラー正投影を使用する場合よりも、オブジェクトのワイヤフレーム正投影（wireframe orthographic projection）を使用する場合、オブジェクトを正確に位置合わせすることが容易であり得る。
【００５０】
図８は、３次元オブジェクト４３２が第１の正投影８３６Ａとして第１の正投影面８３４Ａに投影され、第２の正投影８３６Ｂとして第２の正投影面８３４Ｂに投影されるシーン８３１を示す。第１の投影８３６Ａと第２の投影８３６Ｂは、両方とも３次元オブジェクト４３２に同期化される。従って、３次元オブジェクト４３２が操作されると、第１の正投影８３６Ａと第２の正投影８３６Ｂは、同時に更新される。
【００５１】
各正投影面８３４Ａ、８３４Ｂは、明瞭さのために省略された固有の正投影空間を有する。
正投影空間は、完全にオーバラップするか、部分的にオーバラップするか、あるいはオーバラップしないようにすることができる。この例において、正投影空間は、少なくとも部分的にオーバラップするので、３次元オブジェクト４３２は、第１の投影面８３４Ａと第２の投影面８３４Ｂの両方に投影される。
【００５２】
第１の投影面８３４Ａは、第２の投影面８３４Ｂに垂直であり得る。代替的に、第１の投影面８３４Ａは、第２の投影面８３４Ｂに垂直であり得る。さらに、投影面８３４Ａ、８３４Ｂは、シーン８３１の座標軸と位置合わせすることができる。例えば、第１の投影面８３４Ａは、Ｘ座標軸に垂直であり得、第２の正投影面８３４Ｂは、Ｙ座標軸に垂直であり得る。代替的に、１つまたは複数の正投影面８３４Ａ、８３４Ｂは、シーン８３１の座標軸のいずれにも位置合わせしなくてもよい。
【００５３】
図９は、３次元オブジェクト９３２の正投影９３６が投影される正投影面９３４（すなわち、正投影面９３４Ａ、９３４Ｂ、９３４Ｃ）の境界ボックス９３３と複数の３次元オブジェクト９３２を含むシーン９３１を示す編集ビューポート４３０を示す。
【００５４】
シーン９３１は、少なくとも、第１の正投影面９３４Ａ、第２の正投影面９３４Ｂ、第３の正投影面９３４Ｃを含み、各々は、互いに垂直であり、交差して境界ボックス９３３の角部を形成する。編集ビューポート４３０は、境界ボックス９３３の内壁のみを表示することができ、従って、境界ボックス９３３は、さらなる正投影面９３４を含み図示する斜視図から見えない完全なボックスを形成することができる。従って、第１の正投影面９３４Ａ、第２の正投影面９３４Ｂ、および第３の正投影面９３４Ｃは、境界ボックス９３３の３つの内壁である。
【００５５】
いくつかの例において、境界ボックス９３３はシーン９３１を区切る。他の例において、シーン９３１の部分は、境界ボックス９３３の外部に位置することができる。そのような例では、シーン９３１の部分は、正投影投影面９３４が不透明である視界から不明瞭になる場合があり、または正投影面９３４が透明または半透明である場合に見える場合がある。
【００５６】
内壁の各々に異なる正投影を与えることは、任意の方向から見たとき、ユーザに、シーン９３１内の３次元オブジェクト９３２の複数の正投影参照を与える。３次元オブジェクト９３２の複数の正投影参照は、シーン内の１つの３次元オブジェクト９３２が１つまたは複数のビュー内の他の３次元オブジェクト９３２を不明瞭にするとき、特に有効であり得る。例えば、３次元オブジェクト９３２−２は、第２の正投影面９３４Ｂに対して３次元オブジェクト９３２−１のビューを不明瞭にし、従って、第２の正投影面９３４Ｂで見える唯一の正投影は、正投影９３６Ｂ−２である。しかしながら、３次元オブジェクト９３２−２と９３２−１は両方ともそれぞれ、正投影９３６Ａ−２および９３６Ａ−１として第１の正投影面９３４Ａ上に見ることができる。したがって、ユーザは、シーン９３１内の視覚障害物を容易に見つけ、そのような視覚障害物に邪魔されずにシーン９３１を操作することができる。例えば、３次元オブジェクト９３２−１の正投影は、第２の正投影面９３４Ｂ上に存在せず、あるいは、存在するが、正投影９３６Ｂ−２とオーバラップするすることができるので、ユーザは、正投影９３６Ａ−１と相互作用することにより、３次元オブジェクト９３２−１を操作することができる。
【００５７】
図１０は、境界ボックスの内壁上の編集ビューポートを介して見えるシーン内のオブジェクトの正投影を生成するための例示方法１０００のフローチャートである。方法１０００は、非一時的機械可読記憶媒体に具現化することができる。方法１０００は、図２のコンピューティングデバイス２００、または図４のコンピューティングデバイス４００のような、ここに記載した任意のコンピューティングデバイスを用いて実行することができる。方法３００は、他の命令および／またはデバイスを用いて実行することができる。
【００５８】
ブロック１００２において、シーンは、編集ビューポートを介して見えるようにレンダリングされる。シーンは、３次元オブジェクトを含む。ブロック１００４において、境界ボックスが生成される。境界ボックスは、編集ビューポートを介して見える内壁を有する。各内壁は、正投影面である。境界ボックスは、複数のそのような正投影面を含み３次元オブジェクトを仕切る。ブロック１００６において、３次元オブジェクトの正投影がレンダリングされる。正投影は、編集ビューポートを介して見ることができる。正投影は、正投影面上にレンダリングすることができる。ブロック１００８において、３次元オブジェクトの操作の入力が受信される。ブロック１０１０において、入力を反映するための正投影に対する更新が行われる。従って、言い換えれば、正投影は、３次元オブジェクトに同期している。正投影は、スケール、位置、および配向において３次元オブジェクトと同期することができる。
【００５９】
方法１０００のブロックは、シーンレンダリング命令１０２、正投影レンダリング命令１０４、オブジェクト操作入力受信命令１０６、および正投影更新命令を含む、図１の記憶媒体１００に記憶される命令に類似する。従って、方法１０００のブロックのさらなる記述に関して、図１の記憶媒体１００の命令を参照することができる。例えば、３次元オブジェクトの操作は、シーン内の３次元オブジェクトとの相互作用、オブジェクトの正投影、または図１を参照して述べた操作ウィジェットとして受信することができる。
【００６０】
従って、シーンエディタは、シーンの斜視図または他のビューに直接介挿される投影面上のシーン内のオブジェクトの正投影を表示する編集ビューポートを有するユーザインタフェースを含むシーンエディタを提供することができ、それにより、斜視図、またはその他のビュー内に直接埋め込まれたオブジェクトの正投影図を参照するという利点を提供する。ユーザは、３次元オブジェクトの正確な操作を行うための正投影面により提供される正投影空間内の正投影を操作することができる。正投影は、境界ボックスの内壁のような、複数の正投影面に提供されることができ、異なる視点からシーン内の３次元オブジェクトの正投影参照の利点を有する。そのようなシーンエディタは、より直観的に使用することができ、ユーザインタフェースにおける空間をより効率的に使用することができ、処理パワーとメモリを、より効率的に使用することができる。
【００６１】
上述した種々の例との特徴と態様は、この開示の範囲内にある、さらなる例に組み込むことができることに留意する必要がある。特許請求の範囲は、上述した例に限定されず、全体の記述に一致する最も広い解釈が与えられるべきである。
【図１】
2020166852.tif 000003
【図２】
2020166852.tif 000004
【図３】
2020166852.tif 000005
【図４】
2020166852.tif 000006
【図５】
2020166852.tif 000007
【図６】
2020166852.tif 000008
【図７】
2020166852.tif 000009
【図８】
2020166852.tif 000010
【図９】
2020166852.tif 000011
【図１０】
2020166852.tif 000012
【外国語明細書】
2020166852000001.pdf