JP2807608B2 - ソーティング処理装置、これを用いた画像合成装置及びソーティング処理方法 - Google Patents
ソーティング処理装置、これを用いた画像合成装置及びソーティング処理方法Info
- Publication number
- JP2807608B2 JP2807608B2 JP4360425A JP36042592A JP2807608B2 JP 2807608 B2 JP2807608 B2 JP 2807608B2 JP 4360425 A JP4360425 A JP 4360425A JP 36042592 A JP36042592 A JP 36042592A JP 2807608 B2 JP2807608 B2 JP 2807608B2
- Authority
- JP
- Japan
- Prior art keywords
- value
- polygon
- sorting
- representative
- image
- 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 OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—Three-dimensional [3D] image rendering
- G06T15/10—Geometric effects
- G06T15/40—Hidden part removal
- G06T15/405—Hidden part removal using Z-buffer
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
- A63F2300/66—Methods for processing data by generating or executing the game program for rendering three dimensional images
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
Description
で合成出力することを可能とするソーティング処理装置
及びこれを用いた画像合成装置に関する。
―ム、飛行機及び各種乗物の操縦シュミレ―タ等に使用
される画像合成装置として、図15に示されるような画
像合成装置が使用されている。この画像合成装置では、
3次元オブジェクト300に関する画像情報があらかじ
め装置に記憶されている。例えばドライブゲームを例に
とれば、3次元オブジェクトはレーシングカーであり、
3次元空間内にはこの他に道路、家等の背景を表す種々
の3次元オブジェクトが配置されている。
04に設けられたハンドル等により回転、並進等の操作
を行うと、装置は、この操作信号に基づいてレーシング
カーである3次元オブジェクト300の回転、並進後の
情報をリアルタイムに演算し、これをスクリーン306
上に透視投影変換して疑似3次元画像として出力表示す
る。この結果、プレーヤ302は、自身の操作によりレ
ーシングカーである3次元オブジェクト300をリアル
タイムに回転、並進等することが可能となり、疑似3次
元空間を仮想シュミレートできることとなる。
16に示す。
報は、3次元ポリゴンに分割された多面体、即ち、図1
5における3次元ポリゴン(1) 〜(6) (3次元ポリゴン
(4)〜(6) は図示せず)に分割された多面体として表現
され、この各頂点座標及び付随データが画像供給部30
8内の3次元情報メモリ314に記憶されている。そし
て、この各頂点の座標は、3次元演算部316により読
み出され、操作部310からメインCPU312を介し
て入力された操作信号にしたがって、この各頂点座標に
対する回転、並進等の各種の演算及び透視変換等の各種
の座標変換が行われ、その後、ポリゴンデータとして画
像供給部308より出力される。
給部308から入力されるポリゴンの頂点座標を基に、
ポリゴン内部の全ドットが、対応する色データ等で塗り
つぶされる。
業を行う際に、ポリゴンとポリゴンが重なった場合は、
視点から見て奥側にある部分を消去(陰面消去)し、手
前側にある部分のみを表示画面に表示させる必要があ
る。このような陰面消去を行う手法として、従来は、Z
バッファ法と呼ばれる手法が用いられており、この手法
を実現するため画像表示部360は、ポリゴナイザ32
2とZバッファ324とを有している。ここで、Zバッ
ファ324は、表示画面の全てのドットに対応するメモ
リ空間を有する画像メモリであり、ここには対応するポ
リゴンの各ドットのZ値(視点からの距離)が記憶され
る。図17には、このZバッファ法の概念図が示され
る。
ェクト300、301の3次元ポリゴンX、Yは、スク
リーン306に透視変換されている。そして、図17
(b)に示す手順により、Zバッファ324に対して、
各ポリゴンの各ドットについてのZ値が書き込まれる。
てZ値の最大値M(通常は無限大値)が書き込まれてい
る。次に、例えばポリゴンXを描画する場合、描画する
ポリゴンの各ドットごとに、ポリゴンXのZ値がZバッ
ファ324の各ドットに記憶されているZ値よりも小さ
いか否かかが判断される。そして、小さいと判断された
場合には、そのドットについてポリゴナイザ322によ
り色の塗りつぶしが行われ、更に、Zバッファ324の
当該ドットに記憶されているZ値も更新される。具体的
には、対応する部分のZ値は、全てMからX1〜X12
に更新される。
する全てのドットについてZバッファ324が参照さ
れ、上記と同様の手順により色の塗りつぶしと、Zバッ
ファ324の更新が行われる。具体的には、X7、X
8、X11、X12がY1、Y2、Y5、Y6に更新さ
れ、ポリゴンYが描画される部分のMの値がY3、Y
4、Y7、Y8〜Y12に更新される。即ち、この場合
は、ポリゴンYの方がポリゴンXよりも手前にあるた
め、重なっている部分は、ポリゴンYのZ値へと置き変
わることとなる。
により各ポリゴンごとに色の塗りつぶしが行われ、この
塗りつぶされた色データは、パレット回路328にてR
GB変換され、CRT330にて画像表示が行われる。
画像合成装置では、リアルタイムに画像処理を行うこと
が要求されており、1フィールド毎、例えば1/60秒
毎に1画面分(場合によっていは2画面分)の画像デー
タを更新してゆく必要がある。従って、当該画像合成装
置には、画像処理の高速性が要求され、この高速性が担
保されないと、結果的に画質を低下させてしまうことと
なる。そして、この画像処理の高速性を最も律速する処
理部分は、最終的に各ドットを所定の色に塗りつぶして
行く処理部分である。
08においては、前記したように3次元ポリゴンの各頂
点ごとに処理を行えばよいのに対し、ポリゴナイザ32
2においては、表示画面の全てのドットに対して処理を
行う必要があるからである。具体的には、例えば640
×400ピクセルのCRTに画像表示を行うには、1フ
ィールド内、即ち(1/60)秒の間に、640×40
0=25万6000の全てのドットについての色の塗り
つぶしを完了しなければならない。従って、この色の塗
りつぶしを行う際の演算はなるべく簡易で、演算回数も
なるべく少ない方が好ましい。
の塗りつぶしを行う際には、Zバッファ324を参照
し、Zバッファに記憶されているZ値との比較を行い、
更に比較した結果をZバッファに書き込み、色の塗りつ
ぶしを行わなければならない。従って、この部分の演算
の負担が重く、リアルタイムに高画質の画像処理を行う
画像合成装置に使用される陰面消去の手法としては不向
きのものであった。
されたものであり、その目的とするところは、特にリア
ルタイムに画像処理を行うのに最適なソーテイング処理
装置及びこれを用いた画像合成装置を提供することにあ
る。
に、請求項1の本発明は、疑似3次元画像を構成する複
数のポリゴンの画像データが入力され、前記各ポリゴン
の画像データを、各ポリゴンを構成する各頂点に付与さ
れた奥行き方向を表すZ座標値に基づきソーティングし
て出力するソーティング処理装置であって、前記ポリゴ
ンの頂点のZ座標値からZ代表値をポリゴンごとに演算
し、このZ代表値をソーティング用Z値としてポリゴン
ごとに設定するソーティング用Z値設定部と、前記ソー
ティング用Z値により定められる優先順位にしたがって
ポリゴンの画像データを並べ変え、出力するソーティン
グ部とを含み、前記複数のポリゴンには、ポリゴンの特
性に合わせて前記Z代表値を設定するための代表値設定
パターンがポリゴンごとにあらかじめ指定され、前記ソ
ーティング用Z値設定部が、前記ポリゴンの頂点の前記
Z座標値から前記指定された代表値設定パターンを用い
て前記Z代表値の演算を行うことを特徴とする。
リゴンにより表現された3次元画像を、前記3次元ポリ
ゴンに対応するポリゴンごとに2次元平面に透視変換
し、疑似3次元画像を構成する複数のポリゴンの画像デ
ータを演算するとともに、前記画像データに、ポリゴン
を構成する各頂点に付与された奥行き方向を表すZ座標
値と、ポリゴンの特性に合わせて設定された代表値設定
パターン指定データとを含ませて出力する画像供給部
と、前記複数のポリゴンの画像データが順次入力され、
前記各ポリゴンの画像データをZ座標値に基づきソーテ
ィングして出力するソーティング処理装置と、を含み、
前記ソーティング処理装置は、前記ポリゴンの頂点のZ
座標値からZ代表値をポリゴンごとに演算し、このZ代
表値をソーティング用Z値としてポリゴン毎に設定する
ソーティング用Z値設定部と、前記ソーティング用Z値
により定められる優先順位にしたがってポリゴンの画像
データを並べ変え、出力するソーティング部とを含み、
前記ソーティング用Z値設定部が、前記ポリゴンの頂点
の前記Z座標値から前記指定データにより指定された前
記代表値設定パターンを用いて前記Z代表値の演算を行
うことを特徴とする。
グ用Z値設定部において用いられる前記代表値設定パタ
ーンが、前記ポリゴンの頂点のZ座標値の最小値、Z座
標値の最大値、前記最小値及び前記最大値の平均値のい
ずれかから前記Z代表値を選択するパターン、あるい
は、前記最大値、前記平均値のいずれかから前記Z代表
値を選択するパターン、あるいは、前記最小値、前記平
均値のいずれかから前記Z代表値を選択するパターン、
あるいは、前記最大値、前記最小値のいずれかから前記
Z代表値を選択するパターンであることを特徴とする。
グ用Z値設定部は、演算された前記Z代表値に、ポリゴ
ンごとに所定のシフト値を加算して前記ソーティング用
Z値を形成する、あるいは、複数のポリゴンで構成され
た3次元オブジェクトごとに所定のシフト値を加算して
前記ソーティング用Z値を形成する、あるいは、ポリゴ
ンごとに所定のシフト値を加算するとともに3次元オブ
ジェクトごとに所定のシフト値を加算してソーティング
用Z値を形成するシフト値加算手段を含むことを特徴と
する。
グ用Z値設定部は、前記演算されたZ代表値を、ポリゴ
ンごとに所定の固定値に設定して前記ソーティング用Z
値を形成する、あるいは、複数のポリゴンで構成された
3次元オブジェクトごとに所定の固定値に設定して前記
ソーティング用Z値を形成する、あるいは、ポリゴンご
とに所定の固定値に設定するとともに3次元オブジェク
トごとに所定の固定値に設定してソーティング用Z値を
形成するZ固定値設定手段を含むことを特徴とする。
グ用Z値設定部は、ポリゴンの優先順位を下位ビットの
値に関係なく絶対的に制御する絶対優先順位ビットを、
ソーティング用Z値の上位ビットに絶対優先順位部とし
て設定する絶対優先順位設定手段を含むことを特徴とす
る。
グ用Z値設定部は、前記絶対優先順位ビットに、ポリゴ
ンごとに所定のシフト値を加算する、あるいは、複数の
ポリゴンで構成された3次元オブジェクトごとに所定の
シフト値を加算する、あるいは、ポリゴンごとに所定の
シフト値を加算するとともに3次元オブジェクトごとに
所定のシフト値を加算する絶対優先順位シフト手段を含
むことを特徴とする。また、請求項8の発明は、複数の
ポリゴンの画像データを、ポリゴンを構成する各頂点に
付与された奥行き方向を表すZ座標値に基いてソーティ
ングするソーティング処理方法であって、前記ポリゴン
の頂点のZ座標値からZ代表値をポリゴンごとに演算
し、このZ代表値をソーティング用Z値としてポリゴン
ごとに設定するソーティング用Z値設定ステップと、前
記ソーティング用Z値により定められる優先順位にした
がってポリゴンの画像データを並べ変えるステップとを
含み、前記複数のポリゴンには、ポリゴンの特性に合わ
せて前記Z代表値を設定するための代表値設定パターン
がポリゴンごとにあらかじめ指定され、前記ソーティン
グ用Z値設定ステップは、前記ポリゴンの頂点の前記Z
座標値から前記指定された代表値設定パターンを用いて
前記Z代表値の演算を行うことを特徴とする。
リゴンのZ代表値が演算され、これをソーティング用Z
値として各ポリゴン毎に設定することができる。そし
て、ポリゴンの画像データが、このソーティング用Z値
により定められた優先順位にしたがってソーティングさ
れ出力される。従って、この出力順序にしたがって、そ
の後のポリゴンの描画処理を行えば、高速に陰面除去を
行うことかでき、特にリアルタイムに画像処理を行う画
像装置に最適なソーティング処理装置及びソーティング
処理方法となる。
憶されている複数の代表値設定パターンから、各ポリゴ
ンの特性に合わせて指定された代表値設定パターンを用
いて演算される。従って、表示する3次元画像の状態に
対応して、ポリゴン毎にこの代表値設定パターンの指定
を変えることで、表示画像を形成する際におけるポリゴ
ンの画像データの欠落等の事態を有効に防止できるソー
ティング処理が可能となる。
部は、ポリゴンの画像データに、ポリゴンの特性に合わ
せて設定される代表値設定パターンの指定データと、ポ
リゴンの各頂点の奥行きを表すZ座標値を含ませて出力
することができる。従って、ソーティング処理装置にお
いて、前記指定データにより指定される代表値設定パタ
ーンを用いて、前記Z座標値からZ代表値を演算し、こ
れをソーティング用Z値としてポリゴン毎に設定するこ
とができる。この結果、表示する3次元画像の状態に応
じてポリゴンの代表値設定パターンを変えることで、表
示画像を形成する際におけるポリゴンの画像データの欠
落等の事態を有効に防止できることとなる。
値設定パターンとして、ポリゴンの各頂点のZ座標の最
小値、最大値及びこれらの平均値から選択された少なく
とも2つをZ代表値として演算できるため、形成される
表示画像及びポリゴンの特性に合わせてこれを選択する
ことで、より効率のよい優先順位の設定が可能となる。
表値に対して、ポリゴンごとに、あるいは、3次元オブ
ジェクトごとに、あるいはポリゴンごとに及び3次元オ
ブジェクトごとに所定のシフト値を加算し、ソーティン
グ用Z値を形成することができる。これにより、Z代表
値の変更のみによっては回避できないポリゴンの欠落等
の事態をより効果的に防止できる。更に、3次元オブジ
ェクトごとにシフト値を加算することにより、3次元オ
ブジェクトを構成する3次元ポリゴンの全ての優先順位
を一度に変更することも可能となる。
表値を固定値に設定し、ソーティング用Z値を形成する
ことができる。従って、表示する3次元画像において、
優先順位が常に決まっているようなポリゴン又は3次元
オブジェクトに対して、そのソーティング用Z値を固定
値にすることで、より簡易にこれらの優先順位を決定す
ることができる。
順位設定部によりソーティング用Z値の上位ビットに絶
対優先順位部を形成できるため、これにより優先順位を
絶対的に制御することが可能となる。即ち、ソーティン
グ用Z値の下位ビットの如何に限らずこの絶対優先順位
部により優先順位を絶対的に制御できることとなる。こ
れにより、表示画像上に複数のウィンドウを形成するこ
とができ、更に、各ウィンドウ内で独立に優先順位の調
整をすることが可能となるため、より複雑で高度な優先
順位の制御が可能となる。
順位シフト部により、絶対優先順位ビットにシフト値を
加算することができる。これにより、前記設定された絶
対優先順位を任意に変更できることとなり、これによ
り、より高度な優先順位の制御が可能となる。
8とソーティング処理部320と画像表示部360とに
より構成される。
0からの操作信号にしたがって3次元情報メモリ314
に記憶されている3次元オブジェクトに対して、回転、
並進、透視変換等の座標変換及びクリッピング等の処理
を行って、これをポリゴンの各頂点ごとに与えられた画
像データとしてソーティング処理部320に出力するも
のである。
ポリゴンの画像データを、所定の優先順位にしたがって
並べ変え、画像表示部360に出力するものであり、詳
細については後述する。
の各頂点ごとに与えられた画像データより、ポリゴン内
部の画像データを演算して、これをCRT330に画像
出力するものである。
高画質の画像をより効率よく画像合成すべく、テクスチ
ャマッピング手法及びグーローシェーディング手法と呼
ぶ手法により画像合成を行っている。以下、これらの手
法の概念について簡単に説明する。
念について示される。
0の各面に例えば格子状、縞状の模様等が施されたもの
を画像合成する場合には、従来は、3次元オブジェクト
を、3次元ポリゴン(1) 〜(80)(3次元ポリゴン(41)〜
(80)については図示せず)に分割し、これらの全てのポ
リゴンに対して画像処理を行っていた。その理由は、従
来の画像合成装置では、1つのポリゴン内の色の塗りつ
ぶしは、指定された一つの色でしか行えなかったためで
ある。この結果、複雑な模様等が施された高画質な画像
を合成する場合には、ポリゴン数が非常に増加してしま
うため、実質的に、このような高画質の画像を合成する
ことは不可能であった。
ジェクト300の回転、並進、透視変換等の座標変換及
びクリッピング等の処理を、各面を構成する3次元ポリ
ゴンA、B、Cごとに行い(具体的には各3次元ポリゴ
ンの頂点ごと)、格子状、縞状の模様については、テク
スチャとして取り扱い、ポリゴンの処理と分割して処理
を行っている。即ち、図2に示すように画像表示部36
0内にはテクスチャ情報記憶部366が設けられ、この
中には各3次元ポリゴンにはり付けるべきテクスチャ情
報、つまり格子状、縞状の模様等の画像情報が記憶され
ている。
クスチャ情報記憶部366のアドレスを、各3次元ポリ
ゴンの各頂点に頂点テクスチャ座標VTX 、VTY とし
て与えておく。具体的には、図3に示すように、ポリゴ
ンAの各頂点に対しては、(VTX0、VTY0)、(VT
X1、VTY1)、(VTX2、VTY2)、(VTX3、VTY
3)の頂点テクスチャ座標が設定される。
ャ座標VTX 、VTY から、ポリゴン内の全てのドット
についてのテクスチャ座標TX 、TY が求められる。そ
して、求められたテクスチャ座標TX 、TY により、テ
クスチャ情報記憶部366から対応するテクスチャ情報
が読み出され、図3に示すような、格子状、縞状等のテ
クスチャが施された3次元オブジェクトを画像合成する
ことが可能となる。
大幅に減らすことができる。この結果、リアルタイムに
高画質な画像処理を行う画像合成装置に最適な構成とな
る。
3次元オブジェクト300を3次元ポリゴンの集合とし
て表現している。従って、各3次元ポリゴンの境界にお
ける輝度情報の連続性が問題となる。例えば複数の3次
元ポリゴンを用いて球を表現しようとする場合、3次元
ポリゴン内の全ドットが全て同じ輝度に設定されると、
実際は「丸み」を表現したいのに、各3次元ポリゴンの
境界が「丸み」として表現されない事態が生じる。そこ
で、本画像合成装置では、グーローシェーディングと呼
ばれる手法によりこれを回避している。この手法では、
前記したテクスチャマッピング手法と同様に、3次元ポ
リゴンの各頂点に図3に示すように頂点輝度情報I0 〜
I3 を与えておき、画像表示部360で最終的に画像表
示する際に、この頂点輝度座標I0 〜I3 より3次元ポ
リゴン内の全てのドットについての輝度情報を補間によ
り求めている。このようにすれば、前記した「丸み」の
問題を解決できると同時に、画像供給部308内での回
転、並進、座標変換等を行うデータの処理量も減らすこ
とが可能となる。従って、リアルタイムに高画質な画像
処理を行う画像合成装置に最適な構成となる。
スチャマッピング手法及びグーローシェ−ディング手法
を用いて、高画質で高速の画像処理が可能となる構成と
なっている。
呼ばれる画像合成装置に比べて、比較的面積の大きいポ
リゴンを取り扱う必要が生じる。その理由は以下の通り
である。
合成装置では、前記したように図3に示すように、テク
スチャを全てポリゴンに分解して処理しているのに対
し、本画像合成装置では、ポリゴンの処理は各面を構成
する3次元ポリゴンA、B、Cごとに行い、格子状、縞
状の模様等についてはテクスチャとしてこれを取り扱う
ことができる構成となっている。この結果、同じテクス
チャの施されたポリゴンは比較的大きな面積のポリゴン
として取り扱う必要が生じる。更に、本画像合成装置で
用いることができるグーローシェ−デイング手法によれ
ば、ポリゴンをあまり小さい部分に分解しなくても「丸
み」を表現できるため、これからも、取り扱うポリゴン
の面積は比較的大きなものとなる。
な面積のポリゴンを用いなければならず、このため小さ
なポリゴンも相変わらず存在する。従って、本画像合成
装置では、比較的大きな面積のポリゴンと小さな面積の
ポリゴンが混合したポリゴンデータに対して処理を行う
必要が生じることとなる。この結果、後述するように、
大きな面積のポリゴンにより小さな面積のポリゴンが隠
れてしまい、データが欠落してしまう事態もより頻繁に
生じることとなった。従って、このデータの欠落をいか
に防止するかが一つの大きな技術的課題となる。
は、テクスチャマッピング手法、グーローシェーディン
グ手法を用いた画像合成装置にのみ適用されるものでは
ない。従って、従来のポリゴナイザを用いた画像合成装
置等に対しても本ソーティング処理装置を当然に適用で
きる。 (2)画像供給部 画像供給部308は、図2に示すように操作部10、メ
インCPU回路312、3次元情報メモリ314、3次
元演算部316を含む。
0に関する画像情報は、3次元ポリゴンに分割された多
面体として表現され、この各頂点座標及び付随データが
3次元情報メモリ314に記憶されている。
を読み出し、操作部310からメインCPU312を介
して入力された操作信号にしたがって、この各頂点座標
に対し各種の演算処理を行っている。以下、この演算処
理を詳しく説明する。
図18に示すように、3次元情報メモリ314から読み
出されたハンドル、ビル、看板等を表す3次元オブジェ
クト300、332、334が、ワールド座標系(XW
、YW 、ZW )で表現される3次元空間上に配置され
る。その後、これらの3次元オブジェクトを表す画像情
報は、プレーヤ302の視点を基準とした視点座標系
(Xv、Yv、Zv)へと座標変換される。ここで、視
点座標系における座標Zvは奥行きを表すものでは、Z
vの値が大きいものほど疑似3次元画像において奥に位
置されることとなる。
る画像処理が行われる。ここで、クリッピング処理とは
プレーヤ302の視野外(又は3次元空間上で開かれた
ウィンドウの視野外)にある画像情報、即ち前方・後方
・右側・下方・左側・上方のクリッピング面340、3
42、344、346、348、350により囲まれ領
域(以下表示領域2とする)の外にある画像情報を除去
する画像処理をいう。つまり、本画像合成装置によりそ
の後の処理に必要とされる画像情報は、プレーヤ302
の視野内にある画像情報のみである。従って、クリッピ
ング処理によりこれ以外の情報をあらかじめ除去すれ
ば、その後の処理の負担を大幅に減らすことができるこ
ととなる。
のみ、スクリーン座標系(XS 、YS )への透視変換が
行われ、次段のソーティング処理部320へとデータが
出力される。
ポリゴンを3次元ポリゴンと呼び、透視変換された後の
ポリゴンをただ単にポリゴンと呼んでいる。但し、これ
は便宜上の呼び名にすぎず、実際上は、透視変換後のポ
リゴンであっても、ソーティング処理用及びテクスチャ
マッピング用に必要なZ値を有している。
されたデータ及びソーティング処理用のデータ等を用い
て、次段の画像表示部360において処理するポリゴン
の画像データの順序が決定され、その順序にしたがって
ポリゴンの画像データが出力される。具体的には、図1
8において、座標Zvの大きいもの、即ち、より奥にあ
るポリゴンの画像データから順次出力される。これによ
り、画像表示部360での演算処理は、より奥にあるポ
リゴンの画像データから順に行われることとなる。な
お、このソーティング処理部320の構成及び動作の詳
細ついては、後述する。 (3)画像表示部 画像表示部360は、ソーティング処理部320から所
定の順序にしたがって入力される、ポリゴンの頂点ごと
に与えられた画像情報から、3次元ポリゴン内部の全ド
ットの画像情報を演算する機能を有する。以下、画像表
示部360の動作の概略について簡単に説明する。
リゴンの画像データ、即ち、ポリゴンの各頂点に対応し
た頂点座標、頂点テクスチャ座標、頂点輝度情報等がプ
ロセッサ部362に順次入力される。また、ポリゴン内
の全てのデータに共通のデータは、アトリビュートデー
タとしてアトリビュートRAM部368に入力される。
頂点テクスチャ座標、頂点輝度情報等から、ポリゴン内
の全てのドットの表示座標、テクスチャ座標TX 、TY
、輝度情報BRIが求められる。そして、この求めら
れたテクスチャ座標TX 、TY、輝度情報BRIは前記
した表示座標をアドレスとしてフィールドバッファ部3
64に書き込まれる。
ファ部364からテクスチャ座標TX 、TY が読み出さ
れ、これをアドレスとしてテクスチャ記憶部366から
テクスチャ情報が読み出される。そして、この情報とア
トリビュートRAM部368からのアトリビュートデー
タとから、パレット&ミキサ回路370にてRGBデー
タが形成され、CRT330を介して画像出力されるこ
とになる。 2.ソーティング処理部の説明 (1)概念の説明 前述したように、従来のZバッファ法と呼ばれる陰面消
去の手法では、ポリゴンの内部の色の塗りつぶしを行う
際に、Zバッファ324を参照し、Zバッファに記憶さ
れているZ値との比較を行い、更に比較した結果をZバ
ッファに書き込み、色の塗りつぶしを行わなければなら
なかった。そして、この色の塗りつぶしは、例えば、
(1/60)秒の間に640×400=25万6000
の全てのドットについて完了しなければならないため、
リアルタイムに高画質な画像処理を行う画像合成装置に
不向きなものであった。特に本画像合成装置ではグーロ
ーシェーディングにより各ドットの輝度の演算も併せて
処理できる構成となっているため、かかる余計な演算処
理をなるべく省略する必要が生じる。
の全てのドットの代表となるZ値をZ代表値として求
め、これをソーティング用Z値としてポリゴンごとに設
定し、後の処理は全てこのソーティング用Z値で定めら
れる優先順位にしたがって、ポリゴンごとに行なってい
る。具体的には、例えば、ポリゴンの各頂点の最大値と
最小値の平均値をZ代表値として演算し、これをソーテ
ィング用Z値としてポリゴンごとに設定する。そして、
その後の処理、つまりポリゴンの描画処理は、このソー
ティング用Z値が最も大きいポリゴン、即ち表示画面に
向かって最も遠くにあるポリゴンから行うようにしてい
る。このような手法で処理することにより、ポリゴン内
の各ドットの処理を行う際にZバッファ等を参照する必
要がなくなり、リアルタイムに高画質の画像演算処理を
行う画像合成装置に最適なソーティング処理装置を提供
できることになる。
理を行った場合、以下のような問題が生じることが判明
した。
次元ポリゴン10と比較的小さな面積の3次元ポリゴン
14が比較的近くに配置されている場合が示される。こ
の場合、Z代表値=(Zmin +Zmax )/2の式にした
がって、3次元ポリゴン10に対応するポリゴン12の
Z代表値はZ1、3次元ポリゴン14に対応するポリゴ
ン16のZ代表値はZ2と演算される。そして、この後
の処理は、このZ1、Z2をソーティング用Z値として
ポリゴンごとに設定し、このソーティング用Z値で定め
られる優先順位にしたがって行われる。つまり、この場
合、Z1<Z2なので、ポリゴンの描画は、Z代表値の
大きいポリゴン16から先に行われ、次にポリゴン12
の描画が行われることになる。この結果、同図に示すよ
うにポリゴン16のデータが一部欠落してしまい、正し
い画像表示ができなくなるという事態が生じてしまう。
しく異なる2枚のポリゴンが近い位置にある時に起こり
やすい。そして、テクスチャマッピング手法、グーロー
シェーディング手法を用いた場合、前述したようにポリ
ゴンの面積が比較的大きなものとなるため、特に、この
ような事態が起こりやすい。従って、この事態をいかに
して回避するかが大きな技術的課題となる。
下の4つの手法を用いている。 (2)第1の手法及び構成 第1の手法は、Z代表値の算出方法をポリゴンごとに変
更する手法である。この第1の手法によるソーティング
処理部320は、図5(a)に示すようにソーティング
用Z値設定部100、ソーティング部120を含んで構
成される。
代表値演算部102が設けられている。このZ代表値演
算部102では、あらかじめポリゴンごとに、ポリゴン
の特性に合わせて指定された代表値設定パターンを用い
てZ代表値が演算される。即ち、本実施例では、例え
ば、以下にあげる代表値設定パターンのうち、ポリゴン
ごとにあらかじめ指定されたZ代表値設定パターンを用
いてZ代表値を演算することができる。 Z代表値=Zmin (ポリゴンの各頂点のZ値の最小
値)(以下「最小値」と呼ぶ) Z代表値=Zmax (ポリゴンの各頂点のZ値の最大
値)(以下「最大値」と呼ぶ) Z代表値=(Zmin +Zmax )/2(前記最小値と最大
値の平均値)(以下「平均値と呼ぶ) 上記された代表値設定パターンのうち、どの代表値設定
パターンを指定するかは、ゲーム空間等を形成するプロ
グラム及びポリゴンの位置、大きさ等の特性に応じて、
ポリゴンごとに変えることができる。即ち、当該指定を
行うための指定データは、後述する図9(b)に示すよ
うに、ポリゴンデータの中に含まれており、このポリゴ
ンデータは図2における3次元情報メモリ314内に記
憶されている。従って、ゲーム空間を形成するプログラ
ム及びポリゴンの特性に応じて、3次元情報メモリに記
憶されている当該指定データを書き換えることにより、
どの代表値設定パターンを指定するかを、ポリゴンごと
に選択できることとなる。
設定パターンのうち「平均値」が指定されており、Z代
表値としては「平均値」が演算される。通常のポリゴン
に対しては、この値に設定するのが最もデータの欠落等
のエラーを起こす可能性が少ないからである。そして、
この設定によってもデータの欠落等を生じさせるポリゴ
ンに対しては、Z代表値をZmax もしくはZmin に設定
し、これによって、データの欠落等のエラーを防止す
る。
うに看板20に、文字22、24、26が張り付いたよ
うな画像を合成する場合に有効である。このような位置
関係の3次元ポリゴンを画像合成する場合に、看板2
0、文字22、24、26の全てに対して「平均値」が
Z代表値になるように設定すると、文字22について
は、データの欠落はないが、文字24、26はデータが
欠落してしまう。従って、この場合は、看板20、文字
22、24、26の全てに対して「最大値」がZ代表値
となるように設定する。このようにすれば、看板20の
Z代表値が一番大きくなるため、看板10を描画した後
に、文字22、24、26が描画されることになり、デ
ータの欠落がなくなる。
値」、「平均値」の3種類の代表値設定パターンのいず
れかを選べる構成となっているが、本発明はこれに限ら
ず、例えば「最大値」及び「平均値」のうちのいずれか
を、又は、「最小値」及び「平均値」のうちのいずれか
を、または、「最大値」及び「最小値」のいずれかを選
ぶ構成としてもよい。
記のものに限らず、例えば全頂点のZ値の平均値をZ代
表値とする代表値設定パターンも可能である。但し、こ
の場合は、計算コストという意味では不利になる。
いてポリゴンごとにZ代表値が演算された後、これがソ
ーティング用Z値として各ポリゴンごとに設定される。
このようにソーティング用Z値が設定されたポリゴンデ
ータは、ソーティング部120に入力される。ソーティ
ング部120において、このソーティング用Z値を用い
てポリゴンデータの優先順位が決定される。具体的には
ソーティング用Z値が一番大きいポリゴンデータが最も
高い優先順位に設定される。そして、この優先順位にし
たがって、即ち、ソーティング用Z値が大きい順にポリ
ゴンデータがソーティング部120より出力される。こ
れにより後段の画像供給部360では、この出力順序に
したがってポリゴンデータを処理することになる。この
結果、ソーティング用Z値の大きい順にポリゴンの描画
処理が行われ、簡易でエラーの少ないの陰面消去処理が
可能となる。
にシフト値を加算して、より適切な優先順位を算出する
手法である。この手法は、例えば、3以上の複数の3次
元ポリゴン、3次元オブジェクトが複雑に配列されてい
る場合に、これらのポリゴン、3次元オブジェクトの優
先順位を、より適切なものとすることができる。
320は、図6(a)に示すように、ソーティング用Z
値設定部100内に、Z代表値演算部102の他に更
に、ポリゴン用シフト値加算部104及びオブジェクト
用シフト値加算部108が設けられた構成となってい
る。この構成により、Z代表値演算部102で演算され
たZ代表値に対してシフト値を加算することが可能とな
る。この場合、ポリゴンごとのシフト値加算はポリゴン
用シフト値加算部104において行われる。また、オブ
ジェクト用シフト値加算部108では、3次元オブジェ
クトごとにシフト値を加算することができる。これによ
り、3次元オブジェクトを構成するポリゴンの全てに、
所定のシフト値を一度に加算することが可能となり、更
に効率のよい優先順位の設定の調整が可能となる。
9、図10に示すように、ポリゴンデータ、オブジェク
トデータに含まれるソーティング制御用データの中に、
Zシフト値として設定されている。そして、このソーテ
ィング制御用データは、3次元情報メモリ内に、ポリゴ
ン、3次元オブジェクトの他の画像データと共に記憶さ
れている。従って、この記憶されたデータを書き換える
ことにより、ポリゴンごと、3次元オブジェクトごと
に、Zシフト値の設定を変更することが可能となる。
に、そのZ代表値が「平均値」にしか設定できず、しか
も同図に示すような位置関係にある3次元ポリゴン3
0、32に対して有効である。即ち、この場合、3次元
ポリゴン32に対応するポリゴンのZ代表値Z2の方
が、3次元ポリゴンに対応するポリゴンのZ代表値Z1
よりも大きくなる。この結果、3次元ポリゴン32に対
応するポリゴンのデータが欠落する結果となる。そこ
で、かかるポリゴンのZ代表値に適当な負の値のシフト
値を加算してソーティング用Z値を形成する。これによ
り、Z2’<Z1とすることにより、正しい優先順位に
設定することができ、3次元ポリゴン32に対応するポ
リゴンのデータの欠落を有効に防止できる。また、この
場合、逆に、正の値のシフト値をZ1に加算して調整し
てもよい。
宜上、3次元ポリゴンに対応するポリゴン、即ち、3次
元ポリゴンに対して透視変換を行った後のポリゴンにつ
いても3次元ポリゴンと同じ符号をつけてこれを呼ぶこ
ととする。従って、例えば3次元ポリゴン32及び当該
3次元ポリゴンに対応するポリゴンを呼ぶ場合には、こ
れらをポリゴン32と総称して呼ぶこととする。
ゴンの3次元座標におけるZ座標値とは全く別のもので
あり、ソーティング用にのみ用いられる独立なものであ
ることに留意すべきである。即ち、例えばZ代表値Z1
に、非常に大きな正のシフト値を加算しても、実際のポ
リゴン30のZ座標値には全く影響を与えない。従っ
て、ポリゴン30が必ずポリゴン32の後ろにあるよう
な物のポリゴンである場合には、非常に大きな正のシフ
ト値をポリゴン30のZ代表値に加算してもよいことと
なる。そして、このように大きなシフト値を加算するこ
とにより、種々の視点方向からポリゴンを見た場合で
も、正しい優先順位の関係を保つことが可能となる。例
えばドライビングゲームを例にとれば、道のガードレー
ルの向こうにある家、木等の背景などには、大きなシフ
ト値を加算することで、正しい優先順位を保つことが可
能となる。
に遠ざける方が有効な場合について説明したが、図6
(c)には、逆にこれらのポリゴンのZ代表値を近づけ
る方が有効な場合について示されている。
うな位置関係にあり、プレーヤ302の視点位置がA、
B、Cと変化した場合、プレーヤ302から見えるポリ
ゴン34、36の見え方は次のように変化しなければな
らない。即ち、プレーヤ302の視点位置がAである場
合はポリゴン34の方が上に見え、視点位置がBである
場合は両者平行となり、視点位置がCである場合はポリ
ゴン36の方が上に見えるように変化しなければならな
い。ところが、同図に示されるように、ポリゴン36が
ポリゴン34より比較的離れた位置にあると、この変化
の様子を忠実に再現できなくなる場合が生じる。つま
り、視点位置BからCに変化しても、Z1<Z2である
ため、ポリゴン34の方がポリゴン36より上にあると
判断されてしまい、現実に見えるべき画像を忠実に再現
できない事態となる。
代表値Z2に負のシフト値を加算することによりこれを
解決している。すなわち、視点位置がCにあるときにZ
1>Z2’となるようにシフト値を加算することによ
り、かかる事態を解決することが可能となる。この場合
でも、ある程度の優先順位の狂いは避けれないが、狂い
の程度は大きく改善されることとなる。特に2枚の板状
のものが回転する場合などに、この回転状態を、効果的
に、優先順位の狂いがあまりないように再現することが
可能となる。 (4)第3の手法及び構成 第3の手法は、算出されたZ代表値を強制的に固定値に
設定してソーティング用Z値を得る手法である。この第
3の手法によるソーティング処理部320は、図7
(a)に示すように、ソーティング用Z値設定部100
内に、Z代表値演算部102、ポリゴン用シフト値加算
部104、オブジェクト用シフト値加算部108の他
に、更にポリゴン用Z固定値設定部106、オブジェク
ト用Z固定値設定部110が設けられた構成となってい
る。このポリゴン用Z固定値設定部106、オブジェク
ト用Z固定値設定部110により、ポリゴンごとに、ま
た、オブジェクトごとに、Z代表値を固定値に設定する
ことが可能となる。この手法は、例えば背景画面のよう
に、必ず他のポリゴン、3次元オブジェクトよりも奥に
あり、その間の優先順位の関係も常に決まっているよう
なポリゴン、3次元オブジェクトに対する優先順位の決
定を行う場合に有効である。
ームに適用した場合の表示画像を示したものである。同
図に示すように、このようなドライビングゲームでは、
ゲーム中において空40、山42、地面44、道46等
の3次元オブジェクトの位置関係は決まっており、例え
ば、空40についてはどの様な状況においても一番奥に
位置される。従って、この場合、これらの3次元オブジ
ェクト、又は、これらの3次元オブジェクトに対応する
ポリゴンのZ代表値を、ポリゴン用Z固定値設定部10
6、オブジェクト用Z固定値設定部110にて固定値に
設定して、ソーティング用Z値を生成する。即ち、図7
(b)に示す場合においては、空40、山42、地面4
4、道46のZ代表値を固定値Z1、Z2、Z3、Z4
とし、その大きさがZ1>Z2>Z3>Z4となるよう
に設定する。これにより同図(b)に示す正しい優先順
位により形成された画像を合成することができることと
なる。なお、この場合、これらのZ1、Z2、Z3、Z
4の値は、できる限り大きい値、即ち、他のポリゴン、
3次元オブジェクトのZ代表値よりも常に大きくなるよ
うな値に設定することが望ましい。
は、後述する図9、図10に示すように、ポリゴンデー
タ、オブジェクトデータ内のソーティング制御用データ
の中に、Z固定値としてあらかじめ設定されている。従
って、このZ固定値を書き換えることにより、ポリゴン
ごと、3次元オブジェクトごとにZ固定値の設定を行う
ことができることとなる。 (5)第4の手法及び構成 第4の手法は、演算されたZ代表値の上位ビットに絶対
優先順位ビットを設け、この絶対優先順位ビットによ
り、優先順位を絶対的に制御する手法である。この手法
によるソーティング処理部320は、図1に示すよう
に、Z代表値演算部102、ポリゴン用・オブジェクト
用シフト値加算部104、108、ポリゴン用・オブジ
ェクト用Z固定値設定部106、110の他に、更に、
絶対優先順位設定部112、ポリゴン用絶対優先順位シ
フト部114、オブジェクト用絶対優先順位シフト部1
16を設けた構成となっている。この絶対優先順位設定
部112により、演算されたZ代表値の上位ビットに、
前記絶対優先順位ビットを設定することが可能となる。
また、ポリゴン用絶対優先順位シフト部114、オブジ
ェクト用絶対優先順位シフト部116により、この設定
された絶対優先順位ビットに、ポリゴンごと、または3
次元オブジェクトごとにシフト値を加算することが可能
となる。
に、表示画面上にウィンドウ50、52を形成すること
ができる。そして、このウィンドウの形成により、例え
ばドライビングゲームにおいて、バックミラー、サイド
ミラー、レーシングカー49を種々の視界方向から見た
映像等を、表示画面上に画像表示することが可能とな
る。ここで、図8では、ウィンドウ50がバックミラー
に該当し、ウィンドウ52がレーシングカー49を上か
らみた映像に該当する。かかるウィンドウの形成は、以
下のようにして行う。
道44、道路46等のポリゴンの絶対優先順位ビットを
(000)に設定する。また、ウィンドウ52内にある
道44、道路46、レーシングカー49等のポリゴンの
絶対優先順位ビットを(001)に設定する。そして、
ウィンドウ50、52の外にある全てのポリゴン、3次
元オブジェクトの絶対優先順位ビットを(010)に設
定する。これによりウィンドウ50内にあるポリゴンの
ソーティング用Z値は全て、ウィンドウ52内にあるポ
リゴンのソーティング用Z値より常に小さくなる。ま
た、ウィンドウ52内にあるポリゴンのソーティング用
Z値は全て、ウィンドウ50、52の外にあるポリゴン
のソーティング用Z値よりも常に小さくなる。これによ
り、バックミラー及びレーシングカーを上から見た映像
が重ね合って合成された表示画面を形成することが可能
となる。
することにより以下のような効果が得られる。
は、後述する図10に示すように、ソーティング制御用
データ内に絶対優先順位シフト値として、ポリゴンご
と、3次元オブジェクトごとに設定できるようになって
いる。従って、この絶対優先順位シフト値を設定するこ
とにより、設定されたポリゴン、3次元オブジェクト
を、他のポリゴン、3次元オブジェクトの優先順位に関
係なく、絶対的に前に表示させたり、後ろに表示させた
りすることが可能となる。これにより、従来にない映像
効果を演出することが可能となる。 (6)ソーティング用Z値設定部の動作 画像供給部308内では、図9(a)(b)に示すフォ
ーマットのデータに対して処理を行っている。
理されるデータのフォーマットの全体図が示されてい
る。同図に示すように、処理されるデータは、フレーム
データを先頭に、このフレーム内に表示される全てのオ
ブジェクトのオブジェクトデータが連なるようにして構
成されている。そして、このオブジェクトデータの後に
は、このオブジェクトを構成するポリゴンのポリゴンデ
ータが更に連なるように続いて構成されている。
とに変化するパラメータにより形成されるデータをい
い、1フレーム内の全ての3次元オブジェクトに共通な
データであるプレーヤの視点位置・角度・視野角情報、
モニタの角度・大きさ情報、光源の情報等のデータより
構成される。これらのデータは1フレームごとに設定さ
れ、例えば前記のように表示画面上にウィンドウを形成
した場合は、ウィンドウごとに異なるフレームデータが
設定される。即ち、前述した図8に示すウィンドウ50
(バックミラー)では、フレームデータのうち視点角度
に関する情報がプレーヤの視点角度に対して後向きの方
向に設定される。また、ウィンドウ52では視点角度が
レーシングカーに対して上向きの方向に設定される。な
お、前記した手法4に用いる絶対優先順位ビットに関す
る情報も、このフレームデータ内に含まれている。
ブジェクトごとに変化するパラメータにより形成される
データをいい、3次元オブジェクト単位での位置情報、
回転情報等のデータより構成される。
像情報等により形成されるデータをいい、図9(b)に
示すように、ヘッダ、代表値設定データ、ソーティング
制御用データ、ポリゴンの頂点輝度座標I0 〜I3 、頂
点テクスチャ座標TX0、TY0〜TX3、TY3、頂点座標X
0 、Y0 、Z0 〜X3 、Y3 、Z3 等のデータより構成
される。但し、本発明では、四角形のものに限らず、あ
らゆる頂点数の多角形をポリゴンとして取り扱うことが
できる。従って、前記したポリゴンデータは、多角形の
頂点数がnである場合は、ポリゴンの頂点数輝度座標は
I0 〜In となり、頂点テクスチャ座標はTX0、TYo〜
TXn、TYnとなり、頂点座標はX0 、Y0 、Z0 〜Xn
、Yn 、Zn となる。
標は、前記したように、グーローシェーディング手法又
はテクスチャマッピング手法を用いた場合にのみ必要な
データである。
代表値設定パターンからどの設定パターンを選択して代
表値を演算するかを指定するデータである。
ーティング処理を制御するためのデータであり、図10
(a)、(b)に示すフォーマットのデータである。ソ
ーティング制御用データは22ビットで構成され、シフ
ト値加算用のソーティング制御用データ(図10
(a))と、Z固定値設定用のソーティング制御用デー
タ(図10(b))の2種類がある。
が0に設定され、3ビットの絶対順位シフト値及び18
ビットのZシフト値より構成され、それぞれ絶対優先順
位ビットのシフト値加算及びZ代表値のシフト値加算に
使用される。
が1に設定され、21ビットのZ固定値より構成され、
Z固定値の設定用データとして使用される。
同図中のオブジェクトデータ内にも、図10(a)、
(b)に示すフォーマットのソーティング制御用のデー
タが含まれており、これにより3次元オブジェクトごと
の、シフト値加算、Z固定値の設定が可能となる。
データが入力されポリゴンデータのソーティング処理が
行われている。これを図1を用いて以下説明する。
ータがZ代表値演算部102に入力される。そして、Z
代表値演算部102では、このポリゴンデータ内に含ま
れる頂点座標を用いて、前記した手法によりZ代表値の
演算が行われる。この場合、どの代表値設定パターンか
らZ代表値を設定するかは、上記した代表値設定データ
により指定される。
ィング制御用データの最上位ビットが参照され、これが
「0」である場合は、ポリゴン用シフト値加算部104
においてポリゴンごとのシフト値加算が行われる。逆
に、これが「1」である場合には、ポリゴン用Z固定値
設定部106においてポリゴンごとのZ固定値の設定が
行われる。なお、これらの場合に加算されるシフト値及
び設定されるZ固定値は、図10(a)(b)における
Zシフト値及びZ固定値である。
8及びオブジェクト用Z固定値設定部110では、3次
元オブジェクトごとのシフト値加算、及びZ固定値の設
定が行われる。即ち、まず、オブジェクトデータ内に含
まれるソーティング制御用データの最上位ビットが参照
され、これによりシフト値加算するか、Z固定値に設定
するかが選択される。シフト値加算が選択された場合
は、この3次元オブジェクトに含まれる全てのポリゴン
のZ代表値に対してZシフト値が加算される。具体的に
は、図9(a)において、例えばオブジェクト1に含ま
れる全てのポリゴンデータのZ代表値に対してシフト値
加算の演算が行われる。また、Z固定値の設定が選択さ
れた場合は、同様にして、3次元オブジェクトに含まれ
る全てのポリゴンのZ代表値に対して、Z固定値の設定
が行われる。
たフレームデータを用いて3ビットの絶対優先順位ビッ
トが設定される。即ち、例えば、ウィンドウ50に属す
るポリゴンに対しては(000)が、ウィンドウ52に
属するポリゴンに対しては(001)が、ウィンドウ5
0、52の外にあるポリゴンに対しては(010)が設
定される。これらのデータは1フレームごとに更新する
ことが可能であり、例えばプレーヤが操作信号を用いて
ウィンドウを表示画面上に映し出すという操作をする
と、フレームデータが書き換えられ、これによりこの絶
対優先順位が変更され、ウィンドウが表示画面上に映し
出されることとなる。
14により、ポリゴンごとに絶対優先順位のシフト値加
算が行われる。この場合のシフト値としては、図10
(a)における3ビットの絶対優先順位シフト値が用い
られる。また、オブジェクト用絶対優先順位シフト部1
16では、3次元オブジェクトごとにシフト値加算が行
われる。これにより、当該3次元オブジェクトに含まれ
る全てのポリゴンの絶対優先順位ビットに対してシフト
値加算が行われることになる。
して、図10(c)に示すフォーマットの24ビットの
ソーティング用Z値が形成される。即ち、オブジェクト
用シフト値加算部108又はオブジェクト用Z固定値設
定部110からの出力により21ビットのソーティング
用Z値下位部が形成され、オブジェクト用絶対優先順位
シフト部116からの出力により3ビットの絶対優先順
位部が形成される。 (7)ソーティング部の動作 ソーティング部120では、以上のように各ポリゴン毎
に設定されたソーティング用Z値を用いて、ポリゴンデ
ータの並べ換えが行われる。ソーティング部120は、
図11(a)に示すように、データRAM130、ソー
ティング制御部140、ソーティングRAM142を含
んで構成される。
ら入力されたポリゴンデータは、データRAM130に
入力され、記憶される。そして、1フィールド内の全て
のポリゴンデータが記憶されると、次に、記憶されたポ
リゴンデータ内のソーティング用Z値が、ソーティング
制御部140により読み込まれる。ソーティング制御部
140では、このソーティング用Z値をもとにデータの
ソーティングを行う。この場合のデータのソーティング
は、度数ソーティングを用いた手法により行われる。即
ち、ソーティング制御部140は、前記ソーティング用
Z値を基に度数分布表を作成し、これをソーティングR
AM142内の度数分布表レジスタ144に書き込む。
次に、この度数分布表を基に、優先順位表が作成され、
度数分布表レジスタ144の内容が書き換えられる。
一度、データRAM120内のソーティング用Z値を全
て読みだし、前記の度数分布表レジスタ144に書き込
まれた優先順位表を基に、各ポリゴンデータの優先順位
を決定する。そして、ソーティング制御部140は、こ
の優先順位の順序にしたがって、インデックスレジスタ
146の各レジスタに、対応するポリゴンデータのアド
レス、即ちデータRAM130内のアドレスを書き込
む。
前記アドレスが順次読み出される。そして、このアドレ
スに対応したポリゴンデータがデータRAM130から
読みだされ、画像表示部360へと出力される。これに
より、ソーティング用Z値設定部100で演算されたソ
ーティング用Z値を用いたポリゴンデータのソーティン
グ処理が完了する。
る。
ータバッファとして機能しており、次の3つの処理を行
っている。即ち、ソーティング用Z値設定部100から
ポリゴンデータを入力する処理、ソーティング制御部1
40に対してソーティング用Z値を出力する処理、画像
表示部360に対してソーティング済みのポリゴンデー
タを出力する処理である。本実施例では、これらの処理
をパイプライン処理により行うために、データRAM1
30を3つのエリア、即ち、エリアA132、エリアB
134、エリアC136に分割している。そして、この
3つのエリアの切り替えは、ポートX1〜X3、Y1〜
Y3、Z1〜Z3の切り替えにより行われる。この様子
が図11(b)に示される。なお、エリアA、B、C
は、それぞれ、1フィールド分の全ポリゴンデータを格
納できる容量を有している。
においては各エリアは次のような動作をする。即ち、エ
リアA132は、ポートX1によりソーティング用Z値
設定部100に接続され、ソーティング用Z値設定部1
00からのポリゴンデータが入力され、これを記憶して
いる。また、エリアB134は、ポートY2により、ソ
ーティング制御部140に接続され、ソーティング制御
部140にソーティング用Z値を出力している。更に、
エリアC136は、ポートZ3により画像供給部360
に接続され、画像供給部360に、ソーティング済みの
ポリゴンデータを出力している。
ようなポートの切り替えが行われる。即ち、ポートY2
がポートY1に切り替わり、エリアA132からソーテ
ィング制御部140に対してソーティング用Z値が出力
される。この場合、出力されるソーティング用Z値は、
前記したフィールド1において記憶されたポリゴンデー
タから抽出されたデータである。また、ポートZ3がポ
ートZ2に切り替わり、エリアB134から画像表示部
360に対してソーティング済みのデータが出力され
る。この場合のソーティング済みのポリゴンデータの出
力は、インデックスレジスタ146に書き込まれている
アドレスを用いて行われる。更に、ポートX1がポート
X3に切り替わり、エリアC136に対してソーティン
グ用Z値設定部100から新たに処理するポリゴンデー
タが書き込まれる。
切り替えが行われ、例えば、エリアA132からは、ソ
ーティング済みのポリゴンデータが出力される。
エリアの切り替えが可能であり、これにより、ポリゴン
データの入力、ソーティング、ソーティング済みデータ
の出力という処理を、パイプライン処理により行うこと
が可能となる。即ち、ポートの切り替えにより、1つの
エリアが各フィールドごとに別々の役割を果たすことが
可能となる。この結果、エリア間のデータ転送の必要性
がなくなり、高速なソーティング処理が可能となる。例
えば、ソーティング用Z値設定部100からポリゴンデ
ータを入力するモードから、ソーティング制御部140
へソーティング用Z値を出力するモードへ切り替わって
も、エリアA132に書き込まれているデータ自体は、
全く書き変わらない。更に、画像表示部360へソーテ
ィング処理済みのデータを出力するモードになっても、
エリアA132に書き込まれているデータ自体は書き変
わらず、ただ読み出すためのアドレスが変わるのみであ
る。
ング制御部140及びソーティングRAM142によっ
て行われている。この場合、実際にソーティングされる
のは、ソーティングRAM142に書き込まれている内
容であり、データRAM130に書き込まれているポリ
ゴンデータ自体のソーティングが行われるわけではな
い。即ち、本実施例では、データRAM130自体に書
き込まれているデータをソーティングする必要がないた
め、高速のソーティング処理が可能となる。
ティングRAM142の構成及び動作の詳細について説
明する。
M130からソーティング制御部140に入力される。
ィング用Z値を用いて度数分布表を作成し、これを基に
優先順位を決定する。この様子が図19に示される。
ティング用Z値の対応を示すものであり、X(1)〜X
(20)は各ポリゴンデータを表し、その下欄には、各
ポリゴンデータに対応するソーティング用Z値が記載さ
れている。但し、この表は、説明を簡単にするための例
示にすぎず、実際には、本実施例では8192個のポリ
ゴンデータを扱うことができ、また、ソーティング用Z
値は24ビットの2進数データにより表されている。
の図19(a)の表を基に、図19(b)に示す度数分
布表が作成される。即ち、図19(a)において、ソー
ティング用Z値が「7」のものは3つあるので、図19
(b)の「7」の欄には度数3が書き込まれる。同様に
して、各欄に対応する度数が書き込まれ、図19(b)
に示す度数分布表が作成される。実際には、この度数分
布表は、データRAM142内の度数分布表レジスタ1
44の各レジスタに記憶されることになる。
(c)に示す優先順位表が作成される。即ち、図19
(b)により、ソーティング用Z値が「6」のものの優
先順位は、1+2+4=7となるため、この値が「6」
の欄に記載される。このようにして作成された優先順位
表は、実際には、度数分布表レジスタ144の各レジス
タに記憶され、度数分布表レジスタ144の内容が書き
変わることとなる。
一度、データRAM130から、前に読み出したものと
同じソーティング用Z値を全て読み出す。そして、この
読み出す際に、前記の度数分布表レジスタ144内に記
憶された優先順位が参照される。例えば、ポリゴンデー
タのソーティング用Z値が5の場合は、図19(c)に
より、このポリゴンデータの優先順位は「11」にな
る。従って、ソーティング制御部140により、インデ
ックスレジスタ146の11番目のレジスタに、当該ポ
リゴンデータのアドレス、即ちデータRAM130内で
のアドレスが書き込まれる。同様にして、インデックス
レジスタ146の全てのレジスタに、対応するポリゴン
のアドレスが、前記優先順位表に基づいて書き込まれ
る。
上位、即ち優先順位の高いものから順に読み出され、こ
の読み出されたアドレスに基づいて、データRAM13
0から、ポリゴンデータが読み出され、画像表示部36
0に出力される。これにより、ソーティング用Z値に基
づいて決定された優先順位にしたがって、ポリゴンデー
タが画像表示部360に順次出力されることとなる。 (8)適用例 図12には、前記第1〜第4の手法によるソーティング
処理部320を、実際のドライビングゲームに適用した
場合の表示画像が示されている。以下、具体的な適用方
法について説明する。 (a) Z代表値の変更 図12において、看板20及び文字22、24、26に
ついては、文字が常に看板より手前にあるようにしなけ
ればならない。この場合に、看板及び文字のZ代表値を
「平均値」に設定すると、文字の画像データが欠落する
おそれがある。そこで、看板及び文字のポリゴンのZ代
表値を、前記した図5(b)に示すように「最大値」に
なるように設定する。このようにすれば、確実にデータ
の欠落を防止できることとなる。
ドレール60を構成するポリゴンのZ代表値については
「最小値」となるように設定するのが望ましい。その理
由は、図12に示すようにガードレール60の向こう側
に標識70があった場合に、この標識70がガードレー
ル60の前に出てきてしまうことがあるからである。こ
の様子が図13(a)に示される。即ち、ガードレール
60のZ代表値Z1を「平均値」とすると、標識70の
Z代表値Z2の方がZ1より小さくなるため、描画する
際に本当は後ろにあるべき標識70が前に出てきてしま
う。一方、通常、この種のゲームでガードレール60の
手前に、他の3次元オブジェクトがくることはあまりな
い。そこで、この場合は、ガードレール60のZ代表値
は「最小値」とする方が望ましいこととなる。
のは、ガードレール60のZ代表値を「最小値」にする
と、他のガードレール62、64、66、68等のZ代
表値も「最小値」となってしまうことである。即ち、通
常、この種の画像合成装置では、画像処理データのメモ
リ容量を節約するために、ガードレール60、62等の
画像データは共通のものを使用する。具体的には、この
ガードレール60を構成するポリゴンのデータは、画像
情報メモリ314に記憶されており、他のガードレール
62、64等の画像処理をする場合にも、この記憶され
ているデータを共通のデータとして使用する。そして、
Z代表値として「最大値」「最小値」「平均値」のどれ
を選ぶかを設定するデータも、この共通のデータに含ま
れている。従って、ガードレール60のZ代表値につい
て「最小値」を選ぶように設定すると、必然的に他のガ
ードレール62、64、66、68等のZ代表値も「最
小値」を選ぶように設定されることとなる。これは、図
12に示すタイヤ58とガードレール68との関係で問
題となる。 (b) ポリゴンごとのシフト値加算 図12に示す、タイヤ58は、ドライビングゲームにお
いて、例えばレーシングカーがクラッシュして壊れた場
合に、ガードレール側に転がっていったものである。こ
の様な場合、タイヤ58はガードレール68にぶつか
り、その後、はね返ることとなる。ところが前記したよ
うにガードレール68のZ代表値が「最小値」に設定さ
れるため以下のような不都合が生じる。
B、Cに示すようにガードレール68にぶつかってはね
返る。ここでガードレール68のZ代表値をZ1、タイ
ヤ58のZ代表値をZ2とすると、タイヤ58がAの位
置にある時はZ2<Z1なので問題ないが、Bの位置に
ある時はZ2’>Z1となるため、タイヤ58がガード
レール68の後ろに消えてしまうという事態が生じる。
更に、Cの位置にある場合も、Z2”>Z1となるため
にガードレール68の後ろに隠れてしまい、ぶつかって
はね返るという映像効果をだせないこととなる。
Z代表値に負のシフト値を加算する。具体的には、ガー
ドレール68のポリゴンの頂点のZ値の最小値をZ3と
した場合、例えばZ3ーZ1以上の値の負の値を加算す
ればよいこととなる。これにより、タイヤ58がガード
レールの後ろに消えてしまったり、ぶつかってはね返る
という映像効果がなくなってしまうといった事態は生じ
なくなる。
だけであって、タイヤ58の実際のZ座標等の他のデー
タには全く影響が及ばない点に留意すべきである。従っ
て、かなり大きなZ代表値を加算しても、タイヤ58の
更に手前にある3次元オブジェクトとの優先順位が狂わ
ないかぎり、表示画像に悪影響を及ぼすことはない。
表値に正のシフト値を加算するのは、好ましくない。そ
の理由は以下の通りである。即ち、このようなシフト値
加算をするということは、図10(a)のソーティング
制御用データにシフト値を設定するということである。
そして、図10(a)に示すソーティング用制御用デー
タは、ガードレールを構成するポリゴンに共通のデータ
であるため、その影響は他の全てのガードレール60、
62等に及んでしまう。この結果、例えば標識70が、
ガードレール60の前に出るという事態が生じてしまう
からである。
は、例えば図12に示すような屋根にでっぱり(以下箱
体と呼ぶ)がついた家74に対するZ代表値を調整する
場合にも有効である。
きなポリゴンで形成されている。その理由は次の通りで
ある。即ち、屋根が例えば瓦で形成されている場合、従
来は、屋根を、瓦を表す複数のポリゴンに分解して表示
していた。これに対して、例えばテクスチャマッピング
手法を用いた場合には、瓦を表すテクスチャを屋根には
り付けることにより、このような屋根を表示できること
となる。この結果、屋根を表すポリゴンは、従来に比べ
て大きなものとなってしまう。
リゴン82、84、86(図上において見えない部分は
省略する)からなる箱体が設けられている場合、眺める
方向によっては、ポリゴン80に対するポリゴン82、
84、86の優先順位が狂ってしまう。この結果、眺め
る方向によって、箱体が出たり消えたりする事態が生
じ、その消え方もポリゴン82、84、86のそれぞれ
で異なる。
2、84、86のZ代表値に対してポリゴンごとに負の
シフト値を加算して、優先順位の狂いを是正する。これ
により、眺める方向が変わっても常にポリゴン82、8
4、86がポリゴン80の手前にくるように調整できる
こととなる。
リゴンそれぞれごとに異なることとなる。即ち、ポリゴ
ンのZ代表値に対してあまりに大きな負のシフト値を加
算すると、箱体の手前に他のポリゴンがあった場合(例
えば鳥が箱体の上を通過した場合)に、そのポリゴンと
の優先順位が狂ってしまい不都合が生じる。従って、こ
のような不都合が生じないように、ポリゴンごとに最適
なシフト値を加算する必要があり、この結果、ポリゴン
それぞれに異なるシフト値を加算する必要が生じること
となる。 (c) 3次元オブジェクトごとのシフト値加算 次に、家74とガードレール66との優先順位の関係を
考えてみる。この場合、どのような方向から眺めても、
家74が必ずガードレール66の向こう側に位置するよ
うにしなければならない。しかし、例えば家74を構成
するポリゴンのZ代表値が「最小値」あるいは「平均
値」に設定されていると、眺める方向によってガードレ
ール66がポリゴン78の中に消えてしまうという事態
が生じる。
ンのZ代表値を「最大値」に設定すると、今度は、看板
90との間の優先順位が狂ってしまうという事態が生じ
る。また、例えばポリゴン78のZ代表値のみを「最小
値」とするのは、他のポリゴン76、80等との優先順
位の関係で好ましくない。
リゴン82、84、86との優先順位の関係について
は、ポリゴン82、84、86にポリゴンごとのシフト
値を加算して調整している。従って、この優先順位の関
係を狂わさずに、そのままの状態で、家72全体とガー
ドレール66、68、看板90との間の優先順位の調整
を行う必要がある。
ゴン全体に同じ値のシフト値を加算することが望まし
い。そこで、本実施例では、3次元オブジェクトである
家74に3次元オブジェクト単位にシフト値を加算し
て、これに対処している。この場合、看板90に対して
も例えば同じ値のシフト値を加算すれば家74と看板9
0との間の優先順位も適正に保たれることとなる。な
お、この場合、家74に加算するシフト値としては、例
えばガードレール66、68との優先順位の関係を保つ
のであれば、ガードレールの長さに相当する正のシフト
値を加算すれば十分である。 (d) Z固定値の設定 図14には、Z固定値の設定の適用により背景を描いた
場合の概念図が示される。同図に示されるように、この
Z固定値の設定では、空40、雲38、山42、地面4
4、道路46、白線47等の背景を、Z固定値を使って
通常の物体よりも奥になるように設定する。しかも、こ
の場合、空40、雲38、山42、地面44、道路4
6、白線47の順になるようにすべく、図10(b)に
示す21ビットのZ固定値を、例えば以下のように設定
する。即ち、空40を表すポリゴンのを1FFFFH、
雲38を表す1FFFEH、山42を表すポリゴンを1
FFFDH、地面を表すポリゴンを1FFFCH、道路
を表すポリゴンを1FFFBH、白線を表すポリゴンを
1FFFAHと設定する。このように、比較的大きな値
に設定することにより、画面上の他の3次元オブジェク
ト、例えば看板20、ガードレール60、家74等との
間の優先順位の関係を簡易に調整することが可能とな
る。 (e) 絶対優先順位の設定 絶対優先順位の設定により、図12に示すように、ウィ
ンドウ50内にあるビル48、山43等のポリゴンをウ
ィンドウ外のポリゴンよりも絶対的に手前にもってくる
ことができるようになる。この場合、具体的には、ソー
ティング用Z値の上位3ビットを、ウィンドウ内のポリ
ゴンは(000)に、ウィンドウ外のポリゴンは(00
1)に設定する。
ポリゴンを手前にもってくることは、例えば、前記のZ
固定値の設定により行うことも可能である。しかし、絶
対優先順位の設定による制御によれば、ウィンドウ内5
0で独立に、Z固定値の設定、シフト値加算による優先
順位の制御を行うことが可能となり、Z固定値のみによ
る制御よりも、より簡易に、高精度な優先順位の制御が
可能となる。 (f) 絶対優先順位のシフト値加算 図20には、絶対優先順位のシフト値加算が有効な場合
の適用例が示される。
グ処理装置を、仮想体験装置を用いたロールプレイング
ゲームに適用した場合の表示画像を示すものである。
着体が装着されており、この頭部装着体にはプレーヤの
目を覆うように画像再生装置が設けられている。そし
て、このゲームは、この頭部装着体を装着したプレーヤ
が、迷路内を宝物を探して冒険するといった設定となっ
ている。本画像合成装置は、プレーヤにとりつけられて
いる空間センサにより、プレーヤの位置及び視界方向を
検出して、これに基づいてプレーヤの視界方向での表示
画像を演算し、前記画像再生装置に表示画像を転送して
いる。そして、この表示画像には、プレーヤの動きに合
わせて、迷路内の画像及び敵キャラクター等が次々と映
し出される。
しながら、迷路内に置いてある宝箱92を探して、これ
を開けてゆく。宝箱92には、通常は、武器、各種アイ
テム、お金等の宝がはいっており、プレーヤはこれを取
ることにより、自分の武器、経験値等をパワーアップさ
せてゆくことができる。図20(a)には、プレーヤが
この宝箱92を開ける瞬間の表示画像が示されている。
スリリングなゲーム構成とするためには、例えばこの宝
箱の中に、新たな敵キャラクター94を潜ませておくこ
とが効果的である。そして、プレーヤが宝物を開けた瞬
間に、図20(b)に示すように敵キャラクター94が
プレーヤの目の前に当然出没するといった構成とすれ
ば、ゲームの緊張感を非常に高めることができる。特
に、前記したように、画像再生装置はプレーヤの目を覆
うようにして取りつけられているため、このような表示
画像を映し出すことにより、プレーヤに与えるインパク
トは非常に大きいものとなる。
に、敵キャラクタ94は、プレーヤの目の前に何があっ
ても、例えばプレーヤの手96、プレーヤの持っている
武器などがあっても、これに優先して、敵キャラクタを
表示画面上で最も前に映し出す必要がある。従って、こ
の場合に、絶対優先順位のシフト値加算が効果的とな
る。即ち、敵キャラクタ94を構成するポリゴンデータ
又はオブジェクトデータ内に、負の絶対優先順位シフト
値をもつソーティング制御用データを設定しておく。こ
のようにすれば、この敵キャラクタ94が表示画像上に
表示させた瞬間に、自動的に、表示画面上の最も前の位
置に映し出すことができる。そして、この優先順位の設
定は、絶対的に行われるため、プレーヤの手96、武器
がどの位置にあっても、これに関係なく、プレーヤの目
の前に映し出すことができる。従って、プレーヤをびっ
くりさせ、プレーヤのゲームに対する緊張感をより高め
る効果等、従来にない映像効果を作り出すことが可能と
なる。なお、この場合でも、敵キャラクター間の優先順
位については、全く独立に、同じ絶対優先順位の中にお
いて、調整が可能である。
のではなく、本発明の要旨の範囲内で種々の変形実施が
可能である。
は、図2に示す方式の画像合成装置にのみ適用されるも
のではなく、種々の方式の画像合成装置に適用すること
ができる。従って、例えばテクスチャマッピング手法や
グーローシェーディング手法を用いない画像合成装置に
対しても適用することが可能であり、いわゆるポリゴナ
イザと呼ばれる手法を用いた画像合成装置に使用するこ
とも可能である。
るいは3次元オブジェクトごとのシフト値加算、Z固定
値の設定、絶対優先順位の設定は、絶対優先順位のシフ
ト値加算は、適用される画像合成装置に要求される性能
等に応じて、種々の組み合わせでの設定が可能である。
従って、Z代表値の設定のみのソーティング処理装置、
Z代表値の設定と優先順位の設定の組合せによるもの、
全ての組合せによるもの等、あらゆる組合せの設定が可
能である。
が適用される画像合成装置は、ゲーム用画像合成装置の
みならず、例えばいわゆるバーチャルリアリティと呼ば
れる仮想体験装置、フライングシュミレータ、ドライビ
ングシュミレータ、遊園地等で用いられるいわゆるアト
ラクション施設、コンピューターグラフィック等の種々
の画像合成装置に適用することが可能である。
ンごとに異なる種類のZ代表値を設定でき、このZ代表
値よりなるソーティング用Z値により定められた優先順
位にしたがって、ポリゴンの画像データが出力される。
従って、表示する3次元画像の状態に対応して、ポリゴ
ンごとにこのZ代表値の代表値設定パターンの指定を変
えることで、疑似3次元画像を形成する際におけるポリ
ゴンの欠落等の事態を有効に防止でき、高品質な画像を
提供できることとなる。
部は、ポリゴンの画像データに、ポリゴンの特性に合わ
せて設定される代表値設定パターンの指定データと、ポ
リゴンの各頂点の奥行きを表すZ座標値を含ませて出力
することができる。従って、表示する3次元画像の状態
に応じてポリゴンの代表値設定パターンの指定データを
変えることで、表示画像を形成する際におけるポリゴン
の画像データの欠落等の事態を有効に防止できることと
なる。
値設定パターンとして、最小値、最大値及びこれらの平
均値から選択された少なくとも2つをZ代表値として演
算できるため、より効率のよい優先順位の設定が可能と
なる。
加算により、Z代表値のみによっては回避できないポリ
ゴンの欠落等の事態を有効に防止できる。この場合、更
に、3次元オブジェクトごとにシフト値を加算すること
により、当該3次元オブジェクトに含まれる全てのポリ
ゴンの優先順位を一度に調整することが可能となり、よ
り簡易で効率的な優先順位の設定が可能となる。。
表値を固定値に設定することにより、優先順位が常に決
まっているようなポリゴン又は3次元オブジェクトに対
して、より簡易に優先順位を決定することができる。
ング用Z値の下位ビットのいかんにかかわらず、この絶
対優先順位部により優先順位を絶対的に制御できる。従
って、表示画面上に異なるウィンドウ画面を簡易に設定
でき、例えば、これをドライビングゲームに適用した場
合には、表示画面上にバックミラー、サイドミラー、任
意の視点方向から見える表示画像をウィンドウとして形
成できることとなる。
た絶対優先順位を任意に変更できることとなり、これに
より、より高度な優先順位の制御が可能となり、従来に
ないより効果的な映像効果を作り出すことが可能とな
る。
例について示すブロック図である。
た画像合成装置の一例を示すブロック図である。
概略説明図である。
ついて説明するための概略説明図である。
すブロック図及び概略説明図である。
すブロック図及び概略説明図である。
すブロック図及び概略説明図である。
明図である。
ォーマットの一例を示すものである。
用Z値のデータフォーマットの一例を示すものである。
説明図である。
概略説明図である。
性について説明するための概略説明図である。
の概略説明図である。
ための概略説明図である。
ブロック図である。
明図である。
の概略説明図である。
いて説明するための概略説明図である。
するための概略説明図である。
Claims (13)
- 【請求項1】 疑似3次元画像を構成する複数のポリゴ
ンの画像データが入力され、前記各ポリゴンの画像デー
タを、各ポリゴンを構成する各頂点に付与された奥行き
方向を表すZ座標値に基づきソーティングして出力する
ソーティング処理装置であって、 前記ポリゴンの頂点のZ座標値からZ代表値をポリゴン
ごとに演算し、このZ代表値をソーティング用Z値とし
てポリゴンごとに設定するソーティング用Z値設定部
と、 前記ソーティング用Z値により定められる優先順位にし
たがってポリゴンの画像データを並べ変え、出力するソ
ーティング部とを含み、 前記複数のポリゴンには、ポリゴンの特性に合わせて前
記Z代表値を設定するための代表値設定パターンがポリ
ゴンごとにあらかじめ指定され、前記ソーティング用Z
値設定部が、前記ポリゴンの頂点の前記Z座標値から前
記指定された代表値設定パターンを用いて前記Z代表値
の演算を行うことを特徴とするソーティング処理装置。 - 【請求項2】 複数の3次元ポリゴンにより表現された
3次元画像を、前記3次元ポリゴンに対応するポリゴン
ごとに2次元平面に透視変換し、疑似3次元画像を構成
する複数のポリゴンの画像データを演算するとともに、
前記画像データに、ポリゴンを構成する各頂点に付与さ
れた奥行き方向を表すZ座標値と、ポリゴンの特性に合
わせて設定された代表値設定パターン指定データとを含
ませて出力する画像供給部と、 前記複数のポリゴンの画像データが順次入力され、前記
各ポリゴンの画像データをZ座標値に基づきソーティン
グして出力するソーティング処理装置と、 を含み、 前記ソーティング処理装置は、 前記ポリゴンの頂点のZ座標値からZ代表値をポリゴン
ごとに演算し、このZ代表値をソーティング用Z値とし
てポリゴン毎に設定するソーティング用Z値設定部と、 前記ソーティング用Z値により定められる優先順位にし
たがってポリゴンの画像データを並べ変え、出力するソ
ーティング部とを含み、 前記ソーティング用Z値設定部が、前記ポリゴンの頂点
の前記Z座標値から前記指定データにより指定された前
記代表値設定パターンを用いて前記Z代表値の演算を行
うことを特徴とする画像合成装置。 - 【請求項3】 請求項1において、 前記ソーティング用Z値設定部において用いられる前記
代表値設定パターンが、前記ポリゴンの頂点のZ座標値
の最小値、Z座標値の最大値、前記最小値及び前記最大
値の平均値のいずれかから前記Z代表値を選択するパタ
ーン、あるいは、前記最大値、前記平均値のいずれかか
ら前記Z代表値を選択するパターン、あるいは、前記最
小値、前記平均値のいずれかから前記Z代表値を選択す
るパターン、あるいは、前記最大値、前記最小値のいず
れかから前記Z代表値を選択するパターンであることを
特徴とするソーティング処理装置。 - 【請求項4】 請求項1、3のいずれかにおいて、 前記ソーティング用Z値設定部は、 演算された前記Z代表値に、ポリゴンごとに所定のシフ
ト値を加算して前記ソーティング用Z値を形成する、あ
るいは、複数のポリゴンで構成された3次元オブジェク
トごとに所定のシフト値を加算して前記ソーテイング用
Z値を形成する、あるいは、ポリゴンごとに所定のシフ
ト値を加算するとともに3次元オブジェクトごとに所定
のシフト値を加算してソーティング用Z値を形成するシ
フト値加算手段を含むことを特徴とするソーティング処
理装置。 - 【請求項5】 請求項1、3、4のいずれかにおいて、 前記ソーティング用Z値設定部は、 前記演算されたZ代表値を、ポリゴンごとに所定の固定
値に設定して前記ソーティング用Z値を形成する、ある
いは、複数のポリゴンで構成された3次元オブジェクト
ごとに所定の固定値に設定して前記ソーティング用Z値
を形成する、あるいは、ポリゴンごとに所定の固定値に
設定するとともに3次元オブジェクトごとに所定の固定
値に設定してソーティング用Z値を形成するZ固定値設
定手段を含むことを特徴とするソーティング処理装置。 - 【請求項6】 請求項1、3〜5のいずれかにおいて、 前記ソーティング用Z値設定部は、 ボリゴンの優先順位を下位ビットの値に関係なく絶対的
に制御する絶対優先順位ビットを、ソーティング用Z値
の上位ビットに絶対優先順位部として設定する絶対優先
順位設定手段を含むことを特徴とするソーティング処理
装置。 - 【請求項7】 請求項6において、 前記ソーティング用Z値設定部は、 前記絶対優先順位ビットに、ポリゴンごとに所定のシフ
ト値を加算する、あるいは、複数のポリゴンで構成され
た3次元オブジェクトごとに所定のシフト値を加算す
る、あるいは、ポリゴンごとに所定のシフト値を加算す
るとともに3次元オブジェクトごとに所定のシフト値を
加算する絶対優先順位シフト手段を含むことを特徴とす
るソーティング処理装置。 - 【請求項8】 複数のポリゴンの画像データを、ポリゴ
ンを構成する各頂点に付与された奥行き方向を表すZ座
標値に基いてソーティングするソーティング処理方法で
あって、 前記ポリゴンの頂点のZ座標値からZ代表値をポリゴン
ごとに演算し、このZ代表値をソーティング用Z値とし
てポリゴンごとに設定するソーティング用Z値設定ステ
ップと、 前記ソーティング用Z値により定められる優先順位にし
たがってポリゴンの画像データを並べ変えるステップと
を含み、 前記複数のポリゴンには、ポリゴンの特性に合わせて前
記Z代表値を設定するための代表値設定パターンがポリ
ゴンごとにあらかじめ指定され、前記ソーティング用Z
値設定ステップは、前記ポリゴンの頂点の前記Z座標値
から前記指定された代表値設定パターンを用いて前記Z
代表値の演算を行うことを特徴とするソーティング処理
方法。 - 【請求項9】 請求項2において、 前記ソーティング用Z値設定部において用いられる前記
代表値設定パターンが、前記ポリゴンの頂点のZ座標値
の最小値、Z座標値の最大値、前記最小値及び前記最大
値の平均値のいずれかから前記Z代表値を選択するパタ
ーン、あるいは、前記最大値、前記平均値のいずれかか
ら前記Z代表値を選択するパターン、あ るいは、前記最
小値、前記平均値のいずれかから前記Z代表値を選択す
るパターン、あるいは、前記最大値、前記最小値のいず
れかから前記Z代表値を選択するパターンであることを
特徴とする画像合成装置。 - 【請求項10】 請求項2、9のいずれかにおいて、 前記ソーティング用Z値設定部は、 演算された前記Z代表値に、ポリゴンごとに所定のシフ
ト値を加算して前記ソーティング用Z値を形成する、あ
るいは、複数のポリゴンで構成された3次元オブジェク
トごとに所定のシフト値を加算して前記ソーティング用
Z値を形成する、あるいは、ポリゴンごとに所定のシフ
ト値を加算するとともに3次元オブジェクトごとに所定
のシフト値を加算してソーティング用Z値を形成するシ
フト値加算手段を含むことを特徴とする画像合成装置。 - 【請求項11】 請求項2、9、10のいずれかにおい
て、 前記ソーティング用Z値設定部は、 前記演算されたZ代表値を、ポリゴンごとに所定の固定
値に設定して前記ソーティング用Z値を形成する、ある
いは、複数のポリゴンで構成された3次元オブジェクト
ごとに所定の固定値に設定して前記ソーティング用Z値
を形成する、あるいは、ポリゴンごとに所定の固定値に
設定するとともに3次元オブジェクトごとに所定の固定
値に設定してソーティング用Z値を形成するZ固定値設
定手段を含むことを特徴とする画像合成装置。 - 【請求項12】 請求項2、9〜11のいずれかにおい
て、 前記ソーティング用Z値設定部は、 ポリゴンの優先順位を下位ビットの値に関係なく絶対的
に制御する絶対優先順位ビットを、ソーティング用Z値
の上位ビットに絶対優先順位部として設定する絶対優先
順位設定手段を含むことを特徴とする画像合成装置。 - 【請求項13】 請求項12において、 前記ソーティング用Z値設定部は、 前記絶対優先順位ビットに、ポリゴンごとに所定のシフ
ト値を加算する、あるいは、複数のポリゴンで構成され
た3次元オブジェクトごとに所定のシフト値を加算す
る、あるいは、ポリゴンごとに所定のシフト値を加算す
るとともに3次元 オブジェクトごとに所定のシフト値を
加算する絶対優先順位シフト手段を含むことを特徴とす
る画像合成装置。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4360425A JP2807608B2 (ja) | 1992-12-29 | 1992-12-29 | ソーティング処理装置、これを用いた画像合成装置及びソーティング処理方法 |
| US08/174,371 US5522018A (en) | 1992-12-29 | 1993-12-28 | Sorting processing system and image synthesizing system using the same |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4360425A JP2807608B2 (ja) | 1992-12-29 | 1992-12-29 | ソーティング処理装置、これを用いた画像合成装置及びソーティング処理方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH06203172A JPH06203172A (ja) | 1994-07-22 |
| JP2807608B2 true JP2807608B2 (ja) | 1998-10-08 |
Family
ID=18469355
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP4360425A Expired - Fee Related JP2807608B2 (ja) | 1992-12-29 | 1992-12-29 | ソーティング処理装置、これを用いた画像合成装置及びソーティング処理方法 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US5522018A (ja) |
| JP (1) | JP2807608B2 (ja) |
Families Citing this family (52)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE69523493D1 (de) * | 1994-03-01 | 2001-12-06 | Sega Enterprises Kk | Verfahren zur Sortierung von Polygondaten, Videospielmaschine zu dessen Anwendung und Rechnerprogramm um dieses Verfahren auszuführen |
| WO1995035139A1 (en) | 1994-06-17 | 1995-12-28 | Namco Ltd. | Three-dimensional simulator and image generating method |
| US5588914A (en) * | 1994-06-28 | 1996-12-31 | The Walt Disney Company | Method and system for guiding a user in a virtual reality presentation |
| CN100501768C (zh) * | 1995-05-19 | 2009-06-17 | 世嘉股份有限公司 | 图像处理装置、方法及设备 |
| US5864342A (en) * | 1995-08-04 | 1999-01-26 | Microsoft Corporation | Method and system for rendering graphical objects to image chunks |
| US5949428A (en) * | 1995-08-04 | 1999-09-07 | Microsoft Corporation | Method and apparatus for resolving pixel data in a graphics rendering system |
| US5867166A (en) * | 1995-08-04 | 1999-02-02 | Microsoft Corporation | Method and system for generating images using Gsprites |
| US6008820A (en) * | 1995-08-04 | 1999-12-28 | Microsoft Corporation | Processor for controlling the display of rendered image layers and method for controlling same |
| US5880737A (en) * | 1995-08-04 | 1999-03-09 | Microsoft Corporation | Method and system for accessing texture data in environments with high latency in a graphics rendering system |
| US5977977A (en) * | 1995-08-04 | 1999-11-02 | Microsoft Corporation | Method and system for multi-pass rendering |
| US5870097A (en) * | 1995-08-04 | 1999-02-09 | Microsoft Corporation | Method and system for improving shadowing in a graphics rendering system |
| US5886701A (en) * | 1995-08-04 | 1999-03-23 | Microsoft Corporation | Graphics rendering device and method for operating same |
| US5808617A (en) * | 1995-08-04 | 1998-09-15 | Microsoft Corporation | Method and system for depth complexity reduction in a graphics rendering system |
| US5999189A (en) | 1995-08-04 | 1999-12-07 | Microsoft Corporation | Image compression to reduce pixel and texture memory requirements in a real-time image generator |
| US5990904A (en) * | 1995-08-04 | 1999-11-23 | Microsoft Corporation | Method and system for merging pixel fragments in a graphics rendering system |
| US5852443A (en) * | 1995-08-04 | 1998-12-22 | Microsoft Corporation | Method and system for memory decomposition in a graphics rendering system |
| JPH10111680A (ja) * | 1996-10-08 | 1998-04-28 | S N K:Kk | データ順位決定装置 |
| KR100300832B1 (ko) * | 1997-02-18 | 2002-10-19 | 가부시키가이샤 세가 | 화상처리장치및화상처리방법 |
| US6195090B1 (en) * | 1997-02-28 | 2001-02-27 | Riggins, Iii A. Stephen | Interactive sporting-event monitoring system |
| US6094677A (en) * | 1997-05-30 | 2000-07-25 | International Business Machines Corporation | Methods, systems and computer program products for providing insertions during delays in interactive systems |
| US6271843B1 (en) * | 1997-05-30 | 2001-08-07 | International Business Machines Corporation | Methods systems and computer program products for transporting users in three dimensional virtual reality worlds using transportation vehicles |
| US6409596B1 (en) * | 1997-09-12 | 2002-06-25 | Kabushiki Kaisha Sega Enterprises | Game device and image displaying method which displays a game proceeding in virtual space, and computer-readable recording medium |
| US6720964B1 (en) | 1998-08-27 | 2004-04-13 | Ati International Srl | Method and apparatus for processing portions of primitives that are being rendered |
| US6924801B1 (en) * | 1999-02-09 | 2005-08-02 | Microsoft Corporation | Method and apparatus for early culling of occluded objects |
| AU3673900A (en) | 1999-04-09 | 2000-11-14 | Sony Computer Entertainment Inc. | Method and apparatus for performing perspective transformation |
| US6573896B1 (en) * | 1999-07-08 | 2003-06-03 | Dassault Systemes | Three-dimensional arrow |
| DE60043142D1 (de) * | 1999-12-09 | 2009-11-26 | Ati Int Srl | Verfahren und Vorrichtung für die Verarbeitung der Teile von Primitiven die dargestellt werden |
| WO2001095257A1 (en) * | 2000-06-08 | 2001-12-13 | Imagination Technologies Limited | Tiling and compression for rendering 3d images |
| JP4512240B2 (ja) * | 2000-07-27 | 2010-07-28 | 株式会社バンダイナムコゲームス | ゲームシステム及び情報記憶媒体 |
| WO2003034343A1 (en) | 2001-10-15 | 2003-04-24 | Fujitsu Limited | Hierarchical sort of objects linked in virtual three-dimensional space |
| JP3794681B2 (ja) * | 2001-11-29 | 2006-07-05 | 株式会社スクウェア・エニックス | ビデオゲーム処理方法及びビデオゲーム処理装置及びビデオゲームのプログラム及びビデオゲームのプログラムを記録した記録媒体 |
| KR100634536B1 (ko) * | 2005-01-25 | 2006-10-13 | 삼성전자주식회사 | 3차원 그래픽스 환경에서의 2차원 고가도로 데이터의 3차원 변환 방법 및 장치, 그리고 이를 이용한 3차원 그래픽스 환경에서의 2차원 고가도로 데이터의 3차원 시각화 방법 및 장치 |
| US8108142B2 (en) * | 2005-01-26 | 2012-01-31 | Volkswagen Ag | 3D navigation system for motor vehicles |
| US20070048690A1 (en) * | 2005-08-26 | 2007-03-01 | Doron Precision Systems, Inc. | Simulated convex mirrors for driving simulators |
| GB0524804D0 (en) * | 2005-12-05 | 2006-01-11 | Falanx Microsystems As | Method of and apparatus for processing graphics |
| GB2439129B (en) * | 2006-06-12 | 2008-11-12 | Imagination Tech Ltd | Parameter compaction in a tile based rendering system |
| US8730261B2 (en) * | 2006-09-13 | 2014-05-20 | Panasonic Corporation | Image processing device, image processing integrated circuit, image processing system, input assembler device, and input assembling integrated circuit |
| US9965886B2 (en) * | 2006-12-04 | 2018-05-08 | Arm Norway As | Method of and apparatus for processing graphics |
| US8127235B2 (en) | 2007-11-30 | 2012-02-28 | International Business Machines Corporation | Automatic increasing of capacity of a virtual space in a virtual world |
| US20090164919A1 (en) | 2007-12-24 | 2009-06-25 | Cary Lee Bates | Generating data for managing encounters in a virtual world environment |
| US8044973B2 (en) * | 2008-01-18 | 2011-10-25 | Autodesk, Inc. | Auto sorting of geometry based on graphic styles |
| JP2010039932A (ja) * | 2008-08-07 | 2010-02-18 | Ricoh Co Ltd | 画像処理装置、画像処理方法及びプログラム |
| GB0900700D0 (en) * | 2009-01-15 | 2009-03-04 | Advanced Risc Mach Ltd | Methods of and apparatus for processing graphics |
| JP5274298B2 (ja) * | 2009-02-20 | 2013-08-28 | 任天堂株式会社 | 描画処理装置、および、描画処理プログラム |
| JP5150698B2 (ja) * | 2010-09-30 | 2013-02-20 | 株式会社東芝 | デプス補正装置及び方法 |
| US20150029214A1 (en) * | 2012-01-19 | 2015-01-29 | Pioneer Corporation | Display device, control method, program and storage medium |
| US10678259B1 (en) * | 2012-09-13 | 2020-06-09 | Waymo Llc | Use of a reference image to detect a road obstacle |
| US9317948B2 (en) | 2012-11-16 | 2016-04-19 | Arm Limited | Method of and apparatus for processing graphics |
| US10204391B2 (en) | 2013-06-04 | 2019-02-12 | Arm Limited | Method of and apparatus for processing graphics |
| JP6422207B2 (ja) * | 2013-08-21 | 2018-11-14 | グリー株式会社 | 制御装置、制御方法、プログラム、及びゲームシステム |
| GB2553744B (en) | 2016-04-29 | 2018-09-05 | Advanced Risc Mach Ltd | Graphics processing systems |
| US10825350B2 (en) * | 2017-03-28 | 2020-11-03 | Wichita State University | Virtual reality driver training and assessment system |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5179717A (en) * | 1988-11-16 | 1993-01-12 | Manco, Ltd. | Sorting circuit using first and last buffer memories addressed by reference axis data and chain buffer memory addressed by datum number of the first and last buffer memories |
| JP2800404B2 (ja) * | 1990-11-20 | 1998-09-21 | ダイキン工業株式会社 | 多角形分割方法およびその装置 |
-
1992
- 1992-12-29 JP JP4360425A patent/JP2807608B2/ja not_active Expired - Fee Related
-
1993
- 1993-12-28 US US08/174,371 patent/US5522018A/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| US5522018A (en) | 1996-05-28 |
| JPH06203172A (ja) | 1994-07-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2807608B2 (ja) | ソーティング処理装置、これを用いた画像合成装置及びソーティング処理方法 | |
| US5966132A (en) | Three-dimensional image synthesis which represents images differently in multiple three dimensional spaces | |
| US5577960A (en) | Image synthesizing system and game playing apparatus using the same | |
| JPWO1995035139A1 (ja) | 3次元シミュレータ装置及び画像合成方法 | |
| JP2846252B2 (ja) | 3次元シミュレータ装置及び画像合成方法 | |
| JP2883514B2 (ja) | 画像合成装置およびこれを用いたゲーム装置 | |
| JP2002063596A (ja) | ゲームシステム、プログラム及び情報記憶媒体 | |
| JP4502678B2 (ja) | プログラム、情報記憶媒体、及び画像生成システム | |
| JP4728721B2 (ja) | プログラム、情報記憶媒体及び画像生成システム | |
| JP2001143099A (ja) | 画像生成システム及び情報記憶媒体 | |
| JP4804122B2 (ja) | プログラム、テクスチャデータ構造、情報記憶媒体及び画像生成システム | |
| GB2284526A (en) | Image synthesizer and apparatus for playing game using the image synthesizer | |
| JP3748451B1 (ja) | プログラム、情報記憶媒体、及び画像生成システム | |
| JP3364456B2 (ja) | 3次元シミュレータ装置及び画像合成方法 | |
| JP5253118B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
| JP4651527B2 (ja) | プログラム、情報記憶媒体及び画像生成システム | |
| JP4528008B2 (ja) | プログラム、情報記憶媒体、及び画像生成システム | |
| JP2990190B2 (ja) | 3次元シミュレータ装置及び画像合成方法 | |
| JP3254091B2 (ja) | 3次元シミュレータ装置及び画像合成方法 | |
| JP4913399B2 (ja) | プログラム、情報記憶媒体及び画像生成システム | |
| JP4592087B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
| JP3452512B2 (ja) | ゲーム装置及びゲーム用の画像生成方法 | |
| JP3752081B2 (ja) | 3次元シミュレータ装置及び画像合成方法 | |
| JP4680670B2 (ja) | プログラム、情報記憶媒体及び画像生成システム | |
| JP2008077406A (ja) | 画像生成システム、プログラム及び情報記憶媒体 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 19980623 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070724 Year of fee payment: 9 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080724 Year of fee payment: 10 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080724 Year of fee payment: 10 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090724 Year of fee payment: 11 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090724 Year of fee payment: 11 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090724 Year of fee payment: 11 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100724 Year of fee payment: 12 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100724 Year of fee payment: 12 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110724 Year of fee payment: 13 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110724 Year of fee payment: 13 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110724 Year of fee payment: 13 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120724 Year of fee payment: 14 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120724 Year of fee payment: 14 |
|
| LAPS | Cancellation because of no payment of annual fees |