(57)【要約】      （修正有）【課題】画面上で表現される影に、濃淡を自由に付すことができ、簡易な処理により、リアリティのある影の描画を可能とする。【解決手段】仮想三次元座標空間に置かれるオブジェクトの像とオブジェクトの像により形成される影の像を、三次元座標を有する複数のポリゴンにより形成し、三次元座標を有する複数のポリゴンにより形成されるオブジェクトと影の三次元画像を二次元平面に投影し、二次元平面に投影して得られる影の画像をフレームバッファに描画し、フレームバッファに描画された影の画像データを１／ｎ倍に縮小してメモリに保存し、二次元平面に投影して得られるオブジェクトの画像をフレームバッファに描画し、メモリに保存された影の画像データをｎ倍に拡大して、フレームバッファに描画されたオブジェクトの画像上に重ねて描画し、フレームバッファに重ねて描画されたオブジェクトと影の画像データをモニターに表示する。【選択図】図７
2005346417.tif 000002
【特許請求の範囲】
【請求項１】
画像処理プログラムを制御手段が実行することにより、仮想三次元仮想空間に配置された所定の視点位置から前記三次元仮想空間を見た画像を表示手段に表示する画像処理を行うように構成された画像処理装置における画像処理プログラムであって、
前記仮想三次元座標空間に配置されるオブジェクトのデータと、前記オブジェクトが前記仮想空間内の他のオブジェクトに対して落とす影の境界線をポリゴンデータとして定義した影オブジェクトのデータと、前記オブジェクトまたは前記影オブジェクトの少なくとも一方に関連づけて定義された遮蔽オブジェクトのデータと、を記憶手段から読み出す処理を前記制御手段に行わせ、
レンダラに、前記記憶手段から読み出された前記影オブジェクトと遮蔽オブジェクトとを前記仮想空間内に配置し、前記影オブジェクトと前記遮蔽オブジェクトとを前記所定の視点位置から透視変換し、前記影オブジェクトを透視変換した画像と前記遮蔽オブジェクトを透視変換した画像との境界線を求め、該境界線において前記影オブジェクトの透視変換画像と前記遮蔽オブジェクトの透視変換画像との重なる部分を除くか、あるいは表示手段に表示されないようにマスク情報を付加して影オブジェクトの投影画像をレンダリングして影画像の描画データを生成する処理を行わせ、
前記制御手段に、前記レンダリング処理により得られた影画像の描画データの解像度を１／ｎに縮小する処理を行わせ、
前記レンダラに、前記オブジェクトを前記所定の視点位置からレンダリングして、得られたオブジェクト画像の描画データをビデオメモリに格納する処理を行わせ、
次いで、前記縮小された影画像の描画データの解像度をｎ倍に拡大して、前記ビデオメモリに格納されたオブジェクト画像と合成して表示手段に表示する表示画像データを生成する処理を行わせる
ことを特徴とする画像処理プログラム。
【請求項２】
画像処理プログラムを制御手段が実行することにより、仮想三次元仮想空間に配置された所定の視点位置から前記三次元仮想空間を見た画像を表示手段に表示する画像処理を行うように構成された画像処理装置における画像処理プログラムであって、
前記仮想三次元座標空間に配置されるオブジェクトのデータと、前記オブジェクトのモーションデータと、を記憶手段から読み出す処理を前記制御手段に行わせ、
レンダラに、前記記憶手段から読み出された前記オブジェクトと前記モーションデータとに基づいて、前記オブジェクトのモーションパターンに対応する影オブジェクトを生成させる処理と、
前記オブジェクトと前記影オブジェクトとを前記仮想空間内に配置し、前記オブジェクトと前記影オブジェクトとを前記所定の視点位置から透視変換し、前記オブジェクトの透視変換画像と前記影オブジェクトの透視変換画像との境界線を求め、該境界線において前記影オブジェクトを透視変換した画像と前記オブジェクトを透視変換した画像とが重なる部分を除くか、あるいは表示手段に表示されないようにマスク情報を付加した影オブジェクトの投影画像をレンダリングして影画像の描画データを生成する処理を行わせ、
前記制御手段に、前記レンダリング処理により得られた影画像の描画データの解像度を１／ｎに縮小する処理を行わせ、
前記レンダラに、前記オブジェクトを前記所定の視点位置からレンダリングして、得られたオブジェクト画像の描画データをビデオメモリに格納する処理を行わせ、次いで、前記縮小された影画像の描画データの解像度をｎ倍に拡大して、前記ビデオメモリに格納されたオブジェクト画像と合成して表示手段に表示する表示画像データを生成する処理を行わせる
ことを特徴とする画像処理プログラム。
【請求項３】
画像処理プログラムを制御手段が実行することにより、仮想三次元仮想空間に配置された所定の視点位置から前記三次元仮想空間を見た画像を表示手段に表示する画像処理を行うように構成された画像処理装置における画像処理プログラムであって、
前記仮想三次元座標空間に配置されるオブジェクトのデータと、前記オブジェクトのモーションデータと、前記オブジェクト及び前記モーションデータに対応づけられて定義された影生成用オブジェクトのデータとを記憶手段から読み出す処理を前記制御手段に行わせ、
レンダラに、前記記憶手段から読み出された前記オブジェクトのデータと前記影生成用オブジェクトのデータと前記モーションデータとに基づいて、前記オブジェクトのモーションパターンに対応する影オブジェクトを生成させる処理と、
前記オブジェクトまたは影生成用オブジェクトと前記影オブジェクトとを前記仮想空間内に配置し、前記オブジェクトまたは影生成用オブジェクトと前記影オブジェクトとを前記所定の視点位置から透視変換し、前記影オブジェクトを透視変換した画像と前記遮蔽オブジェクトを透視変換した画像との境界線を求め、該境界線において前記影オブジェクトの透視変換画像と前記遮蔽オブジェクトの透視変換画像との重なる部分を除くか、あるいは表示手段に表示されないようにマスク情報を付加して影オブジェクトの投影画像をレンダリングして影画像の描画データを生成する処理を行わせ、
前記制御手段に、前記レンダリング処理により得られた影画像の描画データの解像度を１／ｎに縮小する処理を行わせ、
前記レンダラに、前記オブジェクトを前記所定の視点位置からレンダリングして、得られたオブジェクト画像の描画データをビデオメモリに格納する処理を行わせ、次いで、前記縮小された影画像の描画データの解像度をｎ倍に拡大して、前記ビデオメモリに格納されたオブジェクト画像と合成して表示手段に表示する表示画像データを生成する処理を行わせる
ことを特徴とする画像処理プログラム。
【請求項４】
請求項１乃至３において、さらに、前記仮想空間における影の透明度が設定され、前記影画像の描画データを生成する処理において、前記透明度のデータを記憶手段から読み出し、前記透明度のデータを反映した影画像の描画データを生成することを特徴とする画像処理プログラム。
【請求項５】
請求項４において、さらに、前記オブジェクトの前記仮想空間内における位置情報に基づき、前記影の透明度を変化させる処理を行うことを特徴とする画像処理プログラム。
【請求項６】
請求項５において、さらに、前記オブジェクトの前記仮想空間内における高さの位置情報に基づき、前記影の透明度を変化させる処理を行うことを特徴とする画像処理プログラム。
【請求項７】
請求項１乃至６において、さらに、前記仮想空間内に設定された光源の色情報に基づき、前記影の色を設定する処理を行うことを特徴とする画像処理プログラム。
【請求項８】
三次元画像を二次元平面に投影してモニターに表示する画像表示装置における画像の表示制御方法であって、
仮想三次元座標空間に置かれるオブジェクトと、前記オブジェクトにより前記仮想空間内に形成される影の像とを、三次元座標を有する複数のポリゴンにより形成し、
前記オブジェクトと影の像とを前記三次元座標空間内に設定された所定の視点位置から透視変換して、前記オブジェクトの投影画像データと影の投影画像データとを生成し、
前記影の投影画像データを１／ｎ倍に縮小し、
前記縮小された影の投影画像データをｎ倍に拡大して、前記オブジェクトの投影画像データと合成して表示画像データを生成し、
前記表示画像データに基づく表示画像を表示手段に出力する
ことを特徴とする画像の表示制御方法。
【請求項９】
請求項８において、
前記影の像は、前記オブジェクトが前記仮想空間内に形成する影の境界線のポリゴンデータとして形成されることを特徴とする画像の表示制御方法。
【請求項１０】
請求項８または９において、
前記影の像と、前記オブジェクトとの境界線部分は、前記オブジェクトと重なる部分を有し、表示画像データに合成されない遮蔽オブジェクトによって形成されることを特徴とする画像の表示制御方法。
【請求項１１】
制御手段が画像処理プログラムを実行することにより、仮想三次元座標空間の画像を二次元平面に投影して表示手段に表示する表示画像データを生成させて表示手段に出力する制御を行うように構成された画像表示装置であって、
前記仮想三次元座標空間に置かれるオブジェクトのデータと、前記オブジェクトにより前記仮想三次元座標空間内に形成される影の像のデータとを記憶した記憶手段と、
前記オブジェクトのデータと影の像のデータとを、三次元座標を有する複数のポリゴンにより形成し、前記オブジェクトと影の像とを前記三次元座標空間内に設定された所定の視点位置から透視変換して、前記オブジェクトの投影画像データと影の投影画像データとを生成するレンダラと、
前記レンダラにより得られた画像データが格納されるビデオメモリと、
前記ビデオメモリから画像データを読み出して表示手段に出力する出力手段と、を有し、
前記制御手段は、前記レンダラが生成した前記影の投影画像データの解像度を１／ｎ倍に縮小し、更に前記縮小された影の画像データの解像度をｎ倍に拡大して、前記ビデオメモリに格納されたオブジェクトの画像と合成して表示画像データを生成させて表示手段に出力する処理を行うことを特徴とする画像表示装置。
【請求項１２】
画像処理プログラムを制御手段が実行することにより、仮想三次元仮想空間に配置された所定の視点位置から前記三次元仮想空間を見た画像を表示手段に表示する画像処理装置であって、
前記画像処理プログラムを実行制御する制御手段と、
前記仮想三次元座標空間に配置されるオブジェクトのデータと、前記オブジェクトが前記仮想空間内の他のオブジェクトに対して落とす影の境界線をポリゴンデータとして定義した影オブジェクトのデータと、前記オブジェクトまたは前記影オブジェクトの少なくとも一方に関連づけて定義された遮蔽オブジェクトのデータとを記憶する記憶手段と、
前記制御手段により前記記憶手段から読み出された前記影オブジェクトと遮蔽オブジェクトとを前記仮想空間内に配置し、前記影オブジェクトと前記遮蔽オブジェクトとを前記所定の視点位置から透視変換し、前記影オブジェクトを透視変換した画像と前記遮蔽オブジェクトを透視変換した画像との境界線を求め、該境界線において前記影オブジェクトの透視変換画像と前記遮蔽オブジェクトの透視変換画像との重なる部分を除くか、あるいは表示手段に表示されないようにマスク情報を付加して影オブジェクトの投影画像をレンダリングして影画像の描画データを生成する処理を行うレンダラと、
前記オブジェクトを前記所定の視点位置から前記レンダラによりレンダリングして、得られたオブジェクト画像の描画データを格納するビデオメモリと、
前記レンダラによるレンダリング処理により得られた影画像の描画データの解像度を１／ｎに縮小する処理を行い、次いで、前記縮小された影画像の描画データの解像度をｎ倍に拡大して、前記ビデオメモリに格納されたオブジェクト画像と合成して表示手段に表示する表示画像データを生成する処理を行う
ことを特徴とする画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想三次元座標ポリゴンによるオブジェクト画像の表示制御方法及びこれを用いた画像表示装置に関する。特に、仮想三次元座標ポリゴンによるオブジェクトの影の形成に特徴を有するオブジェクト画像の表示制御方法及びこれを用いた画像表示装置に関する。
【背景技術】
【０００２】
コンピュータグラフィックを用いる画像表示装置において、コンピュータグラフィックにより生成される仮想三次元座標ポリゴンにより構成されるオブジェクトを２次元平面に投影し、得られた二次元画像データをビデオメモリに描画し、ビデオメモリから周期的に画像データを読み出し表示装置に送りオブジェクトの表示が行われる。
【０００３】
かかる画像表示装置における表示装置に表示される画像に、より現実感を与えるためにはオブジェクトの影（シャドウ）の描画は重要である。特に、画像表示装置がゲーム装置である場合、処理の高速化を考慮した影（シャドウ）の描画のための効果的な表示制御方法が求められる。
【０００４】
従来技術として、シャドウの描画のための技術は、大別して次の２通りの段階の処理を有している。
【０００５】
（１）任意のオブジェクト群と任意の光源からシャドウの境界線を得る段階。
【０００６】
（２）シャドウを実際に画面上に描画する段階。
【０００７】
さらに、ゲーム装置において、表示装置に表示される背景画像に利用する場合、処理速度や描画速度の関係からほとんどの例では、シャドウの表示のための処理方法として次の３通りの方法が使用されている。
【０００８】
すなわち、第１の処理方法は、図１に示す例であり、オブジェクト１に対して斜め上方の光源Ｌから光を当てると、シャドウ１ａが生じる。このシャドウ１ａを描画するために、シャドウポリゴン１Ａを予め作成する。そして、このシャドウポリゴン１Ａをオブジェクト１に半透明乗算により重ねる方法である。
【０００９】
この方法は、コンピュータにほとんど負荷を掛けずに上記（１）の段階の処理をすることができる。また、設計者がシャドウを直接描くために、シャドウをデフォルメしたり、ボケ足を付けたりすることも容易である。しかし、図２に示すような複雑な形状のオブジェクト１Ｂに落ちるシャドウ１ａを作る場合、シャドウポリゴン１Ａもその形状を正確にトレースしなければならないために、シャドウポリゴン１Ａを構成するポリゴン数が異常に増えて、メモリや上記（２）の段階の描画処理を圧迫するという欠点がある。現実的には、地図などの単純な形状をしたものに落ちるシャドウの形成に限定される。
【００１０】
第２の処理方法は、用意されたシャドウボリュームからシャドウの境界線をハードウエアが計算し、その情報をもとにオブジェクトを描画する際に順次輝度を変化させる方法である。
【００１１】
すなわち、この処理方法において、図３に示す例を用いると、上記（１）の処理段階において、画面上の全てのオブジェクト１，１Ｂ，全てのシャドウボリューム１Ｃについて、陰面除去の応用で逐次判定をしながら境界線を得る。このために、シャドウの境界線が動的に得られるという圧倒的な利点がある。
【００１２】
しかし、画面内のオブジェクト１、１Ｂやシャドウボリューム１Ｃが増えると、コンピュータに莫大な計算量を要求するので、動くオブジェクトが少ない背景画像等においては、計算量が計算量の多くなるという点のみがネックとなる。上記（２）の段階におけるコンピュータへの負荷は低く抑えられるが、ハードウエア側でシャドウの境界線をぼかす等の絵画的演出は非常に困難である。また、設計者が作成する対象が、シャドウを生成する前段階のオブジェクトであるために、直感的にシャドウを制御できないという問題を有しています。
【００１３】
さらに、第３の処理方法は、光源方向からシーン全体のオブジェクトを一度レンダリングすることでシャドウの境界線をテクスチャとして得て、それを全てのオブジェクトに光源方向からマッピングする方法である。
【００１４】
図４にかかる第3の処理方法を適用するオブジェクト例を示す。図4において、光源L方向からシーン全体におけるオブジェクト１−１〜１−４（図４（ａ））を、一度レンダリングする（図４（ｂ））。そして、これを全てのオブジェクト１−１〜１−４に対し、光源L方向からマッピングする（図４（ｃ））。
【００１５】
この方法による場合、上記（１）の段階は、事前にオブジェクト１−１〜１−４をレンダリングしておくだけなので、ゲーム装置において、ゲーム実行中の処理を極めて軽くできる。また、マップであるので、デフォルメや境界線のぼかしも自由にできる。しかし、図4に示すように、オブジェクトが広範囲に渡って配置される場合、シャドウマップの解像度を非常に高くしないと有効なディテールを得られなくなるという欠点がある。
【００１６】
また、上記（２）の段階では、そのままマッピングすると、図５に示すように、光の当たらない面までシャドウが突き抜けてしまう。このために、正確にマッピングするためには、オブジェクトの前後関係、光源Lと面との関係をポリゴン毎に逐次判定する処理が必要になる。この逐次処理を省略してもまともに見えるシーンのみ現実的な使用が可能であるが、オブジェクト１−１〜１−４毎にマッピング処理が発生するのでオブジェクトが多くなると、パフォーマンスが低下するという問題を有している。
【００１７】
ここで、特許文献に表れた従来発明を検討すると、第1の従来発明として、処理の高速化を目的として所定の３次元形状オブジェクトの表面を近似的な平面に分割し、それぞれ分割された平面毎に、陰影の要否を判定するもの（特許文献１）。
【００１８】
第２の従来発明として、上記した第２の処理方法と関連するシャドウボリュームと、Z バッファ法とを併用する場合の問題点を解決する方法として、視線と所定のシャドウボリュームに属するシャドウポリゴンとの交差の回数の奇遇性を用いて画面上に見えている点が影の中にあるかどうかを判定することを開示している（特許文献２）。
【００１９】
さらに、第３の従来発明として、付影処理時間の短縮を目的とする方法の提供を目的とし、描画対象図形データの中から付影態様とする描画態様図形データを抽出して光源方向を奥行き方向とする光源座標系の描画対象図形データに変換し、変換後の描画対象図形についてのみ、光が当たる面が全面か一部か全く存在しないかを判別し、判別結果に基づいて光が当たらない領域に対応させて影情報に基づく描画処理を施すことにより付影処理が施された３次元描画を行なうものが開示されている（特許文献３）。
【特許文献１】特開平４−６５７８０号公報
【特許文献２】特公平７−２７５８１号公報
【特許文献３】特許第３００５９８１号公報
【発明の開示】
【発明が解決しようとする課題】
【００２０】
以上の従来技術に鑑み、本発明の目的は、画面上で表現される影にシャドウボリュームのような単色ではなく、濃淡を自由に付すことができ、また影の境界を適度にぼかすことを可能とし、簡易な処理により、よりリアリティのある影の描画を可能とする仮想三次元座標ポリゴンによるオブジェクト画像の表示制御方法及びこれを用いた画像表示装置を提供することにある。
【課題を解決するための手段】
【００２１】
上記の課題を達成する本発明に従うオブジェクト画像の表示制御方法及び画像表示装置の第1の態様は、仮想三次元座標空間に置かれ、複数のポリゴンにより形成されたオブジェクトのデータと、前記オブジェクトに対応する影のモデルである影オブジェクトのデータと、前記オブジェクトに対応して予め設定され、前記オブジェクトと前記影オブジェクトとの境界線部分について前記オブジェクトと重なる部分を有する遮蔽オブジェクトのデータと、を記憶手段から読み出す処理を前記制御手段に行わせ、
レンダラに、前記記憶手段から読み出された前記影オブジェクトと遮蔽オブジェクトとを、前記所定の視点位置からレンダリングして、得られた影画像の描画データをビデオメモリに展開する処理を行わせ、
前記制御手段に、前記ビデオメモリに展開された影画像の描画データを１／ｎの解像度に縮小して保存する処理を行わせ、
前記レンダラに、前記オブジェクトを前記所定の視点位置からレンダリングして、得られたオブジェクト画像の描画データを前記ビデオメモリに描画する処理を行わせ、次いで、前記保存された影画像の描画データをｎ倍に拡大して、前記ビデオメモリに描画されたオブジェクト画像とともに前記ビデオメモリに描画する処理を行わせ、
さらに、前記オブジェクト画像の描画データと影画像の描画データとを前記ビデオメモリから読み出して表示手段に表示させることを特徴とする。
【００２２】
上記の課題を達成する本発明に従うオブジェクト画像の表示制御方法及び画像表示装置の第２の態様は、第１の態様において、前記影オブジェクトのデータは影の透明度の情報を含み、前記保存された影画像の描画データをｎ倍に拡大して、前記ビデオメモリに描画されたオブジェクト画像とともに前記ビデオメモリに描画する処理において、前記透明度を反映して影画像を描画させることを特徴とする。
【００２３】
上記の課題を達成する本発明に従うオブジェクト画像の表示制御方法及び画像表示装置の第３の態様は、第２の態様において、さらに、前記オブジェクトの前記仮想空間内における高さの位置情報に基づき、前記影の透明度を変化させる処理を行うことを特徴とする。
【００２４】
さらに、上記の課題を達成する本発明に従うオブジェクト画像の表示制御方法及び画像表示装置は、別の観点からの第４の態様として、仮想三次元座標空間に置かれるオブジェクトと前記オブジェクトにより形成される影の像を、三次元座標を有する複数のポリゴンにより形成し、前記三次元座標を有する複数のポリゴンにより形成されるオブジェクトと影の三次元画像を二次元平面に投影し、前記二次元平面に投影して得られる影の画像をビデオメモリに描画し、前記ビデオメモリに描画された影の画像データを１／ｎ倍に縮小して保存し、前記二次元平面に投影して得られるオブジェクトの画像を前記ビデオメモリに描画し、前記保存された影の画像データをｎ倍に拡大して、前記ビデオメモリに描画されたオブジェクトの画像上に重ねて描画し、前記フレームバッファに重ねて描画されたオブジェクトと影の画像データをモニターに表示することを特徴とする。
【００２５】
上記の課題を達成する本発明に従うオブジェクト画像の表示制御方法及び画像表示装置の第２の態様は、第１の態様において、前記影の画像データを縮小して保存する縮小率を１／２（ｎ＝２）とすることを特徴とする。
【００２６】
上記の課題を達成する本発明に従うオブジェクト画像の表示制御方法及び画像表示装置の第５の態様は、第４の態様において、前記複数のポリゴンにより形成される影の像は、境界線を形成する任意の複数のポリゴンにより形成されることを特徴とする。
【００２７】
上記の課題を達成する本発明に従うオブジェクト画像の表示制御方法及び画像表示装置の第６の態様は、第５の態様において、前記影の像は、前記境界線の前記影を形成するオブジェクトとの境界線部分は、前記オブジェクトと重なる部分を有する遮蔽オブジェクトによって形成されることを特徴とする。
【００２８】
上記の課題を達成する本発明に従うオブジェクト画像の表示制御方法及び画像表示装置の第７の態様は、第６の態様において、前記遮蔽オブジェクトは、前記影の像をビデオメモリに描画する際に、描画を省略されることを特徴とする。
【００２９】
さらに、オブジェクトが建物等の静止した背景画像である場合、それに投影される影の像を予め作成して記憶手段に保存しておくことができる。かかる場合は、構成の特徴として、仮想三次元座標空間に配置されたオブジェクト像と、前記オブジェクトが前記仮想空間内の他のオブジェクトに対して落とす影の境界線をポリゴンデータとして定義した影オブジェクトのデータと、前記オブジェクトまたは前記影オブジェクトの少なくとも一方に関連づけて定義された遮蔽オブジェクトのデータとを記憶手段から読み出し、前記記憶手段から読み出された前記影オブジェクトと遮蔽オブジェクトとを前記仮想空間内に配置し、前記影オブジェクトと前記遮蔽オブジェクトとを前記所定の視点位置から透視変換し、前記影オブジェクトを透視変換した画像と前記遮蔽オブジェクトを透視変換した画像との境界線を求め、該境界線において前記影オブジェクトの透視変換画像と前記遮蔽オブジェクトの透視変換画像との重なる部分を除くか、あるいは表示手段に表示されないようにマスク情報を付加して影オブジェクトの投影画像をレンダリングして影画像の描画データを生成する処理を行わせ、
前記制御手段に、前記レンダリング処理により得られた影画像の描画データの解像度を１／ｎに縮小する処理を行わせ、
前記レンダラに、前記オブジェクトを前記所定の視点位置からレンダリングして、得られたオブジェクト画像の描画データをビデオメモリに格納する処理を行わせ、次いで、前記縮小された影画像の描画データの解像度をｎ倍に拡大して、前記ビデオメモリに格納されたオブジェクト画像と合成して表示画像データを生成する処理を行わせ、
さらに、前記制御手段に、前記表示画像データを表示手段に対して出力する処理を行わせる。
【００３０】
また、オブジェクトが例えばサッカーゲームにおける選手キャラクタなど、モデルデータとモーションデータを有する動画像である場合、それが仮想空間内における地面や他の物体に投影する影の像は、当該オブジェクトのモデルデータやそれを簡易化した（実際には描画されない）簡易モデルデータと、当該オブジェクトのモーションデータとを用いて、オブジェクトのモーションパターンに対応した形状の影オブジェクトを予め、あるいは動画像が更新されるごとに（例えば毎フレーム単位で）生成し、記憶手段に保持しておくようにすることができる。
【００３１】
本発明の特徴は、以下に図面に従い説明される実施の形態例から更に明らかになる。
【発明の効果】
【００３２】
本発明により、任意に影の輪郭部分の画素をぼかしたり、影に画素単位で濃淡を掛けることで影のリアリティを表現するソフトウエア処理及び専用のハードウエアを用いるピクセルシェーダを設けることなく、より軽い画像データの処理によりピクセルシェーダによる処理と同様の影の描画表現が可能である。
【発明を実施するための最良の形態】
【００３３】
以下図面に従い本発明の実施の形態例を説明する。なお、図に示される実施の形態例は、本発明の説明のためのものであり、本発明の技術的範囲がこれに限定されるものではない。
【００３４】
図６は、本発明の仮想三次元座標ポリゴンによるオブジェクト画像の表示制御方法を適用する画像表示装置の一構成例ブロック図であり、一般的なゲーム装置の構成例が適用可能である。図６の構成ブロックについて、動作の概略を説明しておく。
【００３５】
図６において、画像表示装置本体１００とモニター装置１０１及び遊戯者により操作される入力操作部１０２を有して構成される。また、適宜効果音を表示するためのスピーカ１０３が備えられている。
【００３６】
画像表示装置本体１００は、本体装置全体を制御する制御手段としてのＣＰＵ１０を有し、ハードディスク装置、外部メモリ装置等の記憶媒体１１に格納されたプログラムを実行制御する。メインメモリ１２は、プログラム実行中に処理データが一次格納される。
【００３７】
記憶媒体１１には、プログラムとともに表示データリストが格納されている。表示データリストは、プログラムの進行に対応して、モニター装置１０１に表示される、仮想三次元空間及び、そこに登場するキャラクタ等の画像オブジェクトを二次元座標面に透視投影して得られる画像を生成するための画像データを含んでいる。
【００３８】
ジオメトリ回路１３には、プログラムの実行に伴い、ＣＰＵ１０により記憶媒体１１に格納された前記の画像データがブリッジ回路１４を通して送られ、ここで所定の座標変換が行われる。
【００３９】
前記の所定の座標変換は、三次元画像データの基になる、画像データとしてのワールド座標データを、先ず所定の三次元空間座標系に座標変換する。次いで、三次元空間座標系に変換された画像データは、カメラ視点を原点とする視点座標系に変換する。
【００４０】
レンダラ１５は、ジオメトリ回路１３により視点座標系に変換された画像データを入力し、視線方向に二次元平面に透視投影し、更に優先度処理及び所定のテクスチャの貼り付けを行い、フレームバッファ若しくはビデオメモリ１６に展開する機能を有している。
【００４１】
ビデオメモリ１６に展開された画像データは、次いで表示コントローラ１７の制御により水平／垂直同期信号のタイミングに同期して、画面上のＸ，Ｙ座標位置に対応して画素ごとに順次に、モニター装置１０１に送出し表示される。
【００４２】
かかる画像表示装置において実行される本発明に従う画像の表示制御方法の処理フローが図７に示される。
【００４３】
図７において、先ず、先に説明したシャドウの描画のための技術における２通りの段階の(１)の段階である任意のオブジェクト群と任意の光源からシャドウの境界線を得る処理を行う（ステップＳ１）。
【００４４】
ゲームの進行に対応して、フレーム毎に以下の処理を行う。今、あるフレームにおいて図８Ａに示すような画像を得ようとする場合を考える。オブジェクト群として、２つのオブジェクト１，２を有し、多角柱のオブジェクト１の影３がオブジェクト２方向に延びている。
【００４５】
このような画像を想定して、ステップＳ１において、オブジェクト１がオブジェクト２に落とす影の境界線を得るための手順として、影オブジェクト３Ａ(図８Ａ、（ａ）)を用意し、当該影オブジェクト３Ａとオブジェクト１，２との境界を、ポリゴンデータとして定義する。なお、このとき、本発明において、影オブジェクト３Ａを構成するポリゴンは、影オブジェクト３Ａとオブジェクト１，２との境界線部分以外はオブジェクト１，２に沿う必要がないので任意に省略が可能である。また影オブジェクト３Ａは、予め作成しておいたデータを記憶手段１１から読み出してもよいし、オブジェクト１が動画像オブジェクトの場合はオブジェクト１のモデルとモーションを元に影オブジェクトを逐次生成する既存技術を用いて生成するようにしてもよい。
【００４６】
さらに、影オブジェクト３Ａが、その手前にあるオブジェクト１に隠される場合、この部分をマスクするために、図８Ｂに示すように、オブジェクト１がオブジェクト２に影を落とす部分の一部であって、影オブジェクト３Ａと視点の間に位置し影オブジェクト３Ａを遮る可能性がある部分、またはそれを簡略化した遮蔽オブジェクト１Ｐを定義する。かかる定義は、プログラムデータとして図６の画像表示装置の記憶媒体１１に予め格納される。この時、遮蔽オブジェクト１Ｐのポリゴンに対し、バーテックスカラーでオブジェクト１とは異なる色を付ける等の処理により、プログラムがオブジェクト１と遮蔽オブジェクト１Ｐを識別できるようにする。
【００４７】
次に、レンダラ１５において、仮想３次元座標系に置かれる視点カメラ位置からレンダリングを行う（ステップＳ２）。このレンダリングにおいて、先に影オブジェクト３Ａに対するレンダリングを行い、図８Ｃに示すように影オブジェクト３Ａの二次元透視変換画像である影の描画データ３ａが生成される（ステップＳ３）。
【００４８】
このとき、遮蔽用オブジェクト１Ｐはオブジェクト１と影オブジェクト３Ａの境界線を得る処理にのみ用いられ、ビデオメモリ１６への描画は行われない。したがって、図８Ｃにおいて、ビデオメモリ１６に描画された描画データ３ａにおいて、遮蔽用オブジェクト１Ｐに遮られる部分が切り取られている様子が示されている。また図８Cにおいて、影の描画データ３ａは遮蔽用オブジェクト１Ｐに遮られる部分が切り取られているが、代わりに遮蔽用オブジェクトに遮られる部分の画素にマスク情報を定義し、該マスク情報が定義された画素をビデオメモリに格納しないか、または該マスク情報が定義された画素を透明にして表示させるようにしてもよい。また図８Ｃにおいて、右側に示す図は○で囲んだエッジ部の状態を示している。
【００４９】
ついで、図８Ｄに示すように、影の描画データ３ａを１／ｎの解像度、例えば、１／２の解像度となるように解像度を落としてメモリ１２などに一旦格納する（ステップＳ４）。その後図８Ｅに示すように、他のオブジェクト１，２のレンダリングを行い、得られたオブジェクト１，２の描画データをビデオメモリ１６に上書きする（ステップＳ５）
次に、メモリ１２に解像度を落として格納されている影の描画データ(図８Ｄ参照)を読み出し、解像度を２倍に拡大してビデオメモリ１６に格納する（ステップＳ６）。
【００５０】
このようにしてビデオメモリ１６に格納されたフレーム像は、表示コントローラ１７により、一画素づつ読み出されモニター１０１に表示される。
【００５１】
図８Ｆは、モニター１０１に表示される図８Ａに対応する画像である。モニター１０１に表示されるシャドウ３ｂは、先のステップＳ６の処理において、読み出された影の画像データの解像度を２倍に拡大してビデオメモリ１６に格納する際に、レンダラ１５に備えたバイリニアフィルタなどの補間処理手段により画素の補間処理が行われ、結果として境界線がぼかされる。したがって、モニター１０１に表示される画像のシャドウ３ｂの境界がぼけて表示されている。
【００５２】
なお、この境界がぼけて表示されることにより、シャドウ３ｂの手前にあるオブジェクト１の境界もぼけて表示されるが、ゲーム装置においては実質的な不都合は無いレベルの画像を得ることができる。
【００５３】
図９Ａ乃至図９Ｃは、図８Ｂに示したシャドウポリゴン３と遮蔽用ポリゴン１Ｐが、視点カメラの移動によりどのように変化するかを示す図である。このように変化する過程におけるフレーム毎の像が、先に説明した図７の処理フローにより処理される。
【００５４】
ここで、上記処理に特徴を有する本発明を、特にサッカーゲーム等のゲーム装置に適用する場合は、以下のような対応が可能である。
【００５５】
例えば、サッカーゲームでは、オブジェクトとして、サッカー選手あるいはサッカーボールのようにフレームごとに動きのあるものと、背景の像となる競技場建物、観覧席等の静止したオブジェクト像が想定される。
【００５６】
本発明の適用において、動きのあるオブジェクトに対する影は、フレームごとにオブジェクト像のレンダリングに対応して、影の像を生成することにより対応する。このとき、影の投影される位置と、仮想空間に対して定義された影ないし光源の色、オブジェクト像の大きさ、上下移動変化等にあわせ、影の像の色や透明度を変化させる対応が可能である。例えば、オブジェクト像の三次元仮想空間内における高さのデータを用いて、オブジェクト像が高い位置にある程影の色や透明度を薄くするように処理することができる。
【００５７】
また、静止したオブジェクト像に対する影の像の場合は、予めオブジェクトとこれ対応する影の像を予め生成し、記憶手段に格納し、フレームごとに読み出し、レンダリング処理を行うようにすることが可能である。
【００５８】
かかる処理について、以下に実施例に基づき更に説明する。
【００５９】
図１０は、サッカーゲームにおける、あるフレームでのサッカー選手であるオブジェクト２０と、これにより作られるシャドウ２１がビデオメモリ１６に描画されてモニター１０１に表示された例を示している。かかる表示画像を得るために、該当フレームにおける処理として図１１Ａに示すようなシャドウポリゴンと図１１Ｂに示す遮蔽用オブジェクトのポリゴンを用意する。なお、図１１Ａ，図１１Ｂは、これらシャドウポリゴン及び遮蔽用オブジェクトのポリゴンを二次元平面にレンダリングした状態を示している。
【００６０】
図１２は、二次元平面にレンダリングしたシャドウポリゴンをビデオメモリ１６に描画し、更に１／２に圧縮して記憶されたデータを表している。図１２により理解されるように、遮蔽用オブジェクトにより隠される部分のデータが削除されて記録されている。
【００６１】
ついで、図１０に戻り説明すると、先ずサッカー選手であるオブジェクト２０がビデオメモリ１６に描画される。その後、解像度を圧縮して記憶されたシャドウポリゴンのデータを読み出し、元の大きさとなるように拡大してビデオメモリ１６に描画する。
【００６２】
図１３は、元の大きさに拡大描画されたシャドウポリゴンの描画データである。図１３のシャドウポリゴンの画像は、解像度が落とされているので、図１２との比較から輪郭がぼけて表示されていることが理解できる。
【００６３】
ここで、上記の実施の形態例では、シャドウのテクスチャは濃さが均一であらわされているように表示したが、本発明の適用はこれに限定されない。
【００６４】
すなわち、本発明の適用として、ゲーム装置において、オブジェクトの地面からの高さ方向にシャドウの濃さが変化するように表現することはよりリアリティを高めることができる。
【００６５】
以下に図１４Ａ〜図１４Ｅに従い説明する例は、本発明により表示されるオブジェクトの地面からの高さに対応してシャドウの濃さ(グラデーション)を変える実施の形態例である。
【００６６】
図１４Ａにおいて、地面から任意の高さに達した所をシャドウのグラデーションの透明度が１．０であると定義する。この定義に従うと、図１４Ｂに示す例ではオブジェクトの頭の高さ位置でシャドウの透明度が０．７となるようにシャドウのグラデーションが与えられる。
【００６７】
このとき、処理の簡単化の為に、図１４Ｃに示す如くにオブジェクトのパーツ毎に、前記の地面から任意の高さに対応して透明度が与えられる。シャドウの足部に対応するパーツ部分は透明度０．０、胴部は透明度０．５、頭部は透明度０．７の如くである。かかる処理原理に基づき、図１４Ｄに示すようにオブジェクトが地面から高く飛び上がった場合のシャドウの表示は、図14Ｅに示すように透明度が大きくなるように処理される。
【産業上の利用可能性】
【００６８】
上記した本発明の実施の形態例から明らかなように、本発明は、画面上で表現されるシャドウボリュームのような単色のものではなく、デザイナーが濃淡を自由に付けることができ、かつ、シャドウボリュームと同じようにシャドウが手前のオブジェクトに隠された時にそれを消すマスク処理も同時に行うことができる。
また生成されたシャドウを表示する際に、実施の形態際の画面解像度よりも小さい領域にシャドウをレンダリングしておくことにより、画像処理装置が備えるバイリニアフィルタ等の補間処理手段によって、更にシャドウの縁をぼかすことができ、より自然な影の表現が可能になる画像表示方法の提供が可能である。
【図面の簡単な説明】
【００６９】
【図１】従来技術におけるシャドウの表示のための第１の処理方法を説明する図(その１)である。
【図２】従来技術におけるシャドウの表示のための第１の処理方法を説明する図(その２)である。
【図３】従来技術におけるシャドウの表示のための第２の処理方法を説明する図(その１)である。
【図４】従来技術におけるシャドウの表示のための第３の処理方法を説明する図(その１)である。
【図５】従来技術におけるシャドウの表示のための第３の処理方法を説明する図(その２)である。
【図６】本発明の仮想三次元座標ポリゴンによるオブジェクト画像の表示制御方法を適用する画像表示装置の一構成例ブロック図である。
【図７】本発明に従う画像の表示制御方法の処理フロー図である。
【図８Ａ】図７の処理フローの説明において、対象とするあるフレームにおける画像の例を示す図である
【図８Ｂ】図７の処理フローの説明において、処理ステップＳ１に関連して説明する図である。
【図８Ｃ】図７の処理フローの説明において、処理ステップＳ２，Ｓ３に関連して説明する図である。
【図８Ｄ】図７の処理フローの説明において、処理ステップＳ４に関連して説明する図である。
【図８Ｅ】図７の処理フローの説明において、処理ステップＳ５に関連して説明する図である。
【図８Ｆ】図７の処理フローの説明において、処理ステップＳ６、Ｓ７に関連して説明する図である。
【図９Ａ】図８Ｂに示したシャドウポリゴン３と遮蔽用ポリゴン１Ｐが、視点カメラの移動によりどのように変化するかを示す図(その１)である。
【図９Ｂ】図８Ｂに示したシャドウポリゴン３と遮蔽用ポリゴン１Ｐが、視点カメラの移動によりどのように変化するかを示す図(その２)である。
【図９Ｃ】図８Ｂに示したシャドウポリゴン３と遮蔽用ポリゴン１Ｐが、視点カメラの移動によりどのように変化するかを示す図(その３)である。
【図１０】サッカーゲームにおける、あるフレームでの選手であるオブジェクト２０と、これにより作られるシャドウ２１がビデオメモリ１６に描画されてモニター１０１に表示された例を示す図である。
【図１１Ａ】図１０の表示に対応するシャドウポリゴンの例を示す図である。
【図１１Ｂ】図１０の表示に対応する遮蔽用オブジェクトのポリゴンの例を示す図である。
【図１２】二次元平面にレンダリングしたシャドウポリゴンをビデオメモリ１６に描画し、更に１／２に圧縮して記憶されたデータを表している。
【図１３】元の大きさに拡大描画されたシャドウポリゴンの描画データである。
【図１４Ａ】シャドウのグラデーションの透明度の定義を説明する図である。
【図１４Ｂ】オブジェクトの頭の高さ位置でシャドウの透明度が０．７となるようにシャドウのグラデーションが与えられた例を示す図である。
【図１４Ｃ】オブジェクトのパーツ毎に、地面から任意の高さに対応して透明度が与えられる例を示す図である。
【図１４Ｄ】オブジェクトが地面から高く飛び上がった場合を説明する図である。
【図１４Ｅ】図１４Ｄに対応するシャドウの表示を説明する図である。
【符号の説明】
【００７０】
１００  画像の表示装置本体
１０１  モニター装置
１０２  入力操作部
１０３  スピーカ
１０  ＣＰＵ
１１  記憶媒体
１２  メインメモリ
１３  ジオメトリ回路
１４  ブリッジ回路
１５  レンダラ
１６  ビデオメモリ
１７  表示コントローラ
【図１】
2005346417.tif 000003
【図２】
2005346417.tif 000004
【図３】
2005346417.tif 000005
【図４】
2005346417.tif 000006
【図５】
2005346417.tif 000007
【図６】
2005346417.tif 000008
【図７】
2005346417.tif 000009
【図８Ａ】
2005346417.tif 000010
【図８Ｂ】
2005346417.tif 000011
【図８Ｃ】
2005346417.tif 000012
【図８Ｄ】
2005346417.tif 000013
【図８Ｅ】
2005346417.tif 000014
【図８Ｆ】
2005346417.tif 000015
【図９Ａ】
2005346417.tif 000016
【図９Ｂ】
2005346417.tif 000017
【図９Ｃ】
2005346417.tif 000018
【図１０】
2005346417.tif 000019
【図１１Ａ】
2005346417.tif 000020
【図１１Ｂ】
2005346417.tif 000021
【図１２】
2005346417.tif 000022
【図１３】
2005346417.tif 000023
【図１４Ａ】
2005346417.tif 000024
【図１４Ｂ】
2005346417.tif 000025
【図１４Ｃ】
2005346417.tif 000026
【図１４Ｄ】
2005346417.tif 000027
【図１４Ｅ】
2005346417.tif 000028