JP2888640B2 - 画像合成装置及び画像合成方法 - Google Patents
画像合成装置及び画像合成方法Info
- Publication number
- JP2888640B2 JP2888640B2 JP6506114A JP50611494A JP2888640B2 JP 2888640 B2 JP2888640 B2 JP 2888640B2 JP 6506114 A JP6506114 A JP 6506114A JP 50611494 A JP50611494 A JP 50611494A JP 2888640 B2 JP2888640 B2 JP 2888640B2
- Authority
- JP
- Japan
- Prior art keywords
- image
- dot
- polygon
- texture
- coordinates
- 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 - Lifetime
Links
Landscapes
- Surgical Instruments (AREA)
- Image Generation (AREA)
Description
で合成出力することが可能な画像合成装置に関する。
物の操縦シュミレータ等に使用される画像合成装置とし
て種々のものが知られている。このような画像合成装置
では、図33に示す3次元物体300に関する画像情報が、
あらかじめ装置に記憶されている。そして、この画像情
報をスクリーン306上に透視変換することにより疑似3
次元画像308をスクリーン306上に画像表示している。プ
レーヤ302が、操作パネル304により回転、並進等の操作
を行うと、装置は、この操作信号に基づいて3次元物体
300に対する回転、並進等の演算処理をリアルタイムに
行う。その後、この回転等の演算処理が施された3次元
画像を、スクリーン306上に透視変換して疑似3次元画
像を表示する。この結果、プレーヤ302は、自身の操作
により3次元物体300をリアルタイムに回転、並進等す
ることが可能となり、仮想的な3次元空間を疑似体験で
きることとなる。
される。なお、以下の説明では、画像合成装置を3次元
ゲームに適用した場合を例にとり説明を進める。
0、ゲーム空間演算部500、画像合成部512、CRT518によ
り構成される。
号、中央処理部506に記憶されたゲームプログラムにし
たがって、ゲーム空間の設定が行われる。即ち、3次元
物体300をどの位置に、どの方向で配置するかの演算が
行われる。
含んで構成される。そして、画像合成部512では、ゲー
ム空間演算部500によるゲーム空間の設定情報にしたが
って疑似3次元画像の画像合成が行われる。
次元物体は、3次元のポリゴンに分割された多面体とし
て表現されている。例えば、図33において3次元物体30
0は、3次元のポリゴン(1)〜(6)(ポリゴン
(4)〜(6)は図示せず)に分割された多面体として
表現される。そして、この3次元のポリゴンの各頂点の
座標及び付随データ等(以下、頂点画像情報と呼ぶ)が
3次元画像情報記憶部552に記憶されている。
にしたがって、この頂点画像情報に対する回転、並進等
の各種の演算及び透視変換等の各種の座標変換が行われ
る。そして、演算処理の終了した頂点画像情報は、所定
の順序に並び換えられた後、画像形成部516に出力され
る。
路580を含んで構成され、ポリゴン発生回路570は、輪郭
点演算部324、ラインプロセッサ326を含んで構成され
る。画像形成部516では、ポリゴン内部の全ドットを所
定の色データ等で塗りつぶす演算処理が以下の手順で行
われる。
に、ポリゴンの輪郭線AB、BC,CD、DA等と走査線との交
点である左右輪郭点が演算される。次に、ラインプロセ
ッサ326により、これらの左右輪郭点により囲まれた部
分、例えば図35におけるLQ間、QR間が指定された色デー
タに塗りつぶされる。図35においては、LQ間は赤色及び
QR間は青色の色データに塗りつぶされる。その後、この
塗りつぶされた色データはパレット回路580においてRGB
変換され、CRT518より出力表示されることになる。
たように一つのポリゴン上のドットは全て同一色にしか
塗りつぶすことができなかった。例えば、図35では、ポ
リゴン(1)上のドットは赤色のみ、ポリゴン(2)上
のドットは黄色のみ、ポリゴン(3)上のドットは青色
のみにしか塗りつぶすことかできなかった。従って、形
成された画像は単調であり、リアリティ感に欠けるもの
であった。
持つ物体を表示しようとすると、ポリゴンの分割数を大
幅に増加させる必要が生ずる。例えば図36に示すような
カラー情報のテクスチャが施された3次元物体332を、
従来の装置で画像合成する場合には、ポリゴンを、例え
ば(1)〜(80)((41)〜(80)は図示せず)に分割
して演算処理を行わなければならない。即ち、これらの
全てのポリゴンに対して回転、並進、透視変換及び各ポ
リゴンの輪郭線の演算、ポリゴン内部の塗りつぶし等の
演算処理を行わなければならなかった。従って、図33の
ようにテクスチャが施されていない3次元物体300を処
理する場合に比べて、10数倍もの数のポリゴンを処理す
る必要が生じることとなる。ところが、本装置のように
リアルタイムで画像合成を行う装置では、例えば1フィ
ールド(1/60秒)毎に全てのポリゴンに対する処理を行
い、表示画面の描画を終了しなければならない。従っ
て、このようなカラー情報のテクスチャが施された3次
元物体332を描くためには、装置を構成するハードウェ
アの処理スピードを大幅に向上させるか、もしくは、装
置のハードウェアを大規模化して並列演算処理により処
理せざるを得なかった。更に、処理するポリゴン数が増
加すれば、これに伴って、装置内部の記憶装置、データ
処理装置も必然的に大型化する。従って、例えばビデオ
ゲーム機など、コスト上、あるいは設置面積上、制限の
ある画像合成装置では、このように繊細にテクスチャが
施された高品質の疑似3次元画像を描くことは、実質上
不可能となっていた。
いては、図37に示すテクスチャマッピングと呼ばれる手
法が知られている。つまり、この手法による画像合成装
置では、3次元物体332の画像情報を、多面体334の画像
情報とテクスチャ336、338のテクスチャ情報に分離して
装置に記憶する。そして、画像出力する際に、多面体33
4に、このテクスチャ336、338のテクスチャ情報をはり
付けることによって画像合成を行っている(テクスチャ
マッピングを用いた画像合成の技術として、例えば特開
昭63−80375に開示された従来技術がある)。
は、グラフィックス・ワークステーションと呼ばれる画
像処理専用コンピュータや、フライトシミュレータ等、
かなり大規模で高価な画像処理装置の分野において実現
されている物である。例えばビデオゲーム機など比較的
廉価な画像合成装置の分野においては、ハードウエアの
超高速化や大規模化が困難であるため、テクスチャマッ
ピングを実現している物は極めて少ない。実現している
わずかな例を見ても、表示可能な3次元物体の数や大き
さが限定されており、かつ、簡単な近似手法による演算
しか行えないために不正確なマッピングになっていた。
この結果、画像のリアリティを著しく損ねていた。ま
た、画面が更新される頻度が毎秒数フレーム程度と低い
ため、リアルタイム性も不十分であった。
いわゆるフィールドバッファ部と呼ばれるメモリには、
カラー情報自体が記憶されていた。従って、テクスチャ
マッピング手法を、このビットマップ方式の画像合成装
置に適用した場合にも、フィールドバッファ部にはカラ
ー情報自体が記憶されることになる。この結果、間引き
・補間手法によりハードウェアの高速化、規模の軽減を
図ることができなかった。更に、画像演算部を複数個使
用して並列処理する場合に、テクスチャ情報が記憶され
ているテクスチャ情報記憶部の共有化により、ハードウ
ェアの規模を軽減することもできなかった。
像を画像合成する場合には、ポリゴンにより表現された
3次元オブジェクトにより形成される画像と、背景によ
り形成される背景画像とを画像合成する必要がある。こ
のため、従来の画像合成装置では、新たに、背景の画像
情報が格納されたメモリ及びポリゴン画像と背景画像と
を画像ミキシングする回路が必要となっていた。このた
め、ハードウェアの高速化、小規模化の妨げとなってい
た。
のであり、その目的とするところは、ハードウェアの高
速化、小規模化を妨げることなく、テクスチャマッピン
グによる高品質の画像をリアルタイムに出力できる画像
合成装置を提供することにある。
はポリゴン画像と背景画像とから成る表示画像を合成す
るための画像合成装置であって、前記ポリゴン画像を構
成するポリゴン内部の各ドットの座標及び該各ドットの
座標に対応すべきポリゴン用のテクスチャ座標を求める
画像演算部と、前記各ドットの座標により指定されるア
ドレス位置に、前記画像演算部により求められた前記ポ
リゴン用のテクスチャ座標を記憶するフィールドバッフ
ァ部と、表示画像を構成するドットのうち前記ポリゴン
画像が表示されないドットを背景ドットと判定する背景
ドット判定部と、背景用のテクスチャ座標を所与の演算
処理により発生する背景用テクスチャ座標発生部と、前
記フィールドバッファ部から入力される前記ポリゴン用
のテクスチャ座標と、前記背景用テクスチャ座標発生部
から入力される前記背景用のテクスチャ座標のいずれか
を、前記背景ドット判定部による判定結果に基づいて選
択し出力するセレクタと、前記セレクタから入力される
前記ポリゴン用及び背景用テクスチャ座標により指定さ
れるアドレス位置に、所与のレンダリング情報を記憶す
るレンダリング情報記憶部とを含むことを特徴とする。
報自体ではなくテクスチャ座標が記憶されている。そし
て、フィールドバッファ部からこのテクスチャ座標を読
み出し、この読みだされたテクスチャ座標に基づいてレ
ンダリング情報記憶部(テクスチャ情報記憶部)から所
定のレンダリング情報(テクスチャ情報)を読み出すこ
とができる。これにより、テクスチャマッピングを用い
た高品質な画像の合成を非常に簡易な構成で実現でき
る。また、フィールドバッファ部にはカラー情報ではな
くテクスチャ座標が記憶されているため、ハードウェア
の小規模化、高速化を図れる間引き・補間手法を、画像
の質をそれほど劣化させることなく実現することが可能
となる。また画像演算部を並列処理化した場合にも、レ
ンダリング情報記憶部を単一化し、共有化することが可
能となる。これにより、テクスチャマッピングによる高
品質の画像合成装置を、比較的小規模のハードウェアで
実現することが可能となる。
景画像とを分離して行う画像合成が可能となる。また本
発明によれば、背景ドットか否かを判定した後にテクス
チャ座標によりレンダリング情報記憶部からレンダリン
グ情報が読み出される。従って、ポリゴン画像用、背景
画像用に別に2個のレンダリング情報記憶部を設ける必
要がない。この結果、ハードウェアの小規模化、処理の
高速化を図ることが可能となる。更に、レンダリング情
報記憶部に記憶されるレンダリング情報を、ポリゴンと
背景とで共有化することができるため、ポリゴン用、背
景用に別にレンダリング情報を用意する必要がなくな
る。
してはカラー情報、表面形状情報を用いることができ、
また、輝度情報、透明度情報、拡散反射率情報等も用い
ることができる。例えば表面形状情報として法線ベクト
ル、法線ベクトルの偏位(摂動成分)物体表面に形成さ
れる起伏の高さを用いれば、バンプマッピングによるテ
クスチャマッピングを行うこともできる。
前記背景画像に対して回転処理、拡大処理、縮小処理の
少なくとも1つを施すために、前記背景用テクスチャ座
標の変更処理を行うことを特徴とする。
成で背景画像を用いた疑似3次元画像の合成が可能とな
る。また本発明によれば、ポリゴン画像については回
転、拡大、縮小等を行わず、背景画像のみを回転、拡
大、縮小等することが可能となる。
ゴン画像が描かれないドットに対して空きドット情報が
書き込まれ、前記背景ドット判定部は、処理対象となる
ドットに空きドット情報が書き込まれている場合に、該
ドットを背景画像と判定することを特徴とする。
ールドバッファ上において空きドットとして設定するこ
とにより、非常に簡易な構成で処理の対象となるドット
が背景画像か否か判断することが可能となる。
は、各ドットの座標及びこれに対応するポリゴン用のテ
クスチャ座標を間引いて演算し、前記フィールドバッフ
ァ部には、前記間引かれたポリゴン用のテクスチャ座標
が書き込まれると共にポリゴンを識別するためのポリゴ
ン識別番号が書き込まれ、前記補間処理部は、前記空き
ドット情報と、前記ポリゴン識別番号とに基づいて前記
フィールドバッファに書き込まれたポリゴン用のテクス
チャ座標の補間処理を行い、前記背景ドット判定部は、
前記空きドット情報と、前記ポリゴン識別番号とに基づ
いて前記背景ドットの判定を行うことを特徴とする。更
に本発明は、前記補間処理部は、処理の対象となるドッ
トが空きドットであり、そのドットの両隣のドットのポ
リゴン識別番号が同一であり且つそのドットの両隣のド
ットのいずれもが空きドットではないドットに対して補
間処理を行い、前記背景ドット判定部は、処理の対象と
なるドットが空きドットであり、そのドットの両隣のド
ットのポリゴン識別番号が同一でないか又はそのドット
の両隣のドットのうち少なくとも1つは空きドットであ
るドットを背景ドットと判定することを特徴とする。
きドットか否か、そのドットの両隣のドットのポリゴン
識別番号が同一か否か、両隣のドットが空きドットか否
かを判定するだけで、補間処理を行うべきドットか否か
を判断できるとともに、背景画像を表示すべきドットか
否かも判断することができる。従って、間引き・補間演
算処理を行うことができる構成の回路に、必要最小限の
回路を付加するだけで、ポリゴン画像と背景画像とを分
離して行う画像合成が可能となる。
間引き演算を行い、前記背景ドット判定部における背景
ドットの判定及び前記補間処理が複数ドット毎に行われ
ることを特徴とする。
ウェアの小規模化、処理の高速化を図ることが可能とな
る。
置であって、前記表示画像を構成するポリゴン内部の各
ドットの座標及び該各ドットの座標に対応すべきテクス
チャ座標を求める演算処理を並列処理により行う複数の
画像演算部と、前記各ドットの座標により指定されるア
ドレス位置に、前記画像演算部により求められた前記テ
クスチャ座標を記憶する複数のフィールドバッファ部
と、前記フィールドバッファから入力されるテクスチャ
座標を選択し出力するマルチプレクサと、前記マルチプ
レクサから入力されるテクスチャ座標により指定される
アドレス位置に、所与のレンダリング情報を記憶する1
のレンダリング情報記憶部とを含み、前記1のレンダリ
ング情報記憶部を複数の画像演算部及びフィールドバッ
ファ部により共有して使用することを特徴とする。
理化することができ、処理の高速化を図ることができ
る。これにより、更に高品質の画像を合成することがで
きる。そして、この場合でも、レンダリング情報記憶部
を共有化、単一化することができるため、ハードウェア
の大規模化、制御の複雑化を最小限におさえることがで
きる。
て、テクスチャ座標に対して所与の関数演算処理を施し
てレンダリング情報を求める関数演算部を含むことを特
徴とする。
部により所望のレンダリング情報を形成することによ
り、テクスチャマッピングを用いた高品質な画像合成が
可能となる。また、このように構成することで、例えば
バンプマッピングと呼ばれるテクスチャマッピングを比
較的小規模の回路構成により行うことができる。特に、
乱数発生器等を用いることにより従来にない映像効果を
作り出すこともできる。更に、この場合にも、フィール
ドバッファ部にはテクスチャ座標が記憶されるため、間
引き・補間処理が可能となり、また、画像演算部を並列
処理化した場合にもレンダリング情報記憶部の単一化、
共有化が可能となる。
示画像を合成するための画像合成方法であって、前記ポ
リゴン画像を構成するポリゴン内部の各ドットの座標及
び該各ドットの座標に対応すべきポリゴン用のテクスチ
ャ座標を求める画像演算ステップと、前記各ドットの座
標により指定されるアドレス位置に、前記画像演算ステ
ップにより求められた前記ポリゴン用のテクスチャ座標
を記憶するステップと、表示画像を構成するドットのう
ち前記ポリゴン画像が表示されないドットを背景ドット
と判定する背景ドット判定ステップと、背景用のテクス
チャ座標を所与の演算処理により発生する背景用テクス
チャ座標発生ステップと、前記記憶ステップで記憶され
た前記ポリゴン用のテクスチャ座標と、前記背景用テク
スチャ座標発生ステップで発生される前記背景用のテク
スチャ座標のいずれかを、前記背景ドット判定ステップ
による判定結果に基づいて選択し出力するステップと、
出力された前記ポリゴン用又は背景用テクスチャ座標に
基づいてレンダリング情報を求め、画像情報を形成する
ステップとを含むことを特徴とする。
て示すブロック図である。
である。
演算の概要を示すフロチャート図である。
演算の概要を視覚的に示した概略説明図である。
た疑似3次元画像の一例である。
ック図である。
回路との接続について示すブロック図である。
路を示すブロック図である。
ーケンスを示すタイミングチャート図である。
るための概略説明図である。
れを示す概略説明図である。
後、画像出力するまでのデータの流れを説明するための
ブロック図である。
場合の一例を示すブロック図である。
タの一例を示す概略説明図である。
ための概略説明図である。
の具体的な回路構成を示すブロック図である。
路の具体的な接続関係を示すブロック図である。
図である。
グチャート図である。
バッファ部に色情報が記憶される方式により、画像演算
の並列処理化を図る場合のブロック図である。
クスチャ座標が記憶される方式により、画像演算の並列
処理化を図った場合のブロック図である。
る形態で、画像演算の並列処理化を図った場合のブロッ
ク図である。
演算の並列処理化を図った場合のブロック図である。
置により生成された疑似3次元画像の一例である。
形成し表示画像を形成する手法を示すものであり、第25
図(B)は、この場合の画像合成装置の一例を示すブロ
ック部である。
合の一例を示すブロック図である。
ブロック図である。
である。
ある。
めの概略説明図である。
理演算回路で構成した場合について説明するための概略
説明図である。
いて形成した場合の概略説明図である。
るための概略説明図である。
図である。
について説明するための概略説明図である。
を画像合成する画像装置について説明するための概略説
明図である。
するための概略説明図である。
12、ゲーム空間演算部13、画像合成部1、CRT46を含ん
で構成される。また、画像合成部1は、画像供給部10、
画像形成部28を含んで構成される。なお、以下の説明で
は、本画像合成装置を3次元ゲームに適用した場合を例
にとり説明する。
たゲームプログラムと、操作部12からの操作信号とによ
りゲーム空間の設定が行われる。具体的には、ゲーム空
間を構成する3次元オブジェクト(例えば、敵飛行機、
山、ビル等)の位置・方向情報、プレーヤの位置・視野
方向情報等により構成されるゲーム空間設定情報が演算
され、画像合成部1内の画像供給部10へと出力される。
がって、所定の演算処理が行われる。具体的には、絶対
座標系から視点座標系への座標変換、クリッピング処
理、透視変換、ソーティング処理等の演算処理が行わ
れ、画像形成部28へとデータが出力される。なお、この
場合、出力されるデータはポリゴン毎に分割されたデー
タとして表現されており、具体的にはポリゴンの各頂点
の位置座標、テクスチャ座標、その他の付随情報等の頂
点画像情報から構成されている。
れた頂点画像情報に基づいてポリゴン内部の画像情報を
演算して、これをCRT46に出力するものである。
像をより効率よく画像合成すべく、テクスチャマッピン
グ手法及びグーローシェーディング手法と呼ぶ手法によ
り画像合成を行っている。以下、これらの手法の概念に
ついて簡単に説明する。
示される。
えば格子状、縞状の模様等が施されたものを画像合成す
る場合には、従来は、3次元オブジェクトを、3次元ポ
リゴン(1)〜(80)(3次元ポリゴン(41)〜(80)
については図示せず)に分割し、これらの全てのポリゴ
ンに対して画像処理を行っていた。その理由は、従来の
画像合成装置では、1つのポリゴン内の色の塗りつぶし
は、指定された一つの色でしか行えなかったためであ
る。この結果、複雑な模様等が施された高品質な画像を
合成する場合には、ポリゴン数が非常に増加してしまう
ため、実質的に、このような高品質の画像を合成するこ
とは不可能であった。
の回転、並進、透視変換等の座標変換及びクリッピング
等の処理を、各面を構成する3次元ポリゴンA、B、C
ごとに行い(具体的には各3次元ポリゴンの頂点ご
と)、格子状、縞状の模様については、テクスチャとし
て取り扱い、ポリゴンの処理と分割して処理を行ってい
る。即ち、図1に示すように画像形成部28内にはテクス
チャ情報記憶部(レンダリング情報記憶部)42が設けら
れ、この中には各3次元ポリゴンにはり付けるべきテク
スチャ情報(レンダリング情報)、つまり格子状、縞状
の模様等の画像情報が記憶されている。
報記憶部42のアドレスを、各3次元ポリゴンの各頂点の
テクスチャ座標VTX、VTYとして与えておく。具体的に
は、図36に示すように、ポリゴンAの各頂点に対して
は、(VTX0、VTY0)、(VTX1、VTY1)、(VTX2、VTY
2)、(VTX3、VTY3)のテクスチャ座標が設定される。
X、VTYから、ポリゴン内の全てのドットについてのテク
スチャ座標TX、TYが求められる。そして、求められたテ
クスチャ座標TX、TYにより、テクスチャ情報記憶部22か
ら対応するテクスチャ情報が読み出され、図36に示すよ
うな、格子状、縞状等のテクスチャが施された3次元オ
ブジェクトを画像合成することが可能となる。
ことができる。この結果、リアルタイムに高品質な画像
処理を行う画像合成装置に最適な構成となる。
元オブジェクト332を3次元ポリゴンの固まりとして表
現している。従って、各3次元ポリゴンの境界における
輝度情報の連続性が問題となる。例えば複数の3次元ポ
リゴンを用いて球を表現しようとする場合、3次元ポリ
ゴン内の全ドットが全て同じ輝度に設定されると、実際
は「丸み」を表現したいのに、各3次元ポリゴンの境界
が「丸み」として表現されない事態が生じる。そこで、
本画像合成装置では、グーローシェーディングと呼ばれ
る手法によりこれを回避している。この手法では、前記
したテクスチャマッピング手法と同様に、3次元ポリゴ
ンの各頂点に図36に示すように各頂点の輝度情報VBRI0
〜VBRI3を与えておき、画像形成部28で最終的に画像表
示する際に、この各頂点の輝度情報VBRI0〜VBRI3より3
次元ポリゴン内の全てのドットについての輝度情報を補
間により求めている。この手法により、図2に示すよう
に、ポリゴンの多面体で表現された3次元オブジェクト
Kを、境界における「丸み」が表現された3次元オブジ
ェクトLとして画像合成することができる。
できると同時に、画像合成装置内で必要とされる演算処
理量を減らすことができる。従って、リアルタイムに高
品質な画像処理を行う画像合成装置に最適な構成とな
る。
ず処理部15は、ゲーム空間に配置すべき3次元オブジェ
クトの画像情報を3次元画像情報記憶部16より読み出
す。次に、処理部15は、この3次元オブジェクトの画像
情報に位置・方向情報を含ませて座標変換部18に出力す
る。その後、座標変換部18において絶対座標系から視点
座標系へと座標変換が行われる。次にクリッピング処理
部19、透視変換部20、ソーティング処理部22において、
それぞれクリッピング処理、透視変換、ソーティング処
理が行われる。そして、処理が終了したポリゴンの頂点
画像情報は、画像形成部28へと出力される。
像情報の出力順序を、所定の優先順位にしたがって並び
換える演算処理が行われている。具体的には、ソーティ
ング処理部22では、表示画面に対してより手前にあるポ
リゴンの頂点画像情報から順に出力されることになる。
従って、画像形成部28での演算処理は、より手前にある
ポリゴンから順に行われることとなる。
序にしたがって入力されたポリゴンの頂点画像情報か
ら、3次元ポリゴン内部の全ドットの画像情報を演算す
る機能を有する。以下、画像形成部28の動作の概略につ
いて説明する。
像情報、即ち、ポリゴンの各頂点の表示座標、テクスチ
ャ座標、輝度情報等がプロセッサ部30に順次入力され
る。また、ポリゴン内の全てのデータに共通のデータ
は、アトリビュートデータとしてアトリビュートRAM部3
8に入力される。
チャ座標、輝度情報等から、ポリゴン内の全てのドット
の表示座標、テクスチャ座標TX、TY、輝度情報BRIが求
められる。そして、この求められたテクスチャ座標TX、
TY、輝度情報BRIは前記した表示座標をアドレスとして
フィールドバッファ部40に書き込まれる。
及び終了フラッグ記憶部36が接続されている。この処理
ドット指示部37及び終了フラッグ記憶部36は、既に演算
処理が終了して塗りつぶしてしまったドットの演算処理
を省略するために用いられるものである。これにより、
その後の演算処理の負担を非常に軽減することが可能と
なる。
らテクスチャ座標TX、TYが読み出され、これをアドレス
としてテクスチャ記憶部42からテクスチャ情報が読み出
される。そして、この情報とアトリビュートRAM部38か
らのアトリビュートデータとから、パレット&ミキサ回
路44にてRGBデータが形成され、CRT46を介して画像出力
されることになる。
ーチャートが示される。また、図4(A)〜(K)に
は、このフローチャートのフロー1100,1200及び1300で
実行される演算手法が視覚的に示されている。
ィング処理部22において、図3に示すフロー1000に示す
動作が実行される。そして、ソーティング処理部22から
は、各ポリゴン毎にポリゴンデータが出力される。この
とき、各ポリゴンには予め優先順位が与えられており、
ソーティング処理部22からは、優先順位にしたがって、
各ポリゴンのデータが出力される。このとき出力される
各ポリゴンのポリゴンデータは、各ポリゴンの各頂点の
透視変換表示座標、各頂点のテクスチャ座標を含む。
ゴンの各頂点の透視変換表示座標VX*,VY*はメインプロ
セッサ32へ入力され、ここでフロー1100に従った演算が
実行される。即ち、左右輪郭点が演算され、左右輪郭点
に囲まれた走査線上における各ドットの透視変換表示座
標X*、Y*が演算され、ポリゴンを構成する全てのドット
についての演算が終了するまで上記演算が繰り返され
る。そして、このようにして演算された各ドットの透視
変換表示座標X*,Y*は、フィールドバッファ40への書き
込みアドレスとして出力される。そして、この書き込み
アドレスで指定されたフィールドバッファ部40内には、
ポリゴン識別番号PNがそのデータの1つとして書き込ま
れる。
セッサ34により、フロー1200,1300に示す動作が実行さ
れる。
点のテクスチャ座標VTX,VTYと、各頂点の透視変換表示
座標VZ*と後述する各頂点の輝度情報とが入力される。
各頂点のテクスチャ座標VTX,VTYから各頂点の透視変換
テクスチャ座標VTX*,VTY*が求められる。次に、このVT
X*,VTY*から左右輪郭点が演算され、この左右輪郭点に
挾まれる走査線上の各ドット毎の透視変換テクスチャ座
標TX*,TY*が演算され、ポリゴンを構成する全てのドッ
トについての演算が終了するまで上記演算が繰り返され
る。
ロー1300の演算動作が行われ、ポリゴンの透視変換表示
座標Z*の演算が対応する各ドット毎に行われる。
毎に求めた透視変換テクスチャ座標TX*,TY*を、透視変
換表示座標Z*を用い、逆透視変換し、テクスチャ座標T
X,TYとして出力する。この様に出力されたテクスチャ座
標TX,TYは、前記フロー1100のステップ23で出力される
フィールドバッファ部40の書き込みアドレス位置へ書き
込まれることになる。
ー1100で指定されたアドレス位置、すなわちポリゴンを
構成する各ドットとアドレス位置に、当該アドレスに対
応したテクスチャ座標TX,TYとポリゴン識別番号PNが書
き込まれることになる。
00の動作に従い、アトリビュートRAM部38にはソーティ
ング処理部22から出力される各ポリゴンのアトリビュー
トデータが順次記憶される。
各ポリゴンのポリゴンデータが出力される毎に繰り返し
て行い、フィールドバッファ部40及びアトリビュートRA
M部38へのデータの書き込みが繰り返して行われる。
すると、次にフィールドバッファ部40,アトリビュートR
AM部38からのデータの読み出しが開始される。但し、本
実施例においては、フィールドバッファ部40及びアトリ
ビュートRAM部38における画像情報の記憶空間は、2画
面分を記憶できるように構成されている。従って、実際
には、この書き込みと読み出しは同時に行われており、
これにより、演算処理時間の効率化が図られている。
プレイの水平走査に同期して、各ドット毎に書き込まれ
たテクスチャ座標TX,TYが読出しアドレスとしてテクス
チャ情報記憶部42へ向け出力される。そして、これと共
に、ポリゴン識別番号PNが読出しアドレスとして、アト
リビュートRAM部38へ向け出力される。
ドレスに指定されていカラーコードがパレット&ミキサ
回路44へ向け出力され、さらにアトリビュートRAM部38
からは、ポリゴン識別番号PNに対応したアトリビュート
データがパレット&ミキサ回路44に向け出力される。こ
れにより、パレット&ミキサ回路44では、カラー情報、
例えばRGB出力がCRT46へ出力され、所望の疑似3次元画
像が合成表示されることになる。
概要が視覚的に示されている。既に述べたように、画像
形成部28では、ポリゴンの頂点画像情報に基づいて、ポ
リゴン内の全ての画像情報を形成する演算処理が行われ
る。この場合、ポリゴンにはり付けるべきテクスチャ情
報は、テクスチャ情報記憶部42に記憶されており、この
テクスチャ情報を読み出すために、テクスチャ座標TX、
TYが必要となる。そして、図4(F)、(G)、
(H)、(I)には、ポリゴン内の全ての透視変換テク
スチャ座標TX*、TY*を求める演算処理の様子が視覚的に
示されている。この演算処理はコプロセッサ34において
行われる。また、図4(B)、(C)、(D)、(E)
には、テクスチャ情報を表示すべき座標である透視変換
表示座標X*、Y*を求める演算処理の様子が視覚的に示さ
れている。この演算処理は、メインプロセッサ32におい
て行われる。そして、図4(J)に示すように、演算さ
れれた透視変換テクスチャ座標TX*、TY*はテクスチャ座
標TX、TYに逆透視変換され、この逆透視変換されたテク
スチャ座標TX、TYにより、テクスチャ情報記憶部42から
テクスチャ情報が読み出される。最後に、図4(K)に
示すように、演算されたX*、Y*の座標位置に、読み出さ
れたテクスチャ情報を対応づけることで、画像合成が行
われることになる。以下に、図4(A)〜(K)のそれ
ぞれのステップで行われる演算処理の概要について説明
する。
C、Dに対して、テクスチャ座標VTa、VTb、VTc、VTdが
対応づけられている。この頂点テクスチャ座標VTa〜VTd
は、頂点A〜Dにより形成されるポリゴンにはり付ける
テクスチャ情報のアドレスを指定するものである。即
ち、具体的にいえば、テクスチャ情報記憶部42内の記憶
手段に記憶されているテクスチャ情報を読み出すための
アドレスを指定するテクスチャ座標である。
A〜D、テクスチャ座標VTa〜VTdは、各頂点の透視変換
座標A*〜D*、透視変換テクスチャ座標VTa*〜VTd*に透視
変換される。これにより、XY座標系のみならず、Tx、TY
座標系も透視変換されることとなり、各座標系間の線形
性が保たれることとなる。
視変換座標A*〜D*、及び、透視変換テクスチャ座標VTa*
〜VTd*により形成されるポリゴンの輪郭点が線形補間演
算される。即ち、図4(D)、(H)における左右輪郭
点座標L*、R*、及び、左右輪郭点テクスチャ座標Tl*、T
r*の線形補間演算が行われる。
郭点座標L*、R*、及び、左右輪郭点テクスチャ座標T
l*、Tr*により、これらの左右輪郭点を結ぶ走査線上の
各ドットの座標が線形補間演算される。
演算処理は順次繰り返され、最終的には、図4(E)、
(I)に示すように、ポリゴンを構成する全てのドット
の透視変換表示座標X*、Y*及び透視変換テクスチャ座標
Tx*、TY*の線形補間演算が行われる。
座標TX*、TY*を、テクスチャ座標TX、TYに逆透視変換
し、このテクスチャ座標TX、TYを用いて、前記したテク
スチャ情報記憶部42からカラーコードが読み出される。
視変換表示座標X*、Y*に対応させる。これにより、図4
(K)に示すように、スクリーン上に画像が合成され、
遠近感、直線性が損なわれないテクスチャマッピングが
可能となる。
一例が示される。図5に示すように例えば家594、遠く
に見える道592、煉瓦道597等において所望のテクスチャ
マッピングが行われている。これにより、ポリゴンの表
面を単一色で塗りつぶす場合に比べて、非常にリアリテ
ィ溢れる画像表示が可能となっている。また、図5に示
すように煉瓦道597において、はり付けられたテクスチ
ャの遠近感、直線性が損なわれていない。このように本
実施例の画像合成装置によれば、非常に高品質でリアリ
ティ溢れる疑似3次元画像の合成が可能となる。
BRIの演算方法については示されていないが、両者の演
算は、図4におけるTX、TYの演算方法とほぼ同様な演算
方法により行われる。このように、輝度情報の補間演算
についてもTX、TYと同様の方法により行うことにより、
前述したように、これらの座標系間の関係を線形に保つ
ことができ、よりリアリティ溢れる画像を合成すること
が可能となる。
アトリビュートRAM部38、フィールドバッファ部40、テ
クスチャ情報記憶部42を含んで構成される本実施例の具
体的な構成が示される。
オRAM100、102、104、106と、これらのビデオRAMをコン
トロールするフィールドバッファコントローラ90、92、
94、96を含む。
ドバッファ空間には、CRTの表示スクリーンの各ドット
に1対1に対応するデータが格納される。本実施例にお
いて、このフィールドバッファ空間に格納されるデータ
は、コプロセッサ34で演算されたテクスチャ座標TX、T
Y、輝度情報BRI及びポリゴン識別番号PNであり、書き込
むべきアドレスは、メインプロセッサ32で演算された表
示座標X*、Y*により決定される。
り、ランダムポート(RAM)、シリアルポート(SAM)に
分かれている。本実施例では、フィールドバッファ空間
へのデータの書き込みは、ランダムアクセスにより行わ
れ、読み出しはドットクロックに同期してシリアルに行
われる。また、フィールドバッファ空間は、書き込み用
のバンク及び読みだし用のバンクの2つのバンクに分割
され、1フィールド(1/60秒)毎に、バンクの切り替え
を行っている。
び周辺回路との接続の詳細が示され、図8には、フィー
ルドバッファ部40を構成するフィールドバッファコント
ローラ90〜96の内部回路の一例が示される。また、図9
には、フィールドバッファ部40に対する、データの書き
込みシーケンスが示される。
以下の信号が入力される。即ち、制御回路70からは、透
視変換表示座標X*、Y*がアドレスAI0〜9として、ま
た、XPFIR、XVW、XHWがフィールドバッファコントロー
ラ90〜96の制御信号として入力される。また、除算器82
〜86からは、テクスチャ座標TX、TY及びBRIが、フィー
ルドバッファコントローラ92〜96のそれぞれの入力デー
タDI0〜11として、入力される。この他、フィールドバ
ッファ部40には、プログラムレジスタのプログラム信
号、クロック、同期信号等が入力される。
40からは、以下の信号が出力される。即ち、制御回路70
等で構成されるプロセッサ部30に対しては、データ書き
込みの禁止を指令するXWAIT信号が出力される。また、
テクスチャ情報記憶部42には、読み込みデータであるテ
クスチャ座標TX、TYが出力される。また、アトリビュー
トRAM部38には、ポリゴン識別番号PNが、パレット&ミ
キサ回路44には、輝度情報BRIが出力される。
は、図8に示す構成となっている。
ローラは、マスターモード、スレーブモード、拡張モー
ドの3つのモードを備えており、本実施例では、ポリゴ
ン識別番号PNを取り扱うフィールドバッファコントロー
ラ90をマスターモードにて、テクスチャ座標TX、TYを取
り扱うフィールドバッファコントローラ92〜94をスレー
ブモードにて、輝度情報BRIを取り扱うフィールドバッ
ファコントローラ96を拡張モードとして使用している。
これにより、スレーブ・拡張モードで使用されるフィー
ルドバッファコントローラ92〜96は、マスターモードで
使用されるフィールドバッファコントローラ90の支配の
下に同期して制御され、大きなフィールドバッファ空間
を同じ回路構成のフィールドバッファコントローラ90〜
96により同時に制御することが可能となる。この場合、
図8に示すように、マスター、スレーブ、拡張の切り替
えは、XMASTER信号を用いてセレクタ116により行われ
る。即ち、マスターモードの時は、PNカウンタ118によ
り発生されるポリゴン識別番号PNが、セレクタ116によ
りセレクトされ、データQueue124に入力される。逆に、
スレーブ・拡張モードの時は、DI0〜11がセレクトさ
れ、データQueue124に入力される。
クロック信号及び外部同期信号は、内部クロック&同期
信号発生回路134に入力され、この回路において内部ク
ロック及び一群の同期信号が発生され、フィールドバッ
ファコントローラ90〜96内の制御信号として用いられ
る。また、プログラム信号は、プログラマブルレジスタ
132に入力され、これにより、コントローラ内の内部パ
ラメータ郡が決定される。
XPFIR、XVW、XHWは、ラッチ110、112、114により一次ラ
ッチされる。
用いられ、このPNカウンタ118のカウントアップ値によ
り、ポリゴンの識別番号PNが決定される。即ち、XPFIR
は、図9に示すように、新たなポリゴンの処理を開始す
る毎にXPFIR=Lとなるように、メインプロセッサ32の
制御回路70より出力され、XPFIR=LとなるとPNカウン
タ118がカウントアップする。そして、次のフィールド
の処理が開始される前に、PNカウンタ118はリセットさ
れる。これにより、ポリゴンの優先順位が高い順に、
0、1、2、3、4……というようにポリゴン識別番号
PNが、各ポリゴンに設定されることになる。
別番号PNを入力しなくても、内部において、即ちフィー
ルドバッファコントローラ90において、ポリゴン識別番
号PNを発生させることができる。そして、このポリゴン
識別番号PNを利用することにより、ポリゴンを画像上に
表示するデータのうち、ポリゴンを構成する各ドットに
共通のデータと、共通でないデータを分けて処理するこ
とが可能となり、ハードウェアの高速化、小規模化を図
ることが可能となる。
FO120の座標Queue122及びデータQueue124に一旦蓄積さ
れ、その後ビデオRAMに格納される。この場合、アドレ
ス信号AI0〜9をXアドレスとして認識するかYアドレ
スとして認識するかは、Queueコントローラ126に入力さ
れた制御信号XVW及びXHWにより選択される。即ち、図9
に示すように、XVW=L、XHW=Hの時は、AI0〜9は、
Yアドレスとして認識され、XVW=H、XHW=Lの時は、
AI0〜9は、Xアドレスとして認識される。更に、XVW、
XHWは、入力データDI0〜11が有効なデータであるかどう
かの識別信号ともなっている。
タをモニターしており、これにより、外部に対してはXW
AIT信号を、8段FIFO120に対しては、読み出し制御信号
を出力して、データ制御を行っている。また、ビデオRA
Mを制御するためのシーケンス信号も、このシーケンサ1
30により生成されている。
発生回路136へ、Tx、TY、BRIデータはレジスタ138へ、
それぞれ、ディレイ回路128を介して出力される。そし
て、レジスタ138に蓄えられたデータは、RAMアドレス発
生回路136より発生されたRAMアドレスにしたがって、ビ
デオRAMに書き込まれることとなる。このように8段FIF
O120を設けることにより、前段のプロセッサ部30等の演
算処理を中断させることなくビデオRAM100〜106へのデ
ータの書き込みが可能となる。これにより処理の効率を
高めることができる。もし、プロセッサ部30のデータ出
力の速度の変動が大きい場合は、このFIFOの段数を更に
増やせばよいことになる。
レイ回路128を介してRAM制御信号発生回路140及びSAM制
御回路142に出力され、それぞれの回路にて書き込み用
ポートであるRAMの制御信号及び読み込み用ポートであ
るSAMの制御信号が発生されることとなる。
となっている。そして、シリアルポートSAMの初期化を
行う際には、出力端子に切り替わりSAMクリアコード発
生回路144にて発生されたクリアコードが出力され、メ
モリの初期化が行われる。また、SAMよりデータを読み
込む際には、入力端子に切り替わりSAMに記憶されてい
るデータが入力される。この入力されたデータは、シリ
アル出力D0〜11としてフィールドバッファコントローラ
90〜96から出力されることとなる。即ち、フィールドバ
ッファコントローラ90の出力であるポリゴン識別番号PN
はアトリビュートRAM部38へ、フィールドバッファコン
トローラ92、94の出力であるテクスチャ情報TX、TYはテ
クスチャ情報記憶部42へ、フィールドバッファコントロ
ーラ96の出力である輝度情報BRIはディレイ回路168を介
してパレット&ミキサ回路44へと、それぞれ出力される
こととなる。
書き込みシーケンスが示される。図9に示されるよう
に、画像データは、XPFIR=Lとなる毎にポリゴン毎に
書き込まれる。また、1枚のポリゴンのデータが1ライ
ンずつ組にして書き込まれるように、アドレスAI0〜9
が、XVW信号及びXHW信号を用いて制御されている。
リビュートRAM部152及びアトリビュートデータ制御部15
0を有する。
ーPAL、カラーZ値CZ、ブロック番号BN等のアトリビュ
ートデータは、アトリビュートデータ制御部150に入力
される。ここでパレットナンバーPALは、パレットテー
ブルを指定するためのナンバーであり、カラーZ値CZ
は、奥行き変化による色変化に対応するために用いられ
るものである。またブロック番号BNは、テクスチャ情報
記憶部42内の記憶空間のブロック指定を行うための信号
である。これらのアトリビュートデータはアトリビュー
トデータ制御部150により、アトリビュートRAM152に格
納される。そしてアトリビュートRAM152からの読み込み
は、フィールドバッファ部40から入力されるポリゴン識
別番号PNにしたがって行われ、パレット&ミキサ回路44
にポリゴン毎のデータとして出力されることとなる。
を行うためのブロック番号BNも、このアトリビュート制
御回路150より発生されテクスチャ記憶部42に出力され
る。
部) テクスチャ情報記憶部42は、図6に示すように、キャ
ラクタコード記憶部160及びキャラクタジェネレータ164
を含む。このテクスチャ情報記憶部42には、フィールド
バッファ部40からのテクスチャ座標Tx、TYにより実際の
画面を表示するための例えばカラーコードが記憶されて
おり、記憶部のスピードを補うために2段構成となって
いる。これらの記憶部を構成するものとしては、例えば
マスクROM、EEPROM、SRAM、DRAM等を用いることができ
る。特に、RAMを用いて、このRAMに記憶される内容を例
えば1フィールド(1/60秒)毎に書き換えれば、自身の
画像をフィードバックしてまたテクスチャにモニターす
る等特有の画像効果を得ることが可能となる。
れるテクスチャ記憶平面の一例が示される。
階層構造となっており、これにより、少ない容量の記憶
部により広いテクスチャ記憶平面を表現することができ
る。即ち、テクスチャ記憶表面は例えば16のブロックに
分割され、各ブロックは、256×256のキャラクタに分割
されている。そして、このキャラクタは16×16のドット
に分割され、各キャラクタには、テクスチャ記憶表面を
構成するための絵柄が記憶されている。そして、この絵
柄を用いてテクスチャ記憶平面が全て埋められることと
なる。
は、ポリゴンにはり付けたいテクスチャの各頂点座標を
指定することにより行われる。但し、ブロック間にまた
がるポリゴンの指定をすることはできない。
流れの一例が示される。
れぞれ12ビットのテクスチャX座標TX0〜TX11及び16ビ
ットのテクスチャY座標TY0〜TY15が、計28ビットのデ
ータとして入力される。
〜TY3は、キャラクタジェネレータ164におけるキャラク
タのアドレスを指定するために使用され、テクスチャY
座標の上位ビットTY12〜TY15は、テクスチャ記憶平面で
のブロック番号BNを指定するために使用されている。即
ち、上位ビットTY12〜TY15によりテクスチャ記憶平面の
ブロックが指定され、TX4〜TX11及びTY4〜TY11によりブ
ロック内のキャラクタのアドレスが指定される。これに
より、キャラクタコードCC0〜CC12がキャラクタコード
記憶部160から読み出されることとなる。一方、下位ビ
ットTX0〜TX3及びTY0〜TY3は、キャラクタ記憶部160を
バイパスし、前記キャラクタコードCC0〜CC12と結合し
て、キャラクタジェネレータ164に入力される。そし
て、キャラクタジェネレータ164からは、最終的な出力
である例えば8ビットのカラーコードが、パレット&ミ
キサ回路44に出力されることとなる。
ータCOL、パレットナンバーPAL及びカラーZ値CZより画
像出力を行うためのRGBデータを合成するための回路で
ある。
ット毎のデータと、アトリビュートRAM部38に記憶され
るポリゴン用のデータにより、予め設定されているパレ
ットよりRGBデータを引き出すことによって合成され
る。パレットにはRGB各8ビットで、計24ビットの色デ
ータが格納されている。そして、パレットは全部で128
バンクに分割されており、このバンク指定はパレットナ
ンバーPALにより行われる。また、1バンクは、256色の
データを持ち、このバンク内での色指定は、カラーコー
ドCOLにより行われることとなる。
トRAM部38へのデータ書き込み後、画像出力するまでの
信号の流れが示されている。即ち、以下のような信号の
流れにしたがって、最終的な画像が出力される。
N、TX、TY、BRI)が出力される。
Nに対応したポリゴンのデータ(BN、PAL、CZ)が出力さ
れる。
応したカラーデータCOLが出力される。この場合、アト
リビュートRAM部38を経由するBNとタイミングを合わせ
るため、TX、TYはディレイ回路168を介してテクスチャ
情報記憶部42に入力される。
よりタイミング合わせが行われ、同時にパレット&ミキ
サ回路44に入力される。そして、PAL、COLよりパレット
のバンクとバンク内のカラーコードが指定され、パレッ
トから1つの色データが選択される。この選択された色
データは、BRI、CZの値により色演算される。その後、
ガンマ補正を経て、D/A変換され、RGBデータとしてパレ
ット&ミキサ回路44から出力され、CRT46へ画像入力さ
れることとなる。
40にはカラー情報自体ではなく、テクスチャ座標が記憶
される。このようにフィールドバッファ部40にテクスチ
ャ座標が記憶されることにより、例えば、以下に述べる
間引き・補間手法を用いた画像合成が可能となり、これ
によりハードウェアの高速化、小規模化を図ることが可
能となる。
ハードウェアの演算回数を減少させるには、最も数の多
いデータの演算、即ち、表面画面の各ドットにおける表
示座標、テクスチャ情報、輝度情報等の線形補間演算の
回数を少なくすればよい。このためには、これらのデー
タを間引きして演算し、出力する際にこれを補間するこ
とが1つの有効な手段となる。
は、フィールドバッファ部にはカラー情報自体が記憶さ
れていた。このようなカラー情報自体がフィールドバッ
ファ部に記憶される構成により、前記の間引き・補間処
理を行おうとすると、次のような問題が生じる。即ち、
まず、フィールドバッファ部に記憶されるカラー情報
が、カラーコードつまり符号化されたカラー情報である
場合は、補間すること自体が不可能であり、この場合
は、全く論外である。次に、記憶されるカラー情報が、
RGB出力等のカラー情報である場合は、合成された画像
の質が極度に悪化するという事態が生じる。即ち、テク
スチャ情報は表示したい画像に応じて任意に与えられる
ものである。従って、そのデータの並びには、線形性は
おろか、何らの数学的規則性もない。この結果、このよ
うな情報を間引くということは、画像情報自体の欠落を
意味することになる。そして、この欠落した画像情報は
補間によってこれを取り戻すことは不可能である。従っ
て、合成された画質は、データの抜けを生じるなど極度
に悪化することになる。
にはテクスチャ座標TX、TYが記憶される。従って、間引
き・補間処理が可能となる。即ち、テクスチャ座標等に
対する間引き演算は、プロセッサ部30において行うこと
ができる。また、図13に示すようにフィールドバッファ
部40の出力に補間回路180、182、184、186を設けること
により補間演算を行い、間引かれた点のテクスチャ座標
等を求め、テクスチャ情報記憶部42からテクスチャ情報
を読み出すことが可能となる。この場合、スクリーン上
でのテクスチャ座標は非線形なデータであるが、微小部
分ではこのように線形に補間しても、画質をほとんど悪
化させることがなく、良質な画像を得ることが可能とな
る。
保ちつつ、1つのデータを間引く毎に、最もデータ量の
多い演算の回数を1/2以下にすることができ、ハードウ
ェアの高速化、小規模化を図ることが可能となる。
を説明する。図13に示すように、この場合の本実施例の
構成は、図1に示すものとほぼ同一の構成となってお
り、間引き演算手段及び補間演算手段を含む点のみが相
違している。
は、プロセッサ部30に含まれている。具体的には、プロ
セッサ部30における走査線上の各ドットの演算を行う際
に、間引いて演算することによりこれを実現している。
この間引き演算動作は、図14に示すように例えば以下の
ルールにしたがって行われる。
ば1ドット毎に(例えばXが偶数のドットを)間引き処
理する。但し、以下のドットに対しては間引き処理を行
わない。
ァ上のデータのイメージが図14に示される。同図に示す
ように、上記〜に該当するドットについては、間引
き処理が行われず、それ以外のドットは、1ドット毎に
間引かれている。
間引かれたドット及び、ポリゴンの描かれないところ即
ち背景になる部分をいい、例えばTX=TY=FFFhに設定さ
れている。フィールドバッファは、1画面分のデータの
書き込み開始時に、全ドットがクリア(全ビット1)さ
れ、前記したFFFhの値が全ドットに設定されることとな
る。
る補間演算手段は、図13に示すように、フィールドバッ
ファ部40の出力に補間回路180、182、184、186を接続す
ることにより実現される。ここで、補間回路180はポリ
ゴン識別番号PNの補間を行うものであり、補間回路18
2、184は、テクスチャ座標TX、TYの補間を行うものであ
る。また、補間回路186は輝度情報BRIの補間を行うもの
である。具体的には、これらの補間回路180〜186による
補間動作は、図15に示すように例えば以下のようなルー
ルにしたがって行われる。
且つ、右隣と左隣のドットが空きドットでない。
以下のような処理を施すことにより行われる。
る。
トのTX、TY及びBRIの平均値に設定する。
の一例が示される。図15に示すように、補間処理は、ポ
リゴン識別番号PNが同じであるドットに囲まれた空きド
ットに対して行われる。即ち、図15においては、空きド
ットであり両隣のドットのポリゴン識別番号PNがとも
に"0"であるドットに対して補間処理が行われる。これ
に対して、空きドットであっても両隣のドットのポリゴ
ン識別番号PNが異なるドットに対しては補間処理は行わ
れない。このようなドットは間引かれたドットではな
く、ポリゴン間の隙間と判定されるからである。
うに次のような補間処理が行われる。まず、補間回路18
0において、両隣のドットのポリゴン識別番号PNと同じ
値が、空きドットのポリゴン識別番号として設定され
る。即ち、この例ではPN=0に設定される。
クスチャ座標TX、TYの例えば平均値が求められ、この値
が空きドットのテクスチャ座標TX、TYとして設定され
る。この例では、TX=150、TY=30の値が設定されるこ
ととなる。
情報BRIの例えば平均値が求められ、この値が空きドッ
トの輝度情報BRIとして設定される。この例では、BRI=
48の値が設定されることとなる。
的な構成・動作について詳述する。
に示される走査線上の各ドットの演算を行う際に行われ
る。そして、これは走査線上の各ドットの演算を行う際
のX座標のカウントアップ値を変化させることにより行
われる。例えば、間引き率を1/2とする場合には、この
カウントアップ値を2とする。また、間引き率を1/3と
する場合には、このカウントアップ値を3とすればよ
い。これにより、走査線上のドットの演算が2ドット
毎、3ドット毎に行われることとなり、間引き演算処理
が可能となる。
う際に、間引きを行っているが、本発明はこれに限られ
るものではない。例えば、この間引き処理を図4
(C)、(G)に示される輪郭点を演算する際に行って
もよい。この場合は、輪郭点を演算する際のY座標のカ
ウントアップ値を変化させることで、この間引き率を変
更することができることとなる。
は、フィールドバッファ部40の出力に補間回路180〜186
を設けることにより構成される。図16には、この場合の
ビデオRAM100〜106、フィールドバッファコントローラ9
0〜96、補間回路180〜186の間の接続関係が示される。
また、図17には、PN用のフィールドバッファコントロー
ラ90とPN用の補間回路180の接続関係について示される
(TX用、TY用、BRI用のフィールドバッファコントロー
ラ92、94、96と補間回路182、184、186との接続関係も
同様の関係になる)。更に、図18には、補間回路180〜1
86の内部回路の一例が示される。
6への書き込み動作は、フィールドバッファコントロー
ラ90〜96により、所定のアドレス信号に基づいてデータ
をランダムに書き込むことにより行われる。一方、ビデ
オRAM100〜106からのデータの読み出し動作は、DS0〜11
端子を介して、ドットクロックに同期してデータをシリ
アルに読み出すことにより行われる。この場合、フィー
ルドバッファコントローラ90の双方向バッファDS0〜11
から入力されたデータは、図17に示すように、DO0〜11
出力を介して補間回路180にシリアルに出力される。同
様に、フィールドバッファコントローラ92〜96のDO0〜1
1出力からは、補間回路182〜186に対してデータがシリ
アルに出力されることになる。この場合、補間回路180
〜186は、図18に示すような同じ構成の回路により形成
されている。そして、それぞれの補間回路180〜186間の
制御は、XNULB端子、XNULI端子、XEQ端子により行われ
ることになる。
ジスタ192〜214はデータの保持・シフト機能を有する。
また、論理回路220、222、224、226、228はインバー
タ、NOR等の論理演算を行う機能を有する。空きドット
判定回路230は、処理の対象となるドットが空きドット
か否かを判定する回路である。また、ポリゴンナンバ一
致判定回路232は、処理の対象となるドットの両隣のド
ットのポリゴン識別番号PNが一致するか否かを判定する
回路である。また、平均値演算回路234は、補間処理を
行う際に、両隣のドットのテクスチャ座標TX、TY及び輝
度情報BRIの平均値を求めるための回路である。また、
マルチプレクサ236は、補間処理を行ったデータを出力
するか、もとのデータを出力するかを選択するための回
路である。
別番号PNを取り扱うフィールドバッファコントローラ90
はマスターモードにて、テクスチャ座標TX、TYデータを
取り扱うフィールドバッファコントローラ92、94はスレ
ーブモードにて、輝度情報BRIを取り扱うフィールドバ
ッファコントローラ96は拡張モードにて使用されてい
る。そして、補間回路180〜186の双方向バッファである
XNULB、XEQ端子は、それぞれのモードにしたがって、図
16に示すように出力端子あるいは入力端子となる。具体
的には、補間回路180(マスターモード)のXNULB端子は
入力端子に、XEQ端子は出力端子となる。また、補間回
路182、184(スレーブモード)のXNULB端子は出力端子
に、XEQ端子は入力端子になる。また、補間回路186(拡
張モード)のXNULB端子、XEQ端子は共に入力端子とな
る。なお、XNULI端子は全ての補間回路180〜186におい
て入力端子となっている。
は、補間を行うドットの前後のドットのPN、TX、TY、BR
Iの値を参照する必要がある。従って、補間回路180〜18
6の間でコミュニケーションを行うための信号が必要で
あり、補間制御信号XNULB、XNULI、XEQがその役目を果
たすことになる。
ファとなっている。そして、スレーブモードの補間回路
182からは、処理の対象となるドットのTXの値がFFFHか
否かを示す信号がXULB信号として出力される(以下、こ
の信号をXNULB(X)信号と呼ぶ)。同様に補間回路184
からも、TYの値がFFFHか否かを示す信号がXNUB信号とし
て出力される(以下、この信号をXNULB(Y)信号と呼
ぶ)。TXあるいはTYの値がFFFHか否かは、空きドット判
定回路230により判定される。そして、TX=FFFHの場合
にはXNULB(X)信号が"0"となり、TY=FFFHの場合はXN
ULB(Y)信号が"0"となる。XNULB(X)信号、XNULB
(Y)信号がともに"0"の場合に、そのドットは空きド
ットであるということになる。
LB(X)信号は、補間回路180のXNULB端子、補間回路18
4、186のXNULI端子に入力される。同様に、補間回路184
の出力信号であるXNULB(Y)信号は、補間回路180、18
2のXNULI端子、補間回路186のXNULB端子に入力される。
従って、図18に示す補間回路180〜186内の論理回路228
には、XNULB端子、XNULI端子を介して、XNULB(X)信
号及びXNULB(Y)信号が入力されることになる。この
結果、XNULB(X)信号、XNULB(Y)信号がともに"0"
の場合、即ち、対象となるドットが空きドットと判定さ
れた場合、論理回路228の出力は"1"となる。そして、こ
の論理回路228の出力は、レジスタ212、214、論理回路2
26等に伝達されることになる。
マスターモードの補間回路180からは、処理の対象とな
るドットの両隣のドットのポリゴン識別番号PNが同一か
否かを示す信号がXEQ信号として出力される。具体的に
は、レジスタ192、196に保持されたドットのポリゴン識
別番号PNが、ポリゴンナンバ一致判定回路232に入力さ
れる。そして、一致した場合には、XEQ端子から"0"が出
力されることになる。
端子218は入力端子となっている。そして、図16に示す
ように補間回路180の出力であるXEQ信号が入力される。
これにより、補間回路182〜186に対して、両隣のドット
のポリゴン識別番号が一致するか否かの情報が知られる
ことになる。即ち、両隣のドットのポリゴン識別番号PN
が一致した場合は、補間回路180のXEQ端子の出力が"0"
となり、この出力が補間回路180〜186内のインバータ22
0に入力される。そして、このインバータ220の出力が、
レジスタ206、論理回路226に入力されることになる。
り、そのドットの両隣のドットのポリゴン識別番号PNが
一致し、両隣のドットが空きドットでない場合に、その
ドットは補間されるべきドットであると判断される。こ
れにより図18の論理回路226の出力が"1"となり、マルチ
プレクサ236は、レジスタ198の出力ではなく、平均値演
算回路234の出力を選択する。この結果、レジスタ196、
200に保持されたデータであるPN、TX、TY、BRIの平均値
が計算され、補間データが演算されることになる。な
お、この場合、両隣のドットのポリゴン識別番号PNは一
致しているため、両隣のドットの平均値を計算するとい
うことは、両隣のドットと同じPNに設定することと等価
となる。このように本実施例においては、ポリゴン識別
番号PN、テクスチャ座標TX、TY、輝度情報BRIに対する
補間処理を、全て同じ回路構成の補間回路で行うことが
可能となる。
簡単に説明する。
ィールドバッファコントローラ内で補間処理を受けて出
力されるまでの様子が示されている。
ーズ(#0〜#6)によるパイプライン処理で補間処理
を行っている。
ートビデオRAMから対応するドットのデータが出力され
る。
ルドバッファコントローラ90〜96、補間回路180〜186内
に取り込む。
FFFhであるかどうかをチェックし、XNULB信号を出力す
る。
リゴン識別番号PNを比較し、一致したかどうかをXEQ信
号として出力する。
報BRIの補間を、両隣の平均値を求めることにより行
う。但し、補間処理を行わないドットに関しては、マル
チプレクサ236にて、何も処理を行わずそのままデータ
を通過させる。
出力する。
される(フェーズ#0) フィールドバッファコントローラ90〜96、補間回路18
0〜186内にデータが取り込まれる(フェーズ#1) データ(C)に対応したXNULBの出力が行われる(フ
ェーズ#2) データ(C)に対応したXEQの出力が行われる(フェ
ーズ#3) 補間処理を受けたデータが出力される (9)複数システムの並列化及びテクスチャ情報記憶部
の共有化 以上のように、本実施例では、フィールドバッファ部
40に色情報ではなくテクスチャ座標が記憶されることに
より、間引き・補間処理が可能となった。この他にも、
本実施例では、フィールドバッファ部40にテクスチャ座
標が記憶されることにより、画像演算部の一部又は全部
を並列化した場合にテクスチャ情報記憶部42を共有化で
きるといる利点を持っている。なお、ここで画像演算部
とは、3次元画像の形成、3次元画像に対する所定の3
次元演算処理、3次元画像を構成するポリゴン内部の各
ドットの座標及び対応するテクスチャ座標の演算等の所
定の画像演算を行うものをいう。本実施例では、ゲーム
空間演算部13、画像供給部10、プロセッサ部30等がこれ
に該当する。
ルド期間に処理できるポリゴンの数を増加させるか、あ
るいは、表示できるドット数を増やし画像の解像度を高
めればよい。このためには、画像供給部10、あるいはプ
ロセッサ部30、あるいはフィールドバッファ部40等を複
数個設け、演算処理を並列に行えばよい。例えば画像供
給部10を複数個設け、演算処理を並列化することによ
り、1フィールド期間に処理できるポリゴン数を増加さ
せることができる。また、プロセッサ部30を複数個設
け、演算処理を並列化することにより、1フィールド期
間に描くことができるドット数を増加させることがで
き、画像の解像度を高めることができる。
は、フィールドバッファ部には、カラー情報自体が記憶
されていた。従って、このような従来のビットマップ方
式の画像合成装置で、画像供給部10、プロセッサ部30、
フィールドバッファ部40の演算処理の並列化を行おうと
すれば、画像合成装置は図20に示すような構成となる。
この構成の画像合成装置では、図20に示すように画像供
給部10a〜10c、プロセッサ部30a〜30c、フィールドバッ
ファ部40a〜40cのみならず、テクスチャ情報記憶部42a
〜42cも複数個設ける必要がある。そして、マルチプレ
クサ39において、それぞれのフィールドバッファ部40a
〜40cから出力される色情報を随時選択して、パレット
&ミキサ回路44、CRT46を介して画像出力することにな
る。このように、従来のビットマップ方式の画像合成装
置では、演算処理の並列化を行うためには、それぞれの
プロセッサ部30a〜30c、フィールドバッファ部40a〜40c
に対応してテクスチャ情報記憶部42a〜42cを設けなけれ
ばならなかった。
ールドバッファ部40a〜40cに記憶される構成となってい
る。従って、図21に示すように、演算処理の並列化を行
う場合にも、テクスチャ情報記憶部42はマルチプレクサ
39の後段に少なくとも1つ設ければよいことになる。即
ち、図21に示すように画像供給部10a〜10c、プロセッサ
部30a〜30c、フィールドバッファ部40a〜40cを複数個設
け演算処理の並列化を図る。そして、フィールドバッフ
ァ部40a〜40cの出力であるテクスチャ座標TX、TYをマル
チプレクサ39により随時選択して、テクスチャ情報記憶
部42から所望の色情報を読み出し、パレット&ミキサ回
路44、CRT46を介して画像出力することになる。
は、通常、テクスチャ情報記憶部42は非常に大きな記憶
容量をもっており、例えば、本実施例では100MBIT以上
の記憶容量をもっている。また、表示画像の高品質化を
図るためには、テクスチャ情報記憶部42に記憶されるテ
クスチャ情報をより綿密にする必要がある。従って、表
示画像の高品質化を図るためには、テクスチャ情報記憶
部42の記憶容量を更に大容量化する必要が生じる。特
に、このようなテクスチャマッピング手法を用いた画像
合成装置では、同じ形状のポリゴンであっても、異なる
テクスチャをはり付けることにより、異なった印象の画
像を合成することができる。例えば、同じポリゴンで形
成された家の3次元オブジェクトであっても、屋根、ド
ア、壁にはり付けるテクスチャを変更することにより、
全く異なった印象の家を多数表現することが可能とな
る。この意味において、より繊細で高品質の画像を形成
するためには、テクスチャ情報記憶部42の記憶容量をな
るべく大容量化する必要が生ずることになる。
示すように複数個のテクスチャ情報記憶部42a〜42bを設
けなければならない。従って、このようにテクスチャ情
報記憶部を大容量化すると、画像合成装置全体のハード
ウェアが非常に大規模化するという事態が生ずる。更
に、テクスチャ情報記憶部42a〜42cがSRAM、DRAM等で構
成されている場合には、書き込み、読み込み動作等をCP
U等で制御する必要があり、そのための制御信号が必要
となる。このため、テクスチャ情報記憶部が複数個存在
すると、制御のための回路が複雑化するとともに、制御
信号の配線領域も膨大なものとなる。この結果、ハード
ウェアの大規模化という事態が生じてしまう。この点、
本実施例では、図21に示すように、演算処理の並列化を
行っても、テクスチャ情報記憶部42を分散してもつ必要
がない。従って、読み込み、書き込み動作等の制御のた
め回路は簡易なもので済むとともに、制御信号の配線領
域も少ないものとなり、ハードウェアの小規模化を図る
ことが可能となる。
ては、図21に示すものに限らず種々のものが考えられ
る。例えば、画像供給部10は並列化せずに、図22(A)
に示すようにプロセッサ部30a〜30c、フィールドバッフ
ァ部40a〜40cを並列化する構成としてもよい。これは例
えば処理できるドットの数を増やし、表示画像の解像度
を高める場合に特に有効である。また、図22(B)に示
すように、操作部12a〜12b、ゲーム空間演算部13a〜13
c、画像供給部10a〜10c、プロセッサ部30a〜30cを全て
並列化する構成としてもよい。これは、複数のプレーヤ
が競い合ってゲームを行うマルチプレーヤ型ゲームを実
現するのに有効な構成の1つである。この構成によれ
ば、ゲームを行うプレーヤの人数が例えば3人、4人、
5人と増加しても、ハードウェアの演算処理のスピード
が間に合わなくなることがない。そして、単一に存在す
るテクスチャ情報記憶部42を大容量にしてテクスチャ情
報を綿密なものにするだけで、それぞれのプレーヤから
見える全ての表示画像を非常に高品質な画像にすること
が可能となる。
も例えば画像供給部とプロセッサ部、プロセッサ部とフ
ィールドバッファ部とを1対1に対応させて並列化する
必要はない。図23に示すように、例えば画像供給部を3
個設け(10a〜10c)、プロセッサ部を4個設け(30a〜3
0d)、フィールドバッファ部を5個設ける(40a〜40e)
のような構成としてもよい。このような構成は、1フィ
ールド期間に処理できるポリゴン数も、処理できるドッ
ト数も増加させたいが、特に処理できるドット数を多く
増加させて画像の高解像度化を図りたい場合に有効であ
る。また、図23に示す構成とは逆に、画像供給部の個数
を多く、プロセッサ部及びフィールドバッファ部の個数
を少なくしても構わない。更に、画像供給部10を並列化
する場合に、画像供給部10内の一部、例えばクリッピン
グ処理部19、透視変換部20等のみを並列化してもよい。
30とともに、フィールドバッファ部40についても並列化
する場合について説明した。しかし、本発明において
は、これ以外にも、フィールドバッファ部40を並列化し
ない構成も考えられる。この場合は、例えば図21におい
て、フィールドバッファ部40は、マルチプレクサ39の後
段に1個設けられる構成となる。
スチャ座標が記憶されている。これにより、非常に簡易
な手法で背景画像発生部を構成することも可能となる。
置により生成された疑似3次元画像の一例が示される。
図24において、疑似3次元画像を構成する水1300、ビル
1302等はポリゴンの集合として表現されている。また、
空1304に浮かんでいる雲1306、山1308等についても、木
1300、ビル1302等と同様にポリゴンの集合で表現し、仮
想3次元空間での3次元演算処理を行って画像表示する
ことも可能である。しかし、通常、これらの雲1306、山
1308等はプレーヤから見て十分に遠くの位置にある。従
って、ゲーム進行にともなってプレーヤの視点位置等が
変更されても、木1300、ビル1302等に対するような精度
の高い3次元演算処理等を施す必要はない。
に、ポリゴン画像と背景画像とを別々に形成し、これら
の画像をミキシングすることにより表示画像を形成する
手法が知られている。即ち、木1300、ビル1302等で形成
されるポリゴン画像と、空1304、雲1306、山1308等で形
成される背景画像とを別々に形成し、これらの画像をミ
キシングすることにより表示画像を形成するわけであ
る。さて、このような手法を用いて、テクスチャマッピ
ングを用いた画像合成装置を構成したとすると、図25
(B)に示すような構成の画像合成装置になる。この画
像合成装置では、テクスチャ情報記憶部として、ポリゴ
ン画像用のテクスチャ情報記憶部1310及び背景画像用の
テクスチャ情報記憶部1314を有している。そして、ポリ
ゴン画像描画部1312、背景画像描画部1316は、これらの
テクスチャ情報記憶部1310、1314からテクスチャ情報で
ある色情報を読み出す。そして、これらの読み出された
色情報をミキサ回路1318においてミキシングして表示画
像を形成することとなる。
示すように、ポリゴン画像用及び背景画像用の2個のテ
クスチャ情報記憶部1310、1314を設けなければならな
い。従って、これによりハードウェアの大規模化という
問題が生じてしまう。この場合、例えばこれらのテクス
チャ情報記憶部1310、1314を共有化することも考えられ
る。しかし、この構成の画像合成装置でテクスチャ情報
記憶部の共有化を行うと、テクスチャ情報記憶部に対し
て1ドットクロックあたりに2回のアクセスが必要とな
り、スピード面で非常に不利な構成となってしまう。
ミキシングするミキサ回路1318が新たに必要になる。こ
のミキサ回路1318では、ポリゴン画像が構成する各ドッ
トのZ座標(奥行き座標)と、背景画像を構成する各ド
ットのZ座標とを比較判断する等の処理を行って、画像
のミキシングを行う必要がある。従って、比較的規模の
大きい回路が必要となり、ハードウェアの大規模化とい
う問題が生ずる。
ルドバッファ部40にはテクスチャ座標が記憶されてい
る。従って、図26に示すような非常に簡易な構成の背景
画像発生部240を付加するだけで、ポリゴン画像と背景
画像とを分離した画像合成が可能となる。
装置は、図16に示す構成の画像合成装置に背景画像発生
部240を付加することにより構成される。ここで、背景
用テクスチャ座標発生部241は、所定の背景画像表示パ
ラメータにしたがって背景画像を発生する機能を有す
る。また背景ドット判定部242は、描画を行うドットが
背景のドットか否かを判定する機能を有する。また、セ
レクタ244は、描画を行うドットがポリゴン画像のドッ
トか背景画像のドットかによって、ポリゴン用のテクス
チャ座標あるいは背景用のテクスチャ座標を選択する機
能を有する。
一例が示される。図27に示すように背景用テクスチャ座
標発生部241は、パラメータ保持部1242、1244、背景用T
X座標演算部1246、背景用TY座標演算部1248を含んで構
成される。
像表示パラメータは、パラメータ保持部1242、1244に保
持される。ここで背景画像表示パラメータとは、背景の
テクスチャ座標、表示位置、背景の回転情報、拡大・縮
小情報等に関するパラメータである。
テクスチャ座標TX、TYに対して、パラメータ保持部124
2、1244に設定された回転情報、拡大・縮小情報に応じ
た演算処理を行う。例えば図24に示す疑似3次元画像で
は、背景画像用のテクスチャ座標として(TX0、TY0)〜
(TX3、TY3)が与えられている。即ち、テクスチャ情報
記憶部42には、図24に示す空1304、雲1306、山1308等で
形成される背景画像全体が、テクスチャ情報として記憶
されていることになる。そして、例えば道路1310の地形
が変化し、プレーヤの操縦するスポーツカーが傾いたと
する。すると、TX座標演算部1246、TY座標演算部1248
は、テクスチャ座標(TX0、TY0)〜(TX3、TY3)に対し
てZ軸(奥行き方向)周り回転の演算処理を施す。更
に、プレーヤの操縦するスポーツカーが進行方向に進む
につれて、TX座標演算部1246、TY座標演算部1248は、テ
クスチャ座標(TX0、TY0)〜(TX3、TY3)に対する縮小
の演算処理を施すことになる。
ゲームが、迷路内を探検するゲームであったとする。こ
の場合には、迷路を形成する天井、床等を背景とするこ
とができる。そして、天井、床等の背景は、テクスチャ
座標(TX0、TY0)〜(TX3、TY3)に対して、X軸(水平
方向)周りの回転処理を行い、倒し込むことにより表現
されることになる。
示される。
きドットであり、両隣のドットのポリゴン識別番号PNが
一致するドットに対して補間処理が行われる。これに対
して、空きドットではあるが、両隣のドットのPNが一致
しないドットは、ポリゴンとポリゴンの隙間のドットで
あり、補間処理は行われない。従って、これらのドット
には背景画像が表示される。例えば、図24では木1300と
木1301との間のドットがこれに相当する。そして、既に
述べたように、補間回路182、184の出力信号XNULB
(X)、XNULB(Y)により、空きドットか否かを判定
できる。また、補間回路180の出力信号XEQによりPNが一
致するか否かを判定できる。従って、XNULB(X)、XNU
LB(Y)信号が"0"で、XEQ信号が"1"のドットが、背景
画像が表示されるべきドットということになる。
図28に示すようにXNULB(X)、XNULB(Y)、XEQ信号
に基づいて背景画像を表示すべきドットか否かを判定し
ている。
タ1250〜1260、論理回路1262〜1270により構成される。
ここで、論理回路1262の出力は、処理の対象となるドッ
トが空きドットの場合に"1"となる。また、論理回路126
8の出力は、そのドットが補間処理を行わないドットで
ある場合に"1"となる。従って、論理回路1270の出力
は、空きドットであって、補間処理を行わないドットで
ある場合に"1"となる。この出力は、レジスタ1258、126
0を介してセレクタ信号として、セレクタ244に入力され
る。そして、セレクタ244は、セレクタ信号が"1"である
場合は背景用テクスチャ座標TX、TYを選択する。逆に、
セレクタ信号が"0"である場合には、ポリゴン用テクス
チャ座標TX、TYを選択する。このようにして選択された
テクスチャ座標はテクスチャ情報記憶部42に出力され
る。そして、この選択されたテクスチャ座標により、ド
ット毎にテクスチャ情報記憶部42からテクスチャ情報を
読み出すことにより、図25(A)に示すようなポリゴン
画像と背景画像の画像合成が可能となる。
ポリゴン画像と背景画像とを分離して行う画像合成が可
能となる。特に、補間回路180〜186等による間引き・補
間処理を行う場合には、必要最小限の回路の追加で済む
という利点がある。また、本実施例によれば、ポリゴン
画像用、背景画像用に別に2個のテクスチャ情報記憶部
を設ける必要がない。そればかりか、同じテクスチャ情
報をポリゴンと背景とで共有することもできる。従っ
て、非常に大きな記憶容量をもち、また、画像の品質を
高めるためには更に大きな記憶容量をもつ必要があるテ
クスチャ情報記憶部42の回路規模を、必要最小限にとど
めることが可能となる。また、テクスチャ情報記憶部42
を単一にできることにより、テクスチャ情報記憶部42か
らのテクスチャ情報の読み出しが、1ドットクロックあ
たりに1回のアクセスで済むことになる。これにより、
一般に、画像合成装置の処理速度を律速することになる
テクスチャ情報記憶部42からのテクスチャ情報の読み出
し時間を軽減できる。更に、図25(B)に示す合成回路
1318のような、複雑で、回路規模が大きく、画像合成装
置全体の速度を律速するような回路を設ける必要がなく
なる。これらにより、ハードウェアの高速化、小規模化
を図りながら、高品質の画像合成が可能となる。
場合 テクスチャ情報記憶部は、ROMやRAMのようにテクスチ
ャ情報の数値そのものを記憶するものに限らず、テクス
チャ座標等の入力に対する関数の形で表現することも可
能である。この場合のテクスチャ情報記憶部は、論理演
算回路として構成される。
クスチャ情報としてカラー情報を用いた場合について述
べた。しかし、ポリゴンにかり付けることができるテク
スチャ情報としては、これに限らず、あらゆる種類のレ
ンダリング情報を考えることができる。例えばポリゴン
表面の形状の情報をはり付けることも可能である。この
ようなマッピング手法はバンプマッピングと呼ばれてい
る。この手法により、図29に示すように3次元オブジェ
クトMに対して例えばLに示すようにクレータ状のマッ
ピングを施すことが可能となる。
表面形状に対する摂動成分(多くは、法線ベクトルの偏
位)をテクスチャ情報として持つことができる。この摂
動成分からなるテクスチャ情報を、以下バンプと呼ぶ。
また、このバンプテクスチャ情報を読み出すためのテク
スチャ座標をバンプテクスチャ座標BX、BYと呼ぶ。
定数)の1種として「ポリゴンの面の法線ベクトル」を
もつ。そして、この「ポリゴン面の法線ベクトル」が、
摂動成分によってドット毎に摂動を受ける。これにより
各ドットの法線ベクトルNが求められることになる。こ
の様子が図30に示される。
ら、この法線ベクトル情報に基づいて、各ドットの輝度
情報BRIを求める。この場合、法線ベクトルから各ドッ
ト毎の輝度情報BRIを求めるための照明モデルが必要と
なる。
る平行光線と、鏡面反射、拡散反射、周囲光を考える。
この場合、シェーディング関数と呼ばれる半ば理論的に
半ば経験的に得られた次のような式が知られている。
ψ)(1) この照明モデルの演算式におけるそれぞれの記号は、 BRI:各ドットの輝度情報 Ia:周囲光の強度〔F〕 Il:入射光の強度〔F〕 Ka:周囲光の拡散反射係数〔O〕(a:ambient) Kd:拡散反射係数〔O〕(d:diffuse) Ks:鏡面反射係数〔O〕(s:specular) K:任意定数(近距離にある物体の輝度を補正)〔F〕 Z:ドット毎のZ座標値〔場合によってはO〕 φ:光源ベクトルLと法線ベクトルNとの角度 =反射光ベクトルRと法線ベクトルNとの角度 ψ:反射光ベクトルRと視線ベクトルE=〔0,0,1〕と
の角度 n:任意定数(ハイライトの鋭さ)〔O〕 〔F〕:画面(フィールド)毎の定数。
線ベクトルNを用いて、(1)式における角度φ、ψが
求められる。また、必要ならば各ドット毎にZ座標も求
められる。また、これ以外の係数はポリゴン毎にアトリ
ビュートデータとして与えられている。従って、これら
のデータ値を(1)式に代入することで、各ドット毎の
輝度情報が求められることになる。
度情報を基に各ドット色情報を求めることにより、図29
に示すように物体の表面にクレータ状の形状が施された
画像等を合成できることになる。
クチャ情報記憶部には、物体の表面形状情報、例えば法
線ベクトル情報、あるいは、法線ベクトルの摂動成分が
記憶されることになる。そして、この表面形状情報は、
バンプテクスチャ座標により読み出されることになる。
しかし、本実施例では、これに限らず、バンプテクスチ
ャ座標に対して所定の関数演算を施し、各ドットの表面
形状情報を求めることができる。
数は、1次関数の複合体なので、 (w:バンプテクスチャ座標(Bx,By) u:摂動成分
(α,β)i,j:定数) (a mod bは、除算a/bの剰余を意味する) のように表せる。この関数は、疑似サイン曲線の表面形
状を発生させることができる。これは最も基本的なバン
プのひとつなので用途が広い。これをバンプテクスチャ
座標BxとByの片方あるいは両方に適用して利用すること
ができる。
な乗算器900、減算器902、補数器904で構成される回路
で実現できる。ここで乗算器900には、Wm〜W0(Wの下
位m+1ビット)及びjが入力される。そして、乗算器
900の出力は下位mビットが切り捨てられ減算器902に入
力される。減算器902の出力は補数器904に入力される。
ここで補数器904のE入力にはWm+1(Wのビットm+
1)が入力されている。
うにさらに簡単な回路になる。この回路は、シフタ90
6、デクリメンタ908、補数器910により構成される。シ
フタ906にはWm〜W0(Wの下位m+1ビット)が入力さ
れる。ここで、シフタ906は、以下の演算機能を有す
る。
追加(左シフト) i=j(m=n)の場合は、何もしない i>j(m>n)の場合、下位i−jビットを削除する
(右シフト) (3者のいずれかの状態に固定) シフタ906の出力はデクリメンタ908に入力されるが、
下位mビットについてはバイパスして補数器910に入力
される。補数器910のE入力にはWm+1(Wのビットm+
1)が入力されている。
の結線の違いをブラックボックス化して表現したものに
過ぎない。バンプの深さ情報BDEPTHがアトリビュートデ
ータに含まれる場合は特に図31(C)の回路で十分であ
る。
る。この乱数器は、テクスチャ座標などの入力に対して
一意に定める疑似乱数を発生する。この例を図32(A)
に示す。この例で乱数発生回路をユニット化し、乱数ユ
ニットA〜Dというように多段構成にしている。図32
(B)に示すように、いろいろな乱数ユニット912、91
4、916等を取捨選択して、目的にあうバンプパターンを
見つけることができる。
く、本発明の要旨の範囲内で種々の変形実施が可能であ
る。
としては、EEPROM、SRAM、DRAM、マスクROM等、各種の
記憶装置を使用することができる。
情報(レンダリング情報)としては、カラー情報、表面
形状情報、輝度情報、表面形状情報、透明度情報、拡散
反射率情報等、あらゆる種々のものを用いることができ
る。例えば、透明度情報をレンダリング情報として用い
ることにより、物体の一部分が透明から半透明、半透明
から透明へと変化するおぼろげな物体を表現できる。ま
た、拡散反射率情報をレンダリング情報として用いるこ
とにより、部分により「つや」の異なる物体を表現する
ことが可能となる。
マッピングの手法も、本実施例に示した手法に限らず、
あらゆる種類のテクスチャマッピング手法を用いること
ができる。例えば、ある程度の画質の低下を犠牲にし
て、テクスチャを単なる線形補間によりそのままはり付
ける手法を用いてもよい。また、テクスチャ細分アルゴ
リズムを用いて、テクスチャリングを行う面パッチをサ
ブパッチに細分化してテクスチャマッピングを行う手法
を用いてもよい。また、テクスチャをはり付ける場合の
補間を、線形ではなく例えば2次関数等の所定の関数に
より行う手法も考えられる。また、例えば透視変換され
る際の、ポリゴンの頂点座標X、Y、Zと、補間すべき
ポリゴン内のテクスチャ座標との間の関係式を求め、こ
の関係式にしたがい求めるべきテクスチャ座標を補間す
る手法も考えられる。更に、先行技術である(テクスチ
ャマッピングについて(1)柴本猛、小林誠 情報処理
学会第31回講演論文集(社)情報処理学会 昭和60年9
月9日発行)に記載された手法を用いることもできる。
この手法では、まず、ポリゴンの各頂点の透視変換され
た表示座標を逆透視変換して透視変換前の状態に戻す。
そして、各頂点に対応したテクスチャ座標を手掛かり
に、透視変換前の表示座標をテクスチャ座標に変換する
「変換マトリクス」を求めておく。次に、ポリゴン上の
全ドットについてそれぞれの表示座標に逆透視変換をか
け、変換マトリクスによってテクスチャ座標を求める。
に限らず、画質の許す限り、例えば1/3、1/4等各種の間
引き率を採用することができる。そして、この時、補間
演算手段における補間処理は2ドット毎、あるいは3ド
ット毎等のように複数ドット毎に行われることになる。
なお、この場合の「処理の対象となるドットの両隣のド
ット」とは、処理の対象となる複数のドットのうち最も
左に位置するドットの左隣のドット及び最も右に位置す
るドットの右隣のドットをいうことになる。また、この
場合の間引き補間の手段としては、例えば直線補間等を
用いることができる。
されるテクスチャの形状としては、このポリゴンと同一
の形状もしくは相似形状のものには限られず、任意の形
状のテクスチャをマッピングすることができる。例え
ば、ポリゴンの形状と全く異なる形状のテクスチャをマ
ッピングすることにより、テクスチャを歪ませるなど特
殊な画像効果を得ることもできる。
「CRTの走査線」とを特に区別していなかったが、例え
ばビデオRAMのSAM容量等のハードウェア上の制約しだい
では、両走査線が別個のものであって、例えば直交して
いるように場合も考えられる。
Claims (9)
- 【請求項1】ポリゴン画像と背景画像とから成る表示画
像を合成するための画像合成装置であって、 前記ポリゴン画像を構成するポリゴン内部の各ドットの
座標及び該各ドットの座標に対応すべきポリゴン用のテ
クスチャ座標を求める画像演算部と、 前記各ドットの座標により指定されるアドレス位置に、
前記画像演算部により求められた前記ポリゴン用のテク
スチャ座標を記憶するフィールドバッファ部と、 表示画像を構成するドットのうち前記ポリゴン画像が表
示されないドットを背景ドットと判定する背景ドット判
定部と、 背景用のテクスチャ座標を所与の演算処理により発生す
る背景用テクスチャ座標発生部と、 前記フィールドバッファ部から入力される前記ポリゴン
用のテクスチャ座標と、前記背景用テクスチャ座標発生
部から入力される前記背景用のテクスチャ座標のいずれ
かを、前記背景ドット判定部による判定結果に基づいて
選択し出力するセレクタと、 前記セレクタから入力される前記ポリゴン用及び背景用
テクスチャ座標により指定されるアドレス位置に、所与
のレンダリング情報を記憶するレンダリング情報記憶部
とを含むことを特徴とする画像合成装置。 - 【請求項2】請求項(1)において、 前記背景用テクスチャ座標発生部は、前記背景画像に対
して回転処理、拡大処理、縮小処理の少なくとも1つを
施すために、前記背景用テクスチャ座標の変更処理を行
うことを特徴とする画像合成装置。 - 【請求項3】請求項(1)又は(2)において、 前記フィールドバッファ部には、ポリゴン画像が描かれ
ないドットに対して空きドット情報が書き込まれ、 前記背景ドット判定部は、処理対象となるドットに空き
ドット情報が書き込まれている場合に、該ドットを背景
画像と判定することを特徴とする画像合成装置。 - 【請求項4】請求項(3)において、 補間処理部を含み、 前記画像演算部は、各ドットの座標及びこれに対応する
ポリゴン用のテクスチャ座標を間引いて演算し、 前記フィールドバッファ部には、前記間引かれたポリゴ
ン用のテクスチャ座標が書き込まれると共にポリゴンを
識別するためのポリゴン識別番号が書き込まれ、 前記補間処理部は、前記空きドット情報と、前記ポリゴ
ン識別番号とに基づいて前記フィールドバッファに書き
込まれたポリゴン用のテクスチャ座標の補間処理を行
い、 前記背景ドット判定部は、前記空きドット情報と、前記
ポリゴン識別番号とに基づいて前記背景ドットの判定を
行うことを特徴とする画像合成装置。 - 【請求項5】請求項(4)において、 前記補間処理部は、処理の対象となるドットが空きドッ
トであり、そのドットの両隣のドットのポリゴン識別番
号が同一であり且つそのドットの両隣のドットのいずれ
もが空きドットではないドットに対して補間処理を行
い、 前記背景ドット判定部は、処理の対象となるドットが空
きドットであり、そのドットの両隣のドットのポリゴン
識別番号が同一でないか又はそのドットの両隣のドット
のうち少なくとも1つは空きドットであるドットを背景
ドットと判定することを特徴とする画像合成装置。 - 【請求項6】請求項(4)又は(5)において、 前記画像演算部は複数ドット毎に前記間引き演算を行
い、 前記背景ドット判定部における背景ドットの判定及び前
記補間処理が複数ドット毎に行われることを特徴とする
画像合成装置。 - 【請求項7】表示画像を合成するための画像合成装置で
あって、 前記表示画像を構成するポリゴン内部の各ドットの座標
及び該各ドットの座標に対応すべきテクスチャ座標を求
める演算処理を並列処理により行う複数の画像演算部
と、 前記各ドットの座標により指定されるアドレス位置に、
前記画像演算部により求められた前記テクスチャ座標を
記憶する複数のフィールドバッファ部と、 前記フィールドバッファから入力されるテクスチャ座標
を選択し出力するマルチプレクサと、 前記マルチプレクサから入力されるテクスチャ座標によ
り指定されるアドレス位置に、所与のレンダリング情報
を記憶する1のレンダリング情報記憶部とを含み、 前記1のレンダリング情報記憶部を複数の画像演算部及
びフィールドバッファ部により共有して使用することを
特徴とする画像合成装置。 - 【請求項8】請求項(1)乃至(7)のいずれかにおい
て、 前記レンダリング情報記憶部に代えて、テクスチャ座標
に対して所与の関数演算処理を施してレンダリング情報
を求める関数演算部を含むことを特徴とする画像合成装
置。 - 【請求項9】ポリゴン画像と背景画像とから成る表示画
像を合成するための画像合成方法であって、 前記ポリゴン画像を構成するポリゴン内部の各ドットの
座標及び該各ドットの座標に対応すべきポリゴン用のテ
クスチャ座標を求める画像演算ステップと、 前記各ドットの座標により指定されるアドレス位置に、
前記画像演算ステップにより求められた前記ポリゴン用
のテクスチャ座標を記憶するステップと、 表示画像を構成するドットのうち前記ポリゴン画像が表
示されないドットを背景ドットと判定する背景ドット判
定ステップと、 背景用のテクスチャ座標を所与の演算処理により発生す
る背景用テクスチャ座標発生ステップと、 前記記憶ステップで記憶された前記ポリゴン用のテクス
チャ座標と、前記背景用テクスチャ座標発生ステップで
発生される前記背景用のテクスチャ座標のいずれかを、
前記背景ドット判定ステップによる判定結果に基づいて
選択し出力するステップと、 出力された前記ポリゴン用又は背景用テクスチャ座標に
基づいてレンダリング情報を求め、画像情報を形成する
ステップとを含むことを特徴とする画像合成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6506114A JP2888640B2 (ja) | 1992-02-28 | 1993-08-26 | 画像合成装置及び画像合成方法 |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SE9100666-8 | 1991-03-06 | ||
JP25213992 | 1992-08-26 | ||
JP4-252139 | 1992-08-26 | ||
PCT/JP1993/001205 WO1994004989A1 (en) | 1992-08-26 | 1993-08-26 | Image synthesizer |
JP6506114A JP2888640B2 (ja) | 1992-02-28 | 1993-08-26 | 画像合成装置及び画像合成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH06504699A JPH06504699A (ja) | 1994-06-02 |
JP2888640B2 true JP2888640B2 (ja) | 1999-05-10 |
Family
ID=26540562
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6506114A Expired - Lifetime JP2888640B2 (ja) | 1992-02-28 | 1993-08-26 | 画像合成装置及び画像合成方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2888640B2 (ja) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60240534A (ja) * | 1984-05-11 | 1985-11-29 | Hitachi Cable Ltd | 複合剛体電車線の製造方法 |
-
1993
- 1993-08-26 JP JP6506114A patent/JP2888640B2/ja not_active Expired - Lifetime
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60240534A (ja) * | 1984-05-11 | 1985-11-29 | Hitachi Cable Ltd | 複合剛体電車線の製造方法 |
Also Published As
Publication number | Publication date |
---|---|
JPH06504699A (ja) | 1994-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5621867A (en) | Image synthesizing system | |
US5307450A (en) | Z-subdivision for improved texture mapping | |
US5729672A (en) | Ray tracing method and apparatus for projecting rays through an object represented by a set of infinite surfaces | |
US5097427A (en) | Texture mapping for computer graphics display controller system | |
US5230039A (en) | Texture range controls for improved texture mapping | |
US7088362B2 (en) | Graphic computing apparatus | |
JP2675339B2 (ja) | 色画像情報を決定する方法 | |
US5856829A (en) | Inverse Z-buffer and video display system having list-based control mechanism for time-deferred instructing of 3D rendering engine that also responds to supervisory immediate commands | |
US6549203B2 (en) | Lighting and shadowing methods and arrangements for use in computer graphic simulations | |
US5877769A (en) | Image processing apparatus and method | |
US5596685A (en) | Ray tracing method and apparatus for projecting rays through an object represented by a set of infinite surfaces | |
JPH0757117A (ja) | テクスチャマップへの索引を生成する方法及びコンピュータ制御表示システム | |
WO2000002165A1 (fr) | Procede permettant de produire des donnees de polygone et afficheur d'images utilisant lesdites donnees | |
JPH0535913B2 (ja) | ||
GB2357412A (en) | Geometry processing in a 3D graphics rendering pipeline | |
KR910009102B1 (ko) | 화상합성 장치 | |
EP0856815A2 (en) | Method and system for determining and/or using illumination maps in rendering images | |
JP2883523B2 (ja) | 画像合成装置及び画像合成方法 | |
US6563497B1 (en) | Image processing apparatus | |
US7372461B2 (en) | Image processing apparatus and method of same | |
JP2774874B2 (ja) | 画像合成装置及び画像合成方法 | |
JP2888640B2 (ja) | 画像合成装置及び画像合成方法 | |
EP0425573B1 (en) | Texture mapping for computer graphics display controller system | |
EP0725365B1 (en) | Method and apparatus for shading three-dimensional images | |
JPH06309471A (ja) | 3次元グラフィックス描画装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
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 |
|
LAPS | Cancellation because of no payment of annual fees | ||
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 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080219 Year of fee payment: 9 |
|
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: 20080219 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090219 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090219 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100219 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100219 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100219 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110219 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110219 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120219 Year of fee payment: 13 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120219 Year of fee payment: 13 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120219 Year of fee payment: 13 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130219 Year of fee payment: 14 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130219 Year of fee payment: 14 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140219 Year of fee payment: 15 |
|
EXPY | Cancellation because of completion of term |