JP3181445B2 - 画像処理装置及び方法 - Google Patents
画像処理装置及び方法Info
- Publication number
- JP3181445B2 JP3181445B2 JP21634493A JP21634493A JP3181445B2 JP 3181445 B2 JP3181445 B2 JP 3181445B2 JP 21634493 A JP21634493 A JP 21634493A JP 21634493 A JP21634493 A JP 21634493A JP 3181445 B2 JP3181445 B2 JP 3181445B2
- Authority
- JP
- Japan
- Prior art keywords
- model
- display
- coordinate system
- virtual canvas
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
Description
【0001】
【産業上の利用分野】この発明は、3次元コンピュータ
グラフィックス処理を行う画像処理方法及び装置に関す
る。
グラフィックス処理を行う画像処理方法及び装置に関す
る。
【0002】
【従来の技術】近年、コンピュータグラフィック(C
G)を用いたゲームマシーン等が開発されているが、そ
の大半は2次元のCGシステムである。その理由として
は、3次元CGの場合、モデル座標系で表現されたモデ
ル情報(基本となるモデル)をワールド座標系(周辺の
全体状況で表現した状態)へ座標変換を施し、さらにこ
の後、視点座標系(視点からみて前後関係をもった描画
状態)へ変換する必要があり、これらの処理には、大量
の積和計算が必要となるからである。さらに視点座標系
から表示座標系に変換するには、立体的な描画状態にす
るために、透視変換が必要となり、この変換には除算を
必要とするために、リアルタイム性を要求されるゲーム
ではこれらの処理を行うために非常に高速な演算処理装
置が必要となる。故に、このような装置は価格が上昇し
てしまい、3次元CGを用いたゲームマシーンではアー
ケードゲーム等限られた所でしか用いられていない。
G)を用いたゲームマシーン等が開発されているが、そ
の大半は2次元のCGシステムである。その理由として
は、3次元CGの場合、モデル座標系で表現されたモデ
ル情報(基本となるモデル)をワールド座標系(周辺の
全体状況で表現した状態)へ座標変換を施し、さらにこ
の後、視点座標系(視点からみて前後関係をもった描画
状態)へ変換する必要があり、これらの処理には、大量
の積和計算が必要となるからである。さらに視点座標系
から表示座標系に変換するには、立体的な描画状態にす
るために、透視変換が必要となり、この変換には除算を
必要とするために、リアルタイム性を要求されるゲーム
ではこれらの処理を行うために非常に高速な演算処理装
置が必要となる。故に、このような装置は価格が上昇し
てしまい、3次元CGを用いたゲームマシーンではアー
ケードゲーム等限られた所でしか用いられていない。
【0003】図9は、従来のCGシステムの動作を説明
するために示したフローチャートである。モデル情報及
びワールド座標情報がモデル記憶部から読み出される
(ステップSa)。次にモデルをモデル座標系からワー
ルド座標系への変換を行う(ステップSb)。さらにワ
ールド座標系から視点座標系への変換を行う(ステップ
Sc)。この後、スクリーン座標系への変換として、透
視変換およびクリッピング処理が施され(ステップS
d)、この結果を基にモデルのポリゴン描画が行われる
(ステップSe)。このこのポリゴン描画処理により得
られた結果がビデオメモリに書き込まれ、表示される
(ステップAf、Sg)。
するために示したフローチャートである。モデル情報及
びワールド座標情報がモデル記憶部から読み出される
(ステップSa)。次にモデルをモデル座標系からワー
ルド座標系への変換を行う(ステップSb)。さらにワ
ールド座標系から視点座標系への変換を行う(ステップ
Sc)。この後、スクリーン座標系への変換として、透
視変換およびクリッピング処理が施され(ステップS
d)、この結果を基にモデルのポリゴン描画が行われる
(ステップSe)。このこのポリゴン描画処理により得
られた結果がビデオメモリに書き込まれ、表示される
(ステップAf、Sg)。
【0004】
【発明が解決しようとする課題】上記の如く、従来のリ
アルタイム3次元コンピュータグラフィックスでは、特
に透視変換処理においては、ポリゴン毎に除算を基本と
したの演算処理を行い、演算負荷が多大となる。このた
め高価な演算装置を使用しないと処理スピードが低下
し、高速な描画ができないという問題や、価格の上昇の
問題があった。
アルタイム3次元コンピュータグラフィックスでは、特
に透視変換処理においては、ポリゴン毎に除算を基本と
したの演算処理を行い、演算負荷が多大となる。このた
め高価な演算装置を使用しないと処理スピードが低下
し、高速な描画ができないという問題や、価格の上昇の
問題があった。
【0005】そこでこの発明は、さほど高速演算能力が
高くなくてもリアルタイム3次元CGを実現し、家庭用
ゲーム機等に有効な画像処理方法及び装置を提供するこ
とを目的とするものである。
高くなくてもリアルタイム3次元CGを実現し、家庭用
ゲーム機等に有効な画像処理方法及び装置を提供するこ
とを目的とするものである。
【0006】この発明は上記の目的を達成するために、
ワールドマップ座標系においてポリゴンを描画する装置
において、ポリゴンからならるモデルのモデル情報を記
憶するとともにワールドマップ情報を記憶したモデル情
報記憶部と、前記ワールドマップ情報を用いて、前記ワ
ールドマップ座標系での前記モデルの位置を判定し、ク
リッピング処理により表示対象モデルを決定する位置判
定手段と、前記表示対象モデルのモデル座標系を表示座
標系に変換する表示座標変換手段と、前記表示対象モデ
ルのモデル座標系を表示座標系に変換された情報を基
に、前記表示対象モデルをテクスチャデータ(またはス
プライトデータ)としてポリゴン描画して一時記憶する
描画手段と、前記位置判定された前記表示対象モデルに
対応した、仮想キャンバスを設定し、かつこの仮想キャ
ンバスの頂点の座標を用いて透視変換し、透視変換され
た仮想キャンバスを作成する手段と、前記透視変換され
た仮想キャンバスに対して、描画手段で作成された前記
表示対象モデルのテクスチャデータ(またはスプライト
データ)を合わせ込み表示用メモリに格納する表示制御
手段とを備えるものである。
ワールドマップ座標系においてポリゴンを描画する装置
において、ポリゴンからならるモデルのモデル情報を記
憶するとともにワールドマップ情報を記憶したモデル情
報記憶部と、前記ワールドマップ情報を用いて、前記ワ
ールドマップ座標系での前記モデルの位置を判定し、ク
リッピング処理により表示対象モデルを決定する位置判
定手段と、前記表示対象モデルのモデル座標系を表示座
標系に変換する表示座標変換手段と、前記表示対象モデ
ルのモデル座標系を表示座標系に変換された情報を基
に、前記表示対象モデルをテクスチャデータ(またはス
プライトデータ)としてポリゴン描画して一時記憶する
描画手段と、前記位置判定された前記表示対象モデルに
対応した、仮想キャンバスを設定し、かつこの仮想キャ
ンバスの頂点の座標を用いて透視変換し、透視変換され
た仮想キャンバスを作成する手段と、前記透視変換され
た仮想キャンバスに対して、描画手段で作成された前記
表示対象モデルのテクスチャデータ(またはスプライト
データ)を合わせ込み表示用メモリに格納する表示制御
手段とを備えるものである。
【0007】
【作用】上記の手段により、表示対象モデルを透視変換
する場合に、ポリゴン毎に透視変換を行う必要はなく、
仮想キャンバスに表示対象モデルを合わせ込み表示する
だけでよく、透視変換のための処理は、仮想キャンバス
の頂点だけでよく、演算処理回数は格段と少なくてよ
い。
する場合に、ポリゴン毎に透視変換を行う必要はなく、
仮想キャンバスに表示対象モデルを合わせ込み表示する
だけでよく、透視変換のための処理は、仮想キャンバス
の頂点だけでよく、演算処理回数は格段と少なくてよ
い。
【0008】
【実施例】以下、この発明の実施例を図面を参照して説
明する。図1はこの発明の一実施例であり、図2はこの
発明の一実施例のおけるデータ処理を説明するためのフ
ローチャートである。モデル情報記憶部11には、記憶
媒体としてROMカセット、ハードディスク、CD−R
OM等が用いられる。ここには、ポリゴンをベースにし
たモデル情報(各ポリゴンの頂点のモデル座標系での座
標位置、輝度、テクスチャ等)が記憶されている。さら
にまた、各モデルの絶対位置(X,Y,Z)の初期値を
格納したワールドマップ情報も格納されている。これら
のデータは、直接、画像処理部の情報格納部12に格納
されるか、外部メモリ13に一度格納された後、情報格
納部12に格納される。なおワールドマップ情報は、モ
デル自身の移動も考慮できるように、動的に書換え可能
である。
明する。図1はこの発明の一実施例であり、図2はこの
発明の一実施例のおけるデータ処理を説明するためのフ
ローチャートである。モデル情報記憶部11には、記憶
媒体としてROMカセット、ハードディスク、CD−R
OM等が用いられる。ここには、ポリゴンをベースにし
たモデル情報(各ポリゴンの頂点のモデル座標系での座
標位置、輝度、テクスチャ等)が記憶されている。さら
にまた、各モデルの絶対位置(X,Y,Z)の初期値を
格納したワールドマップ情報も格納されている。これら
のデータは、直接、画像処理部の情報格納部12に格納
されるか、外部メモリ13に一度格納された後、情報格
納部12に格納される。なおワールドマップ情報は、モ
デル自身の移動も考慮できるように、動的に書換え可能
である。
【0009】次に、前処理部14は、情報格納部12あ
るは外部メモリ13のワールドマップ情報を用いて、各
モデルの最初の位置(視点からの座標)を求める。これ
により、各モデルはワールドマップ座標系の位置が決ま
る。次に、ワールドマップ座標系の各モデルの最初の座
標が求まると、モデル間の前後関係等が明確となる。ま
た、設定した視野において、基準となる座標位置からの
距離が設定した値より後方、或いは前方となる部分(モ
デルやその一部)が生じるが、このような部分は、クリ
ッピング窓が用意され、クリッピング処理され表示対象
から除かれる。
るは外部メモリ13のワールドマップ情報を用いて、各
モデルの最初の位置(視点からの座標)を求める。これ
により、各モデルはワールドマップ座標系の位置が決ま
る。次に、ワールドマップ座標系の各モデルの最初の座
標が求まると、モデル間の前後関係等が明確となる。ま
た、設定した視野において、基準となる座標位置からの
距離が設定した値より後方、或いは前方となる部分(モ
デルやその一部)が生じるが、このような部分は、クリ
ッピング窓が用意され、クリッピング処理され表示対象
から除かれる。
【0010】さらに、前処理部14は、選択されたモデ
ルをモデル座標系(x,y,z)から視点座標系(X,
Y,Z)に変換する。この変換は、以下に示す式(1)
のアフィン変換により行われる。
ルをモデル座標系(x,y,z)から視点座標系(X,
Y,Z)に変換する。この変換は、以下に示す式(1)
のアフィン変換により行われる。
【0011】
【数1】
【0012】上記の式で得られた変換結果は、情報格納
部12あるいは外部メモリ13へ転送される。前処理部
14で上記の処理が終了した後、各ポリゴン情報(式
(1)で得られた座標値、輝度、テクスチャ座標等)
は、上記の情報格納部12あるいは外部メモリ13から
描画処理部15に転送される。
部12あるいは外部メモリ13へ転送される。前処理部
14で上記の処理が終了した後、各ポリゴン情報(式
(1)で得られた座標値、輝度、テクスチャ座標等)
は、上記の情報格納部12あるいは外部メモリ13から
描画処理部15に転送される。
【0013】次に、実際のモデルのデータは、描画処理
部15により、ポリゴンのシェーディング、テクスチャ
マッピング等をDDA(デジタル ディファレンシャル
アリスメティック)を用いて処理する。つまり2次元
スクリーン上に表示するための描画処理を行なう。この
ポリゴン描画処理として得られたピクセルデータは、フ
レームメモリ16のオフスクリーンエリアに2次元のテ
クスチャデータとして格納される。この2次元テクスチ
ャデータは、仮想キャンバスにモデルとして張り付ける
データである。まだこの状態では、奥行き感のない平面
的な描画状態のモデルである。
部15により、ポリゴンのシェーディング、テクスチャ
マッピング等をDDA(デジタル ディファレンシャル
アリスメティック)を用いて処理する。つまり2次元
スクリーン上に表示するための描画処理を行なう。この
ポリゴン描画処理として得られたピクセルデータは、フ
レームメモリ16のオフスクリーンエリアに2次元のテ
クスチャデータとして格納される。この2次元テクスチ
ャデータは、仮想キャンバスにモデルとして張り付ける
データである。まだこの状態では、奥行き感のない平面
的な描画状態のモデルである。
【0014】一方、描画処理部15がポリゴン描画処理
を行っている間に、前処理部14ではワールドマップ情
報から表示対象モデルに対して、仮想キャンバスにポリ
ゴン描画処理で得られた2次元のテクスチャを張り付け
るための仮想キャンバス位置を算出する。この処理は以
下のように行われる。
を行っている間に、前処理部14ではワールドマップ情
報から表示対象モデルに対して、仮想キャンバスにポリ
ゴン描画処理で得られた2次元のテクスチャを張り付け
るための仮想キャンバス位置を算出する。この処理は以
下のように行われる。
【0015】前処理部14で座標変換されたモデルのポ
リゴンデータのうち、X,Y方向の最大、最小値を求
め、その最大、最小値をもとに等倍の大きさの仮想キャ
ンバスをポリゴンをベースとして用意する。もしポリゴ
ンが3角形ベースの場合、2つのポリゴンを組み合わせ
ることにより仮想キャンバスを構成する。この仮想キャ
ンバスの座標値(x,y,z)は次の式(2)を用いて
表示座標系(X,Y,Z)へ座標変換される。
リゴンデータのうち、X,Y方向の最大、最小値を求
め、その最大、最小値をもとに等倍の大きさの仮想キャ
ンバスをポリゴンをベースとして用意する。もしポリゴ
ンが3角形ベースの場合、2つのポリゴンを組み合わせ
ることにより仮想キャンバスを構成する。この仮想キャ
ンバスの座標値(x,y,z)は次の式(2)を用いて
表示座標系(X,Y,Z)へ座標変換される。
【0016】
【数2】
【0017】上記の式(2)で求められた結果(X,
Y,Z)をもとに、前処理部40では透視変換が行われ
る。この透視変換は、後方クリッピングを行う際に求め
られた視点位置からモデルまでの距離Z´を利用して、
仮想キャンバスの例えば4頂点に対して行う。この透視
変換が行われた変換結果は、情報格納部12あるいは外
部メモリ13へ転送される。この変換処理により、仮想
キャンバスは奥行き感が描画された状態になる。
Y,Z)をもとに、前処理部40では透視変換が行われ
る。この透視変換は、後方クリッピングを行う際に求め
られた視点位置からモデルまでの距離Z´を利用して、
仮想キャンバスの例えば4頂点に対して行う。この透視
変換が行われた変換結果は、情報格納部12あるいは外
部メモリ13へ転送される。この変換処理により、仮想
キャンバスは奥行き感が描画された状態になる。
【0018】上記のように仮想キャンバスの座標変換、
透視変換、さらにはモデルのテクスチャデータ化が終了
した後は、仮想キャンバスの座標値が表示制御部17に
転送される。表示制御部17では、仮想キャンバス座標
値をもとに、対象となるモデルの2次元テクスチャデー
タに対してテクスチャDDAによりテクスチャパタンを
変形し、仮想キャンバス上にテクスチャマッピングを行
い、合わせてフレームメモリ16のオンスクリーンエリ
アの仮想キャンバス座標に書き込む。これにより、立体
描写の仮想キャンバスの中にテクスチャ化されたモデル
が立体描写されて表現されることになる。
透視変換、さらにはモデルのテクスチャデータ化が終了
した後は、仮想キャンバスの座標値が表示制御部17に
転送される。表示制御部17では、仮想キャンバス座標
値をもとに、対象となるモデルの2次元テクスチャデー
タに対してテクスチャDDAによりテクスチャパタンを
変形し、仮想キャンバス上にテクスチャマッピングを行
い、合わせてフレームメモリ16のオンスクリーンエリ
アの仮想キャンバス座標に書き込む。これにより、立体
描写の仮想キャンバスの中にテクスチャ化されたモデル
が立体描写されて表現されることになる。
【0019】フレームメモリ16に書き込まれたデータ
は、表示制御部17により制御されて表示部18に表示
される。図2は、上記の装置の画像処理経過を示すフロ
ーチャートである。
は、表示制御部17により制御されて表示部18に表示
される。図2は、上記の装置の画像処理経過を示すフロ
ーチャートである。
【0020】図3、図4は、上記の装置の画像処理例を
イメージ的に示す説明図である。今、図3に示すよう
な、画像を作成するものとする。この画像は、通路の壁
に窓があり、その前の机から花瓶が落ちている状態であ
る。このような絵画を作るには、モデル情報記憶部11
からワールドマップ情報を読み込み(ステップS1)、
さらに自分の視点位置を求める(ステップS2)。次
に、描画対象となるモデルを後方クリップ処理で決定し
(ステップS3)、対応するモデル情報(窓モデル10
1、机モデル102、花瓶モデル103、通路を作成す
るための壁モデル104)を読み込む。次にこのモデル
情報であるモデル座標系から表示座標系(視点座標系)
への座標変換を行う(ステップS4)。この変換は、表
示系(モデルを実際に見る方向)への座標変換である。
図の例では机モデル102、花瓶モデル103は、視点
位置によるモデルの回転移動が行われた場合を示す。
イメージ的に示す説明図である。今、図3に示すよう
な、画像を作成するものとする。この画像は、通路の壁
に窓があり、その前の机から花瓶が落ちている状態であ
る。このような絵画を作るには、モデル情報記憶部11
からワールドマップ情報を読み込み(ステップS1)、
さらに自分の視点位置を求める(ステップS2)。次
に、描画対象となるモデルを後方クリップ処理で決定し
(ステップS3)、対応するモデル情報(窓モデル10
1、机モデル102、花瓶モデル103、通路を作成す
るための壁モデル104)を読み込む。次にこのモデル
情報であるモデル座標系から表示座標系(視点座標系)
への座標変換を行う(ステップS4)。この変換は、表
示系(モデルを実際に見る方向)への座標変換である。
図の例では机モデル102、花瓶モデル103は、視点
位置によるモデルの回転移動が行われた場合を示す。
【0021】次に描画処理部15において各モデルのポ
リゴン描画が行われる(ステップS5)。このポリゴン
描画は、ポリゴンの座標系、輝度情報からピクセルデー
タに変換を行うもので、この実施例ではさらにモデルの
テクスチャ化を行い、2次元スクリーンに表示できるよ
うに座標変換される。このようにテクスチャ化された各
モデルは、フレームメモリ16のオフスクリーンエリア
に格納される(ステップS6)。
リゴン描画が行われる(ステップS5)。このポリゴン
描画は、ポリゴンの座標系、輝度情報からピクセルデー
タに変換を行うもので、この実施例ではさらにモデルの
テクスチャ化を行い、2次元スクリーンに表示できるよ
うに座標変換される。このようにテクスチャ化された各
モデルは、フレームメモリ16のオフスクリーンエリア
に格納される(ステップS6)。
【0022】一方、モデルのポリゴン描画処理に平行し
て仮想キャンバスが用意される(ステップS7)。仮想
キャンバスとは、上記したモデルを張り付けるための仮
想の面であり、モデルを位置させるための平面を意味す
る。この平面は、実際の表示アドレス上に座標変換され
る。この変換では、伸縮等の処理が行われる。次に、仮
想キャンバスの透視変換も行なわれる(ステップS8,
S9)。この様に透視変換された仮想キャンバス上に、
すでに処理済のテクスチャがマッピングされ、この画像
データが、フレームメモリ16の所定位置に書き込まれ
る(ステップS10、S11)。このテクスチャマッピ
ングのときにテクスチャDDAが行なわれる。図4の例
であると、窓モデル111のテクスチャの場合、仮想キ
ャンバスに張り付けられて、仮想キャンバスが透視変換
され、テクスチャDDAにより窓モデル111がマッピ
ングされると、奥行き感のある立体窓モデル131のよ
うに表現されることになる。また、花瓶モデル113の
テクスチャの場合、仮想キャンバスに張り付けられて、
仮想キャンバスが透視変換され、テクスチャDDAによ
り花瓶モデル113がマッピングされると、奥行き感の
ある立体花瓶モデル133のように表現されることにな
る。
て仮想キャンバスが用意される(ステップS7)。仮想
キャンバスとは、上記したモデルを張り付けるための仮
想の面であり、モデルを位置させるための平面を意味す
る。この平面は、実際の表示アドレス上に座標変換され
る。この変換では、伸縮等の処理が行われる。次に、仮
想キャンバスの透視変換も行なわれる(ステップS8,
S9)。この様に透視変換された仮想キャンバス上に、
すでに処理済のテクスチャがマッピングされ、この画像
データが、フレームメモリ16の所定位置に書き込まれ
る(ステップS10、S11)。このテクスチャマッピ
ングのときにテクスチャDDAが行なわれる。図4の例
であると、窓モデル111のテクスチャの場合、仮想キ
ャンバスに張り付けられて、仮想キャンバスが透視変換
され、テクスチャDDAにより窓モデル111がマッピ
ングされると、奥行き感のある立体窓モデル131のよ
うに表現されることになる。また、花瓶モデル113の
テクスチャの場合、仮想キャンバスに張り付けられて、
仮想キャンバスが透視変換され、テクスチャDDAによ
り花瓶モデル113がマッピングされると、奥行き感の
ある立体花瓶モデル133のように表現されることにな
る。
【0023】次に、このシステムの特徴である透視変換
について説明する。透視変換を行う場合、従来はモデル
を構成するポリゴンのすべてを用いて透視変換まで処理
を行っている。しかしこのシステムでは、仮想キャンバ
スの透視変換値を少なくとも4頂点で求め、仮想キャン
バスを透視変換し、これに合致するように、対象となる
テクスチァモデルをマッピングするようにしている。よ
って、モデル自体をポリゴン単位で透視変換する必要は
ない。以下、この透視変換処理について説明する。図5
に示すように、円筒形のモデル200が存在してした場
合、このモデルは、多数の三角形のポリゴンから構成さ
れている。具体的には、各ポリゴンの3つの頂点の座標
データ群からなる。ここで透視変換を行う場合には、奥
行き方向のデータzが用いられる。従来であると各頂点
の座標(X、Y、Z)と奥行きデータzを用いて、X´
=X/z、Y´=Y/z、Z´=1/Zなる演算によ
り、各ポリゴン単位の座標が求められている。しかし、
このシステムでは、例えば、図のようにモデル200の
ほぼ全体像を囲む位置にある4つの頂点Z1、Z2、Z
3、Z3の仮想キャンバスが用意され、その座標(X1
、Y1 、Z1 )(X2 、Y2 、Z2 )(X3 、Y3 、
Z3 )(X4 、Y4 、Z4 )を取りだし、これらの座標
の透視変換を行うものである。この透視変換を行った
後、残りの位置については、前方の座標データと後方の
座標データ間の座標データは直線で近似される。次に、
この仮想キャンバス上のテクスチャDDA処理により、
平面的なテクスチャモデルを合わせ込むものである。
について説明する。透視変換を行う場合、従来はモデル
を構成するポリゴンのすべてを用いて透視変換まで処理
を行っている。しかしこのシステムでは、仮想キャンバ
スの透視変換値を少なくとも4頂点で求め、仮想キャン
バスを透視変換し、これに合致するように、対象となる
テクスチァモデルをマッピングするようにしている。よ
って、モデル自体をポリゴン単位で透視変換する必要は
ない。以下、この透視変換処理について説明する。図5
に示すように、円筒形のモデル200が存在してした場
合、このモデルは、多数の三角形のポリゴンから構成さ
れている。具体的には、各ポリゴンの3つの頂点の座標
データ群からなる。ここで透視変換を行う場合には、奥
行き方向のデータzが用いられる。従来であると各頂点
の座標(X、Y、Z)と奥行きデータzを用いて、X´
=X/z、Y´=Y/z、Z´=1/Zなる演算によ
り、各ポリゴン単位の座標が求められている。しかし、
このシステムでは、例えば、図のようにモデル200の
ほぼ全体像を囲む位置にある4つの頂点Z1、Z2、Z
3、Z3の仮想キャンバスが用意され、その座標(X1
、Y1 、Z1 )(X2 、Y2 、Z2 )(X3 、Y3 、
Z3 )(X4 、Y4 、Z4 )を取りだし、これらの座標
の透視変換を行うものである。この透視変換を行った
後、残りの位置については、前方の座標データと後方の
座標データ間の座標データは直線で近似される。次に、
この仮想キャンバス上のテクスチャDDA処理により、
平面的なテクスチャモデルを合わせ込むものである。
【0024】この様にすると、透視変換のための演算処
理ステップ数は、従来に比べて格段と低減され、モデル
の透視変換を高速で行うことができる。上記の説明で
は、1つのモデルが4つの頂点内に治まるものとして説
明したが、これに限るものでは無く、さらに区切って透
視変換を行うようにしても良い。例えば図6に示すよう
な、変形した花瓶モデル210をさらに開口側から見た
状態に透視変換する場合、その軸方向へ複数のブロック
211、212、213に区切り、これらのブロックの
各頂点の座標を透視変換して、透視変換した座標を求め
るようにしてもよい。
理ステップ数は、従来に比べて格段と低減され、モデル
の透視変換を高速で行うことができる。上記の説明で
は、1つのモデルが4つの頂点内に治まるものとして説
明したが、これに限るものでは無く、さらに区切って透
視変換を行うようにしても良い。例えば図6に示すよう
な、変形した花瓶モデル210をさらに開口側から見た
状態に透視変換する場合、その軸方向へ複数のブロック
211、212、213に区切り、これらのブロックの
各頂点の座標を透視変換して、透視変換した座標を求め
るようにしてもよい。
【0025】図7はこの発明の第2の実施例である。先
の第1の実施例ではモデルを2次元テクスチャとして扱
った。この第2の実施例では2次元テクスチャの代わり
に従来ゲーム機器等で使用されいるスプライトを利用し
た場合について説明する。また図8は、上記の装置の画
像処理経過を示すフローチャートである。
の第1の実施例ではモデルを2次元テクスチャとして扱
った。この第2の実施例では2次元テクスチャの代わり
に従来ゲーム機器等で使用されいるスプライトを利用し
た場合について説明する。また図8は、上記の装置の画
像処理経過を示すフローチャートである。
【0026】ポリゴンをベースにしたモデル情報(各ポ
リゴンの頂点のモデル座標系での座標位置、輝度、テク
スチャ等)は、ROMカセットや、ハードディスク、C
D−ROM等のモデル情報記憶部21に記憶されてい
る。さらに各モデルの絶対値(X,Y,Z)の初期値を
格納したワールドマップも格納されている。これらのデ
ータは、直接、画像処理部の情報格納部22に格納され
るか、あるいは外部メモリ23に一度格納された後、情
報格納部22に格納される(図8のステップS1)。ま
ず最初に、前処理部24は、情報格納部22あるいは外
部メモリ23から読み出されたワールドマップ情報を用
いて、モデルの位置(座標)を求める(図8のステップ
S2)。これにより、モデルの表示される部分や位置が
明確になるので後方クリッピング、前方クリッピング等
の処理が行われる。この処理も前処理部24において行
われる。これにより実際に表示されるモデルが決定され
る(図8のステップS3)。このように選択されたモデ
ルは、そのモデル座標(x,y,z)から視点座標
(X,Y,Z)へ次のアフィン変換式(3)により変換
される(図8のステップS4)。
リゴンの頂点のモデル座標系での座標位置、輝度、テク
スチャ等)は、ROMカセットや、ハードディスク、C
D−ROM等のモデル情報記憶部21に記憶されてい
る。さらに各モデルの絶対値(X,Y,Z)の初期値を
格納したワールドマップも格納されている。これらのデ
ータは、直接、画像処理部の情報格納部22に格納され
るか、あるいは外部メモリ23に一度格納された後、情
報格納部22に格納される(図8のステップS1)。ま
ず最初に、前処理部24は、情報格納部22あるいは外
部メモリ23から読み出されたワールドマップ情報を用
いて、モデルの位置(座標)を求める(図8のステップ
S2)。これにより、モデルの表示される部分や位置が
明確になるので後方クリッピング、前方クリッピング等
の処理が行われる。この処理も前処理部24において行
われる。これにより実際に表示されるモデルが決定され
る(図8のステップS3)。このように選択されたモデ
ルは、そのモデル座標(x,y,z)から視点座標
(X,Y,Z)へ次のアフィン変換式(3)により変換
される(図8のステップS4)。
【0027】
【数3】
【0028】上記の式で得られた変換結果は、情報格納
部22あるいは外部メモリ23へ転送される。次に、前
処理部24で上記の処理が終了した後、各ポリゴン情報
(式(1)で得られた座標値、輝度、テクスチャ座標
等)は、上記の情報格納部22あるいは外部メモリ23
から描画処理部25に転送される。描画処理部25で
は、ポリゴンのシェーディング、テクスチャマッピング
等をDDAを用いて行う(図8のステップS5)。この
ポリゴン描画結果として得られたピクセルデータは、指
定されたスプライトサイズに分割され(図8のステップ
S6)、スプライト番号が付けられ、このスプライト番
号はスプライトコントロールテーブル27に登録され、
ピクセルデータは、フレームメモリ26のオフスクリー
ンエリアもしくはスプライトメモリ28に格納される
(図8のステップS7)。
部22あるいは外部メモリ23へ転送される。次に、前
処理部24で上記の処理が終了した後、各ポリゴン情報
(式(1)で得られた座標値、輝度、テクスチャ座標
等)は、上記の情報格納部22あるいは外部メモリ23
から描画処理部25に転送される。描画処理部25で
は、ポリゴンのシェーディング、テクスチャマッピング
等をDDAを用いて行う(図8のステップS5)。この
ポリゴン描画結果として得られたピクセルデータは、指
定されたスプライトサイズに分割され(図8のステップ
S6)、スプライト番号が付けられ、このスプライト番
号はスプライトコントロールテーブル27に登録され、
ピクセルデータは、フレームメモリ26のオフスクリー
ンエリアもしくはスプライトメモリ28に格納される
(図8のステップS7)。
【0029】一方、描画処理部25がポリゴン描画処理
を行っている間に、前処理部24では、ポリゴン描画処
理により得られた表示対象モデルに対するスプライトを
描画する位置を、ワールドマップから算出する(図8の
ステップS8)。以下この処理を説明する。
を行っている間に、前処理部24では、ポリゴン描画処
理により得られた表示対象モデルに対するスプライトを
描画する位置を、ワールドマップから算出する(図8の
ステップS8)。以下この処理を説明する。
【0030】前処理部24で座標変換されたモデルのポ
リゴンデータのうち、X,Y方向の最大、最小値を求
め、その最大、最小値をもとに仮想キャンバスをスプラ
イトサイズに合わせてポリゴンベースで用意する。ここ
で1つの仮想キャンバスは、1つのスプライトに対応す
るため仮想キャンバス数は、スプライトサイズで分割し
た数に等しい。もしポリゴンが三角形ベースの場合、2
つのポリゴンを組み合わせることにより仮想キャンバス
が構成される。この仮想キャンバスの座標値(x,y,
z)は、次の式(4)を用いて表示座標系(X,Y,
Z)へ座標変換される(図8のステップS9)。
リゴンデータのうち、X,Y方向の最大、最小値を求
め、その最大、最小値をもとに仮想キャンバスをスプラ
イトサイズに合わせてポリゴンベースで用意する。ここ
で1つの仮想キャンバスは、1つのスプライトに対応す
るため仮想キャンバス数は、スプライトサイズで分割し
た数に等しい。もしポリゴンが三角形ベースの場合、2
つのポリゴンを組み合わせることにより仮想キャンバス
が構成される。この仮想キャンバスの座標値(x,y,
z)は、次の式(4)を用いて表示座標系(X,Y,
Z)へ座標変換される(図8のステップS9)。
【0031】
【数4】
【0032】式(4)で求められた結果(X,Y,Z)
に基づいて、前処理部24では、後方クリッピングを行
う際に求められた基準位置からモデルまでの距離Z´を
利用してスプライトコントローラ(表示制御部)29に
転送するスプライトの伸張、伸縮率を算出し、これを式
(4)で求められた結果(X,Y,Z)と合わせて、情
報格納部22あるいは外部メモリ23に転送する。次
に、仮想キャンバスの4頂点に対して前処理部24で透
視変換処理が行われる(図8のステップS10)。表示
制御を行うスプライトコントローラ(表示制御部)29
では、座標データ等をコントローラ内部のコントロール
データメモリに格納し、コントロールデータとスプライ
トコントロールテーブル27にしたがって、スプライト
データをフレームメモリ26もしくはスプライトメモリ
18から読み出し表示を行う(図8のステップS11、
S12)。
に基づいて、前処理部24では、後方クリッピングを行
う際に求められた基準位置からモデルまでの距離Z´を
利用してスプライトコントローラ(表示制御部)29に
転送するスプライトの伸張、伸縮率を算出し、これを式
(4)で求められた結果(X,Y,Z)と合わせて、情
報格納部22あるいは外部メモリ23に転送する。次
に、仮想キャンバスの4頂点に対して前処理部24で透
視変換処理が行われる(図8のステップS10)。表示
制御を行うスプライトコントローラ(表示制御部)29
では、座標データ等をコントローラ内部のコントロール
データメモリに格納し、コントロールデータとスプライ
トコントロールテーブル27にしたがって、スプライト
データをフレームメモリ26もしくはスプライトメモリ
18から読み出し表示を行う(図8のステップS11、
S12)。
【0033】上記したように、この実施例によると、各
ポリゴン毎に透視変換を行うのではなく、テクスチャデ
ータあるいはスプライトデータとしてモデル全体を扱う
ために、透視変換処理を行うのは仮想キャンバスの4頂
点分となり、処理速度を極めて高速にすることができ
る。この効果は、モデルを構成するポリゴン数が多いほ
ど顕著になる。
ポリゴン毎に透視変換を行うのではなく、テクスチャデ
ータあるいはスプライトデータとしてモデル全体を扱う
ために、透視変換処理を行うのは仮想キャンバスの4頂
点分となり、処理速度を極めて高速にすることができ
る。この効果は、モデルを構成するポリゴン数が多いほ
ど顕著になる。
【0034】この発明は上記の実施例に限定されるもの
ではない。例えば、第1の実施例の場合、表示コントロ
ール部を描画処理部の一部として構成しても良い。また
第2の実施例の場合、仮想キャンバスは、モデル1つに
キャンバス1個を対応させて、モデル内のスプライト毎
の伸張、伸張率は補間した値を用いても良い。さらにま
た、上記の説明では4つの頂点における透視変換を行っ
ているが、これに限らず少なくとも3つの頂点であって
もよい。
ではない。例えば、第1の実施例の場合、表示コントロ
ール部を描画処理部の一部として構成しても良い。また
第2の実施例の場合、仮想キャンバスは、モデル1つに
キャンバス1個を対応させて、モデル内のスプライト毎
の伸張、伸張率は補間した値を用いても良い。さらにま
た、上記の説明では4つの頂点における透視変換を行っ
ているが、これに限らず少なくとも3つの頂点であって
もよい。
【0035】さらにまた、上記の説明では、テクスチャ
データ(オフスクリーンエリアに格納されている)を透
視変換された仮想キャンバスに合わせ込み表示するとし
ている。ここで、仮想キャンバスを再度計算しなおし
て、別の条件による透視変換を行い、再度テクスチャデ
ータを合わせ込み表示するようにすることにより、仮想
キャンバスを透視変換処理するだけで、種々の視点位置
から見た立体描画されたモデルを見ることができる。
データ(オフスクリーンエリアに格納されている)を透
視変換された仮想キャンバスに合わせ込み表示するとし
ている。ここで、仮想キャンバスを再度計算しなおし
て、別の条件による透視変換を行い、再度テクスチャデ
ータを合わせ込み表示するようにすることにより、仮想
キャンバスを透視変換処理するだけで、種々の視点位置
から見た立体描画されたモデルを見ることができる。
【0036】上記したように、このシステムによると、
3次元GCにおいて、CG画像を生成する際、表示モデ
ルをモデル座標系から表示座標系にアフィン変換を用い
て直接座標変換を行う。この結果は、矩形テクスチァデ
ータとして登録しておく。
3次元GCにおいて、CG画像を生成する際、表示モデ
ルをモデル座標系から表示座標系にアフィン変換を用い
て直接座標変換を行う。この結果は、矩形テクスチァデ
ータとして登録しておく。
【0037】一方、矩形テクスチャデータの頂点に対し
て、各頂点からの視点までの距離を求め、1/Zのオペ
レーションによるテクスチャ変形による透視変換を行う
ものである。
て、各頂点からの視点までの距離を求め、1/Zのオペ
レーションによるテクスチャ変形による透視変換を行う
ものである。
【0038】
【発明の効果】以上説明したようにこの発明によれば、
さほど高速演算能力が高くなくても3次元CGを実現す
ることができる。
さほど高速演算能力が高くなくても3次元CGを実現す
ることができる。
【図1】この発明の一実施例を示す図。
【図2】図1の装置の動作を説明するためのフローチャ
ート。
ート。
【図3】図1の装置の画像処理結果の一例を示す図。
【図4】図1の装置の画像処理の途中経過の例を説明す
るためにした図。
るためにした図。
【図5】図1の装置の透視変換処理の例を示す図。
【図6】図1の装置の仮想キャンバスの他の例を説明す
るための図。
るための図。
【図7】この発明の他の実施例を示す図。
【図8】図7の装置の動作を説明するためのフローチャ
ート。
ート。
【図9】従来のコンピュータグラフィックスシステムの
動作を説明するために示したフローチャート。
動作を説明するために示したフローチャート。
11、21…モデル情報記憶部、12、22…情報格納
部、13、23…外部メモリ、14、24…前処理部、
15、25…描画処理部、16、26…フレームメモ
リ、17、29…表示制御部、18、30…表示部、2
7…スプライトコントロールテーブル、28…スプライ
トメモリ。
部、13、23…外部メモリ、14、24…前処理部、
15、25…描画処理部、16、26…フレームメモ
リ、17、29…表示制御部、18、30…表示部、2
7…スプライトコントロールテーブル、28…スプライ
トメモリ。
Claims (3)
- 【請求項1】 ワールドマップ座標系においてポリゴン
を描画する装置において、 ポリゴンからならるモデルのモデル情報を記憶するとと
もにワールドマップ情報を記憶したモデル情報記憶部
と、前記 ワールドマップ情報を用いて、前記ワールドマップ
座標系での前記モデルの位置を判定し、クリッピング処
理により表示対象モデルを決定する位置判定手段と、 前記表示対象モデルのモデル座標系を表示座標系に変換
する表示座標変換手段と、 前記表示対象モデルのモデル座標系を表示座標系に変換
された情報を基に、前記表示対象モデルをテクスチャデ
ータ(またはスプライトデータ)としてポリゴン描画し
て一時記憶する描画手段と、前記位置判定された 前記表示対象モデルに対応した、仮
想キャンバスを設定し、かつこの仮想キャンバスの頂点
の座標を用いて透視変換し、透視変換された仮想キャン
バスを作成する手段と、 前記透視変換された仮想キャンバスに対して、描画手段
で作成された前記表示対象モデルのテクスチャデータ
(またはスプライトデータ)を合わせ込み表示用メモリ
に格納する表示制御手段とを具備したことを特徴とする
描画処理装置。 - 【請求項2】 ワールドマップ座標系においてポリゴン
を描画する方法において、 情報記憶部に記憶されているポリゴンからなるモデルの
モデル情報及びワールドマップ情報を用いて、前記モデ
ルの位置を判定し、クリッピング処理により表示対象モ
デルを決定する工程と、 前記表示対象モデルのモデル座標系を表示座標系に変換
する表示座標工程と、 前記表示座標変換工程で表示座標系に変換された座標情
報を基に、前記表示対象モデルのデータをテクスチャデ
ータ(またはスプライトデータ)としてポリゴン描画し
て、表示メモリのオフスクリーンエリアに一時記憶する
工程と、前記位置判定された 前記表示対象モデルに合致した、仮
想キャンバスを設定し、かつこの仮想キャンバスの頂点
の座標を用いて透視変換し、透視変換された仮想キャン
バスを作成する工程と、 前記透視変換された仮想キャンバスに対して、前記オフ
スクリーンエリアの前記表示対象モデルのテクスチャ
(またはスプライトデータ)を合わせ込み表示用メモリ
に格納する工程とを具備したことを特徴とする描画処理
方法。 - 【請求項3】 前記仮想キャンバスを透視変換するため
の各頂点の透視変換値(1/Z)は、前記ワールドマッ
プ情報から前記表示対象モデルの表示位置を判定する位
置判定手段で得られた奥行き情報(Z)が用いられてい
ることを特徴とする請求項1記載の画像処理装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21634493A JP3181445B2 (ja) | 1993-08-31 | 1993-08-31 | 画像処理装置及び方法 |
EP94111585A EP0642102B1 (en) | 1993-08-31 | 1994-07-25 | Apparatus and method for image processing |
DE69416758T DE69416758T2 (de) | 1993-08-31 | 1994-07-25 | Gerät und Verfahren zur Bildverarbeitung |
KR1019940021515A KR0166106B1 (ko) | 1993-08-31 | 1994-08-30 | 화상 처리 장치 및 그 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21634493A JP3181445B2 (ja) | 1993-08-31 | 1993-08-31 | 画像処理装置及び方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0765195A JPH0765195A (ja) | 1995-03-10 |
JP3181445B2 true JP3181445B2 (ja) | 2001-07-03 |
Family
ID=16687084
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP21634493A Expired - Fee Related JP3181445B2 (ja) | 1993-08-31 | 1993-08-31 | 画像処理装置及び方法 |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP0642102B1 (ja) |
JP (1) | JP3181445B2 (ja) |
KR (1) | KR0166106B1 (ja) |
DE (1) | DE69416758T2 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07282292A (ja) * | 1994-04-05 | 1995-10-27 | Toshiba Corp | テクスチャマッピング方法及び画像処理装置 |
EP1181669A1 (en) * | 1999-04-09 | 2002-02-27 | Sony Computer Entertainment Inc. | Method and apparatus for performing perspective transformation |
JP3708449B2 (ja) * | 2001-04-20 | 2005-10-19 | コナミ株式会社 | ゲーム画像生成処理プログラム、ゲーム画像生成処理方法及びゲームサーバ、並びにゲーム画像作成処理プログラム |
JP5320334B2 (ja) * | 2009-09-24 | 2013-10-23 | 株式会社東芝 | 画像処理装置及びプログラム |
US9104298B1 (en) | 2013-05-10 | 2015-08-11 | Trade Only Limited | Systems, methods, and devices for integrated product and electronic image fulfillment |
US10157408B2 (en) | 2016-07-29 | 2018-12-18 | Customer Focus Software Limited | Method, systems, and devices for integrated product and electronic image fulfillment from database |
US10248971B2 (en) | 2017-09-07 | 2019-04-02 | Customer Focus Software Limited | Methods, systems, and devices for dynamically generating a personalized advertisement on a website for manufacturing customizable products |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IL85614A (en) * | 1987-04-09 | 1991-12-12 | Gen Electric | Method for efficiently allocating computing resources for real-time image generation |
-
1993
- 1993-08-31 JP JP21634493A patent/JP3181445B2/ja not_active Expired - Fee Related
-
1994
- 1994-07-25 DE DE69416758T patent/DE69416758T2/de not_active Expired - Fee Related
- 1994-07-25 EP EP94111585A patent/EP0642102B1/en not_active Expired - Lifetime
- 1994-08-30 KR KR1019940021515A patent/KR0166106B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR950006644A (ko) | 1995-03-21 |
EP0642102A1 (en) | 1995-03-08 |
DE69416758T2 (de) | 1999-10-07 |
JPH0765195A (ja) | 1995-03-10 |
EP0642102B1 (en) | 1999-03-03 |
DE69416758D1 (de) | 1999-04-08 |
KR0166106B1 (ko) | 1999-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3184327B2 (ja) | 3次元グラフィックス処理方法及びその装置 | |
EP1143384B1 (en) | Apparatus and method for video signal processing | |
US5877769A (en) | Image processing apparatus and method | |
US20030216175A1 (en) | Game machine and game program | |
JPH0855239A (ja) | グラフィカル・オブジェクトの可視性を判定するための方法および装置 | |
US7158133B2 (en) | System and method for shadow rendering | |
JPH09330423A (ja) | 三次元形状データ変換装置 | |
JP3349871B2 (ja) | 画像処理装置 | |
US20010017629A1 (en) | Methods and apparatus for drawing contours of objects in video games | |
JP3181445B2 (ja) | 画像処理装置及び方法 | |
US6339430B1 (en) | Video game machine and method for changing texture of models | |
KR100381817B1 (ko) | 제트버퍼를 이용한 입체영상 생성방법 및 기록매체 | |
US5793372A (en) | Methods and apparatus for rapidly rendering photo-realistic surfaces on 3-dimensional wire frames automatically using user defined points | |
JP3748451B1 (ja) | プログラム、情報記憶媒体、及び画像生成システム | |
JP4749198B2 (ja) | プログラム、情報記憶媒体及び画像生成システム | |
JPH07271342A (ja) | 3次元スプライト描画装置 | |
US5838332A (en) | Graphic image rendering | |
US6483520B1 (en) | Image creating method and apparatus, recording medium for recording image creating program, and video game machine | |
KR100256472B1 (ko) | 사용자가 정의한 룸 및 윈도우를 이용하는 효율적인 렌더링 | |
EP0676724A2 (en) | Texture mapping method and image processing apparatus | |
JPH10334269A (ja) | 画像処理装置、画像処理方法、及び画像処理プログラムを記録した記録媒体 | |
EP1288863B1 (en) | Method and device for drawing | |
JP3052839B2 (ja) | 画像処理装置及びその処理方法 | |
JP2006268103A (ja) | プログラム、情報記憶媒体、モデルデータ構造及び画像生成システム | |
EP1249791B1 (en) | 3-D game image processing method and device for drawing border lines |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080420 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090420 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |