(57)【要約】【課題】デスクトップ全体を表現領域とし、３Ｄオブジェクトがデスクトップ上を移動しているような状態を表現するのに適切な表現方法及びそれを具現化したプログラムを提供すること。【解決手段】３Ｄオブジェクトを内包し得る箱であるバウンディングボックスを規定して、そのバウンディングボックスを用いて、デスクトップ上におけるウィンドウの位置及びサイズを決定し、デスクトップ上のうちのウィンドウに対応する領域のみをレンダリングすることにより、デスクトップ全体をレンダリングした場合と比較して、負荷を抑えつつ、適切なレンダリング結果を得ることができる。【選択図】図２
2010026567.tif 000002
【特許請求の範囲】
【請求項１】
３Ｄ空間に存在する３Ｄオブジェクトを一つのカメラから見た場合のシーンをデスクトップ上に表現する表現方法であって、
前記３Ｄオブジェクトを内包し得る箱であるバウンディングボックスを規定する第１ステップと、
前記カメラによる撮像画面上における前記バウンディングボックスの位置に基づいて前記３Ｄオブジェクトの前記デスクトップ上における位置を決める第２ステップと、
前記撮像画面上において前記バウンディングボックスを内包する矩形領域を特定する第３ステップと、
当該矩形領域に基づいて前記デスクトップ上における前記３Ｄオブジェクトの表示用のウィンドウのサイズを決定する第４ステップと、
前記ウィンドウの縦サイズ又は横サイズと前記デスクトップの縦サイズ又は横サイズとの比を求める第５ステップと、
前記３Ｄオブジェクトと前記カメラと間の直線上における位置であって前記３Ｄオブジェクトと前記カメラとの距離を前記比に応じて縮めた距離だけ前記３Ｄオブジェクトから離れた位置にレンダリング用カメラがあるものとし、当該レンダリング用カメラから見た場合における前記３Ｄオブジェクトのレンダリングを行って、前記ウィンドウ用のテクスチャを得る第６ステップと、
当該テクスチャに基づいて前記ウィンドウ内における前記３Ｄオブジェクト以外の領域を透過させつつ前記３Ｄオブジェクトを前記ウィンドウ内に表示する第７ステップと
を含む表現方法。
【請求項２】
請求項１記載の表現方法であって、前記３Ｄオブジェクトが複数ある場合における表現方法において、
複数の前記３Ｄオブジェクトのそれぞれに対して前記第１乃至第７ステップを実行すると共に、前記カメラから前記バウンディングボックスの中心までの位置に応じて前記３Ｄオブジェクトのそれぞれに対応する前記ウィンドウの前後関係の決定を行う第８ステップ
を更に備える表現方法。
【請求項３】
請求項２記載の表現方法であって、
前記３Ｄ空間は、直交座標系を用いて規定されており、
前記バウンディングボックスは、各辺が前記直交座標系のいずれかの座標軸と平行となるように構成された直方体であり、且つ、最も離れている２つの頂点の前記直交座標系における座標値により示されるものであり、
前記第８ステップは、前記３Ｄオブジェクトのそれぞれに対応する前記バウンディングボックスについて、当該バウンディングボックスの前記２つの頂点の前記座標値の座標の総和を求めて該総和を２で割ることにより前記バウンディングボックスの中心を特定する
表現方法。
【請求項４】
請求項１乃至請求項３のいずれかに記載の表現方法であって、
前記第１ステップは、
前記３Ｄオブジェクトを内包し得る第１箱を特定するステップと、
前記第１箱を内包し得る球を特定するステップと、
前記球を内包し得る第２箱を特定し、当該第２箱を前記バウンディングボックスとして規定するステップと
を備えている、表現方法。
【請求項５】
プロセッサ、一時的な記憶領域としても動作する記憶部、及び表示部を備えたコンピュータにおいて前記プロセッサに対して所定の処理を実行させ、３Ｄ空間に存在する３Ｄオブジェクトを一つのカメラから見た場合のシーンを前記表示部のデスクトップ上に表現させるためのコンピュータプログラムであって、
前記所定の処理は、
前記３Ｄオブジェクトを内包し得る箱であるバウンディングボックスを規定する第１ステップと、
前記カメラによる撮像画面上における前記バウンディングボックスの位置に基づいて前記３Ｄオブジェクトの前記デスクトップ上における位置を決める第２ステップと、
前記撮像画面上において前記バウンディングボックスを内包する矩形領域を特定する第３ステップと、
当該矩形領域に基づいて前記デスクトップ上における前記３Ｄオブジェクトの表示用のウィンドウのサイズを決定する第４ステップと、
前記ウィンドウの縦サイズ又は横サイズと前記デスクトップの縦サイズ又は横サイズとの比を求める第５ステップと、
前記３Ｄオブジェクトと前記カメラと間の直線上における位置であって前記３Ｄオブジェクトと前記カメラとの距離を前記比に応じて縮めた距離だけ前記３Ｄオブジェクトから離れた位置にレンダリング用カメラがあるものとし、当該レンダリング用カメラから見た場合における前記３Ｄオブジェクトのレンダリングを行って、前記ウィンドウ用のテクスチャを得る第６ステップと、
当該テクスチャに基づいて前記ウィンドウ内における前記３Ｄオブジェクト以外の領域を透過させつつ前記３Ｄオブジェクトを前記ウィンドウ内に表示する第７ステップと
を含む、コンピュータプログラム。
【請求項６】
請求項５記載のコンピュータプログラムであって、前記３Ｄオブジェクトが複数ある場合におけるコンピュータプログラムにおいて、
前記所定の処理は、
複数の前記３Ｄオブジェクトのそれぞれに対して前記第１乃至第７ステップを実行すると共に、前記カメラから前記バウンディングボックスの中心までの位置に応じて前記３Ｄオブジェクトのそれぞれに対応する前記ウィンドウの前後関係の決定を行う第８ステップ
を更に備える、コンピュータプログラム。
【請求項７】
請求項６記載のコンピュータプログラムであって、
前記３Ｄ空間は、直交座標系を用いて規定されており、
前記バウンディングボックスは、各辺が前記直交座標系のいずれかの座標軸と平行となるように構成された直方体であり、且つ、最も離れている２つの頂点の前記直交座標系における座標値により示されるものであり、
前記第８ステップは、前記３Ｄオブジェクトのそれぞれに対応する前記バウンディングボックスについて、当該バウンディングボックスの前記２つの頂点の前記座標値の座標の総和を求めて該総和を２で割ることにより前記バウンディングボックスの中心を特定する
コンピュータプログラム。
【請求項８】
請求項５乃至請求項７のいずれかに記載のコンピュータプログラムであって、
前記第１ステップは、
前記３Ｄオブジェクトを内包し得る第１箱を特定するステップと、
前記第１箱を内包し得る球を特定するステップと、
前記球を内包し得る第２箱を特定し、当該第２箱を前記バウンディングボックスとして規定するステップと
を備えている、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想３Ｄ空間に存在する３Ｄオブジェクトを一つのカメラから見た場合のシーンをデスクトップ上に表現する表現方法及びそれを具現化したコンピュータプログラムに関する。
【背景技術】
【０００２】
３Ｄ空間に存在する３Ｄオブジェクトを一つのカメラから見た場合のシーンとして表現する方法やそのシーンに対応する画像を生成する方法としては、例えば、特許文献１又は特許文献２に開示されているものがある。
【０００３】
【特許文献１】特開２００１−１５５１８４号公報
【特許文献２】特開２００８−１１７１１３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
デスクトップ全体を表現領域として、３Ｄオブジェクトがデスクトップ上を移動するような状態を表現してみたいという要望がある。
【０００５】
しかしながら、特許文献１及び特許文献２のいずれに開示された技術もゲーム等を主たる対象とするものであり、従って表現領域もゲーム用のウィンドウに限られていることから、特許文献１及び特許文献２に開示された技術を上記要望に適用することは適切でない場合が多い。例えば、デスクトップ全体を表現領域とするからといって、デスクトップ全体を一つのウィンドウとしてレンダリングするとレンダリングの負荷がかかりすぎるという問題がある。
【０００６】
そこで、本発明は、デスクトップ全体を表現領域とし、３Ｄオブジェクトがデスクトップ上を移動しているような状態を表現するのに適切な表現方法及びそれを具現化したプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明によれば、第１の表現方法として、
３Ｄ空間に存在する３Ｄオブジェクトを一つのカメラから見た場合のシーンをデスクトップ上に表現する表現方法であって、
前記３Ｄオブジェクトを内包し得る箱であるバウンディングボックスを規定する第１ステップと、
前記カメラによる撮像画面上における前記バウンディングボックスの位置に基づいて前記３Ｄオブジェクトの前記デスクトップ上における位置を決める第２ステップと、
前記撮像画面上において前記バウンディングボックスを内包する矩形領域を特定する第３ステップと、
当該矩形領域に基づいて前記デスクトップ上における前記３Ｄオブジェクトの表示用のウィンドウのサイズを決定する第４ステップと、
前記ウィンドウの縦サイズ又は横サイズと前記デスクトップの縦サイズ又は横サイズとの比を求める第５ステップと、
前記３Ｄオブジェクトと前記カメラと間の直線上における位置であって前記３Ｄオブジェクトと前記カメラとの距離を前記比に応じて縮めた距離だけ前記３Ｄオブジェクトから離れた位置にレンダリング用カメラがあるものとし、当該レンダリング用カメラから見た場合における前記３Ｄオブジェクトのレンダリングを行って、前記ウィンドウ用のテクスチャを得る第６ステップと、
当該テクスチャに基づいて前記ウィンドウ内における前記３Ｄオブジェクト以外の領域を透過させつつ前記３Ｄオブジェクトを前記ウィンドウ内に表示する第７ステップと
を含む表現方法が得られる。
【０００８】
また、本発明によれば、第２の表現方法として、第１の表現方法であって、前記３Ｄオブジェクトが複数ある場合における表現方法において、
複数の前記３Ｄオブジェクトのそれぞれに対して前記第１乃至第７ステップを実行すると共に、前記カメラから前記バウンディングボックスの中心までの位置に応じて前記３Ｄオブジェクトのそれぞれに対応する前記ウィンドウの前後関係の決定を行う第８ステップ
を更に備える表現方法が得られる。
【０００９】
また、本発明によれば、第３の表現方法として、第２の表現方法であって、
前記３Ｄ空間は、直交座標系を用いて規定されており、
前記バウンディングボックスは、各辺が前記直交座標系のいずれかの座標軸と平行となるように構成された直方体であり、且つ、最も離れている２つの頂点の前記直交座標系における座標値により示されるものであり、
前記第８ステップは、前記３Ｄオブジェクトのそれぞれに対応する前記バウンディングボックスについて、当該バウンディングボックスの前記２つの頂点の前記座標値の座標の総和を求めて該総和を２で割ることにより前記バウンディングボックスの中心を特定する
表現方法が得られる。
【００１０】
更に、本発明によれば、第４の表現方法として、第１乃至第３の表現方法のいずれかであって、
前記第１ステップは、
前記３Ｄオブジェクトを内包し得る第１箱を特定するステップと、
前記第１箱を内包し得る球を特定するステップと、
前記球を内包し得る第２箱を特定し、当該第２箱を前記バウンディングボックスとして規定するステップと
を備えている、表現方法が得られる。
【００１１】
また、本発明によれば、第１のコンピュータプログラムとして、
プロセッサ、一時的な記憶領域としても動作する記憶部、及び表示部を備えたコンピュータにおいて前記プロセッサに対して所定の処理を実行させ、３Ｄ空間に存在する３Ｄオブジェクトを一つのカメラから見た場合のシーンを前記表示部のデスクトップ上に表現させるためのコンピュータプログラムであって、
前記所定の処理は、
前記３Ｄオブジェクトを内包し得る箱であるバウンディングボックスを規定する第１ステップと、
前記カメラによる撮像画面上における前記バウンディングボックスの位置に基づいて前記３Ｄオブジェクトの前記デスクトップ上における位置を決める第２ステップと、
前記撮像画面上において前記バウンディングボックスを内包する矩形領域を特定する第３ステップと、
当該矩形領域に基づいて前記デスクトップ上における前記３Ｄオブジェクトの表示用のウィンドウのサイズを決定する第４ステップと、
前記ウィンドウの縦サイズ又は横サイズと前記デスクトップの縦サイズ又は横サイズとの比を求める第５ステップと、
前記３Ｄオブジェクトと前記カメラと間の直線上における位置であって前記３Ｄオブジェクトと前記カメラとの距離を前記比に応じて縮めた距離だけ前記３Ｄオブジェクトから離れた位置にレンダリング用カメラがあるものとし、当該レンダリング用カメラから見た場合における前記３Ｄオブジェクトのレンダリングを行って、前記ウィンドウ用のテクスチャを得る第６ステップと、
当該テクスチャに基づいて前記ウィンドウ内における前記３Ｄオブジェクト以外の領域を透過させつつ前記３Ｄオブジェクトを前記ウィンドウ内に表示する第７ステップと
を含む、コンピュータプログラムが得られる。
【００１２】
また、本発明によれば、第２のコンピュータプログラムとして、第１のコンピュータプログラムであって、前記３Ｄオブジェクトが複数ある場合におけるコンピュータプログラムにおいて、
前記所定の処理は、
複数の前記３Ｄオブジェクトのそれぞれに対して前記第１乃至第７ステップを実行すると共に、前記カメラから前記バウンディングボックスの中心までの位置に応じて前記３Ｄオブジェクトのそれぞれに対応する前記ウィンドウの前後関係の決定を行う第８ステップ
を更に備える、コンピュータプログラムが得られる。
【００１３】
また、本発明によれば、第３のコンピュータプログラムとして、第２のコンピュータプログラムであって、
前記３Ｄ空間は、直交座標系を用いて規定されており、
前記バウンディングボックスは、各辺が前記直交座標系のいずれかの座標軸と平行となるように構成された直方体であり、且つ、最も離れている２つの頂点の前記直交座標系における座標値により示されるものであり、
前記第８ステップは、前記３Ｄオブジェクトのそれぞれに対応する前記バウンディングボックスについて、当該バウンディングボックスの前記２つの頂点の前記座標値の座標の総和を求めて該総和を２で割ることにより前記バウンディングボックスの中心を特定する
コンピュータプログラムが得られる。
【００１４】
更に、本発明によれば、第４のコンピュータプログラムとして、第１乃至第３のコンピュータプログラムのいずれかであって
前記第１ステップは、
前記３Ｄオブジェクトを内包し得る第１箱を特定するステップと、
前記第１箱を内包し得る球を特定するステップと、
前記球を内包し得る第２箱を特定し、当該第２箱を前記バウンディングボックスとして規定するステップと
を備えている、コンピュータプログラムが得られる。
【発明の効果】
【００１５】
本発明によれば、３Ｄオブジェクトを内包し得る箱であるバウンディングボックスを規定し、そのバウンディングボックスを利用して、３Ｄオブジェクトを表現するのに必要とされるウィンドウのサイズとデスクトップ上における位置とを決定し、ウィンドウに対応するシーンのみをレンダリングすることにより、デスクトップ全体を一つのウィンドウとしてレンダリングした場合と比較して、負荷を低減させることができる。
【００１６】
また、本発明によれば、各ウィンドウのテクスチャを得た後、３Ｄオブジェクト以外の領域を透過させる処理を行うこととしているため、３Ｄオブジェクトがデスクトップ上を移動する状態をより自然なものとして表現することができる。
【発明を実施するための最良の形態】
【００１７】
本発明の実施の形態による３Ｄオブジェクトの表現方法は、図１に示されるような一般的なコンピュータシステム１０上において、実現される。詳しくは、コンピュータシステム１０は、図１に示されるように、互いにバス接続されたＣＰＵ１１、主記憶１２、補助記憶１３及び出力部１４、並びに出力部１４に接続された表示部１５を備えている。このうち主記憶１２は例えばＤＲＡＭなどで構成されている。補助記憶１３は例えばＨＤＤなどで構成されている。表示部１５はディスプレイ等で構成されている。
【００１８】
補助記憶１３には本発明の実施の形態によるプログラムが格納されている。本実施の形態によるプログラムは主記憶１２上に展開されＣＰＵ１１によって実行される。また、主記憶１２上にはＣＰＵ１１がプログラムに従って動作している間に生成したデータやＣＰＵ１１によって利用されるデータも一時的に格納される。
【００１９】
表示部１５には、ＣＰＵ１１で所定の演算又は処理が行われた結果により、例えば画像等が出力部１４を介して表示される。
【００２０】
本発明の実施の形態によるプログラムがＣＰＵ１１に実行されると、図３に示されるような３Ｄ空間に存在する３Ｄオブジェクト２００，３００を一つのカメラ１００から見た場合のシーンを表示部１５のデスクトップ上に表現するために必要とされる処理がおこなわれる。具体的には、図２に示されるような処理となる。処理について概説すると、図３に示されるように、３Ｄ空間内に存在している３Ｄオブジェクト２００，３００のそれぞれに対して、その３Ｄオブジェクト２００，３００を内包し得る箱（以下、「バウンディングボックス」という）２１０，３１０を規定し、それらのバウンディングボックスを利用して、各３Ｄオブジェクト２００，３００用のウィンドウのサイズと位置を特定し、必要なところだけレンダリングすることとしている。ウィンドウのサイズ及び位置の特定に関する処理は、３Ｄオブジェクト毎に行われる。以下、図２に示される各処理について説明するが、当該説明中においては、まず、３Ｄオブジェクト２００について処理が行われた後、３Ｄオブジェクト３００について処理が行われることとする。
【００２１】
まず、図３に示されるように、３Ｄオブジェクト２００に対して、その３Ｄオブジェクト２００を内包し得るバウンディングボックス２１０を規定する（図２：ステップＳ１０１）。ここで、本実施の形態における３Ｄ空間は、直交座標系を用いて規定されており、図示された例においては、その原点は３Ｄオブジェクト２００と３Ｄオブジェクト３００の間に位置している。また、本実施の形態におけるバウンディングボックス２１０は、各辺が前記直交座標系のいずれかの座標軸と平行となるように構成された直方体である。この点、後述する３Ｄオブジェクト３００に対するバウンディングボックス３１０の場合も同様である。なお、かかる直方体は、最も離れている２つの頂点の座標値のみによって特定することができる。
【００２２】
上述したバウンディングボックス２１０は、対応する３Ｄオブジェクト２００を内包するものであれば十分であるが、本実施の形態におけるバウンディングボックス２１０は、仮に３Ｄオブジェクト２００が各オブジェクトの中心軸の周りに回転したとしても、３Ｄオブジェクト２００がバウンディングボックス２１０の外にはみ出してしまわないように、設定されている。かかるバウンディングボックス２１０の規定方法について、図４（ａ）〜図４（ｃ）を参照して、詳細に説明する。まず、図４（ａ）に示されるように、３Ｄオブジェクト２００を内包し得る第１箱２１２を特定する。ここで、この第１箱２１２のサイズは、３Ｄオブジェクト２００を内包し得る最小のものであることが好ましい。第１箱２１２を規定した後、図４（ｂ）に示されるように、その第１箱２１２を内包し得る球２１４を特定する。このようにして特定された球２１４は第１箱２１２をすっぽりと包むものであるので、第１箱２１２がその中心軸を中心として回転したとしても、第１箱２１２が球２１４の外に出ることはない。次いで、図４（ｃ）に示されるように、球２１４を内包し得る第２箱を特定し、その第２箱をバウンディングボックス２１０として規定する。このようにしてバウンディングボックス２１０を規定すると、第１箱２１２がその中心軸を中心として回転するように３Ｄオブジェクト２００が動いたとしても、第１箱２１２よりも小さい３Ｄオブジェクト２００が、球２１４よりも大きいバウンディングボックス２１０の外にはみ出ることはない。
【００２３】
バウンディングボックス２１０の規定の後、図３に示されるカメラ１００から撮像した場合の画面（以下、「撮像画面」という。３Ｄ空間をカメラ１００に投影した場合の投影画面と実質的に同じ）４００（図５や図７も併せて参照）上におけるバウンディングボックス２１０の位置に基づいて、３Ｄオブジェクト２００のデスクトップ上における位置を決める（図２：ステップＳ１０２）。このことから理解されるように、本実施の形態においては、撮像画面４００とデスクトップの領域とを対応させている。
【００２４】
３Ｄオブジェクト２００のデスクトップ上における位置を特定した後、３Ｄオブジェクト２００に対応するウィンドウのサイズを決定する（図２：ステップＳ１０３）。本実施の形態においては、図５に示されるように、撮像画面４００上においてバウンディングボックス２１０を内包する矩形領域２２０を特定する。本実施の形態においては、この矩形領域２２０を、デスクトップ（撮像画面４００）上における３Ｄオブジェクト２００の表示用のウィンドウの領域として割り当てることとしている。但し、ウィンドウの領域は、矩形領域２２０に基づいて決定されたものであれば、矩形領域２２０と一致していなくてもよい。例えば、矩形領域２２０の周囲に少しずつマージンを付加して、それをウィンドウの領域としてもよい。ここで、本実施の形態においては、上述したように、３Ｄオブジェクト２００のデスクトップ上における位置、即ち３Ｄオブジェクト２００用の個別ウィンドウの位置を特定した後に（図２：ステップＳ１０２）、同個別ウィンドウのサイズを決定することとしているが（図２：ステップＳ１０３）、ステップＳ１０２とステップＳ１０３との処理の順番を入れ替えて、個別ウィンドウのサイズを決定したのちにその個別ウィンドウのデスクトップ上における位置を特定することとしてもよい。
【００２５】
このようにして、ウィンドウのサイズを決定した後、ウィンドウ用のテクスチャの生成を行う（図２：ステップＳ１０４）。より具体的には、まず、ウィンドウ（矩形領域２２０）の縦サイズ又は横サイズとデスクトップ（撮像画面４００）の縦サイズ又は横サイズとの比を求める。本実施の形態においては、図５に示されるように、ウィンドウ（矩形領域２２０）の横サイズとデスクトップ（撮像画面４００）の横サイズとの比（ｙ：ｘ）を求めている。次いで、３Ｄオブジェクト２００とカメラ１００と間の直線上における位置であって３Ｄオブジェクト２００とカメラ１００との距離ａを比（ｙ：ｘ）に応じて縮めた距離ｂだけ３Ｄオブジェクト２００から離れた位置にレンダリング用カメラ１５０があるものとし、レンダリング用カメラ１５０から見た場合における３Ｄオブジェクト２００のレンダリングを行って、ウィンドウ用のテクスチャを得る。これにより、ウィンドウに対応する部分のみレンダリングを行えばよいこととなるので、デスクトップ全体を一つのウィンドウとしてレンダリングする場合と比較して、負荷の低減を図ることができる。
【００２６】
ウィンドウ（矩形領域２２０）用のテクスチャを得た後、そのテクスチャに基づいて、ウィンドウ（矩形領域２２０）内における３Ｄオブジェクト２００以外の領域を透過させる処理（透過処理）を行う（図２：ステップＳ１０５）。より具体的には、テクスチャのうち３Ｄオブジェクト２００が描かれなかったピクセルのα値を０としたビットマップを作成し、そのビットマップをウィンドウ（矩形領域２２０）のマスクとして使用することで、ウィンドウ（矩形領域２２０）内における３Ｄオブジェクト２００以外の領域を透過させることとする。このようにして、３Ｄオブジェクト２００をウィンドウ（矩形領域２２０）内に表示する一方で、ウィンドウ（矩形領域２２０）内における３Ｄオブジェクト２００以外の領域を透過させることができる。
【００２７】
次いで、上述したような処理（図２：ステップＳ１０１〜ステップＳ１０５）をデスクトップ上に投影されるすべての３Ｄオブジェクト２００に対して行ったか否か判断する（図２：ステップＳ１０６）。本実施の形態の場合、まだ３Ｄオブジェクト３００に対する処理を行っていないので、３Ｄオブジェクト３００に対して上述したステップＳ１０１〜ステップＳ１０５の処理を行って、バウンディングボックス３１０を特定すると共に、そのバウンディングボックス３１０を利用して、３Ｄオブジェクト３００用のウィンドウのサイズと位置とを決定し、適切なレンダリング処理などを行う。
【００２８】
図２のステップＳ１０６において、すべての３Ｄオブジェクト２００，３００に対してウィンドウの位置及びサイズの決定を行ったと判断した場合、複数のウィンドウがデスクトップ上に配置されることになる。ここで、図７に示されるように、各ウィンドウが重なっていない場合には何ら問題はないが、図８に示されるように、複数のウィンドウが互いに重なってしまうような場合には、前後関係の調整を適切に行わなければならない。そこで、よりカメラ１００に近いウィンドウをより前面に配置するように、ウィンドウのソートを行う（図２：ステップＳ１０７）。
【００２９】
より具体的には、本実施の形態においては、ウィンドウのソートとして、Ｚソートを行っている。詳しくは、バウンディングボックス２１０，３１０は、前述したように、各辺が直交座標系のいずれかの座標軸と平行となるように構成された直方体（本実施の形態においては立方体）であるので、最も離れている２つの頂点（対角にある頂点）の直交座標系における座標値を足して２で割れば、バウンディングボックス２１０，３１０の中心位置を得ることができる。このようにして、バウンディングボックス２１０，３１０の中心位置を特定した後、その中心位置に基づいて、対応するウィンドウのＺソートを行う。なお、上述したように、本実施の形態においてはＺソートを行っているが、本発明はこれに限定されるものではなく、他のソート法を用いてもよい。
【００３０】
このようにして、ウィンドウの前後関係についてソートを行って調整した後、それらをデスクトップ上に表示する（図２：ステップＳ１０８）。このようにすると、デスクトップを３Ｄ空間として、そこで３Ｄオブジェクトが動く様子を表現することができる。
【図面の簡単な説明】
【００３１】
【図１】本発明の実施の形態による３Ｄオブジェクトの表現方法が実行されるコンピュータシステムを概略的に示すブロック図である。
【図２】本発明の実施の形態による３Ｄオブジェクトの表現方法を実現するためのプログラムのフローチャートである。
【図３】カメラから３Ｄオブジェクトを見た場合のシーンを概略的に示す図である。
【図４】バウンディングボックスの規定の仕方を説明するために用いる図である。
【図５】ウィンドウサイズの決定の仕方を説明するために用いる図である。
【図６】適切なレンダリング結果を得る方法を説明するために用いる図である。
【図７】複数の３Ｄオブジェクトがデスクトップ上に同時に描かれる一形態を示す図である。
【図８】複数の３Ｄオブジェクトがデスクトップ上に同時に描かれる他の形態を示す図である。
【符号の説明】
【００３２】
１０        コンピュータシステム
１１        ＣＰＵ
１２        主記憶
１３        補助記憶
１４        出力部
１５        表示部
１００        カメラ
１５０        レンダリング用カメラ
２００        ３Ｄオブジェクト
２１２        第１箱
２１４        球
２１０        バウンディングボックス
２２０        矩形領域（ウィンドウ）
３００        ３Ｄオブジェクト
３１０        バウンディングボックス
４００        撮像画面（デスクトップ）
【図１】
2010026567.tif 000003
【図２】
2010026567.tif 000004
【図３】
2010026567.tif 000005
【図４】
2010026567.tif 000006
【図５】
2010026567.tif 000007
【図６】
2010026567.tif 000008
【図７】
2010026567.tif 000009
【図８】
2010026567.tif 000010