(57)【要約】 【課題】  三次元グラフィックス表示において、オブジェクトが画面に占める面積が大きくなった場合であっても、仮想三次元空間をわかりやすく観察者に提示するのに好適な表示装置等を提供する。【解決手段】  表示装置２０１の投射部２０２は、仮想三次元空間内に配置されるオブジェクトのうち、透明化処理を行うオブジェクト（以下「透明化オブジェクト」という。）のそれぞれの外観を第１の投射面に投射し、取得部２０３は、当該第１の投射面に対して当該透明化オブジェクトのそれぞれの外観が投射される面積を取得し、表示部２０４は、当該仮想空間内に配置されるオブジェクトのうち、透明化処理を行わないオブジェクトの外観を第２の投射面に投射し、当該透明化オブジェクトのそれぞれについて、前記取得された面積にあらかじめ対応付けられた透明度で、透明化オブジェクトの外観を当該第２の投射面に投射して生成される画像を表示する。【選択図】  図２
2005322108.tif 000002
【特許請求の範囲】
【請求項１】
仮想三次元空間内に配置されるオブジェクトのうち、透明化処理を行うオブジェクト（以下「透明化オブジェクト」という。）のそれぞれの外観を第１の投射面に投射する投射部、
当該第１の投射面に対して当該透明化オブジェクトのそれぞれの外観が投射される面積を取得する取得部、
当該仮想空間内に配置されるオブジェクトのうち、透明化処理を行わないオブジェクト（以下「不透明オブジェクト」という。）の外観を第２の投射面に投射し、当該透明化オブジェクトのそれぞれについて、前記取得された面積にあらかじめ対応付けられた透明度で、透明化オブジェクトの外観を当該第２の投射面に投射して生成される画像を表示する表示部
を備えることを特徴とする表示装置。
【請求項２】
請求項１に記載の表示装置であって、
前記表示部において、前記取得された面積が大きくなると透明度が高くなるように、当該面積に当該透明度があらかじめ対応付けられる
ことを特徴とする表示装置。
【請求項３】
請求項１または２に記載の表示装置であって、当該透明化オブジェクトのそれぞれに対して、
前記投射部は、当該第１の投射面としてすべての画素値が所定の背景色となっているビットマップ画像領域を用い、当該透明化オブジェクトの外観を当該ビットマップ画像領域に投射し、
前記取得部は、当該ビットマップ画像領域のうち、画素値が当該所定の背景色と異なるものの数から、当該透明化オブジェクトの外観が投射される面積を取得する
ことを特徴とする表示装置。
【請求項４】
請求項１または２に記載の表示装置であって、当該透明化オブジェクトのそれぞれに対して、制御点をあらじめ割り当て、
前記投射部は、当該制御点を当該第１の投射面に投射し、
前記取得部は、当該第１の投射面に投射された制御点を当該透明化オブジェクトの外観が投射される面積として結ぶことにより形成される凸多角形の面積を取得する
ことを特徴とする表示装置。
【請求項５】
請求項１から４のいずれか１項に記載の表示装置であって、当該透明化オブジェクトのそれぞれについて、面積と透明度との対応付けがあらかじめ定義され、
前記表示部は、当該透明化オブジェクトのそれぞれについてあらかじめ定義された当該面積と当該透明度との対応付けにより、当該透明化オブジェクトの透明度を得る
ことを特徴とする表示装置。
【請求項６】
投射部、取得部、表示部を備える表示装置にて実行される表示方法であって、
前記投射部が仮想三次元空間内に配置されるオブジェクトのうち、透明化処理を行うオブジェクト（以下「透明化オブジェクト」という。）のそれぞれの外観を第１の投射面に投射する投射工程、
前記取得部が当該第１の投射面に対して当該透明化オブジェクトのそれぞれの外観が投射される面積を取得する取得工程、
前記表示部が当該仮想空間内に配置されるオブジェクトのうち、透明化処理を行わないオブジェクト（以下「不透明オブジェクト」という。）の外観を第２の投射面に投射し、当該透明化オブジェクトのそれぞれについて、前記取得された面積にあらかじめ対応付けられた透明度で、透明化オブジェクトの外観を当該第２の投射面に投射して生成される画像を表示する表示工程
を備えることを特徴とする表示方法。
【請求項７】
コンピュータを、
仮想三次元空間内に配置されるオブジェクトのうち、透明化処理を行うオブジェクト（以下「透明化オブジェクト」という。）のそれぞれの外観を第１の投射面に投射する投射部、
当該第１の投射面に対して当該透明化オブジェクトのそれぞれの外観が投射される面積を取得する取得部、
当該仮想空間内に配置されるオブジェクトのうち、透明化処理を行わないオブジェクト（以下「不透明オブジェクト」という。）の外観を第２の投射面に投射し、当該透明化オブジェクトのそれぞれについて、前記取得された面積にあらかじめ対応付けられた透明度で、透明化オブジェクトの外観を当該第２の投射面に投射して生成される画像を表示する表示部
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、三次元グラフィックス表示において、仮想三次元空間内に配置されるオブジェクトが視点に近付き過ぎた場合など、オブジェクトが画面に占める面積が大きくなった場合であっても、仮想三次元空間をわかりやすく観察者に提示するのに好適な表示装置、表示方法、ならびに、これらをコンピュータにて実現するプログラムに関する。
【背景技術】
【０００２】
従来から、仮想三次元空間内にオブジェクトを複数配置し、仮想三次元空間内における時間経過を考えて、当該時間経過によって当該オブジェクトを適宜移動させて種々の模擬実験を行うとともに、これらのオブジェクトを所定の視点から所定の向きで見た様子を三次元グラフィックス表示する技術が提案されている。また、視点の位置や三次元空間を見る向きを当該時間経過によって変化させる技術も提案され、典型的には、視点をいずれかのオブジェクト上に設定し、三次元空間を見る向きを当該設定されたオブジェクトの移動方向に設定するものや、当該設定されたオブジェクトそのものの向きによって定めるものもある。
このような三次元グラフィックスの技術については、以下の文献に開示がされている。
【特許文献１】特開平１１−１９７３５７号公報
【０００３】
このような三次元グラフィックス技術においては、視点と表示対象となるオブジェクトとが極めて近くなった場合等、画面の大部分を当該オブジェクトの映像が占有する場合には、それ以外のオブジェクトが当該オブジェクトに隠されてしまって、仮想三次元空間の様子がわからなくなる場合がある。
一方で、視点と表示対象となるオブジェクトとが極めて近くなった場合には、いわゆるポリゴン落ちや、本来ありえない状況（たとえば、空洞のないオブジェクトの内部に視点が入り込んでしまう等。）が生じ、表示される画面が不自然になることもある。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
したがって、このような場合であっても、仮想三次元空間の様子を観察者にわかりやすく提示する技術が求められている。
本発明は、上記のような課題を解決するためになされたもので、仮想三次元空間内に配置されるオブジェクトが視点に近付き過ぎた場合であっても仮想三次元空間をわかりやすく観察者に提示するのに好適な表示装置、表示方法、ならびに、これらをコンピュータにて実現するプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００５】
以上の目的を達成するため、本発明の原理にしたがって、下記の発明を開示する。
【０００６】
本発明の第１の観点に係る表示装置は、投射部、取得部、表示部を備え、以下のように構成する。
【０００７】
すなわち、投射部は、仮想三次元空間内に配置されるオブジェクトのうち、透明化処理を行うオブジェクト（以下「透明化オブジェクト」という。）のそれぞれの外観を第１の投射面に投射する。
通常の三次元グラフィックス処理においては、仮想三次元空間に配置されるオブジェクトの外形（透明な部品を有するオブジェクトの場合は、その透明な部品から透けて見えるオブジェクトの内部を含む。）を二次元の画面に表示しなければならない。そこで、平行投象、一点投象などの各種の技術により、三次元の座標が二次元の座標に投射される。投射部では、第１の投射面にこのような投射を行う。
【０００８】
一方、取得部は、当該第１の投射面に対して当該透明化オブジェクトのそれぞれの外観が投射される面積を取得する。
ここで、第１の投射面は、透明化オブジェクトが画面に表示される場合に、その大きさの目安を得るためのものである。透明化オブジェクトが単純な形状（たとえば、球や直方体。）である場合には、投射を行わなくとも、その頂点や中心などの制御点の座標がどのように変換されるかを調べれば、透明化オブジェクトが投射される面積を得ることができるが、複雑な形状の場合には、必ずしも容易ではない。本発明では、第１の投射面に一旦投射するので、複雑な形状の透明化オブジェクトであっても、投射される面積を容易に得ることができるのである。
【０００９】
さらに、表示部は、当該仮想空間内に配置されるオブジェクトのうち、透明化処理を行わないオブジェクト（以下「不透明オブジェクト」という。）の外観を第２の投射面に投射し、当該透明化オブジェクトのそれぞれについて、取得された面積にあらかじめ対応付けられた透明度で、透明化オブジェクトの外観を当該第２の投射面に投射して生成される画像を表示する。
一般に、透明化オブジェクトは、仮想三次元空間内において視点の近傍に来る可能性があるオブジェクトであり、不透明オブジェクトは、視点から極めて遠い場所にあるか、視点の近傍に来る可能性がないオブジェクトである。たとえば、仮想ゲーム空間において開催される自動車レースを車載カメラから撮影した様子を表示する表示装置においては、他の自動車や障害物は透明化オブジェクトになり、コースを構成する壁や遠くに見えるビルディング、樹木、山、川、湖、海などの風景は不透明オブジェクトに相当する。
【００１０】
本発明では、不透明オブジェクトについては透明度は変化させず第２の投射面に投射し、透明化オブジェクトについては画面に表示される際の面積（これは第１の投射面に投射された際の面積に等しい。）に応じて透明度を変化させて第２の投射面に投射する。そして、第２の投射面に投射された結果をを生成された画像として表示する。ここで、第１の投射面は、一時的に用いられるものであり、表示装置のユーザに提示されるものではない。
本発明によれば、透明化オブジェクトの透明度を、当該透明化オブジェクトが画面に表示される面積（これは、画面を占める割合と実質的に等価である。）によって決めることによって、不透明オブジェクトと透明化オブジェクトをわかりやすくユーザに提示することができるようになる。
【００１１】
また、本発明の表示装置は、表示部において、取得された面積が大きくなると透明度が高くなるように、当該面積に当該透明度があらかじめ対応付けられるように構成することができる。
一般に、あるオブジェクトが画面の大きな領域を占めるように表示されると、それ以外のオブジェクトが当該オブジェクトに隠されて見えなくなってしまう。そこで本発明では、オブジェクトが画面に占める面積が大きくなればなるほど、当該オブジェクトを表示する際の透明度が高くなるようにする。
本発明によれば、オブジェクトが視点に近付きすぎて画面の占める面積が大きくなり、他のオブジェクトが隠されてしまうような場合であっても、当該オブジェクトの透明度を高くすることによって、他のオブジェクトが透けて見えるようにし、表示装置のユーザに仮想三次元空間の様子を適切に提示することができるようになる。
【００１２】
また、本発明の表示装置において、当該透明化オブジェクトのそれぞれに対して、投射部は、当該第１の投射面としてすべての画素値が所定の背景色となっているビットマップ画像領域を用い、当該透明化オブジェクトの外観を当該ビットマップ画像領域に投射し、取得部は、当該ビットマップ画像領域のうち、画素値が当該所定の背景色と異なるものの数から、当該透明化オブジェクトの外観が投射される面積を取得するように構成することができる。
本発明では、第１の投射面として画素の集合からなるビットマップ画像領域を用いる。そして、当該ビットマップ画像領域を適当な背景色（現実には存在しない色でも良いし、黒や青などの色でも良い。）で塗り潰した後に、表示部で用いるものと同じ三次元グラフィックス処理を用いて透明化オブジェクトを当該ビットマップ画像領域に「描画」する。その後に、背景色でない画素値を持つ画素の数を数えれば、透明化オブジェクトが投射される面積は、当該画素の数（もしくは、画素の大きさに数を乗じたもの。）として、得られることとなる。
【００１３】
この技術においては、第１の投射面への投射は、すでに広く用いられている種々の三次元グラフィックスの技術を適用することができ、汎用コンピュータやゲーム装置に利用されているグラフィックス処理ハードウェアを用いれば容易に実現することができる。
本発明によれば、ビットマップ画像領域を第１の投射面として用いることにより、透明化オブジェクトが画面に表示される面積を容易に取得することができ、処理の簡易化、高速化を図ることができる。
【００１４】
また、本発明の表示装置において、当該透明化オブジェクトのそれぞれに対して、制御点をあらじめ割り当て、投射部は、当該制御点を当該第１の投射面に投射し、取得部は、当該第１の投射面に投射された制御点を当該透明化オブジェクトの外観が投射される面積として結ぶことにより形成される凸多角形の面積を取得するように構成することができる。
本発明では、透明化オブジェクトを第１の投射面に「描画」するのではなく、透明化オブジェクトの制御点を第１の投射面に投射する。具体的には、第１の投射面内における当該制御点の投射先の座標を用いるのである。
【００１５】
そして、当該制御点を頂点もしくは内部の点とする凸多角形を考え、当該凸多角形の面積を「透明化オブジェクトが投射される面積」として取り扱う。
本発明によれば、複雑な形状のオブジェクトであっても、当該オブジェクトの制御点を選択することによって、オブジェクトが画面に占める面積を容易に取得することができ、処理の簡易化、高速化を図ることができる。また、砂煙や液体などの不定形なオブジェクトについても、制御点を定義することによって、これらを透明化オブジェクトとして扱うことができるようになる。
【００１６】
また、本発明の表示装置において、当該透明化オブジェクトのそれぞれについて、面積と透明度との対応付けがあらかじめ定義され、表示部は、当該透明化オブジェクトのそれぞれについてあらかじめ定義された当該面積と当該透明度との対応付けにより、当該透明化オブジェクトの透明度を得るように構成することができる。
すなわち、本発明では、透明化オブジェクトごとに、画面に占める面積と透明化の程度を変更する。たとえば、ユーザにとって重要でないと想定される透明化オブジェクトについては、面積の増加に対して透明度が高くなる程度を大きくし、重要であると想定される透明化オブジェクトについては、面積の増加に対して透明度が高くなる程度を小さくする、等である。
本発明によれば、透明化オブジェクトごとに透明化の程度を変更することができ、たとえばオブジェクトの重要度に応じて、ユーザに適切に仮想三次元空間の様子を提示することができるようになる。
【００１７】
本発明の第２の観点に係る表示方法は、投射部、取得部、表示部を備える表示装置にて実行され、投射工程、取得工程、表示工程を備え、以下のように構成する。
まず、投射工程では、投射部が仮想三次元空間内に配置されるオブジェクトのうち、透明化処理を行うオブジェクト（以下「透明化オブジェクト」という。）のそれぞれの外観を第１の投射面に投射する。
【００１８】
一方、取得工程では、取得部が当該第１の投射面に対して当該透明化オブジェクトのそれぞれの外観が投射される面積を取得する。
さらに、表示工程では、表示部が当該仮想空間内に配置されるオブジェクトのうち、透明化処理を行わないオブジェクト（以下「不透明オブジェクト」という。）の外観を第２の投射面に投射し、当該透明化オブジェクトのそれぞれについて、取得された面積にあらかじめ対応付けられた透明度で、透明化オブジェクトの外観を当該第２の投射面に投射して生成される画像を表示する。
【００１９】
本発明のその他の観点に係るプログラムは、コンピュータを上記表示装置として機能させ、または、コンピュータに上記表示方法を実行させるように構成する。
また、本発明のプログラムは、コンパクトディスク、フレキシブルディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、半導体メモリ等のコンピュータ読取可能な情報記憶媒体に記録することができる。
上記プログラムは、プログラムが実行されるコンピュータとは独立して、コンピュータ通信網を介して配布・販売することができる。また、上記情報記憶媒体は、コンピュータとは独立して配布・販売することができる。
【発明の効果】
【００２０】
本発明によれば、三次元グラフィックス表示において、仮想三次元空間内に配置されるオブジェクトが視点に近付き過ぎた場合など、オブジェクトが画面に占める面積が大きくなった場合であっても、仮想三次元空間をわかりやすく観察者に提示するのに好適な表示装置、表示方法、ならびに、これらをコンピュータにて実現するプログラムを提供することができる。
【発明を実施するための最良の形態】
【００２１】
以下に本発明の実施形態を説明する。以下では、理解を容易にするため、三次元グラフィックス表示がされるゲーム装置に本発明が適用される実施形態を説明するが、各種のコンピュータ、ＰＤＡ（Personal Data Assistants）、携帯電話などの情報処理装置においても同様に本発明を適用することができる。すなわち、以下に説明する実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
【実施例１】
【００２２】
図１は、本発明の表示装置が実現される典型的なゲーム装置の概要構成を示す説明図である。以下、本図を参照して説明する。
【００２３】
ゲーム装置１００は、ＣＰＵ（Central Processing Unit）１０１と、ＲＯＭ  １０２と、ＲＡＭ  １０３と、インターフェイス１０４と、コントローラ１０５と、外部メモリ１０６と、画像処理部１０７と、ＤＶＤ−ＲＯＭドライブ１０８と、ＮＩＣ（Network Interface Card）１０９と、を備える。
ゲーム用のプログラムおよびデータを記憶したＤＶＤ−ＲＯＭをＤＶＤ−ＲＯＭドライブ１０８に装着して、ゲーム装置１００の電源を投入することにより、当該プログラムが実行され、本実施形態の表示装置が実現される。
【００２４】
ＣＰＵ  １０１は、ゲーム装置１００全体の動作を制御し、各構成要素と接続され制御信号やデータをやりとりする。また、ＣＰＵ  １０１は、レジスタ（図示せず）という高速アクセスが可能な記憶域に対してＡＬＵ（Arithmetic Logic Unit）（図示せず）を用いて加減乗除等の算術演算や、論理和、論理積、論理否定等の論理演算、ビット和、ビット積、ビット反転、ビットシフト、ビット回転等のビット演算などを行うことができる。さらに、マルチメディア処理対応のための加減乗除等の飽和演算や、三角関数等、ベクトル演算などを高速に行えるように、ＣＰＵ  １０１自身が構成されているものや、コプロセッサを備えて実現するものがある。
【００２５】
ＲＯＭ  １０２には、電源投入直後に実行されるＩＰＬ（Initial Program Loader）が記録され、これが実行されることにより、ＤＶＤ−ＲＯＭに記録されたプログラムをＲＡＭ  １０３に読み出してＣＰＵ  １０１による実行が開始される。また、ＲＯＭ  １０２には、ゲーム装置１００全体の動作制御に必要なオペレーティングシステムのプログラムや各種のデータが記録される。
【００２６】
ＲＡＭ  １０３は、データやプログラムを一時的に記憶するためのもので、ＤＶＤ−ＲＯＭから読み出したプログラムやデータ、その他ゲームの進行やチャット通信に必要なデータが保持される。また、ＣＰＵ  １０１は、ＲＡＭ  １０３に変数領域を設け、当該変数に格納された値に対して直接ＡＬＵを作用させて演算を行ったり、ＲＡＭ  １０３に格納された値を一旦レジスタに格納してからレジスタに対して演算を行い、演算結果をメモリに書き戻す、などの処理を行う。
【００２７】
インターフェイス１０４を介して接続されたコントローラ１０５は、ユーザがレーシングゲームなどのゲーム実行の際に行う操作入力を受け付ける。
インターフェイス１０４を介して着脱自在に接続された外部メモリ１０６には、レーシングゲーム等のプレイ状況（過去の成績等）を示すデータ、ゲームの進行状態を示すデータ、チャット通信のログ（記録）のデータなどが書き換え可能に記憶される。ユーザは、コントローラ１０５を介して指示入力を行うことにより、これらのデータを適宜外部メモリ１０６に記録することができる。
【００２８】
ＤＶＤ−ＲＯＭドライブ１０８に装着されるＤＶＤ−ＲＯＭには、ゲームを実現するためのプログラムとゲームに付随する画像データや音声データが記録される。ＣＰＵ  １０１の制御によって、ＤＶＤ−ＲＯＭドライブ１０８は、これに装着されたＤＶＤ−ＲＯＭに対する読み出し処理を行って、必要なプログラムやデータを読み出し、これらはＲＡＭ  １０３等に一時的に記憶される。
【００２９】
画像処理部１０７は、ＤＶＤ−ＲＯＭから読み出されたデータをＣＰＵ  １０１や画像処理部１０７が備える画像演算プロセッサ（図示せず）によって加工処理した後、これを画像処理部１０７が備えるフレームメモリ（図示せず）に記録する。フレームメモリに記録された画像情報は、所定の同期タイミングでビデオ信号に変換され画像処理部１０７に接続されるモニタ（図示せず）へ出力される。これにより、各種の画像表示が可能となる。
画像演算プロセッサは、２次元の画像の重ね合わせ演算やαブレンディング等の透過演算、各種の飽和演算を高速に実行できる。
【００３０】
また、仮想３次元空間に配置され、各種のテクスチャ情報が付加されたポリゴン情報を、Ｚバッファ法によりレンダリングして、所定の視点位置から仮想３次元空間に配置されたポリゴンを所定の視線の方向へ俯瞰したレンダリング画像を得る演算の高速実行も可能である。
さらに、ＣＰＵ  １０１と画像演算プロセッサが協調動作することにより、文字の形状を定義するフォント情報にしたがって、文字列を２次元画像としてフレームメモリへ描画したり、各ポリゴン表面へ描画することが可能である。
【００３１】
ＮＩＣ  １０９は、ゲーム装置１００をインターネット等のコンピュータ通信網（図示せず）に接続するためのものであり、ＬＡＮ（Local Area Network）を構成する際に用いられる１０ＢＡＳＥ−Ｔ／１００ＢＡＳＥ−Ｔ規格にしたがうものや、電話回線を用いてインターネットに接続するためのアナログモデム、ＩＳＤＮ（Integrated Services Digital Network）モデム、ＡＤＳＬ（Asymmetric Digital Subscriber Line）モデム、ケーブルテレビジョン回線を用いてインターネットに接続するためのケーブルモデム等と、これらとＣＰＵ  １０１との仲立ちを行うインターフェース（図示せず）により構成される。
【００３２】
音声処理部１１０は、ＤＶＤ−ＲＯＭから読み出した音声データをアナログ音声信号に変換し、これに接続されたスピーカ（図示せず）から出力させる。また、ＣＰＵ  １０１の制御の下、ゲームの進行の中で発生させるべき効果音や楽曲データを生成し、これに対応した音声をスピーカから出力させる。
音声処理部１１０では、ＤＶＤ−ＲＯＭに記録された音声データがＭＩＤＩデータである場合には、これが有する音源データを参照して、ＭＩＤＩデータをＰＣＭデータに変換する。また、ADPCM形式やOgg Vorbis形式等の圧縮済音声データである場合には、これを展開してＰＣＭデータに変換する。ＰＣＭデータは、そのサンプリング周波数に応じたタイミングでＤ／Ａ（Digital/Analog）変換を行って、スピーカに出力することにより、音声出力が可能となる。
【００３３】
このほか、ゲーム装置１００は、ハードディスク等の大容量外部記憶装置を用いて、ＲＯＭ  １０２、ＲＡＭ  １０３、外部メモリ１０６、ＤＶＤ−ＲＯＭドライブ１０８に装着されるＤＶＤ−ＲＯＭ等と同じ機能を果たすように構成してもよい。
【００３４】
図２は、本発明の実施形態の一つに係る表示装置の概要構成を示す模式図である。以下、本図を参照して説明する。
本実施形態に係る表示装置２０１は、投射部２０２、取得部２０３、表示部２０４を備える。
【００３５】
また、ＲＡＭ  １０３などにより構成される記憶部２０５には、以下の領域が確保されている。
（ａ）仮想三次元空間に配置されるオブジェクトの形状やテクスチャ情報、透明化を行うか否か、面積と透明度の対応付けの種類等を記憶するオブジェクト記憶領域。オブジェクトの形状（形状を定める頂点、中心等の制御点の座標）やテクスチャ情報については、三次元グラフィックスの一般的な技術を利用することができる。本実施形態では、オブジェクトごとに、透明化を行うか否か、および、透明化を行う場合には、面積と透明度の対応付けの種類（対応付けを定めるパラメータ等）を記憶する点が特徴の一つとなっている。
（ｂ）画素の集合からなるビットマップ画像を記憶するバッファ領域。オブジェクトが表示されると想定される面積を取得するための一時的な記憶域である。
（ｃ）画面に表示すべきビットマップ画像を記憶するＶＲＡＭ（Video RAM）領域。画像処理部１０７は、当該ＶＲＡＭ領域に記憶されている情報により、垂直同期割り込みを周期にモニタ画面に画像を転送する。
【００３６】
図３は、本実施形態に係る表示装置２０１において実行される表示処理の制御の流れを示すフローチャートである。以下、本図を参照して説明する。
【００３７】
まず、表示装置２０１において、表示部２０４は、記憶部２０５に記憶されるオブジェクトのうち、透明化を行う旨が記憶されているもの（透明化オブジェクト）のそれぞれについて、ステップＳ３０１〜ステップＳ３０５の処理を繰り返す。すなわち、透明化オブジェクトすべてについて処理を行ったか否かを調べ（ステップＳ３０１）、行っていない場合は（ステップＳ３０１；Ｎｏ）、未処理の透明化オブジェクトを１つ取得する（ステップＳ３０２）。
【００３８】
そして、ＲＡＭ  １０３内に確保されるバッファ領域を適切な背景色で塗り潰す（ステップＳ３０３）。たとえば、画面に表示される色が赤、青、緑にそれぞれ５ビットが割り当てられる１５ビットカラーで表現される場合には、バッファ領域の１つの画素に対しては２バイトを割り当てる。そして、画素値としては、０〜３２７６７を用いる。この場合、背景色の画素値として、最上位ビットが立っている３２７６８〜６５５３５のいずれかを使えば、不透明オブジェクトが投射されたことにより色が塗られる画素と区別をすることができる。
【００３９】
ついで、通常の三次元グラフィックスの技術により、透明化オブジェクトの外観をバッファ領域に投射する（ステップＳ３０４）。したがって、ＣＰＵ  １０１と画像処理部１０７とは、ＲＡＭ  １０３と共働して、投射部として機能し、バッファ領域は、第１の投射面に相当することとなる。
通常の三次元グラフィックス処理においては、仮想三次元空間に配置されるオブジェクトの外形（透明な部品を有するオブジェクトの場合は、その透明な部品から透けて見えるオブジェクトの内部を含む。）を二次元の画面に表示する。そこで、平行投象、一点投象などの各種の技術により、三次元の座標が二次元の座標に投射される。上記のように、三次元グラフィックス技術により透明化オブジェクトがバッファ領域に投射されると、１５ビットカラーを用いていれば、当該オブジェクトの投射先の画素値は０〜３２７６７のいずれかの値となる。
【００４０】
このように、透明化オブジェクト１個分の投射が終わったら、取得部２０３は、バッファ領域中の背景色の画素値（３２７６８〜６５５３５のいずれか）以外の画素値（０〜３２７６７）を有する画素（２バイトの領域）の数を数えて、当該透明化オブジェクトの外観が投射される面積を取得する（ステップＳ３０５）。すなわち、ＣＰＵ  １０１は、ＲＡＭ  １０３と共働して、取得部２０３として機能する。さて、このようにして現在処理している透明化オブジェクトの投射後の面積が取得できたら、ステップＳ３０１に戻る。
【００４１】
一方、すべての透明化オブジェクトについてステップＳ３０２〜ステップＳ３０５の処理が行われたら（ステップＳ３０１；Ｙｅｓ）、すなわち、透明化オブジェクトのそれぞれについて、画面に表示される際の面積が取得できたら、ステップＳ３０６以降の処理に進む。
【００４２】
まず、バッファ領域を所定の背景色で塗り潰す（ステップＳ３０６）。これは、上記の背景色と一致しなくとも良い。典型的には０（黒）または３２７６７（白）を用いる。
【００４３】
ついで、仮想三次元空間に配置されるオブジェクトを、視点から遠い順に整列する（ステップＳ３０７）。いわゆるＺバッファ法である。
【００４４】
つぎに、整列されたオブジェクトについて、視点から遠い順に、ステップＳ３０８〜ステップＳ３１３の処理を繰り返す。すなわち、全オブジェクトについて処理が終わったか否かを調べ（ステップＳ３０８）、終わっていない場合は（ステップＳ３０８；Ｎｏ）、未処理のオブジェクトのうち、最も遠いものを１つ取得する（ステップＳ３０９）。
【００４５】
そして、当該オブジェクトが透明化オブジェクトか、そうでないか（不透明オブジェクトか）、を調べる（ステップＳ３１０）。不透明オブジェクトの場合（ステップＳ３１０；Ｎｏ）、表示部２０４は、当該不透明オブジェクトを、当該不透明オブジェクトに設定された色（典型的には、テクスチャ情報により定義される。）で、三次元グラフィックス処理により、バッファ領域に投射して（ステップＳ３１１）、ステップＳ３０８に戻る。
【００４６】
一方、透明化オブジェクトの場合（ステップＳ３１０；Ｙｅｓ）、表示部２０４は、ステップＳ３０５において、当該透明化オブジェクトについて取得された面積に対応付けられる透明度を取得する（ステップＳ３１２）。ここでの対応付けは、面積が大きくなると透明度が高くなるようにしておくことが望ましい。
【００４７】
透明度が高くなる程度は、透明化オブジェクトごとに変更することができる。すなわち、各種の階段状の対応付けを用意しておき、いずれの対応付けを利用するか、をＲＡＭ  １０３内のオブジェクト記憶領域に記憶しておく。この対応付けを参照すれば、面積から透明度を取得することができる。
【００４８】
そして、表示部２０４は、当該透明化オブジェクトを、当該取得された透明度で、三次元グラフィックス処理によりバッファ領域に投射して（ステップＳ３１３）、いわゆるαブレンディング技術を適用する。しかる後、ステップＳ３０８に戻る。
【００４９】
さて、Ｚバッファ法、三次元グラフィックス処理、αブレンディング技術によって、表示すべき画像がバッファ領域に生成されたら、垂直同期割り込みを待ち（ステップＳ３１４）、割り込みが生じた後に、バッファ領域からＶＲＡＭ領域に生成された画像を転送して（ステップＳ３１５）、本処理を終了する。これは、いわゆるダブルバッファリング技術であり、画面表示のちらつきを防止するためのものである。画像処理部１０７は、ＶＲＡＭ領域に生成された画像をモニタの画面に表示するよう並行処理を行うのである。
【００５０】
このように、ＣＰＵ  １０１は、画像処理部１０７およびＲＡＭ  １０３と共働して、表示部２０４として機能する。
【００５１】
一般に、透明化オブジェクトは、仮想三次元空間内において視点の近傍に来る可能性があるオブジェクトであり、不透明オブジェクトは、視点から極めて遠い場所にあるか、視点の近傍に来る可能性がないオブジェクトである。たとえば、仮想ゲーム空間において開催される自動車レースを車載カメラから撮影した様子を表示する表示装置２０１においては、他の自動車や障害物は透明化オブジェクトになり、コースを構成する壁や遠くに見えるビルディング、樹木、山、川、湖、海などの風景は不透明オブジェクトに相当する。
【００５２】
本実施形態では、不透明オブジェクトについては定義された透明度（一般には不透明のまま）で投射し、透明化オブジェクトについては投射面積に応じてα値を変更してαブレンディングにより投射する。これにより、オブジェクトが視点に近付きすぎて画面の占める面積が大きくなり、他のオブジェクトが隠されてしまうような場合であっても、当該オブジェクトの透明度を高くすることによって、他のオブジェクトが透けて見えるようになる。したがって、ユーザは仮想三次元空間の様子を適切に把握することができるようになるのである。
【００５３】
図４、図５には、本発明を自動車レースゲームに適用した場合の表示の様子を示してある。本図では、画面７０１に他の自動車７１１が表示されており、透明化オブジェクトは当該自動車７１１である。また、自分の自動車の窓枠やハンドル、メータ類は、不透明オブジェクトとなっており、透明化の処理はされない。
【００５４】
図４では、自動車７１１が透けており、背景が見える形態で表示されている。図５では、画面７０１内の自動車７１１がはっきりと、背景を隠す形態で表示されている。一方、これは、自動車７１１が投射される面積が異なるからである。図４のように大きく投射される場合には、透明度が高くなる。これによって、コースの大部分が自動車７１１によって隠されてしまうことがなくなり、路面の様子がプレイヤーにわかりやすくなるのである。図５のように小さく投射される場合には、透明度が低く（不透明に）なっている。この場合には、路面の様子は大部分がプレイヤーに見えるため、自動車７１１を透明に表示する必要性は低いと考えられ、通常通りの表示を行っている。
【００５５】
また、本実施形態では、透明化オブジェクトごとに透明化の程度（面積と透明度の対応付け）を変更することができ、たとえばオブジェクトの重要度に応じて、ユーザに適切に仮想三次元空間の様子を提示することができるようになる。
【実施例２】
【００５６】
上記実施形態では、透明化オブジェクトをビットマップ画像に展開し、その画素の数によって透明化オブジェクトの投射面積を求めていた。本実施形態は、透明化オブジェクトの頂点等の制御点の座標を用いて、透明化オブジェクトの投射面積を求めることとする。
【００５７】
[特許文献１]に開示されるように、オブジェクト同士の衝突を判定するために、オブジェクトを内包する球や直方体を考え、当該球や直方体が衝突するか否かによって、計算量を減らして衝突判定を行う手法がある。本実施形態は、これと類似するアイディアに基づくものである。
【００５８】
すなわち、透明化オブジェクトの形状に対応する制御点を、あらかじめ割り当てておく。典型的には、透明化オブジェクトを内包する最小の直方体や角錐、角柱の頂点や、透明化オブジェクトを内包する最小の球の表面に配置される点を、制御点とすれば良いが、必ずしもこれに限るわけではない。
【００５９】
制御点の数は、後述の処理が容易にできるようにするために、ある程度制限することが望ましい。したがって、透明化オブジェクトの形状を近似的に表現できるように制御点を選択すれば十分である。たとえば、三角錐によって表現することとしても良い。透明化オブジェクトの投射面積によって透明度を変化させる処理には、厳密さがさほど必要とされず、近似値で十分な場合も多いからである。
【００６０】
そして、当該制御点が、三次元グラフィックス処理によって画面上のどの座標に投射されるかを調べ、制御点の投射先の一部または全部を結んで凸多角形を構成する。当該凸多角形は、制御点の投射先を頂点とするか、制御点の投射先をその内部に含むか、のいずれかでなければならない。オブジェクトを三角錐によって表現した場合は、当該凸多角形は、三角形または四角形となる。
【００６１】
ついで、その凸多角形の面積を頂点の座標から求め、これを、当該透明化オブジェクトが第１の投射面に投射される面積として扱うのである。
【００６２】
本実施形態によれば、複雑な形状のオブジェクトであっても、当該オブジェクトの制御点を選択することによって、オブジェクトが画面に占める面積を容易に取得することができ、処理の簡易化、高速化を図ることができる。また、砂煙や液体などの不定形なオブジェクトについても、制御点を定義することによって、これらを透明化オブジェクトとして扱うことができるようになる。
【産業上の利用可能性】
【００６３】
以上説明したように、本発明によれば、三次元グラフィックス表示において、仮想三次元空間内に配置されるオブジェクトが視点に近付き過ぎた場合など、オブジェクトが画面に占める面積が大きくなった場合であっても、仮想三次元空間をわかりやすく観察者に提示するのに好適な表示装置、表示方法、ならびに、これらをコンピュータにて実現するプログラムを提供することができ、ゲーム装置においてレーシングゲームやアクションゲームなどを実現する場合のほか、各種の仮想体験を提供するバーチャルリアリティ技術に適用することができる。
【図面の簡単な説明】
【００６４】
【図１】本発明の実施形態の１つに係る表示装置が実現される典型的な情報処理装置の概要構成を示す説明図である。
【図２】本発明の実施形態の１つの表示装置の概要構成を示す模式図である。
【図３】当該表示装置にて実行される表示方法の制御の流れを示すフローチャートである。
【図４】当該表示装置にて表示される表示例を示す説明図である。
【図５】当該表示装置にて表示される表示例を示す説明図である。
【符号の説明】
【００６５】
１００  ゲーム装置
１０１  ＣＰＵ
１０２  ＲＯＭ
１０３  ＲＡＭ
１０４  インターフェイス
１０５  コントローラ
１０６  外部メモリ
１０７  画像処理部
１０８  ＤＶＤ−ＲＯＭドライブ
１０９  ＮＩＣ
１１０  音声処理部
２０１  表示装置
２０２  投射部
２０３  取得部
２０４  表示部
７０１  画面
７１１  透明化オブジェクトの自動車
【図１】
2005322108.tif 000003
【図２】
2005322108.tif 000004
【図３】
2005322108.tif 000005
【図４】
2005322108.tif 000006
【図５】
2005322108.tif 000007