説明

画像処理

【解決課題】 フィールド上のラインを視点との距離や視方向に拘わらず、鮮明に画面に表示することができる画像処理技術を提供する。
【解決手段】 メモリに記憶された画像処理プログラムに基づいて、複数のポリゴンからなるライン状のモデルを3次元仮想空間の座標系に配置するステップと、前記座標系に視点を設定するステップと、前記視点から見た前記モデルを透視変換するステップと、前記モデルの透視変換後の座標位置に所定ドット幅のライン状のテクスチャをフレームバッファに描画するステップと、を備え、前記モデルの透視変換後の座標に占める幅の如何に拘わらず、前記ライン状のテクスチャが最低ドット分の幅で前記モデル上に描画される画像処理方法である。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は画像処理技術に係わり、特に、家庭用ゲーム装置やコンピュータゲームのゲームアプリケーションに適用される画像処理方法に関するものである。
【背景技術】
【0002】
従来家庭用ゲーム装置のアプリケーションプログラムとして、サッカーゲームがある。このサッカーゲームでは、フィールドのライン(白線)を白線のテクスチャを貼り付けた複数のポリゴンから構成している。このプログラムでは、グローバル座標系に視点を定義し、視点から見た、この座標系のフィールドにあるラインのスクリーン像が透視変換されてフレームバッファに描画される。ラインから視点が遠く離れており、かつラインを見る視点の角度がラインに対して小さい場合には、ゲーム装置における表示装置の解像度の関係から、ラインが1ドット幅以下となり、ラインが途切れたり、点状に画面に表示される不都合があった。
このような問題を解決するために、特許第2955989号に開示されるように、フィールド上に置かれたラインのポリゴンを、視点から見て面積が増すように傾斜させることが行われている。
さらに図8には、ライン状のオフジェクトが正確に表示されない理由が説明されている。図8(2)のような、8個の三角形ポリゴンを隙間無く表示する場合を考える。図8(1)の□■▲はスクリーン上の1画素を表している。それぞれの三角形((2)の1−8)は隙間無く配置されているため、■の画素は隣り合う三角形と重なってしまう。重ならないようにするため、■の画素は一定のアルゴリズムに従って表示するかしないかが決定される。このことにより、ポリゴンの辺は正確に表現されない場合がある。ポリゴンの面積が小さくなるほど辺を表す画素の割合が増えるため、そのポリゴンの正確性が低下する。したがって、細長い形状のポリゴンは点線状に表示される場合や全く表示されない場合が出て来る。
【特許文献1】特許第2955989号
【発明の開示】
【発明が解決しようとする課題】
【0003】
本発明は、フィールド上のラインを視点との距離や視方向に拘わらず、鮮明に画面に表示することができる画像処理技術を提供することを目的とするものである。
【課題を解決するための手段】
【0004】
前記目的を達成するために、本発明は、画像処理演算ユニットを備えた画像処理装置による画像処理方法において、前記画像処理演算ユニットは、メモリに記憶された画像処理プログラムに基づいて、ポリゴンからなり、直線または曲線を成すモデルを3次元仮想空間の座標系に配置するステップと、前記座標系に視点を設定するステップと、前記視点から見た前記モデルを透視変換するステップと、前記モデルの透視変換後の座標位置に基づいて描画メモリに固定幅のラインを描画するステップと、を備え、前記モデルの透視変換後の座標に占める幅の如何に拘わらず、前記ラインが固定幅で前記モデルの透視変換後の座標位置に描画されることを特徴とする。
本発明によれば、透視変換後のライン状のモデル(オブジェクト)の幅が、仮に表示装置に表示される値以下、或いは図8に示すように、アルゴリズムの関係で表示されないことがあっても、ラインオブジェクトの位置に固定幅の別ラインが表示されるので、遊戯者が常にフィールドライン、例えば、サッカーゲームなどの球技ゲームにおけるプレイフィールドの境界(ライン)を、仮想視点の位置に拘わらず常に認識できるという利点がある。描画される別ラインの幅は、透視変換後のラインオブジェクトの幅が表示可能値以下の場合の対策の場合には、1画素(1ドット)分で足りる。
1ドット幅の別ラインは、ディスプレイ上で複数の画素を線状(直線状、曲線状、円状など)に連結し、好適には、これに1ドット幅の線状のテクスチャが適用されたものとして表示される。フレームバッファの所定画素の領域にこのテクスチャに対応したデータが設定される。テクスチャとして、白線のラインが好適である。
本発明は、また、前記各ステップをコンピュータに実行させるためのプログラムであり、さらに、前記プログラムが記憶された記録媒体である。
さらにまた、本発明は、画像処理プログラムが記憶されたメモリと、このプログラムに基づいて画像処理を実行する演算ユニットと、を備える画像処理装置において、前記演算ユニットは、ポリゴンからなり、直線または曲線を成すモデルを3次元仮想空間の座標系に配置する手段と、前記座標系に視点を設定する手段と、前記視点から見た前記モデルを透視変換する手段と、前記モデルの透視変換後の座標位置に基づいて描画メモリに固定幅のラインを描画する手段と、を備え、前記モデルの透視変換後の座標に占める幅の如何に拘わらず、前記ラインが所定ドット分の幅で前記モデルの透視変換後の座標位置に描画されるように構成された画像処理装置であることを特徴とする。
さらにまた、本発明は、記憶手段からオブジェクトのデータを読み出して三次元仮想空間内に配置し、前記オブジェクトを所定の視点から見た二次元投影画像を表示手段に出力するように構成された画像処理装置における画像処理プログラムであって、前記オブジェクトには前記二次元投影画像において所定幅の直線、線分ないし曲線として描かれるラインテクスチャが貼付され、前記記憶手段には、更に前記仮想空間における前記ラインテクスチャの位置座標に対応して設定された始点位置座標データと終点位置座標データとが格納されており、前記画像処理プログラムは、 前記オブジェクトを前記三次元空間内に配置するステップと、前記視点位置から前記オブジェクトと前記始点位置座標及び終点位置座標とを二次元透視変換するステップと、前記オブジェクトの二次元透視変換画像に重ねて、前記二次元透視変換された始点位置座標及び終点位置座標の間を結ぶ固定幅の線分を描画するステップと、を有することを特徴とする画像処理プログラムであることを特徴とする。
この発明によれば、ラインオブジェクトの二次元透視変換画像に重ねてラインオブジェクト両端部の位置座標間を結ぶ所定幅の直線をフレームバッファに描画するように構成されているために、例えば、透視変換後のラインオブジェクトが1画素以下になっても、常にラインオブジェクトの像が表示手段に表示されるようになる。
さらに本発明は、記憶手段からオブジェクトのデータを読み出して三次元仮想空間内に配置し、前記オブジェクトを所定の視点から見た二次元投影画像を表示手段に出力するように構成された画像処理装置における画像処理プログラムであって、前記オブジェクトには前記二次元投影画像において所定幅の直線、線分ないし曲線として描かれるラインテクスチャが貼付され、前記記憶手段には、更に前記仮想空間における前記ラインテクスチャの位置座標に対応して設定された始点位置座標データと終点位置座標データとが格納されており、前記画像処理プログラムは、 前記オブジェクトを前記三次元空間内に配置するステップと、前記視点位置から前記オブジェクトと前記始点位置座標及び終点位置座標とを二次元透視変換するステップと、前記オブジェクトの二次元透視変換画像に重ねて、前記二次元透視変換された始点位置座標及び終点位置座標の間を結ぶ固定幅の線分を描画するステップと、を有することを特徴とする画像処理プログラムであることを特徴とする。
【発明を実施するための最良の形態】
【0005】
図1は、本発明に係わる画像処理装置の一例としてのゲーム装置のブロック図を示す。ゲーム装置100は、ゲームプログラムやデータ(映像・音楽データも含む)が格納されたプログラムデータ記憶装置または記憶媒体(光ディスクおよび光ディスクドライブ等も含む)101と、ゲームプログラムの実行や全体システムの制御および画像表示のための座標計算等を行うCPU102と、CPU102が処理を行うのに必要なプログラムやデータが格納されるシステムメモリ103と、ゲーム装置100を起動するときに必要なプログラムやデータが格納されているBOOTROM104と、ゲーム装置100の各ブロックや外部に接続される機器とのプログラムやデータの流れを制御するバスアービタ105とを備え、これらはバスにそれぞれ接続されている。
バスにはレンダリングプロセッサ106が接続され、プログラムデータ記憶装置または記憶媒体101から読み出した映像(ムービ)データや、遊戯者の操作やゲーム進行に応じたて生成すべき画像は、レンダリングプロセッサ106によってディスプレィモニタ110に表示される。レンダリングプロセッサ106が画像生成を行うのに必要なグラフィックデータ等はグラフィックメモリ(フレームバッファ)107に格納されている。
バスにはサウンドプロセッサ108が接続され、プログラムデータ記憶装置または記憶媒体101から読み出した音楽データや、遊戯者の操作やゲーム進行に応じて生成すべき効果音や音声は、サウンドプロセッサ108によってスピーカ111から出力される。サウンドプロセッサ108が効果音や音声を生成するために必要なサウンドデータ等はサウンドメモリ109に格納される。
ゲーム装置100にはモデム112が接続され、電話回線(図示せず。)を通じて、他のゲーム装置100やネットワークサーバと通信を行い得る。さらにゲーム装置100にはゲームの途中経過の情報やモデムを通じて入出力されるプログラムデータを記録しておくバックアップメモリ113(ディスク記憶媒体や記憶装置も含まれる)と、操作者の操作に従ってゲーム装置100および外部に接続される機器を制御するための情報をゲーム装置100に入力するコントローラ114が接続されている。CPUとレンダリングプロセッセによって画像演算処理ユニットが構成される。
本発明の画像処理が適用される具体的な対象として、図1のゲーム装置を利用したサッカーゲームのアプリケーションなど、3次元仮想空間に定義されたフィールドがある。このフィールドを構成するラインに、本願発明の画像処理が適用される。
図2は、フィールド200上にラインオブジェクト202が置かれた状態を示す平面図である。このラインオブジェクトは複数のポリゴンから構成され、モニタ110にラインオブジェクトが表示される際には、透視変換後のポリゴンに白線のテクスチャが貼り付けられる。ゲームプログラムには、このラインのモデル(ラインオブジェクト)を構成するポリゴンの3次元仮想空間上の座標が定義されている。さらにこのゲームプログラムには、仮想視点の座標を変化させるデータが記憶されている。仮想視点の座標に基づいて、ラインオブジェクトを透視変換し、透視変換後のラインオブジェクトの位置にテクスチャを適用する。
図3は、ラインオブジェクトの画面表示例を示すものであり、ラインオブジェクトを構成する複数又は単数のポリゴン202の上に1ドット幅の別ライン204(別ライン)が置かれている状態の平面図である。この別ラインはグローバル座標系において、ラインオブジェクトのポリゴンの位置座標に対応した始点と終点の二点(例えば、ラインオブジェクト両端の短辺のそれぞれの中間点、長辺方向の両端の頂点座標など)を決め、この二点間を1ドットの幅で直線上に連結することによって定義される。この始点及び終点は各ポリゴン毎の相対座標系に定義され、ポリゴンが仮想3次元空間に置かれる際に、始点と終点の仮想空間上の座標系が決定される。
図4に示すように、ラインオブジェクト202は、三次元仮想空間(グローバル座標系)のフィールド200上に、フィールドに密着してあるいは僅かに上方(Y軸方向)に離れて配置される。仮想視点210から見たポリゴンラインは透視変換(2次元座標への変換)され、変換後の座標に基づいてグラフィックメモリにラインオブジェクトが描画される。
一方、別ラインについては、CPUあるいはレンダリングプロセッサが、仮想空間座標系における前記始点206と終点208の透視変換後の座標を演算し、グラフィックメモリの該当する画素を始点と終点に対応させる。次いで、画像処理演算ユニットは、始点と終点間を直線上に連結する複数の画素を決定し、これら画素を全て連結したものを、別ラインの描画像として定義する。
図4において始点210が矢印方向に移動するほど、すなわち、ラインオブジェクトから離れ、フィールド200に近づくにしたがって、視点から見たラインオブジェクトの幅が小さくなり、さらに視点が矢印方向に移動すると、視点から見たラインオブジェクトの幅が表示装置の表示可能幅以下になる。
図5(1)は、図4の視点210がラインポリゴンから遠く離れ、かつ視点の位置がフィールドに近い場合における、視点から見たラインの表示画面を示したものである。ラインポリゴン202の見え方が画素レベル以下となるか、あるいはラインオブジェクトを構成するポリゴンの辺部分の画素に係わる演算アルゴリズムの処理等によって、ラインが点線状になったり(202A)、ラインが途切れたり(202B)などの現象が発生する。(2)は、図5の別ラインが描画された場合におけるライン全体の見え方の模式図であり、当該の別ラインは視点210によって透視変換されて表示されるのではなく、グラフィックメモリに強制的に固定幅で描画されるものであるから、ポリゴンラインが途切れるような見え方の状態でも、該別ラインは画面に明瞭に表示される。このような状態ではそもそもラインの幅が狭く表示されるものであるので、別ラインの幅は1画素(ドット)あれば良い。
図6は、既述の説明に基づいて、図1に示すゲーム装置の画像処理の動作に係わるフローチャートである。S700では、画像処理演算ユニットは、視点の位置及び視方向を決定し、S702において、三次元仮想空間のフィールド、ラインオブジェクトを透視変換する。S704において、別ラインの始点と終点のスクリーン座標上の位置が決定され、S706においてこの始点と終点とを連結するグラフィックメモリ上の複数の画素が決定される。S708において、ラインオブジェクトと別ラインとを重ねて描画する。次いで、S710において、選手・ボールなど他のキャラクタがライン上に描画される。
なお、既述の説明では、別ラインを直線のものとして説明したが、これを曲線とすることもできる。図7は、ラインオブジェクトが複数のポリゴン600からなる略円形(多角形)に構成され、該円オブジェクトに対応して複数の始点603と終点604とが設定されており、これらの始点と終点を結んで別ライン602が描画されるように処理される。複数の別ラインは円形のラインオブジェクトに沿った略円形の外形を持つように連結される。なお、図7において、全てのポリゴンについて始点と終点が定義されたが、これを複数のポリゴンを連結したものを一つのポリゴンとしてその始点と終点を定義するようにしても良い。
また、フィールド上に配置される白線として、ラインを説明したが、長尺体、例えば紐のようなものをラインとすることもできる。
さらに前記実施例では、透視変換後のラインオブジェクトの見え方に拘わらず、ラインオブジェクトの像の上に別ラインを表示するようにしたが、透視変換後のラインオブジェクトの幅が表示可能以下の場合に別ラインを表示するようにしても良い。
既述の実施形態では、別ラインの幅を表示座標系における1画素分としたが、これに限られるものではないが、ラインオブジェクトが途切れて表示されるのはラインオブジェクトが縮小表示される場合であることを鑑みると、別ラインの幅は1画素分かそれに近い、少ない画素から表現されることが好ましい。
【図面の簡単な説明】
【0006】
【図1】本発明が適用されるゲーム装置のブロック図である。
【図2】本発明が適用されるラインのモデルを模式的に示した図である。
【図3】ラインオブジェクトの上に1ドット幅の別ラインが置かれた状態を示した原理図である。
【図4】ラインオブジェクトを視点に基づいて透視変換する場合の原理図である。
【図5】ラインオブジェクトの透視変換像の幅が表示可能範囲未満の場合のラインオブジェクトの表示像(1)と、1ドット幅の別ラインの表示像(2)を示す図である。
【図6】ラインの表示動作を示すフローチャートである。
【図7】ラインのモデルが円形の場合における、別ラインの表示動作を説明する原理図である。
【図8】ラインのモデルの描画動作の一例を示す原理図である。

【特許請求の範囲】
【請求項1】
画像処理演算ユニットを備えた画像処理装置による画像処理方法において、前記画像処理演算ユニットは、メモリに記憶された画像処理プログラムに基づいて、ポリゴンからなり、直線または曲線を成すモデルを3次元仮想空間の座標系に配置するステップと、前記座標系に視点を設定するステップと、前記視点から見た前記モデルを透視変換するステップと、前記モデルの透視変換後の座標位置に基づいて描画メモリに固定幅のラインを描画するステップと、を備え、前記モデルの透視変換後の座標に占める幅の如何に拘わらず、前記ラインが固定幅で前記モデルの透視変換後の座標位置に描画される画像処理方法。
【請求項2】
請求項1記載の各ステップをコンピュータに実行させるためのプログラム。
【請求項3】
画像処理プログラムが記憶されたメモリと、このプログラムに基づいて画像処理を実行する演算ユニットと、を備える画像処理装置において、前記演算ユニットは、ポリゴンからなり、直線または曲線を成すモデルを3次元仮想空間の座標系に配置する手段と、前記座標系に視点を設定する手段と、前記視点から見た前記モデルを透視変換する手段と、前記モデルの透視変換後の座標位置に基づいて描画メモリに固定幅のラインを描画する手段と、を備え、前記モデルの透視変換後の座標に占める幅の如何に拘わらず、前記ラインが所定ドット分の幅で前記モデルの透視変換後の座標位置に描画されるように構成された画像処理装置。
【請求項4】
記憶手段からオブジェクトのデータを読み出して三次元仮想空間内に配置し、前記オブジェクトを所定の視点から見た二次元投影画像を表示手段に出力するように構成された画像処理装置における画像処理プログラムであって、前記オブジェクトは、ポリゴンで構成され、前記三次元仮想空間内において所定幅の直線、線分ないし曲線を構成するラインオブジェクトであり、前記記憶手段には、更に前記仮想空間における前記ラインオブジェクトの位置座標に対応して設定された始点位置座標データと終点位置座標データとが格納されており、前記画像処理プログラムは、前記ラインオブジェクトを前記三次元空間内に配置するステップと、前記視点位置から前記ラインオブジェクトと前記始点位置座標及び終点位置座標とを二次元透視変換するステップと、前記ラインオブジェクトの二次元透視変換画像に重ねて前記二次元透視変換された始点位置座標及び終点位置座標の間を結ぶ線分を描画するステップと、を有することを特徴とする画像処理プログラム。
【請求項5】
記憶手段からオブジェクトのデータを読み出して三次元仮想空間内に配置し、前記オブジェクトを所定の視点から見た二次元投影画像を表示手段に出力するように構成された画像処理装置における画像処理プログラムであって、前記オブジェクトには前記二次元投影画像において所定幅の直線、線分ないし曲線として描かれるラインテクスチャが貼付され、前記記憶手段には、更に前記仮想空間における前記ラインテクスチャの位置座標に対応して設定された始点位置座標データと終点位置座標データとが格納されており、前記画像処理プログラムは、 前記オブジェクトを前記三次元空間内に配置するステップと、前記視点位置から前記オブジェクトと前記始点位置座標及び終点位置座標とを二次元透視変換するステップと、前記オブジェクトの二次元透視変換画像に重ねて、前記二次元透視変換された始点位置座標及び終点位置座標の間を結ぶ線分を描画するステップと、を有することを特徴とする画像処理プログラム。
【請求項6】
請求項4又は5の画像処理プログラムにおいて、前記二次元透視変換された始点位置座標及び終点位置座標の間を結ぶ線分を固定幅で描画することを特徴とする画像処理プログラム。
【請求項7】
請求項2、4乃至6記載のプログラムが記憶された記憶媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate