JPH06266852A - 画像合成装置 - Google Patents

画像合成装置

Info

Publication number
JPH06266852A
JPH06266852A JP5234174A JP23417493A JPH06266852A JP H06266852 A JPH06266852 A JP H06266852A JP 5234174 A JP5234174 A JP 5234174A JP 23417493 A JP23417493 A JP 23417493A JP H06266852 A JPH06266852 A JP H06266852A
Authority
JP
Japan
Prior art keywords
information
image
texture
perspective
calculation
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.)
Granted
Application number
JP5234174A
Other languages
English (en)
Other versions
JP2883523B2 (ja
Inventor
Hiroyuki Murata
弘幸 村田
Takashi Yokota
隆 横田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Namco Ltd
Original Assignee
Namco Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Namco Ltd filed Critical Namco Ltd
Priority to JP5234174A priority Critical patent/JP2883523B2/ja
Publication of JPH06266852A publication Critical patent/JPH06266852A/ja
Application granted granted Critical
Publication of JP2883523B2 publication Critical patent/JP2883523B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

(57)【要約】 【目的】 物体の表面情報の空間的変化に遠近感を与え
ることによって、リアリティの高い画像をリアルタイム
に出力することが目的である。 【構成】 テクスチャ情報記憶部42には、所定のテク
スチャ座標位置にテクスチャ情報が記憶されている。画
像供給部10からは、ポリゴンの頂点座標及び各頂点に
対応するテクスチャ座標、輝度情報及びアトリビュート
データ等が出力される。プロセッサ部30では、このテ
クスチャ座標及び輝度情報を透視変換、線形補間、逆透
視変換して各ドットのレンダリング情報が求められる。
そして、メインプロセッサ32にて求められた表示座標
と、このレンダリング情報とが、フィールドバッファ部
40において対応づけられる。その後、前記テクスチャ
座標にてテクスチャ情報記憶手段42より読み出された
カラーデータと、アトリビュートデータ、輝度情報とに
より、パレット&ミキサ回路44にてRGB変換され、
画像情報が形成される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は画像合成装置、特に画像
情報をリアルタイムで合成出力することが可能な画像合
成装置に関する。
【0002】
【従来の技術】従来、例えば3次元ゲームあるいは飛行
機及び各種乗物の操縦シュミレ―タ等に使用される画像
合成装置として種々のものが知られている。このような
画像合成装置では、図36に示す3次元物体300に関
する画像情報が、あらかじめ装置に記憶されている。そ
して、この画像情報をスクリーン306上に透視変換す
ることにより疑似3次元画像308をスクリーン306
上に画像表示している。プレーヤ302が、操作パネル
304により回転、並進等の操作を行うと、装置は、こ
の操作信号に基づいて3次元物体300に対する回転、
並進等の演算処理をリアルタイムに行う。その後、この
回転等の演算処理が施された3次元画像を、スクリーン
306上に透視変換して疑似3次元画像を表示する。こ
の結果、プレーヤ302は、自身の操作により3次元物
体300をリアルタイムに回転、並進等することが可能
となり、仮想的な3次元空間を疑似体験できることとな
る。
【0003】図37には、このような画像合成装置の構
成の一例が示される。なお、以下の説明では、画像合成
装置を3次元ゲームに適用した場合を例にとり説明を進
める。
【0004】図37に示すように、この画像合成装置
は、操作部510、ゲーム空間演算部500、画像合成
部512、CRT518により構成される。
【0005】ゲーム空間演算部500では、操作部51
0からの操作信号、中央処理部506に記憶されたゲー
ムプログラムにしたがって、ゲーム空間の設定が行われ
る。即ち、3次元物体300をどの位置に、どの方向で
配置するかの演算が行われる。
【0006】画像合成部512は、画像供給部514、
画像形成部516を含んで構成される。そして、画像合
成部512では、ゲーム空間演算部500によるゲーム
空間の設定情報にしたがって疑似3次元画像の画像合成
が行われる。
【0007】さて、本画像合成装置では、ゲーム空間を
構成する3次元物体は、3次元のポリゴンに分割された
多面体として表現されている。例えば、図36において
3次元物体300は、3次元のポリゴン(1) 〜(6) (ポ
リゴン(4) 〜(6) は図示せず)に分割された多面体とし
て表現される。そして、この3次元のポリゴンの各頂点
の座標及び付随データ等(以下、頂点画像情報と呼ぶ)
が3次元画像情報記憶部552に記憶されている。
【0008】画像供給部514では、ゲーム空間演算部
500の設定情報にしたがって、この頂点画像情報に対
する回転、並進等の各種の演算及び透視変換等の各種の
座標変換が行われる。そして、演算処理の終了した頂点
画像情報は、所定の順序に並び換えられた後、画像形成
部516に出力される。
【0009】画像形成部516は、ポリゴン発生回路5
70とパレット回路580を含んで構成され、ポリゴン
発生回路570は、輪郭点演算部324、ラインプロセ
ッサ326を含んで構成される。画像形成部516で
は、ポリゴン内部の全ドットを所定の色データ等で塗り
つぶす演算処理が以下の手順で行われる。
【0010】まず、輪郭点演算部324において、図3
8に示すように、ポリゴンの輪郭線AB、BC,CD、
DA等と走査線との交点である左右輪郭点が演算され
る。次に、ラインプロセッサ326により、これらの左
右輪郭点により囲まれた部分、例えば図38におけるL
Q間、QR間が指定された色データに塗りつぶされる。
図38においては、LQ間は赤色及びQR間は青色の色
データに塗りつぶされる。その後、この塗りつぶされた
色データはパレット回路580においてRGB変換さ
れ、CRT518より出力表示されることになる。
【0011】
【発明が解決しようとする課題】さて、このような従来
の画像合成装置では、以上述べたように一つのポリゴン
上のドットは全て同一色にしか塗りつぶすことができな
かった。例えば、図38では、ポリゴン(1) 上のドット
は赤色のみ、ポリゴン(2) 上のドットは黄色のみ、ポリ
ゴン(3) 上のドットは青色のみにしか塗りつぶすことか
できなかった。従って、形成された画像は単調であり、
リアリティ感に欠けるものであった。
【0012】逆に、このような単調さを避けるため、複
雑な表面を持つ物体を表示しようとすると、ポリゴンの
分割数を大幅に増加させる必要が生ずる。例えば図39
に示すようなカラー情報のテクスチャが施された3次元
物体332を、従来の装置で画像合成する場合には、ポ
リゴンを、例えば (1) 〜 (80) ( (41) 〜 (8
0) は図示せず)に分割して演算処理を行わなければな
らない。即ち、これらの全てのポリゴンに対して回転、
並進、透視変換及び各ポリゴンの輪郭線の演算、ポリゴ
ン内部の塗りつぶし等の演算処理を行わなければならな
かった。従って、図36のようにテクスチャが施されて
いない3次元物体300を処理する場合に比べて、10
数倍もの数のポリゴンを処理する必要が生じることとな
る。ところが、本装置のようにリアルタイムで画像合成
を行う装置では、例えば1フィールド(1/60秒)毎
に全てのポリゴンに対する処理を行い、表示画面の描画
を終了しなければならない。従って、このようなカラー
情報のテクスチャが施された3次元物体332を描くた
めには、装置を構成するハードウェアの処理スピードを
大幅に向上させるか、もしくは、装置のハードウェアを
大規模化して並列演算処理により処理せざるを得なかっ
た。更に、処理するポリゴン数が増加すれば、これに伴
って、装置内部の記憶装置、データ処理装置も必然的に
大型化する。従って、例えばビデオゲーム機など、コス
ト上、あるいは設置面積上、制限のある画像合成装置で
は、このように繊細にテクスチャが施された高品質の疑
似3次元画像を描くことは、実質上不可能となってい
た。
【0013】ところで、コンピュータグラフィック等の
分野においては、図40に示すテクスチャマッピングと
呼ばれる手法が知られている。つまり、この手法による
画像合成装置では、3次元物体332の画像情報を、多
面体334の画像情報とテクスチャ336、338のテ
クスチャ情報に分離して装置に記憶する。そして、画像
出力する際に、多面体334に、このテクスチャ33
6、338のテクスチャ情報をはり付けることによって
画像合成を行っている。
【0014】しかしながら、高品質のテクスチャマッピ
ング手法は、グラフィックス・ワークステーションと呼
ばれる画像処理専用コンピュータや、フライトシミュレ
ータ等、かなり大規模で高価な画像処理装置の分野にお
いて実現されている物である。例えばビデオゲーム機な
ど比較的廉価な画像合成装置の分野においては、ハード
ウエアの超高速化や大規模化が困難であるため、テクス
チャマッピングを実現している物は極めて少ない。実現
しているわずかな例を見ても、表示可能な3次元物体の
数や大きさが限定されており、かつ、簡単な近似手法に
よる演算しか行えないために不正確なマッピングになっ
ていた。この結果、画像のリアリティを著しく損ねてい
た。また、画面が更新される頻度が毎秒数フレーム程度
と低いため、リアルタイム性も不十分であった。
【0015】また、このテクスチャマッピングを用いた
手法では、図40に示すように3次元物体に対して2次
元で形成されたテクスチャをはり付けなければならな
い。従って、マッピングされたテクスチャの遠近感が失
われたり、直線性が損なわれたりする問題が生じた。
【0016】ところで、直線性の問題を改善するものと
して、例えば特開昭63−80375に開示された従来
技術がある。この技術は、走査線に沿ってではなくポリ
ゴンの辺にならった向きにマッピングを行うことによっ
て直線性を保つことを目指していた。しかし、直線の向
きによっては直線性が保たれない場合があった。また、
同一ドットを重複して処理するため、無駄な処理時間を
要した。更に、遠近感の問題については、全く改善でき
なかった。
【0017】また、合成された画像が単調になることを
避けるのに、例えばカラー情報ではなく物体の表面の輝
度情報を変化させる手法が考えられる。このような手法
として例えば、物体表面の輝度情報が単純かつ連続的に
変化している場合は、グーローシェーディングと呼ばれ
る手法が知られている。また、法線ベクトルが変化して
いる場合は、フォンシェーディングと呼ばれる手法(例
えば特公平3−45427、特公平3−45428)が
知られている。
【0018】これらのグーローシェーディング、フォン
シェーディングの手法ではいずれも、各ドットの輝度情
報、法線ベクトルを単なる線形補間演算により求めてい
る。従って、輝度変化に遠近感が欠落した画像を合成す
ることとなり、合成される3次元物体を回転等した場合
に、画像のリアリティが損なわれるという問題があっ
た。
【0019】本発明は、以上のような従来の課題に鑑み
なされたものであり、その目的とするところは、物体の
表面情報の空間的変化に遠近感を与えることによって、
リアリティの高い画像をリアルタイムに出力できる画像
合成装置を提供することにある。
【0020】
【課題を解決するための手段】前記目的を達成するため
に、本発明は、3次元ポリゴンで構成される3次元画像
を所定投影面上に透視変換して疑似3次元画像を合成す
る画像合成装置であって、前記3次元ポリゴンの各頂点
の表示座標を前記投影面上の各頂点の透視変換表示座標
に透視変換し、この各頂点の透視変換表示座標により形
成されるポリゴンを構成する各ドットの透視変換表示座
標を線形補間演算により求める表示座標演算手段と、前
記3次元ポリゴンの各頂点に対応して与えられた表面情
報を前記各頂点の透視変換表示座標に対して線形な各頂
点の透視変換表面情報に透視変換し、この各頂点の透視
変換表面情報により形成されるポリゴンを構成する各ド
ットの透視変換表面情報を線形補間演算により求め、こ
の透視変換表面情報を逆透視変換して表面情報の演算を
行う表面情報演算手段と、前記表面情報演算手段により
求められた前記表面情報に基づいて前記透視変換表示座
標位置における画像情報の形成を行う画像情報形成手段
と、を含むことを特徴をする。
【0021】この場合、前記表示座標演算手段は、前記
各頂点の透視変換表示座標を線形補間することにより、
各頂点の透視変換表示座標により形成されるポリゴンの
輪郭線と各走査線とが交差する点である左右輪郭点の透
視変換表示座標を演算し、この左右輪郭点の透視変換表
示座標を線形補間することにより、左右輪郭点を結ぶ走
査線上の各ドットの透視変換表示座標を線形補間演算す
るように形成され、前記表面情報演算手段は、前記各頂
点の透視変換表面情報を線形補間することにより、各頂
点の透視変換表示座標により形成されるポリゴンの輪郭
線と各走査線とが交差する点である左右輪郭点の透視変
換表面情報を演算し、この左右輪郭点の透視変換表面情
報を線形補間することにより、左右輪郭点を結ぶ走査線
上の各ドットの透視変換表面情報を線形補間演算するよ
うに形成することができる。
【0022】また、前記表面情報演算手段により演算処
理される前記表面情報のうち少なくとも1つはレンダリ
ング情報であり、前記画像情報形成手段が、前記表面情
報演算手段により求められたレンダリング情報に基づい
て前記透視変換表示座標位置における画像情報の形成を
行うことが望ましい。
【0023】また、前記表面情報演算手段により演算処
理される前記表面情報のうち少なくとも1つはテクスチ
ャ座標であり、前記表面情報演算手段により求められた
テクスチャ座標により指定されるアドレス位置に所定の
レンダリング情報を記憶するレンダリング情報記憶部を
含み、前記画像情報形成手段が、前記レンダリング情報
記憶部により読み出されたレンダリング情報に基づいて
前記透視変換表示座標位置における画像情報の形成を行
ってもよい。
【0024】また、前記表面情報演算手段により演算処
理される前記表面情報のうち少なくとも1つはテクスチ
ャ座標であり、前記表面情報演算手段により求められた
テクスチャ座標に対して所定の関数演算を施してレンダ
リング情報を求める関数演算部を含み、前記画像情報形
成手段が、前記関数演算部により求められたレンダリン
グ情報に基づいて前記透視変換表示座標位置における画
像情報の形成を行ってもよい。
【0025】また、前記レンダリング情報のうち少なく
とも一種類がカラー情報であり、前記画像情報形成手段
が、このカラー情報を用いて前記透視変換表示座標位置
における画像情報の形成を行うことが望ましい。
【0026】また、前記レンダリング情報のうち少なく
とも一種類が輝度情報であり、前記画像情報形成手段
が、この輝度情報を用いて前記透視変換表示座標位置に
おける画像情報の形成を行ってもよい。
【0027】また、前記レンダリング情報のうち少なく
とも一種類が表面形状情報であり、前記画像情報形成手
段が、この表面形状情報を用いて前記透視変換表示座標
位置における画像情報の形成を行ってもよい。
【0028】また、前記レンダリング情報のうち少なく
とも一種類が透明度情報であり、前記画像情報形成手段
が、この透明度情報を用いて前記透視変換表示座標位置
における画像情報の形成を行ってもよい。
【0029】また、前記レンダリング情報のうち少なく
とも一種類が拡散反射率情報であり、前記画像情報形成
手段が、この拡散反射率情報を用いて前記透視変換表示
座標位置における画像情報の形成を行ってもよい。
【0030】また、前記画像情報形成手段は、分割され
た各ポリゴンに共通の画像情報であるアトリビュートデ
ータを記憶するアトリビュートデータ記憶手段を有し、
前記画像情報形成手段が、前記アトリビュートデータ及
び前記表面情報に基づいて前記透視変換表示座標位置に
おける画像情報の形成を行うことが望ましい。
【0031】また、前記表示座標演算手段は、表示画面
に対して手前に位置するポリゴンから順に演算処理を行
い、前記表示座標演算手段による演算処理が終了したド
ットに対応するアドレス位置に、演算処理の終了を示す
終了フラッグが記憶される終了フラッグ記憶手段と、前
記終了フラッグ記憶手段から前記終了フラッグを読み出
し、この終了フラッグに基づいて処理を行うべきドット
を前記表示座標演算手段に指示する処理ドット指示手段
とを含み、前記処理ドット指示手段は、処理することを
決定したドットの終了フラッグを新たに処理が終了した
ドットとして前記終了フラッグ記憶手段に書き戻すとと
もに、前記表示座標演算手段に対して処理することを決
定したドットのみ前記演算処理を行うよう指示すること
で処理の高速化を図ることが望ましい。
【0032】
【作用】本発明によれば、ポリゴンの表示座標に関する
座標系のみならず、ポリゴンの表面情報についても透視
変換される。従って、表示座標に関する座標系と表面情
報との間の関係が線形に保たれることになる。この結
果、物体の表面情報の遠近感、直線性が損なわれず、高
品質の疑似3次元画像をリアルタイムに画像合成するこ
とが可能となる。
【0033】また、本発明によれば、各頂点の透視変換
表示座標、透視変換表面情報の線形補間演算等により、
左右輪郭点及びこれを結ぶ走査線上の各ドットの透視変
換表示座標、透視変換表面情報を求めることができる。
【0034】また、本発明によれば、表面情報演算手段
により演算処理される表面情報のうち少なくとも1つを
レンダリング情報とすることができる。これにより、ポ
リゴンの各頂点に与えられたテクスチャ座標に基づい
て、遠近感、直線性の損なわれないレンダリングを表示
物体の表面に対して施すことが可能となる。
【0035】また、本発明によれば、表面情報演算手段
により演算処理される表面情報のうち少なくとも1つを
テクスチャ座標とし、このテクスチャ座標によりレンダ
リング情報記憶部からレンダリング情報を読み出し画像
情報の形成を行うことができる。これにより、ポリゴン
の各頂点に与えられたテクスチャ座標に基づいてレンダ
リング情報を読み出し、遠近感、直線性の損なわれない
テクスチャマッピングを表示物体の表面に対して施すこ
とが可能となる。
【0036】また、本発明によれば、表面情報演算手段
により演算処理される前記表面情報のうち少なくとも1
つをテクスチャ座標とし、このテクスチャ座標に対して
所定の関数演算を施してレンダリング情報を求め画像情
報の形成を行うことができる。
【0037】これにより、ポリゴンの各頂点に与えられ
たテクスチャ座標に基づいて関数演算部によりレンダリ
ング情報を形成し、遠近感、直線性の損なわれないテク
スチャマッピングを表示物体の表面に対して施すことが
可能となる。
【0038】また、本発明によれば、レンダリング情報
のうち少なくとも一種類をカラー情報とすることができ
る。これによりカラー情報を用いたレンダリングを、遠
近感、直線性を損なうことなく行うことができる。同様
に、カラー情報を用いたテクスチャマッピングも遠近
感、直線性を損なわことなく行うことができる。
【0039】また、本発明によれば、前記レンダリング
情報のうち少なくとも一種類を輝度情報とすることがで
きる。これにより、カラー情報のみならず輝度情報を用
いたレンダリング、テクスチャマッピングを行うことが
できる。
【0040】また、本発明によれば、レンダリング情報
のうち少なくとも一種類を表面形状情報とすることがで
きる。これにより、カラー情報のみならず物体の表面形
状情報を用いたレンダリング、テクスチャマッピングを
行うことができる。
【0041】また、本発明によれば、レンダリング情報
のうち少なくとも一種類を透明度情報とすることができ
る。これにより、カラー情報のみならず物体の透明度情
報を用いたレンダリング等を行うことができる。
【0042】また、本発明によれば、前記レンダリング
情報のうち少なくとも一種類を拡散反射率情報とするこ
とができる。これにより、カラー情報のみならず物体の
拡散反射率情報を用いたレンダリング等を行うことがで
きる。
【0043】また、本発明によれば、分割された各ポリ
ゴンに共通の画像情報であるアトリビュートデータを用
いることができる。これにより、より高品質な画像合成
をより簡易な回路構成で実現できる。
【0044】また、本発明によれば、表示座標演算手段
が表示画面に対して手前に位置するポリゴンから順に演
算処理を行い、終了フラッグ記憶手段に記憶された終了
フラッグに基づいて、処理ドット指示部が処理を行うべ
きドットを指示する構成とすることができる。このよう
に構成することで演算処理が間に合わなくなっても、画
面の手前にあるポリゴンのデータが喪失するのを有効に
防止できる。また、手前にあるポリゴンの演算処理後、
次のポリゴンの演算処理を行う場合、陰面の部分につい
ては既に終了フラッグが書き込まれている。従って、こ
の陰面の部分については演算処理を省略でき、処理の高
速化を図ることができる。
【0045】
【実施例】
(実施例の目次) A.手法 1.手法1 2.手法2 3.手法3 4.手法4 5.基本構成・基本概念 B.第1の実施例 1.実施例の概要 (1) 構成の概要 (2) 動作及び演算手法の概要 2.具体例 (1) ゲーム空間演算部 (2) 画像供給部 (3) ソーティング処理部 (4) プロセッサ部 (5) 終了フラッグ記憶部、処理ドット指示部 (6) フィールドバッファ部 (7) アトリビュートRAM部 (8) テクスチャ情報記憶部 (9) パレット&ミキサ回路 C.第2の実施例の概要 1.実施例の概要 2.具体例 D.第3の実施例の概要 1.実施例の概要 2.具体例 A.手法 本発明にかかる画像合成装置は、大略して、以下のよう
な手法に基づき構成される。 1.手法1 まず第一に本画像合成装置は、テクスチャマッピング手
法、即ち、3次元画像を構成するポリゴンに、テクスチ
ャ情報記憶手段に記憶されているレンダリング情報であ
るテクスチャ情報を、テクスチャマッピングすることに
より画像を合成している。なお、ここでは簡単のために
テクスチャ情報としてカラー情報のみを考える。
【0046】このテクスチャマッピング手法によれば、
処理するポリゴン数を増やすことなく、画像の模様、色
彩等をよりきめ細かなものとすることができる。即ち、
テクスチャ情報記憶手段に記憶されているテクスチャ情
報をより綿密なものとするだけで、ハードウェアの負担
をそれほど増やすことなく、より高品質な画像を得るこ
とができるわけである。
【0047】しかし、従来のテクスチャマッピング手法
により、テクスチャを施した場合には、例えば次のよう
な問題点が生じる。即ち、マッピングされたテクスチャ
の模様の遠近感、及び、直線性に関する問題点である。
【0048】図3(A)〜(C)には、このテクスチャ
マッピングの遠近感に関する問題点について示される。
【0049】図3(A)に示すように、テクスチャ33
6を、ただ単に線形補間によりポリゴン340にはり付
けた場合、多面体334におけるテクスチャは、スクリ
ーン上において図3(B)に示すように見えることにな
る。しかし、実際には多面体334におけるテクスチャ
は、図3(C)に示すように見えるべきである。即ち、
図3(B)に示すようにテクスチャはり付けると、多面
体334上のテクスチャの遠近感が失われていることが
わかる。これは、例えば、図3(A)における、テクス
チャ模様の間隔d0 〜d3 がそのまま線形に補間されて
いることからも理解される。
【0050】更に、ただ単に線形補間によりテクスチャ
をはり付けると、テクスチャを構成する模様の直線性が
損なわれるという現象も生じる。即ち、3次元上での直
線が、スクリーン上で直線とはならなくなり例えば折れ
曲がって見えることとなる。この様子が図4(A)、
(B)に示される。即ち、スクリーン上において実際に
は図4(A)に示すように見えるべき画像が、図4
(B)のように見えてしまう。このように、ただ単に、
線形補間によりテクスチャをはり付けると、テクスチャ
を構成する模様の直線性が大幅に損なわれ、画質に大幅
な劣化が生じることとなる。
【0051】この遠近感及び直線性の問題は、スクリー
ン上におけるテクスチャが非線形であるにもかかわら
ず、線形補間している点に原因がある。
【0052】以上のような、遠近感、直線性の問題を解
決するものとして、従来、例えばテクスチャ細分アルゴ
リズムを用いたテクスチャマッピング手法というものが
考案されている。これは図5に示すようにテクスチャリ
ングを行う面パッチ342をサブパッチ344に細分化
してテクスチャマッピングを行う。このような手法によ
ればサブパッチ344内でのデプス(Z値)の知識が要
求されないため、このサブパッチ344をより細分化す
ることにより、上記した遠近感、直線性の問題を解決で
きることになる。
【0053】しかし、この手法によった場合、画質の向
上を図るべく細分化の程度を増すにしたがって演算量が
増大し、また、このアルゴリズムを実際にハードウェア
で実現した場合にはハードウェアが複雑なものとなるた
め、ハードウェアの規模、負担が大幅に増大してしま
う。
【0054】また、テクスチャをはり付ける場合の補間
を、線形ではなく例えば2次関数により行う手法も考え
られる。この手法によれば、ハードウエア上の負担は、
線形補間の場合よりは増えるが、後述する数学的に正確
な手法よりは少なくて済む。遠近感と直線性の問題も、
線形補間の場合よりは改善されるが、完全には解消しな
い。ここでもテクスチャ細分アルゴリズムを適用して、
遠近感と直線性をさらに改善することが可能だが、その
場合には前述したテクスチャ細分アルゴリズムの弊害が
さらに顕著に現れる。
【0055】以上の線形あるいは2次関数による補間手
法は近似演算を用いる手法である。これに対して数学的
に正確な手法として、例えば透視変換される際の、ポリ
ゴンの頂点座標X、Y、Zと、補間すべきポリゴン内の
テクスチャ座標との間の関係式を求め、この関係式にし
たがい求めるべきテクスチャ座標を補間する手法も考え
られる。しかし、この関係式は複雑な分数関数となって
いしまい、この分数関数をハードウェア上で実現しよう
とすれば、ハードウェアの負担が大幅に増加してしまう
結果となる。
【0056】数学的正確さを保ち、なおかつより演算量
の少ない手法として、次のような手法が知られている
(テクスチャマッピングについて(1) 柴本猛、小林誠
情報処理学会第31回講演論文集 (社)情報処理学会
昭和60年9月9日発行)。この手法では、まず、ポ
リゴンの各頂点の透視変換された表示座標を逆透視変換
して透視変換前の状態に戻す。そして、各頂点に対応し
たテクスチャ座標を手掛かりに、透視変換前の表示座標
をテクスチャ座標に変換する「変換マトリクス」を求め
ておく。次に、ポリゴン上の全ドットについてそれぞれ
の表示座標に逆透視変換をかけ、変換マトリクスによっ
てテクスチャ座標を求める。この手法によれば、大幅な
演算量の低減が実現できる。しかし、それでもなお、変
換マトリクスを求める演算、およびそれによってテクス
チャ座標を求める演算が大きな負担となる。
【0057】以上のように、従来の手法によっては、画
質の向上を図るべく遠近感、直線性などが損なわれない
ようにしながら、しかも同時にハードウェア上の負担も
あまり大きくしならないような画像合成装置を実現する
ことは非常に困難であった。
【0058】本発明者は、このような困難性を生みだし
ている要因は、X、Y座標のみ透視変換され、Z座標及
びテクスチャ座標TX 、TY については透視変換されて
いないことにあるのではないかと考えた。即ち、X、Y
座標のみが透視変換され、Z、TX 、TY が透視変換さ
れていないため、この5つの座標が非線形な関係にな
り、上記した困難性を生み出しているわけである。
【0059】そこで、本発明におけるテクスチャマッピ
ング手法では、X、Y座標系のみならず、Z、TX 、T
Y 座標系も透視変換して、5つの座標系を線形な関係に
しておき、その後に、この座標系上で線形補間する手法
によりテクスチャマッピングを行っている。そして、こ
の手法をハードウェア上で実現するために、ポリゴンの
各頂点に与えられた頂点画像情報を透視変換し、この透
視変換後の頂点画像情報を線形補間することにより表示
画面の各ドットの画像情報を求めている。
【0060】従って、この手法によれば、負担の重い演
算である透視変換はポリゴンの各頂点に対して行えばよ
く、この負担の重い演算の回数を減らすことができる。
また、演算回数、即ち演算すべきデータの最も多い表示
画面の各ドットの画像情報の演算は線形補間演算により
行うことができる。そして、表示座標からテクスチャ座
標への変換の必要はない。従って変換マトリクスを予め
求めておく必要もない。この結果、ハードウェアの負担
を従来のテクスチャマッピング手法によるものより大幅
に減らすことができ、しかも同時に、遠近感、直線性な
どを損なうことのない質の高い画像情報を形成すること
が可能となる。
【0061】なお、図6には透視変換の概念図が示され
る。即ち、透視変換とは、3次元画像を2次元のスクリ
ーン306上に投影変換することをいい、 X* =X×(h/Z) Y* =Y×(h/Z) の変換式によりX座標、Y座標が変換される。
【0062】ここに、hは視点とスクリーンの距離であ
り、視点を原点とする座標系を用いている。
【0063】XとYとは線形であり、X* とY* もまた
線形である。
【0064】透視変換という概念をより一般化して、次
のように考える。いま新たな座標Wを想定し、WとX、
あるいはWとYが線形であるとする。W* とX* 、ある
いはW* とY* もまた線形となるような、WからW*
の変換を、Wの透視変換と考える。すると、 W* =pW/Z+q/Z+r という一般式が導かれる。ここに、p、q、rはそれぞ
れ任意の定数である。
【0065】このWに、テクスチャ座標やZ座標や輝度
情報を当てはめると、全ての座標の線形化が実現する。
テクスチャ座標TX 及びTY 、そして他の表面情報、例
えば輝度情報BRIの場合は、p=h、q=r=0とし
て、 Tx* =Tx×(h/z) Ty* =Ty×(h/z) BRI* =BRI×(h/z) と定義すると、X及びYの透視変換と乗数が共通化でき
る。ただし、Zの透視変換に関しては、上記と同様にす
ると、Z* は定数hに等しくなってしまうので、特に、
p=r=0、q=hとして、 Z* =h/Z と定義すると、これは他の座標系の透視変換の乗数その
ものであり、設計上都合がよい。つまり、Zをまず透視
変換し、それを乗数として、他の座標系を透視変換すれ
ばよい。 2.手法2 3次元画像を疑似3次元画像に変換した場合の画質の低
下の問題として、前述した遠近感、直線性の問題の他
に、例えば輝度に関する問題がある。
【0066】通常、この種の画像合成装置においては、
疑似3次元画像の各ドットでの輝度情報についても演算
し、最終的にCRT等で表示する際に、別に演算された
カラーコードと合成しながらこれを出力している。この
際に、特に問題となるのは、輝度情報の連続性に関する
問題である。即ち、疑似曲面、つまり物体表面がポリゴ
ンで構成されているにも関わらず、「丸み」を表現した
い場合が多々ある。例えば、輝度情報を各ポリゴン毎に
もたせている従来の画像合成装置では、各ポリゴン間で
の輝度を連続なものとしなければ、ポリゴンとポリゴン
の境界線が、画像上に表れてしまい前記した「丸み」が
得られない。
【0067】更に、例えば物体表面の、照明があたって
明るい部分と、照明から遠く暗い部分との境界のような
部分では、輝度の緩やかな変化を表現したい場合があ
る。この場合、境界における輝度情報の連続性がなけれ
ば、輝度の緩やかな変化を表現することができない。
【0068】そこで、この輝度情報の連続性を保つべ
く、グ−ローシェーディングと呼ばれる手法が知られて
いる。この手法では、輝度情報はポリゴンの各頂点に与
えられている。そして、この各頂点に与えられた輝度情
報を線形補間することにより表示画面上での各ドットで
の輝度情報を演算する手法をとっている。この手法によ
り例えば図7(A)に示すように、ポリゴンの多面体で
表現された3次元オブジェクトKを、境界における「丸
み」が表現された3次元オブジェクトLとして画像合成
することができる。
【0069】しかし、前記したテクスチャマッピングに
おける透視変換によって生じた問題と同様の問題が、こ
の輝度情報の線形補間演算においても生じることが判明
した。この点について、図3(A)〜(C)を用いて説
明する。
【0070】例えば、図3(A)において、ポリゴンの
頂点である点A、B、C、Dでの輝度情報が与えられて
いる場合を考える。この場合、点Mでの輝度を求めるの
に、例えばただ単に線形補間により求めるとすれば、点
Cでの輝度と点Dでの輝度の平均値を求め、これを辺C
Dの中点Mでの輝度とする。しかし、3次元画像を疑似
3次元画像に透視変換したときに、画面上で実際に上記
した輝度を持つべきドットは、図3(B)における辺C
Dの中点Eではなく、中点Eよりも点Dに近い図3
(C)における点Fでなければならない。即ち、輝度情
報をただ単に線形補間により求めた場合、実際に表示さ
れるべき輝度情報により構成される画像と異なった輝度
情報が形成されることになってしまう。従って、例えば
図3(B)の辺CDの中点Eにおける輝度は、例えば多
面体334が回転等してその奥行き情報(Z値)が変化
しても、やはり点Cの輝度と点Dの輝度の平均値のまま
であり、多面体が回転しているという実感があまり感じ
られなくなってしまう問題も生じる。
【0071】このような問題が生じた理由は、前記手法
1で述べたものと同様の原因による。即ち、ただ単に線
形補間をしたのでは、X、Y座標については透視変換さ
れるが、輝度情報については透視変換されておらず、こ
れら座標系の間で線形な関係が保たれなくなってしまっ
ているからである。そこで本発明では、この輝度情報の
演算においても、まずポリゴンの各頂点における輝度情
報を透視変換し、この透視変換された頂点輝度情報に基
づき各ドットにおける輝度情報を線形補間演算してい
る。
【0072】この手法により、実際の3次元物体におい
て見えるべき輝度を忠実に再現でき、前記手法1で述べ
たテクスチャマッピング手法における遠近感、直線性の
向上と相まって、画質をより忠実に、リアリティーを高
めて再現することが可能となる。
【0073】しかも、この手法には、このように画質の
向上が図れるのにもかかわらず、ハードウェア上の負担
も少なくて済むという利点がある。即ち、まず、この手
法による輝度情報等のレンダリング情報の演算は、前記
したTX 、TY 座標の演算と全く同様の構成のハードウ
ェアで実現できる。従って、このハードウエアをLSI
化すれば、TX 、TY 座標と輝度情報等のレンダリング
情報の演算がそれぞれ同一種のLSIで実現できるた
め、LSIの開発コストが節約でき、また、いわゆる量
産効果によってLSIの製造コストも低減できる。更
に、ハードウェアの制御回路及び制御信号を共通化で
き、新たにハードウェアの制御回路及び制御信号を設け
る必要がない。従って、ハードウェアの負担を軽減する
ことができる。また、この手法によれば、輝度情報の演
算とTX 、TY 座標の演算とを、並列に行うことができ
る。これにより、全画像情報の描画スピードに影響を与
えることなくこの輝度情報演算を実現できることとな
り、ハードウェアの負担を軽減することができる。 3.手法3 さて、3次元オブジェクトの「丸み」を表現したい場合
には、前述のグーローシェーディングよりも更に表現力
が豊かな手法として、フォンシェーディングと呼ばれる
手法が知られている。これはグーローシェーディングと
同様、物体表面の輝度情報を求めるための手法ではある
が、操作対象は輝度情報そのものではなく、表面形状情
報すなわち具体的には法線ベクトル情報である。この手
法では図7(B)に示すように、ポリゴンの各頂点に輝
度情報ではなく法線ベクトルN1〜N4が与えられてい
る。そして、この法線ベクトルN1〜N4を、グーロー
シェーディングの場合と同様に、線形補間することによ
って、表示画面上の各ドットの法線ベクトルNを求め、
疑似的な曲面を形成する。
【0074】各ドットの法線ベクトルNが求まれば、照
明モデルの選び方によって様々の表現が可能になる。即
ち、照明モデルは所定の演算式で表されており、この演
算式にポリゴンの各ドットにおける法線ベクトルNの値
を代入する。すると、この演算式により各ドットにおけ
る輝度が算出される。この結果、照明モデルの演算式の
設定の仕方で種々の表現が可能となるわけである。な
お、ここで照明モデルとは、光源の数、鏡面反射、拡散
反射、周囲光など、照明に係わる各種情況の設定をい
う。例えば、鏡面反射、すなわち光が入射角と反射角の
等しい方向に強く反射されるという性質を与えれば、物
体表面にハイライトと呼ばれる明るい部分が生じ、グー
ローシェーディングでは得られない光沢が表現できる。
【0075】しかし、このフォンシェーディング手法を
用いても、グーローシェーディング手法と同じ問題が残
る。つまり、法線ベクトルを単なる線形補間で求めてい
るために、実際の3次元の物体の表面の法線ベクトルの
分布を画面上に透視変換したものとは異なったものとな
ってしまう。このため、物体が回転すると、それにつれ
て補間のルールが変化してしまい、疑似曲面の形状が変
形するように感じられる。こうした不自然さは、フォン
シェーディング手法が元来表現力豊かな手法であるがた
めに、グーローシェーディング手法より更に顕著に表れ
る。
【0076】そこで、本画像合成装置では、この法線ベ
クトル情報に関しても、手法2と同様に、まずポリゴン
の各頂点における法線ベクトル情報を透視変換し、この
各頂点の透視変換法線ベクトル情報に基づき各ドットに
おける法線ベクトル情報を求める。そして、この各ドッ
トにおける法線ベクトル情報を基に所定の照明モデルを
用いて各ドットにおける輝度を求めている。これによ
り、物体が回転等した場合でも、より忠実に物体の輝度
を表現でき、リアリティ溢れる画像合成が可能となる。 4.手法4 手法1では、ポリゴンにはり付けるテクスチャ情報とし
てカラー情報を用いた。しかし、ポリゴンにはり付ける
ことができるテクスチャ情報としては、これに限らず、
あらゆる種類のレンダリング情報が考えられる。例えば
ポリゴン表面の形状の情報をはり付けることもできる。
このようなマッピング手法はバンプマッピングと呼ばれ
ている。この手法により、図8に示すように3次元オブ
ジェクトMに対して例えばLに示すようにクレータ状の
マッピングを施すことが可能となる。
【0077】手法4では、この表面形状情報をテクスチ
ャ情報としてもつ。表面形状情報としては、例えば法線
ベクトルの偏位を考えることができる。そしてポリゴン
毎に与えられた法線ベクトルに、各ドット毎に求められ
た法線ベクトルの偏位を加えて、各ドット毎の法線ベク
トルを求めている。この場合のドット毎の法線ベクトル
の偏位の演算は、前記の手法3と同様に行われる。これ
により、物体が回転等してもリアリティ溢れる画像合成
を行うことが可能となる。 5.基本構成・基本概念 以上の手法1〜4の画像合成を実現するために、本発明
に係る画像合成装置は、図2(B)に示すような基本構
成となっている。以下、本画像合成装置の基本構成、基
本概念を図2(A)、(B)を用いて説明する。
【0078】さて、上記の手法の説明では、物体表面に
画像を形成するためのレンダリング情報としてカラー情
報、輝度情報、表面形状情報を例にとり説明した。しか
し、本画像合成装置はこれに限らずあらゆる種類のレン
ダリング情報を用いることができる。即ち、本画像合成
装置では、レンダリング情報として例えばカラー情報C
OL、輝度情報BRI、表面形状情報SSP、透明度情
報TRS、拡散反射率情報Kd等を用いることができ
る。
【0079】例えば、透明度情報TRSをレンダリング
情報として用いることにより、物体の一部分が透明から
半透明、半透明から透明へと変化するおぼろげな物体を
表現できる。また、拡散反射率情報Kdをレンダリング
情報としてもちいることにより、部分により「つや」の
異なる物体を表現することが可能となる。
【0080】図2(B)に示すように、本画像合成装置
では、表示座標演算部2にはポリゴンの各頂点の表示座
標VX、VY、VZが入力される。そして、これらの各
頂点の表示座標VX、VY、VZは、表示座標演算部2
において図2(A)に示すように各頂点の透視変換表示
座標VX* 、VY* 、VZ* に透視変換される。なお、
ここで「V」はポリゴンの頂点に対応して与えられた数
値であることを示す記号であり、「* 」は透視変換演算
が施された数値であることを示す記号である。
【0081】次に、表示座標演算部2は、この各頂点の
透視変換表示座標VX* 、VY* 、VZ* を線形補間演
算することによりポリゴンを構成する各ドットの透視変
換表示座標X* 、Y* 、Z* を求める。その後、これら
の透視変換表示座標を画像情報形成部9に出力する。な
お、以上の説明では、奥行きを表す座標Zを、表示座標
の1つとして、表示座標演算部2において演算処理する
ものとして取り扱った。しかし、この座標Zは、レンダ
リング情報の一つとして、後述する表面情報演算部4に
おいて演算処理するものとして取り扱うこともできる。
【0082】さて、まず表面情報演算部4で演算する表
面情報として、レンダリング情報を直接用いた場合につ
いて説明する。
【0083】この場合には、表面情報演算部4には、各
頂点のカラー情報VCOL、輝度情報VBRI、表面形
状情報VSSP、透明度情報VTRS、拡散反射率情報
VKdが入力される。表面情報演算部4は、これらの各
頂点のレンダリング情報を透視変換して、VCOL*
VBRI* 、VSSP* 、VTRS* 、VKd* を演算
する。次に、これらの各頂点の透視変換レンダリング情
報を線形補間演算することにより、ポリゴンを構成する
各ドットにおける透視変換レンダリング情報COL*
BRI* 、N* 、TRS* 、Kd* が求められる。その
後、これらの透視変換レンダリング情報を逆透視変換し
てレンダリング情報COL、BRI、N、TRS、Kd
が求められ、画像情報形成部9に出力される。
【0084】最後に、画像情報形成部9において、前記
の透視変換表示座標とレンダリング情報とにより所望の
画像情報が形成され、疑似3次元画像が画像出力され
る。
【0085】次に、表面情報演算部4で演算する表面情
報として、テクスチャ座標TX 、TY を用いた場合につ
いて説明する。この場合、本画像合成装置は、図2
(B)に示すように、レンダリング情報記憶部6、関数
演算部8を含んだ構成となる。
【0086】このレンダリング情報記憶部6には、テク
スチャ座標TX 、TY により指定されるアドレスに所定
のレンダリング情報が記憶されている。このレンダリン
グ情報としては、前記したようにカラー情報、輝度情
報、表面形状情報、透明度情報、拡散反射率情報等を用
いることができる。そして、テクスチャ座標TX 、TY
を指定することによりこれらの画像情報を読み出すこと
ができることになる。
【0087】また、関数演算部8は、テクスチャ座標T
X 、TY に対してあらかじめ定められた関数演算を行う
ことができる論理演算回路等で構成される。これによ
り、TX 、TY に対応して所望のレンダリング情報を出
力することができる。
【0088】これらのレンダリング情報記憶部6、関数
演算部8を用いて画像合成を行う場合は、表面情報演算
部4には図2(B)に示すように各頂点のテクスチャ座
標VTX 、VTY が入力される。表面情報演算部4で
は、これらの各頂点のテクスチャ座標VTX 、VTY に
対して前記の透視変換、線形補間演算、逆透視変換の各
種の演算処理が行われる。そして、演算結果であるポリ
ゴンの各ドットにおけるテクスチャ座標TX 、TY がレ
ンダリング情報記憶部6、関数演算部8に入力される。
レンダリング情報記憶部6、関数演算部8は、これらの
テクスチャ座標TX 、TY により所望のレンダリング情
報を画像情報形成部9に対して出力することになる。
【0089】本画像合成装置では、このように演算処理
を行うことにより遠近感、直線性を損なうことのない高
品質の画像を合成することができる。更に、カラー情
報、輝度情報、表面形状情報等の複数種類のレンダリン
グ情報を、同一のハードウェアを用いて同時に演算処理
することができる。従って、LSIの単一品種化がで
き、制御回路等を共通化できること等により、ハードウ
ェアのコスト等を大幅に軽減することが可能となる。 B.第1の実施例 1.第1の実施例の概要 図1には本発明に係る画像合成装置の第1の実施例のブ
ロック図が示される。
【0090】本第1の実施例では、レンダリング情報記
憶部に対応してテクスチャ情報記憶部42が設けられ
る。レンダリング情報のうちカラー情報COLは、テク
スチャ座標TX 、TY をアドレスとして、このテクスチ
ャ情報記憶部42に記憶されている。そして、カラー情
報COLは、表面情報演算部により演算されたテクスチ
ャ座標により、対応するカラー情報をテクスチャ情報記
憶部42から読み出すことにより形成される。一方、レ
ンダリング情報のうち輝度情報BRIは、表面情報演算
部により直接演算される。
【0091】ポリゴンの各頂点の表示座標VX、VY、
VZに対する透視変換は透視変換部20において行われ
る。そして、これらの各頂点の透視変換表示座標V
* 、VY* を用いた線形補間演算は、メインプロセッ
サ32において行われる。これにより透視変換表示座標
* 、Y* が求められ、フィールドバッファ部40のア
ドレスを指定することになる。
【0092】各頂点のテクスチャ座標VTX 、VTY 、
輝度情報VBRIに対する透視変換、線形補間演算、逆
透視変換の各種演算処理はコプロセッサ34において行
われる。各頂点の透視変換表示座標の1つであるVZ*
は、これらの演算処理を行うために用いられることにな
る。 (1) 構成の概要 本第1の実施例の画像合成装置は、図1に示すように、
操作部12、ゲーム空間演算部13、画像合成部1、C
RT46を含んで構成される。また、画像合成部1は、
画像供給部10、画像形成部28を含んで構成される。
なお、以下の説明では、本画像合成装置を3次元ゲーム
に適用した場合を例にとり説明する。
【0093】ゲーム空間演算部13では、中央処理部1
4内に格納されたゲームプログラムと、操作部12から
の操作信号とによりゲーム空間の設定が行われる。具体
的には、ゲーム空間を構成する3次元オブジェクト(例
えば、敵飛行機、山、ビル等)の位置・方向情報、プレ
ーヤの位置・視野方向情報等により構成されるゲーム空
間設定情報が演算され、画像合成部1内の画像供給部1
0へと出力される。
【0094】画像供給部10では、前記のゲーム空間設
定情報にしたがって、所定の演算処理が行われる。即
ち、まず処理部15は、ゲーム空間に配置すべき3次元
オブジェクトの3次元画像情報を3次元画像情報記憶部
16より読み出す。次に、処理部15は、この3次元画
像情報に位置・方向情報を含ませて座標変換部18へと
出力する。その後、座標変換部18において絶対座標系
から視点座標系へと座標変換が行われる。次にクリッピ
ング処理部19、透視変換部20、ソーティング処理部
22において、それぞれクリッピング処理、透視変換、
ソーティング処理が行われる。そして、処理が終了した
ポリゴンの頂点の画像情報は、画像形成部28へと出力
される。
【0095】この場合、画像供給部10からは、透視変
換されたポリゴンの各頂点の表示座標VX* 、VY*
VZ* 、ポリゴンの各頂点に対応したテクスチャ座標V
TX、VTY 及び輝度情報VBRIが出力される。ま
た、アトリビュートデータ、即ちポリゴン内の全てのド
ットに共通する画像情報であるパレットナンバーPAL
等も出力される。
【0096】なお、ここで各頂点のテクスチャ座標VT
X 、VTY とは、ポリゴンにはり付けるテクスチャ情報
(レンダリング情報)のアドレスを指定するものであ
る。具体的にいえば、図1のテクスチャ情報記憶部42
のアドレスを指定するものである。テクスチャ情報記憶
部42により構成されるテクスチャ記憶平面は、後述す
るように図22に示すような構造となっている。このテ
クスチャ記憶平面には、ポリゴンにはり付けるべきテク
スチャ情報があらかじめ記憶されている。ここでのテク
スチャ情報は、本第1の実施例においてはカラー情報に
限定されているため、前述した図40のテクスチャ33
6、338に示される画像情報であり、例えば模様、絵
画、写真などの画像情報である。本第1の実施例におい
ては、このテクスチャ情報をテクスチャ座標により読み
出して、読み出されたテクスチャ情報をポリゴンの各ド
ットに対応づけることでテクスチャマッピングを行なっ
ている。そして、本第1の実施例では、このテクスチャ
情報のポリゴンの各ドットへの対応づけを、ポリゴンの
各頂点に対応するテクスチャ座標のみを指定して、これ
を行っている。頂点以外の他のドットへの対応づけは、
各頂点のテクスチャ座標を補間して他のドットに対応づ
けられるべきテクスチャ座標を求め、この補間されたテ
クスチャ座標によりテクスチャ情報を読み出すことによ
って行えるからである。
【0097】なお、ソーティング処理部22では、ポリ
ゴンの各頂点の画像情報の出力順序を、所定の優先度情
報にしたがって並び換える演算処理が行われている。具
体的には、ソーティング処理部22からは、表示画面に
対してより手前にあるポリゴンの画像情報から順に出力
されることになる。従って、画像形成部28での演算処
理は、より手前にあるポリゴンから順に行われることと
なる。
【0098】画像形成部28は、プロセッサ部30、終
了フラッグ記憶部36、処理ドット指示部37、アトリ
ビュートRAM部38、フィールドバッファ部40、テ
クスチャ情報記憶部42、パレット&ミキサ回路44を
含んで構成される。
【0099】プロセッサ部30は、メインプロセッサ3
2、コプロセッサ34を含んで構成される。メインプロ
セッサ32には、前記優先順位に従って、各頂点の透視
変換表示座標VX* 、VY* が入力される。また、コプ
ロセッサ34には、各頂点の透視変換表示座標VZ*
各頂点のテクスチャ座標VTX 、VTY 及び各頂点の輝
度情報VBRIが入力される。なお、各ポリゴンに共通
のアトリビュートデータは、アトリビュートRAM部3
8に入力される。
【0100】メインプロセッサ32では、各頂点の透視
変換表示座標VX* 、VY* を線形補間演算することに
より、ポリゴンを構成する全てのドットの透視変換表示
座標X* 、Y* が演算される。
【0101】コプロセッサ34では、各頂点の透視変換
表示座標VZ* は線形補間され、各頂点のテクスチャ座
標VTX 、VTY 及び各頂点の輝度情報VBRIは、透
視変換され、その後線形補間演算されることにより、そ
れぞれ、透視変換表示座標Z* 、透視変換テクスチャ座
標TX * 、TY * 及び透視変換輝度情報BRI* が演算
される。この場合の演算は、メインプロセッサ32での
演算結果を利用しながら行われる。
【0102】次に、透視変換テクスチャ座標TX * 、T
Y * 、透視変換輝度情報BRI* は、透視変換表示座標
* を利用して、テクスチャ座標TX 、TY 、輝度情報
BRIに逆透視変換され、コプロセッサ34より出力さ
れる。このように逆透視変換するのは、テクスチャ情報
記憶部42からテクスチャ情報を読み出すには、透視変
換されていないテクスチャ座標が必要とされるからであ
る。
【0103】なお、メインプロセッサ32には処理ドッ
ト指示部37が接続され、処理ドット指示部37には終
了フラッグ記憶部36が接続されている。これらの処理
ドット指示部37、終了フラッグ記憶部36は、既に演
算処理が終了して塗りつぶしてしまったドットの演算処
理を省略するために用いられるものである。即ち、本第
1の実施例においては、画像の描画はポリゴン毎に行わ
れ、手前のポリゴンよりこの描画処理が行われる。従っ
て、既に描画が終了して塗りつぶされてしまったドット
についての演算処理は、次のフィールドの描画まで行う
必要がない。そこで、この演算処理を省略することによ
り、演算回数を大幅に減らすことができ、ハードウェア
の負担を軽くすることができる。
【0104】終了フラッグ記憶部36で構成される記憶
平面は表示画面のドットに1対1に対応しており、各ド
ットに対して例えば1ビット単位で終了フラッグと呼ば
れるデータが記憶される構造となっている。この終了フ
ラッグは、各ドットの演算処理が終了したか否かを表示
するために使用されるフラッグである。即ち、演算処理
が終了したドットについては、例えば" 1" が処理ドッ
ト指示部37により書き込まれる。処理ドット指示部3
7は、この終了フラッグを常にモニターしている。そし
て、処理ドット指示部37は、メインプロセッサ32に
対して、この終了フラッグが“1”となっているドット
についての演算処理を行わないよう指示している。これ
により、既に塗りつぶされた領域につていのポリゴンの
演算処理をその後行う必要がなくなり、処理速度の大幅
な高速化が図れることとなる。
【0105】フィールドバッファ部40内には、CRT
46の表示スクリーンの各ドットに1対1に対応する記
憶領域で構成されるビデオRAMが内蔵されている。そ
して、コプロセッサ34で演算されたテクスチャ座標T
X 、TY 、輝度情報BRIは、メインプロセッサ32で
演算された透視変換表示座標X* 、Y* をアドレスとし
て、このビデオRAMの各記憶領域に記憶される。ビデ
オRAMは2画面分のバンクを持ち、書き込みと並行し
た読み出しを可能としている。
【0106】ビデオRAMの読み出しは画像表示に同期
して行われ、フィールドバッファ部40から、テクスチ
ャ座標TX 、TY がテクスチャ情報記憶部42へ、輝度
情報BRIがパレット&ミキサ回路44へ出力される。
【0107】なお、フィールドバッファ部40内には、
ポリゴン識別番号発生器が内蔵されており、この発生器
より出力されたポリゴン識別番号PNも、前記したビデ
オRAMの各記憶領域に記憶される。そしてフィールド
バッファ部40からTX 、TY 、BRIが出力されるの
に同期して、このポリゴン識別番号PNもアトリビュー
トRAM部38に出力される。アトリビュートRAM部
38は、このポリゴン識別番号PNにしたがって、各ポ
リゴンに共通のアトリビュートデータ例えばパレットナ
ンバー等をパレット&ミキサ回路44に出力することと
なる。
【0108】テクスチャ情報記憶部42内には、記憶手
段例えばEEPROMが内蔵され、このEEPROMの
各ビットには、あらかじめカラー情報としてカラーコー
ドCOLが記憶されている。そして、フィールドバッフ
ァ部40から入力されたテクスチャ座標TX 、TY をア
ドレスとして、このカラーコードCOLがEEPROM
から読み出され、パレット&ミキサ回路44に出力され
る。
【0109】パレット&ミキサ回路44では、入力され
る各ドットに対応したカラーコード及び輝度情報、ま
た、各ポリゴンに対応したパレットナンバー等のアトリ
ビュートデータにより、各ドットのRGBデータが形成
される。そして、ガンマ補正、即ちCRTの輝度の線形
化を行った後、CRT46に出力され、画像表示が行わ
れる。 (2) 動作及び演算手法の概要 本第1の実施例は以上の構成からなり、次にその作用及
び演算手法の概要について説明する。
【0110】図9には、本第1の実施例の画像合成装置
の動作を示すフローチャートが示される。また、図10
(A)〜(K)には、このフローチャートのフロー11
00,1200及び1300で実行される演算手法が視
覚的に示されている。
【0111】実施例の画像合成装置では、画像供給部1
0及びソーティング処理部22において、図9に示すフ
ロー1000に示す動作が実行される。そして、ソーテ
ィング処理部22からは、各ポリゴン毎にポリゴンデー
タが出力される。このとき、各ポリゴンには予め優先順
位が与えられており、ソーティング処理部22からは、
優先順位にしたがって、各ポリゴンのデータが出力され
る。このとき出力される各ポリゴンのポリゴンデータ
は、各ポリゴンの各頂点の透視変換表示座標、各頂点の
テクスチャ座標を含む。
【0112】このときソーティング処理部22から出力
される各ポリゴンの各頂点の透視変換表示座標VX*
VY* はメインプロセッサ32へ入力され、ここでフロ
ー1100に従った演算が実行される。即ち、左右輪郭
点が演算され、左右輪郭点に囲まれた走査線上における
各ドットの透視変換表示座標X* 、Y* が演算され、ポ
リゴンを構成する全てのドットについての演算が終了す
るまで上記演算が繰り返される。そして、このようにし
て演算された各ドットの透視変換表示座標X*,Y
* は、フィールドバッファ40への書き込みアドレスと
して出力される。そして、この書き込みアドレスで指定
されたフィールドバッファ部40内には、ポリゴン識別
番号PNがそのデータの1つとして書き込まれる。
【0113】また、このフロー1100に示す動作と並
行して、コプロセッサ34により、フロー1200,1
300に示す動作が実行される。
【0114】すなわち、ソーティング処理部22からポ
リゴンの各頂点のテクスチャ座標VTX ,VTY と、各
頂点の透視変換表示座標VZ* と後述する各頂点の輝度
情報とが入力される。
【0115】そして、コプロセッサ34では、フロー1
200に従って、各頂点のテクスチャ座標VTX 、VT
Y から各頂点の透視変換テクスチャ座標VTX * ,VT
Y *が求められる。次に、このVTX * ,VTY * から
左右輪郭点が演算され、この左右輪郭点に挾まれる走査
線上の各ドット毎の透視変換テクスチャ座標TX * ,T
Y * が演算され、ポリゴンを構成する全てのドットにつ
いての演算が終了するまで上記演算が繰り返される。
【0116】このような演算と並行して、コプロセッサ
34では、フロー1300の演算動作が行われ、ポリゴ
ンの透視変換表示座標Z* の演算が対応する各ドット毎
に行われる。
【0117】そして、フロー1200のステップ34に
おいて、各ドット毎に求めた透視変換テクスチャ座標T
X * ,TY * を、透視変換表示座標Z* を用い、逆透視
変換し、テクスチャ座標TX ,TY として出力する。こ
の様に出力されたテクスチャ座標TX ,TY は、前記フ
ロー1100のステップ23で出力されるフィールドバ
ッファ部40の書き込みアドレス位置へ書き込まれるこ
とになる。
【0118】このようにして、フィールドバッファ部4
0には、フロー1100で指定されたアドレス位置、す
なわちポリゴンを構成する各ドットのアドレス位置に、
当該アドレスに対応したテクスチャ座標TX ,TY とポ
リゴン識別番号PNが書き込まれることになる。
【0119】また、このような書き込み動作と並行し
て、フロー1500の動作に従い、アトリビュートRA
M部38にはソーティング処理部22から出力される各
ポリゴンのアトリビュートデータが順次記憶される。
【0120】このような一連の動作を、ソーティング処
理部22から各ポリゴンのポリゴンデータが出力される
毎に繰り返して行い、フィールドバッファ40及びアト
リビュートRAM38へのデータの書き込みが繰り返し
て行われる。
【0121】このようにして、一画面分のデータの書き
込みが終了すると、次にフィールドバッファ部40,ア
トリビュートRAM部38からのデータの読み出しが開
始される。但し、本第1の実施例においては、フィール
ドバッファ部40及びアトリビュートRAM部38にお
ける画像情報の記憶空間は、2画面分を記憶できるよう
に構成されている。従って、実際には、この書き込みと
読み出しは同時に行われており、これにより、演算処理
時間の効率化が図られている。
【0122】まず、フィールドバッファ部40からは、
例えばディスプレイの水平走査に同期して、各ドット毎
に書き込まれたテクスチャ座標TX ,TY が読出しアド
レスとしてテクスチャ情報記憶部42へ向け出力され
る。そして、これと共に、ポリゴン識別番号PNが読出
しアドレスとして、アトリビュートRAM部38へ向け
出力される。
【0123】これにより、テクスチャ情報記憶部42か
らは、当該アドレスに指定されていカラーコードがパレ
ット&ミキサ回路44へ向け出力され、さらにアトリビ
ュートRAM部38からは、ポリゴン識別番号PNに対
応したアトリビュートデータがパレット&ミキサ回路4
4に向け出力される。これにより、パレット&ミキサ回
路44では、カラー情報、例えばRGB出力がCRT4
6へ出力され、所望の疑似三次元画像が合成表示される
ことになる。
【0124】図10(A)〜(K)には、以上の演算処
理のうち、図9のフローチャートのフロー1100,1
200及び1300で実行される演算処理が視覚的に示
されている。
【0125】図10(A)において、多面体48の頂点
例えばA、B、C、Dに対して、VTa 、VTb 、VT
c 、VTd が対応づけられている。このVTa 〜VTd
は、頂点A〜Dにより形成されるポリゴンにはり付ける
テクスチャ情報のアドレスを指定するものである。即
ち、具体的にいえば、テクスチャ情報記憶部42内の記
憶手段例えばEEPROM等に記憶されているテクスチ
ャ情報を読み出すためのアドレスを指定するテクスチャ
座標である。また、多面体48の頂点A〜Dに対して、
表示座標A〜Dが対応づけられている。A〜Dのそれぞ
れはX、Y、Zの各座標成分を持ち、VTa 〜VTd の
それぞれはTX 、TY の各座標成分を持つが、ここでは
簡単のため、各々単一の記号で表わす。
【0126】図10(B)、(F)において、この各頂
点の表示座標A〜D、各頂点のテクスチャ座標VTa 〜
VTd は、各頂点の透視変換表示座標A* 〜D* 、各頂
点の透視変換テクスチャ座標VTa * 〜VTd * に透視
変換される。これにより、XY座標系のみならず、Tx
、TY 座標系も透視変換されることとなり、各座標系
間の線形性が保たれることとなる。
【0127】次に、図10(C)、(G)に示すよう
に、各頂点の透視変換表示座標A* 〜D* 、及び、各頂
点の透視変換テクスチャ座標VTa * 〜VTd * により
形成されるポリゴンの輪郭点が線形補間演算される。即
ち、図10(D)、(H)における左右輪郭点座標
* 、R* 、及び、左右輪郭点テクスチャ座標Tl *
Tr* の線形補間演算が行われる。
【0128】次に、図10(D)、(H)に示すよう
に、前記左右輪郭点座標L* 、R* 、及び、左右輪郭点
テクスチャ座標Tl * 、Tr * により、これらの左右輪
郭点を結ぶ走査線上の各ドットの座標が線形補間演算さ
れる。
【0129】上記した、図10(C)、(G)及び
(D)、(H)の演算処理は順次繰り返され、最終的に
は、図10(E)、(I)に示すように、ポリゴンを構
成する全てのドットの透視変換表示座標X* 、Y* 及び
透視変換テクスチャ座標Tx * 、TY * の線形補間演算
が行われる。
【0130】次に、図10(J)に示すように、透視変
換テクスチャ座標TX * 、TY * を、テクスチャ座標T
X 、TY に逆透視変換し、このテクスチャ座標TX 、T
Y を用いて、前記したテクスチャ情報記憶部42からカ
ラーコードが読み出される。
【0131】以上のようにして、読み出されたカラーコ
ードを、透視変換表示座標X* 、Y* に対応させる。こ
れにより、図10(K)に示すように、スクリーン上に
画像が合成され、遠近感、直線性が損なわれないテクス
チャマッピングが可能となる。
【0132】図11には、このようにして合成された疑
似3次元画像の一例が示される。図11に示すように例
えば家594、遠くに見える道592、煉瓦道597等
において所望のテクスチャマッピングが行われている。
これにより、ポリゴンの表面を単一色で塗りつぶす場合
に比べて、非常にリアリティ溢れる画像表示が可能とな
っている。また、図11に示すように煉瓦道597にお
いて、はり付けられたテクスチャの遠近感、直線性が損
なわれていない。このように本実施例の画像合成装置に
よれば、非常に高品質でリアリティ溢れる疑似3次元画
像の合成が可能となる。
【0133】なお、図10には、透視変換表示座標Z*
及び輝度情報BRIの演算方法については示されていな
いが、両者の演算は、図10におけるTX 、TY の演算
方法とほぼ同様な演算方法により行われる。このよう
に、輝度情報の補間演算についても、TX 、TY と同様
の方法により行うことにより、前述したように、これら
の座標系間の関係を線形に保つことができ、よりリアリ
ティー溢れる画像を合成することが可能となる。
【0134】また、図1に示す実施例では、フィールド
バッファ部40に、カラー情報ではなくテクスチャ座標
TX ,TY を書き込む構成としているが、本第1の実施
例はこれに限られるものではない。例えば、テクスチャ
情報記憶部42をコプロセッサ34とフィールドバッフ
ァ部40との間に設け、テクスチャ情報記憶部42から
出力されるカラー情報例えばカラーコードをフィールド
バッファ部40へ直接書き込むような構成としてもよ
い。このようにしても、前記図1に示す実施例と同様に
して、良好な画像合成を行うことができる。 2.具体例 次に本実施例の具体例を詳細に説明する。
【0135】なお、ここでは、ハードウェアの簡略化の
ため、ポリゴンは4角形のみに限定しているが、ポリゴ
ンの形状としては任意の形のものを使用できる。 (1) ゲーム空間演算部 ゲーム空間演算部13は、仮想3次元空間におけるゲー
ム空間の設定を行うものである。
【0136】図1において、プレーヤからの操作信号は
操作部12を介してゲーム空間演算部13に入力され
る。図12(A)には、この3次元ゲーム装置により仮
想3次元空間内に形成されるゲーム空間の一例が示され
る。即ち、ゲーム空間演算部13は、操作信号及び中央
処理部14に記憶されたゲームプログラムにしたがっ
て、3次元オブジェクト、例えば地面519、山52
0、ビル522、陣地524、敵機532及び自機53
0等のゲームフィールド540上への配置を行う。そし
て、このように配置された3次元オブジェクトの位置情
報及び方向情報は、ゲーム空間設定情報として画像合成
部1へと出力される。画像合成部1は、このゲーム空間
設定情報に基づいて、プレーヤの視点位置から見える疑
似3次元画像を形成する。図12(B)には、自機戦闘
機530から見える疑似3次元画像の一例が示される。 (2) 画像供給部 図1に示すように、画像供給部10は、処理部15、3
次元画像情報記憶部16、座標変換部18、クリッピン
グ処理部19、透視変換部20、ソーティング処理部2
2を含んで構成される。
【0137】処理部15は、前記のゲーム空間設定情報
に基づいて3次元画像情報記憶部16から、3次元オブ
ジェクトの実際の3次元画像情報を読み出す。この場
合、3次元オブジェクトの3次元画像情報は、ポリゴン
に分割して表現されており、ポリゴンの頂点情報及びそ
の付随データ等から構成されている。図13には、この
ようにポリゴン362〜368に分割して表現された3
次元オブジェクトの一例が示される。
【0138】処理部15は、読み出された3次元画像情
報に、ゲーム空間設定情報で設定される3次元オブジェ
クトの位置情報及び方向情報を含ませたデータを形成し
て座標変換部18へと出力する。
【0139】座標変換部18は、これらのデータに基づ
いて、この各頂点の表示座標等に対し所定の座標変換処
理を行っている。例えば戦闘機ゲームを例にとれば、図
14に示すように、自機戦闘機、敵戦闘機、ビル、障害
物等を表す3次元オブジェクト300、332、334
が、ワールド座標系(XW 、YW 、ZW )で表現される
仮想3次元空間上に配置される。その後、これらの3次
元オブジェクトを表す画像情報は、プレーヤ302の視
点を基準とした視点座標系(Xv、Yv、Zv)へと座
標変換される。
【0140】次に、クリッピング処理部19にて、いわ
ゆるクリッピング処理と呼ばれる画像処理が行われる。
ここで、クリッピング処理とはプレーヤ302の視野外
にある画像情報を除去する画像処理をいう。即ち、クリ
ッピング処理部19は、図14において、前方・後方・
右側・下方・左側・上方のクリッピング面340、34
2、344、346、348、350により囲まれた領
域(表示領域)の外にある画像情報を除去する画像処理
を行う。つまり、本装置によりその後の処理に必要とさ
れる画像情報は、プレーヤ302の視野内にある画像情
報のみである。従って、クリッピング処理によりこれ以
外の情報をあらかじめ除去すれば、その後の処理の負担
を大幅に減らすことができることとなる。
【0141】次に、透視変換部20にて、表示領域内に
ある物体に対してのみ、スクリーン座標系(XS 、YS
)への透視変換が行われ、次段のソーティング処理部
22へとデータが出力される。
【0142】図15には、透視変換部20からソーティ
ング処理部22へと出力されるポリゴンデータの一例が
示される。
【0143】図15において、Z代表値は、ソーティン
グ処理部22において行われるポリゴン処理の優先順位
決定のために使用されるものであり、具体的には、例え
ばポリゴンの各頂点の平均値等がZ代表値として設定さ
れる。これによりスクリーンに近い順に、即ちZ代表値
の小さい順に優先順位が決定され、この優先順位に従っ
てポリゴンの描画作業が行われることになる。なお、Z
代表値は符号なしの24ビットの整数データで表され、
2ワードに分解して出力される。
【0144】パレットナンバーPALは、パレットテー
ブルを指定するためのナンバーであり、最終出力である
パレット&ミキサ回路44でのパレット制御にて使用さ
れる。
【0145】カラーZ値CZは、奥行き変化による色変
化に対応するために用いられるものであり、これも最終
出力であるパレット&ミキサ回路44でのパレット制御
にて使用される。
【0146】各頂点のテクスチャ座標VTX 、VTY
は、ポリゴンの各頂点に対応して与えられるテクスチャ
座標であり、各頂点につきそれぞれ1ワード、本第1の
実施例においては各ポリゴンにつきそれぞれ4ワードの
データとなっている。このVTX 、VTY の指定によ
り、ポリゴンにはり付けるべきテクスチャが決定される
ことになる。なお、VTY については、上位4ビット
は、テクスチャ情報記憶部42のブロックナンバーを設
定するために使用されるものである。
【0147】各頂点の透視変換表示座標VX* (=X×
h/Z)、VY* (=Y×h/Z)は、ポリゴンの各頂
点の透視変換後の表示座標を表すものである。
【0148】各頂点の輝度情報VBRIは、ポリゴンの
各頂点における輝度情報をあたえるものであり、これも
4ワード構成となっている。
【0149】各頂点の透視変換表示座標VZ* (=h/
Z)は、ポリゴンの各頂点の透視変換後の表示Z座標を
表すものであり、6ビットの指数部と、15ビットの仮
数部により表される。なお、Z座標の透視変換は、X、
Y座標についての透視変換とは異なり、Z座標に(h/
Z)因子を乗算するのではなく、(h/Z)因子そのも
のを透視変換後の座標値としてこれを求めている。この
ように演算しても、透視変換後の、X、Y、Z座標間で
の線形な関係は保たれるからである。
【0150】以上の、ポリゴンデータは、画像供給部1
0より、ソーティング処理部22に出力される。 (3) ソーティング処理部 図16に、ソーティング処理部22、プロセッサ部3
0、アトリビュートRAM部38、フィールドバッファ
部40、テクスチャ情報記憶部42を含んで構成される
本第1の実施例の具体的な構成を示す。
【0151】ソーティング処理部22は、図16に示す
ように、ソーティング制御回路50、ソーティングRA
M52、データRAM60を含み、ポリゴン処理の優先
順位の決定を行うとともに、画像供給部10とその後の
画像合成部との間でのコミニュケーションRAMとして
も機能する。即ち、ソーティングRAM52が主に優先
順位決定用の作業エリアとして機能し、データRAM6
0がコミニュケーションRAMとし機能する。そして、
ソーティング制御回路50は、主にこれらの処理の制御
を行っている。
【0152】データRAM60は、入力エリアデータR
AM54と、ソーティングエリアデータRAM56と、
出力エリアデータRAM58とを含む。画像供給部10
からの前記したポリゴンデータは、順次この入力エリア
データRAM54に蓄えられていく。そして、1フィー
ルド(1/60秒)毎に、データRAM60への全ての
入出力信号が切り替えられ、入力エリアデータRAMは
ソーティングエリアデータRAMに、ソーティングエリ
アデータRAMは出力エリアデータRAMに変わる。従
って入力エリアデータRAMに書き込まれたポリゴンデ
ータは2フィールド後には出力エリアデータRAM中に
存在することになる。
【0153】ソーティングRAM52の内部は、ソーテ
ィング作業用エリアとソート済みインデックスエリアの
2つのエリアに分かれており、実際のソーティング作業
は、このソーティング作業エリアにおいて行われる。ソ
ーティング作業は1フィールド以内に終了し、1フィー
ルド毎にエリアの切り替えが行われる。そして、ソーテ
ィング制御回路50は、ソート済みインデックスエリア
のデータにしたがって、Z代表値の小さい順(優先順位
の高い順)に、出力エリアデータRAM58より、ポリ
ゴンデータを順次出力する。これにより、以下のポリゴ
ンの処理は、すべてこの優先順位に従って行われること
となる。 (4) プロセッサ部 プロセッサ部30は、メインプロセッサ32、コプロセ
ッサ34を含む。メインプロセッサ32は、制御回路7
0及び除算器72を含み、主に透視変換表示座標X*
* の演算と、プロセッサ部30全体の制御を行ってい
る。コプロセッサ34は、積和演算器74、76、7
8、80と除算器82、84、86とを含み、主に透視
変換表示座標Z* 、読み出し用テクスチャ座標TX 、T
Y 、及び、輝度情報BRIの演算を制御回路70の指示
に従って行っている。
【0154】以下、プロセッサ部30における演算処理
の詳細について、図17〜19を用いて説明する。ここ
で、図17には各演算処理の流れが示され、図18
(A)〜(C)には、輪郭及び輪郭点についての演算処
理が図示され、図19(A)〜(B)には、走査線及び
各ドットについての演算処理が図示される。
【0155】なお、輝度情報BRIについての演算処理
は、テクスチャ座標TX 、TY についての演算処理とほ
ぼ同様の処理によって行われるため、図17〜19にお
いては、これを省略している。 頂点の演算(図17) まず、制御回路70に、ソーティング処理部22から優
先順位に従ってポリゴンデータが入力される。制御回路
70は、ポリゴンデータの内、各頂点の透視変換表示座
標VX* 、VY* のみを読み込み、その他のデータを、
コプロセッサ34及びアトリビュートRAM部38に、
読み込むように指示を与える。即ち、各頂点のテクスチ
ャ座標VTX 、VTY 、輝度情報VBRI及び透視変換
表示座標Z* は、コプロセッサ34に読み込まれ、パレ
ットナンバーPAL、カラーZ値CZ等のアトリビュー
トデータはアトリビュートRAM部38に読み込まれ、
内部の記憶手段に記憶される。
【0156】制御回路70では、読み込まれた各頂点の
透視変換表示座標VX* 、VY* から、Y座標を基準に
画面上で一番上にある座標(図18(A)におけるA*
点の座標)が検出され、内部レジスタに記憶される。
【0157】また、積和演算器76、78、80では、
各頂点のテクスチャ座標VTX 、VTY 、輝度情報VB
RIの透視変換が行われ、内部レジスタに記憶される。
この場合、この透視変換は、図17〓に示すように、各
頂点の透視変換表示座標VZ* (=h/VZ)を乗算す
ることによって以下のようにして演算される。
【0158】VTX * =VTX ×VZ* VTY * =VTY ×VZ* VBRI* =VBRI×VZ* そして、内部レジスタに空きが生じたら、直ちに次のポ
リゴンデータがソーティング処理部22から入力され、
前記頂点の演算が繰り返される。このように本第1の実
施例では、演算前及び演算後のデータが内部レジスタに
一時的に記憶される構造となっており、これによりパイ
プライン動作が可能となっている。 輪郭線の計算(図17) 制御回路70では、まず、頂点A* を始点、頂点B*
終点として、各座標値の両点間の差が求められる。即
ち、図18(B)に示されるように、以下の演算が行わ
れる。
【0159】ΔX* =Xb * −Xa * ΔY* =Yb * −Ya * 制御回路70は、上記の演算をすると同時に、積和演算
器74〜80に対して、図18(B)、(C)に示すよ
うに、以下の演算処理を行うように指示する。 ΔZ* =Zb * −Za * ΔTX * =TXb* −TXa* ΔTY * =TYb* −TYa* ΔBRI* =BRIb * −BRIa * 以上の演算が終了すると、制御回路70、積和演算器7
4〜80では、始点及び終点を更新し、辺B* * 、C
* * 、D* * に対して、上記と全く同様の演算処理
を行い、全輪郭線の演算を完了する。
【0160】以上の演算結果は全て内部のレジスタに記
憶され、次に述べる輪郭点の演算に用いられることとな
る。 輪郭点の演算(図17) まず、左輪郭の第1辺A* * が選択され、左輪郭点P
m * (Xm * 、Ym *、Zm * )、Tm * (TXm* 、TY
m* )、BRIm * の演算が行われる。この左輪郭点の
演算は、Ym * を基準にしてを行われる。即ちYm *
座標値をYa *より順次変化させ、他の座標値はこれを
線形補間することにより求めてゆく。
【0161】まず、制御回路70及び除算器72にて、
左輪郭点の係数Mが以下のように演算される。
【0162】M=(Ym * −Ya * )/ΔY* この係数Mは、図18(B)における3角形A* *
* と3角形A* * * との相似比に当たるものであ
り、Y座標を基準に演算される。また、この係数Mは、
制御回路70より積和演算器74〜80に出力される。
【0163】次に、左輪郭点のX座標Xm * が、この係
数Mにより図18(B)における3角形の相似関係を利
用して以下のように演算される。
【0164】Xm * =Xa * +M×ΔX* 係数Mを受け取った、積和演算器74〜80では、Z座
標Zm * 、左輪郭点に対応するテクスチャ座標TXm*
TYm* 及び輝度情報BRIm * が、係数Mにより、図1
8(B)、(C)における3角形の相似関係を利用して
以下のように演算される。
【0165】Zm * =Za * +M×ΔZ* TXm* =TXa* +M×ΔTX * TYm* =TYa* +M×ΔTY * BRIm * =BRIa * +M×ΔBRI* なお、上記演算は、Ym * を基準に行われるため、Ym
* については、上記演算を行われず、そのまま左輪郭点
の座標となる。
【0166】左輪郭点の演算と並行して、上記と全く同
様の方法にて、右輪郭点の演算が行われる。具体的に
は、同一の演算回路が時分割動作しており、あるYm *
の値について、まず左輪郭点、次に右輪郭点の演算が行
われる。
【0167】以上の演算結果は左右輪郭点対のデータと
して内部レジスタに記憶される。内部レジスタに空きが
あれば、次の輪郭点対の演算が行われる。即ち、Y*
走査線間隔だけ増加させて、上記の演算を繰り返すこと
になる。
【0168】Y* が終点のY* (=Yb * )の座標と一
致したならば、着目する辺A* *を例えば辺B* *
に更新して、前記処理を続行する。但し、ΔY* =0の
場合は、直ちに辺の再更新を行う。
【0169】左右の着目する辺が接したならば、その点
がポリゴンの最下端(C* )となる。そして、左右輪郭
点がこの最下端に到達すると、ひとつのポリゴンの処理
が終了することとなる。 走査線の演算(図17) 次に、上記のようにして求められた左右輪郭点より、走
査線、即ち、左右輪郭点の差が求められる。
【0170】ここで、説明を簡易にするために、左輪郭
点の透視変換表示座標をL* (Xl* 、Yl * 、Zl
* )とし、左輪郭点に対応する透視変換テクスチャ座
標及び透視変換輝度情報をTl * (TXl* 、TYl* )及
びBRIl * とする。また、右輪郭点の透視変換表示座
標をR* (Xr * 、Yr * 、Zr * )とし、右輪郭点に
対応する透視変換テクスチャ座標及び透視変換輝度情報
をTr * (TXr* 、TYr*)及びBRIr * とする。
【0171】制御回路70では、図19(A)に示すよ
うに以下の演算が行われる。
【0172】ΔX* =Xr * −Xl * 制御回路70は、上記の演算をすると同時に、積和演算
器74〜80に対して、図19(A)、(B)に示すよ
うに、以下の演算処理を行うように指示する。 ΔZ* =Zr * −Zl * ΔTX * =TXr* −TXl* ΔTY * =TYr* −TYl* ΔBRI* =BRIr * −BRIl * ドットの演算(図17) 最後に、走査線上の各ドットの透視変換表示座標である
Pn * (Xn * 、Yn* 、Zn * )、透視変換テクスチ
ャ座標Tn * (TXn* 、TYn* )及び透視変換輝度情報
BRIn * の演算が行われる。この走査線上の各ドット
の演算は、Xn* を基準にしてを行われる。即ちXn *
の座標値をXl * より順次変化させ、他の座標値はこれ
を線形補間することにより求めてゆく。
【0173】まず、制御回路70及び除算器72にて、
係数Nが以下のように演算される。
【0174】N=(Xn * −Xl * )/ΔX* この係数Nは、図19(A)における線分L* * と線
分L* Pn * との線分比に当たるものであり、X座標を
基準に演算される。また、この係数Nは、制御回路70
より積和演算器74〜80に出力される。
【0175】係数Nを受け取った、積和演算器74〜8
0では、走査線上の各ドットのZ座標Zn * 、走査線上
の各ドットに対応するテクスチャ座標TXn* 、TYn*
び輝度情報BRIn * が、係数Nにより、図19
(A)、(B)における線分比を利用して以下のように
演算される。
【0176】Zn * =Zl * +N×ΔZ* TXn* =TXl* +N×ΔTX * TYn* =TYl* +N×ΔTY * BRIn * =BRIl * +N×ΔBRI* 次に、Xn * の値が増加し、上記内の演算を繰り返
す。そして、最終的に、走査線上の左右輪郭点間の全て
のドットについての演算が終わるまで処理が続けられ
る。
【0177】なお、上記演算は、Xn * を基準に行われ
るため、また、Yn * については走査線上で一定である
ため、Xn * 、Yn * については、上記演算を行われ
ず、Xn * 、Yn * が、そのまま走査線上の各ドットの
表示座標となる。 逆透視変換(図17) テクスチャ座標及び輝度情報の逆透視変換は、除算器8
2、84、86により行われる。この逆透視変換は、
で求めたZn * を用いて、以下のように演算される。
【0178】TXn=TXn* /Zn * TYn=TYn* /Zn * BRIn =BRIn * /Zn * なお、逆透視変換すべきデータの種類が多い場合は、あ
らかじめドット毎のZn*の逆数を求め、各データに乗算
する事が望ましい。なぜなら、一般に除算器より乗算器
の方が小規模な回路で済むからである。これにより演算
処理するレンダリング情報として複数のレンダリング情
報を選択した場合に、それぞれのレンダリング情報毎に
除算器を用意する必要がなくなる。この結果、ハードウ
ェアの負担を大幅に軽減することができる。
【0179】以上のように、〜の演算がパイプライ
ン処理で行われる。そして、ソーティング処理部22か
らのポリゴンデータを全て入力し、〜の全ての処理
が完了すると、プロセッサ部30の1画面分の処理が完
了することとなる。
【0180】なお、及びで行った補間演算は、DD
Aによる手法を用いて行うことも可能である。例えば
におけるZn * の演算を例にとれば、Z0 * =Zl *
初期値とし、差分dZ* =ΔZ* /ΔX* を求めておい
て、Zn+1 * =Zn * +dZ * なる加算を繰り返すこと
により補間演算をする手法である。
【0181】以上のように演算された、各ドットの表示
座標Xn * 、Yn * はフィールドバッファ部40に出力
され、フィールドバッファ部40に内蔵されるビデオR
AMのアドレスとして利用される。
【0182】また、テクスチャ座標Tx 、TY 及び輝度
情報BRIもフィールドバッファ部40に出力され、ビ
デオRAM上の前記したアドレス位置に書き込まれ、記
憶される。
【0183】また、必要に応じて、Zn * も、Zn =h
/Zn * と逆透視変換することができる。この、Zn 、
Zn * は、例えばキャラクタディスプレイ等の他の画像
との合成に利用したり、Zバッファアルゴリズムへの応
用として利用したりすることができる。 (5) 終了フラッグ記憶部、処理ドット指示部 本実施例では、上記におけるドットの演算を、処理ド
ット指示部37の指示により行っているため、更に大幅
な高速化が可能となっている。以下、処理ドット指示部
37、終了フラッグ記憶部36について説明する。
【0184】例えば図11に示す疑似3次元画像におい
て、遠く向こうに見える道592のうち、車590に隠
れて見えない部分については画像表示する必要がない。
同様に、家596のうち、前にある家594に隠れて見
えない部分についても画像表示する必要がない。従っ
て、このような部分、即ち陰面部分を除去する必要があ
る。この場合、本実施例の画像合成装置は、既に述べた
ように表示画面の手前側にあるポリゴンから順に演算処
理を行うよう形成されている。従って、図20に示すよ
うに、まずポリゴンAについて演算処理を行い、次にポ
リゴンBについて演算処理を行う場合は(ポリゴンAの
方がポリゴンBより手前側にある)、Cの部分について
の演算処理を省略する必要がある。このため、本実施例
では、終了フラッグ記憶部36及び処理ドット指示部3
7が設けられている。
【0185】この終了フラッグ記憶部36内における記
憶平面は、表示画面のドットに1対1に対応している。
そして、各ドットに対応して例えば1ビット単位で終了
フラッグと呼ばれるデータが記憶されている。ここで、
終了フラッグとは、各ドットの演算処理が終了したか否
かを表示するために使用されるフラッグをいう。例えば
図20のポリゴンAを構成するドットのうち演算処理が
終了したドットについては、例えば“1”が処理ドット
指示部37により書き込まれる。そして、次にポリゴン
Bについて演算処理を行う際には、処理ドット指示部3
7は、この終了フラッグを常にモニターしており、この
終了フラッグが“1”となっているドットについての演
算処理を行わないようにしている。これにより、既に塗
りつぶされた領域についてのポリゴンの演算処理をその
後行う必要がなくなり、処理速度の大幅な高速化が図れ
ることとなる。
【0186】図21には、処理ドット指示部37及び終
了フラッグ記憶部36との接続関係を示すブロック図が
示される。同図に示すように、処理ドット指示部37
は、終了フラッグ決定部248と空きドット検出ループ
282とを含んで構成される。
【0187】終了フラッグ決定部248は、プロセッサ
部30において処理を行う必要があるドットを決定する
機能を有している。処理することが決定されたドットの
終了フラッグは、この終了フラッグ決定部248によ
り、新たに処理が終了したドットとして設定し直され、
終了フラッグ記憶部36に書き戻される。そして、これ
らの指示及び書き戻しは複数ドット毎に行われるため、
処理の大幅な高速化が図れることになる。
【0188】空きドット検出ループ282では、終了フ
ラッグ決定部248において処理を行うべきと決定され
たドットが順次検出される。そして、この検出結果に基
づいて、処理を行うべきドットのX* 座標が決定され、
プロセッサ部30に出力される。
【0189】終了フラッグ記憶部36は、例えば2画面
分の「終了フラッグ」を記憶できるよう構成されてい
る。この終了フラッグは、1画面の処理の最初に、1画
面分の全てが“0”にクリアされる。そして、演算処理
が終了すると“1”にセットされ、着目するドットの演
算処理が終了したことを表示することとなる。
【0190】終了フラッグ記憶部36は、複数ビット例
えば16ビットのデータバスをもち、同時に例えば16
ビット分のデータのアクセスが可能となっている。そし
て、ドットの演算においては、常にこの終了フラッグ記
憶部36が参照される。従って、これにより終了フラッ
グを16ドット単位で参照することが可能となる。そし
て、終了フラッグが“1”であるドットに対しては、そ
のドットの演算を行わず、当該ドットは高速に、即ち最
大で16ドット分スキップされることとなる。従って、
演算すべきポリゴン上のドットが、他のポリゴンの奥に
隠れている場合は、X* 座標を単にインクリメントして
演算する場合に比べて、例えば約16倍の高速処理が期
待できることになる。
【0191】なお、本実施例において、終了フラッグ記
憶部36が2画面構成となっている。これは、ドットの
演算に伴う終了フラッグ記憶部36に対するアクセス
と、前記1画面分のクリアとを、並行して行うためであ
る。
【0192】また、ここにおいて、ポリゴンの処理が手
前のものから順に行われていることが、処理の高速化を
可能とするための前提となっている。
【0193】以下、図21に示す終了フラッグ記憶部回
路のブロック図に基づき、その構成及び動作を説明す
る。
【0194】まず、終了フラッグ決定部248に、輪郭
点の演算で生成された左輪郭点のX* 座標及び右輪郭点
のX* 座標が入力される。ここで、それぞれの座標はそ
れぞれ10ビットのデータで構成されているとする。こ
の右輪郭点のX* 座標は、右輪郭点X* 座標用のレジス
タ250に記憶される。また、左輪郭点X* 座標のう
ち、下位4ビットは左輪郭点X* 座標下位用のレジスタ
252に記憶され、上位6ビットは、X* 座標上位用の
カウンタ254のカウントのための初期値となる。そし
て、このカウンタ254の出力は、輪郭点Y* 座標及び
バンク切り替え信号と共に、終了フラッグ記憶部36の
アドレスA0〜A14に入力され、終了フラッグ記憶部
36のアドレスを指定することとなる。即ち、カウンタ
254は、4ビット毎に、即ち16ドット毎に前記アド
レスをカウントアップすることとなる。これにより、終
了フラッグ記憶部36からは、データ即ち着目する16
ドットに対応する終了フラッグ群が16ドット毎に読み
だされ、双方向バッファ262をプライオリティエンコ
ーダ276の出力は、デコーダ280に入力され、これ
を介して、読み出し用のレジスタ264に記憶されるこ
ととなる。
【0195】一方、マスクパターン発生回路256は、
着目する16ドットの内、左右輪郭点の内側にあるもの
を“1”とし、外側にあるものを“0”とする同じく1
6ドット毎のマスクパターンを生成している。そして、
書き込み用のOR回路258にて、読み出し用のレジス
タ264に記憶された前記データと、このマスクパター
ンとの論理和がとられる。この結果、「空きドット」即
ち、これから新たに処理しようとしているドットの終了
フラッグが“1”に更新された書き込みデータが生成さ
れることになる。そして、この書き込みデータは、書き
込み用のレジスタ260に記憶された後、双方向バッフ
ァ262を介して、終了フラッグ記憶部36に書き戻さ
れる。これにより、終了フラッグ記憶部36内に記憶さ
れている終了フラッグのデータのうち、着目する16ド
ットのデータが更新されることとなる。
【0196】一方、このマスクパターンは、反転回路2
66にて反転され、読み出し用のOR回路270にて、
読み出し用のレジスタ264に記憶されたデータと論理
和がとられる。この結果、左右輪郭点の外側のドット及
び他のポリゴンが既に存在するドットが“1”となり、
空きドットのみが“0”となるデータが生成されること
となる。ここに、これを仮に「空きドットデータ」と呼
ぶこととする。この空きドットデータは、空きドット検
出ループ282に入力される。
【0197】空きドット検出ループ282において、マ
ルチプレクサ292は、塗りつぶし用のレジスタ274
を初期化する時のみ前記空きドットデータを取り込み、
それ以外の時は帰還ループからのデータを取り込むよう
に構成されている。これにより自己ループが形成される
こととなる。塗りつぶし用のレジスタ274に記憶され
た空きドットデータは、プライオリティエンコーダ27
6に入力される。このプライオリティエンコーダ276
は、空きドットのうち、最もX* 座標の値が小さいドッ
トを検出し、これを4ビットのデータとして出力する。
そして、空きドットのX* 座標、即ち演算処理を行うべ
きドットのX* 座標は、この4ビットのデータの上位
に、X* 座標上位カウンタ254からの6ビットデータ
を付け加えることにより形成されることとなる。
【0198】デコーダ280において、「着目するドッ
トのみが“1”となるデータ」が生成される。このデー
タと、塗りつぶし用のレジスタ274の出力とが、OR
回路278にて論理和がとられ、「空きドットデータの
うち、着目するドットのみが“1”に更新されたデー
タ」が生成される。この更新データは、マルチプレクサ
272を介して、塗りつぶしレジスタ279に書き戻さ
れる。この空きドット検出ループ282における一連の
動作は、塗りつぶしレジスタ274の内容が全ビット1
になるまで続けられる。
【0199】空きドット検出ループ282内での動作が
終了すると、カウンタ254のカウントアップにより、
次の16ドットのデータが終了フラッグ記憶部より読み
出され、上記した処理が繰り返される。
【0200】そして、16ドットのデータの中に右輪郭
点が含まれていないかどうかが検出され、含まれていた
ならば、次の処理からは新たな左右輪郭点のX* 座標が
入力され、処理が繰り返されることになる。 (6) フィールドバッファ部 フィールドバッファ部40は、図16に示すように、ビ
デオRAM100、102、104、106と、これら
のビデオRAMをコントロールするフィールドバッファ
コントローラ90、92、94、96を含む。
【0201】この、ビデオRAM100〜106により
構成されるフィールドバッファ空間には、CRTの表示
スクリーンの各ドットに1対1に対応するデータが格納
される。本第1の実施例において、このフィールドバッ
ファ空間に格納されるデータは、コプロセッサ34で演
算されたテクスチャ座標TX 、TY 、輝度情報BRI及
びポリゴン識別番号PNであり、書き込むべきアドレス
は、メインプロセッサ32で演算された透視変換表示座
標X* 、Y* により決定される。
【0202】なお、ビデオRAMは、マルチポートRA
M構成となっており、ランダムポート(RAM)、シリ
アルポート(SAM)に分かれている。本実施例では、
フィールドバッファ空間へのデータの書き込みは、ラン
ダムアクセスにより行われ、読み出しはドットクロック
に同期してシリアルに行われる。また、フィールドバッ
ファ空間は、書き込み用のバンク及び読みだし用のバン
クの2つのバンクに分割され、1フィールド(1/60
秒)毎に、バンクの切り替えを行っている。 (7) アトリビュートRAM部 アトリビュートRAM部38は、図16に示すように、
アトリビュートRAM部152及びアトリビュートデー
タ制御部150を有する。
【0203】ソーティング処理部22より入力されたパ
レットナンバーPAL、カラーZ値CZ、テクスチャ情
報記憶部42内の記憶空間のブロック指定を行うための
ブロック番号BN等のアトリビュートデータは、アトリ
ビュートデータ制御部150に入力され、このアトリビ
ュートデータ制御部150により、アトリビュートRA
M152に格納される。そしてアトリビュートRAM1
52からの読み込みは、フィールドバッファ部40から
入力されるポリゴン識別番号PNにしたがって行われ、
パレット&ミキサ回路44にポリゴン毎のデータとして
出力されることとなる。
【0204】テクスチャ情報記憶部42内の記憶空間の
ブロック指定を行うためのブロック番号BNも、このア
トリビュート制御回路150より発生されテクスチャ記
憶部42に出力される。 (8) テクスチャ情報記憶部 テクスチャ情報記憶部42は、図16に示すように、キ
ャラクタコード記憶部160及びキャラクタジェネレー
タ164を含む。このテクスチャ情報記憶部42には、
フィールドバッファ部40からのテクスチャ座標Tx 、
TY により実際の画面を表示するための例えばカラーコ
ードが記憶されており、記憶部のスピードを補うために
2段構成となっている。これらの記憶部を構成するもの
としては、例えばマスクROM、EEPROM、SRA
M、DRAM等を用いることができる。特に、RAMを
用いて、このRAMに記憶される内容を例えば1フィー
ルド(1/60秒)毎に書き換えれば、自身の画像をフ
ィードバックしてまたテクスチャにモニターする等特有
の画像効果を得ることが可能となる。
【0205】図22には、このテクスチャ情報記憶部4
2により構成されるテクスチャ記憶平面の一例が示され
る。
【0206】このテクスチャ記憶平面は、例えば図22
に示すような階層構造となっており、これにより、少な
い容量の記憶部により広いテクスチャ記憶平面を表現す
ることができる。即ち、テクスチャ記憶平面は例えば1
6のブロックに分割され、各ブロックは、256×25
6のキャラクタに分割されている。そして、このキャラ
クタは16×16のドットに分割され、各キャラクタに
は、テクスチャ記憶平面を構成するための絵柄が記憶さ
れている。そして、この絵柄を用いてテクスチャ記憶平
面が全て埋められることとなる。
【0207】図22に示すように、ポリゴンへのテクス
チャリングは、ポリゴンにはり付けたいテクスチャの各
頂点座標を指定することにより行われる。但し、ブロッ
ク間にまたがるポリゴンの指定をすることはできない。
【0208】図23には、テクスチャ情報記憶部42に
おけるデータの流れの一例が示される。
【0209】本第1の実施例において、テクスチャ情報
記憶部42には、それぞれ12ビットのテクスチャX座
標TX0〜TX11 及び16ビットのテクスチャY座標TY0
〜TY15 が、計28ビットのデータとして入力される。
【0210】ここでテクスチャ座標の下位ビットTX0〜
TX3及びTY0〜TY3は、キャラクタジェネレータ164
におけるキャラクタのアドレスを指定するために使用さ
れ、テクスチャY座標の上位ビットTY12 〜TY15 は、
テクスチャ記憶平面でのブロック番号BNを指定するた
めに使用されている。即ち、上位ビットTY12 〜TY15
によりテクスチャ記憶平面のブロックが指定され、TX4
〜TX11 及びTY4〜TY11 によりブロック内のキャラク
タのアドレスが指定される。これにより、キャラクタコ
ードCC0 〜CC12がキャラクタコード記憶部160か
ら読み出されることとなる。一方、下位ビットTX0〜T
X3及びTY0〜TY3は、キャラクタコード記憶部160を
バイパスし、前記キャラクタコードCC0 〜CC12と結
合して、キャラクタジェネレータ164に入力される。
そして、キャラクタジェネレータ164からは、最終的
な出力である例えば8ビットのカラーコードが、パレッ
ト&ミキサ回路44に出力されることとなる。 (9) パレット&ミキサ回路 パレット&ミキサ回路44は、輝度情報BRI、カラー
データCOL、パレットナンバーPAL及びカラーZ値
CZより画像出力を行うためのRGBデータを合成する
ための回路である。即ち、画像出力は、フィールドバッ
ファ部40に記憶されるドット毎のデータと、アトリビ
ュートRAM38に記憶されるポリゴン毎のデータによ
り、予め設定されているパレットよりRGBデータを引
き出すことによって合成される。パレットにはRGB各
8ビットで、計24ビットの色データが格納されてい
る。そして、パレットは全部で128バンクに分割され
ており、このバンク指定はパレットナンバーPALによ
り行われる。また、1バンクは、256色のデータを持
ち、このバンク内での色指定は、カラーコードCOLに
より行われることとなる。
【0211】図24には、フィールドバッファ部40及
びアトリビュートRAM部38へのデータ書き込み後、
画像出力するまでの信号の流れが示されている。
【0212】即ち、以下のような信号の流れにしたがっ
て、最終的な画像が出力される。 フィールドバッファ部40から1ドット毎のデータ
(PN、TX 、TY 、BRI)が出力される。 アトリビュートデータRAM部38から、前記ポリゴ
ン識別番号PNに対応したポリゴンのデータ(BN、P
AL、CZ)が出力される。 TX 、TY 、BNがテクスチャ情報記憶部42に入力
され、対応したカラーデータCOLが出力される。この
場合、アトリビュートRAM部38を経由するBNとタ
イミングを合わせるため、TX 、TY はディレイ回路1
68を介してテクスチャ情報記憶部42に入力される。 COL、PAL、BRI、CZは、ディレイ回路17
0、172、174によりタイミング合わせが行われ、
同時にパレット&ミキサ回路44に入力される。そし
て、PAL、COLよりパレットのバンクとバンク内の
カラーコードが指定され、パレットから1つの色データ
が選択される。この選択された色データは、BRI、C
Zの値により色演算される。その後、ガンマ補正を経
て、D/A変換され、RGBデータとしてパレット&ミ
キサ回路44から出力され、CRT46へ画像入力され
ることとなる。 C.第2の実施例 1.実施例の概要 第2の実施例では、レンダリング情報の1つとして表面
形状情報、具体的には法線ベクトルを選んでいる。第1
の実施例では、ポリゴンの各頂点の輝度情報VBRIに
対して直接に補間演算等を行うことで、ポリゴンを構成
する各ドットの輝度情報BRIを求めていた。これに対
し、本第2の実施例では、補間演算はポリゴンの各頂点
に与えられた法線ベクトルに対して行われる。そして、
ポリゴンを構成する各ドットの輝度情報BRIは、演算
された各ドットの法線ベクトルに対して照明モデルに対
応した所定の演算処理を行うことで求めることになる。
【0213】本第2の実施例では直交座標を用いて法線
ベクトルN=[NX ,NY ,NZ ]の補間演算を行う。
即ち、まずポリゴンの各頂点に対して各頂点の法線ベク
トルVN=[VNX ,VNY ,VNZ ]が与えられる。
そして、このVNX ,VNY,VNZ に対して、第1の
実施例の場合と全く同様にそれぞれ透視変換、輪郭上の
補間演算、走査線上の補間演算、逆透視変換を行う。こ
れによりポリゴン上の全ドットにおける法線ベクトルN
=[NX ,NY ,NZ ]が求められることになる。
【0214】その後、この全ドットの法線ベクトルN=
[NX ,NY ,NZ ]を用いて、実際の色を決定する。
この場合、法線ベクトルから各ドット毎の輝度情報BR
Iを求めるための照明モデルが必要となる。
【0215】本第2の実施例では、照明モデルとして、
単一光源による平行光線と、鏡面反射、拡散反射、周囲
光を考える。この場合、シェーディング関数と呼ばれる
半ば理論的に半ば経験的に得られた次のような式が知ら
れている。
【0216】 BRI=Ia Ka +{Il /(Z+K)}×(Kd cos φ+Ks cosnψ)(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〕:画面(フィールド)毎の定数。
【0217】〔O〕:物体(あるいはポリゴン)毎の定
数。
【0218】という意味である。
【0219】即ち、補間演算により求められた各ドット
における法線ベクトルN=[NX ,NY ,NZ ]を用い
て、(1) 式における角度φ、ψが求められる。また、必
要ならば各ドット毎にZ座標も求められる。また、これ
以外の係数はポリゴン毎にアトリビュートデータとして
与えられている。従って、これらのデータ値を(1) 式に
代入することで、各ドット毎の輝度情報が求められるこ
とになる。 2.具体例 図25に本第2の実施例の具体的な構成を表すブロック
図を示す。図25は、図16に示す第1の実施例の具体
例に対応するものである。図25に示すように、第2の
実施例は第1の実施例に比べて、コプロセッサ34の構
成が異なり、また、新たに正規化回路740、輝度演算
部760を含んだ構成となっている。なお、Delay
回路761は、正規化回路740、輝度演算部760が
追加されたことにともない、輝度情報BRIの出力との
タイミングを合わせるために設けられたものである。ま
た、図25においてフィールドバッファ40内のビデオ
RAM、フィールドバッファコントローラについては、
説明を簡単にするためにVRAM/FBC720〜73
2として示している。
【0220】次に、本第2の実施例の動作を説明する。
本第2の実施例では前述の(1) 式を用いて、1画面毎に
与えられた光源ベクトルと、ドット毎に与えられた法線
ベクトルから、ドット毎の輝度情報が求められる。
【0221】ソーティング処理部22には、、法線ベク
トルN=〔NX ,NY ,NZ 〕が、ポリゴンの頂点情報
の一種として送られてくる。ここでNx ,Ny ,Zz は
それぞれ12ビット符号付き固定小数点データである。即
ち、最上位ビットが符号ビット、残る11ビットは小数
点以下を表し、−1以上+1未満の値をもつデータとな
る。小数点位置を無視して16進数表記で表すと、−1
は800h、+1に最も近い数は7FFhとなる。
【0222】ソーティング処理部22の動作は、第1の
実施例と全く変わりない。ただし、データRAM60上
に、新たに法線ベクトルを格納するデータ領域が必要に
なる。
【0223】コプロセッサ34内においては、法線ベク
トルの3つの座標情報の演算用にそれぞれ積和演算器お
よび除算器が必要になる。但し、本第2の実施例では、
演算の対象となるデータが多い(Z、TX 、TY 、NX
、NY 、NZ )。そこで、第1の実施例のように除算
器を複数個設ける構成とはせず、Z* の逆数を求める逆
数器706を1個と、複数個の乗算器710〜718を
設ける構成としている。通常、除算器よりも乗算器の方
が小規模の回路構成となる。従って、演算の対象となる
データが多い場合は、このように乗算器を複数個設ける
構成としたほうが、ハードウェアの負担を軽減できるこ
ととなる。
【0224】なお、積和演算器700〜704および乗
算器714〜718は符号なしの整数演算専用に形成さ
れている。従って、積和演算器700〜704の入口お
よび乗算器714〜718の出口で、最上位ビット(符
号ビット)を反転してやる必要がある。これは800h
のオフセットを、積和演算器の入口で加算し、出口で減
算することと等価である。
【0225】こうして得られたドット毎の法線ベクトル
は大きさが1よりも小さくなる。これをN' と呼ぶ。正
規化された法線ベクトルNを得るには、正規化回路74
0により、 N=N' /|N' |=N' /(NX'2 +NY'2 +NZ'2 1/2 (2) という演算が必要である。但し、ポリゴンの各頂点の法
線ベクトルの向きの偏差が微小であれば、 N=N' とみなしてもよい。この場合は、図25における正規化
回路740は省略することができる。
【0226】図26には、この正規化回路740の構成
の一例が示される。図26において、[NX',NY',N
Z']が、2乗回路742〜746に入力される。そし
て、加算器748で加算され平方根回路750で平方根
がとられる。そして、除算器752〜756で[NX',
NY',NZ']との除算が行われ、正規化された法線ベク
トル[NX ,NY ,NZ ]が求められることになる。
【0227】こうしてドット毎にリアルタイムに法線ベ
クトルが求まると、次に前述の(1)式によって、ドット
毎の輝度情報BRIを求める。この場合、cos φ及びco
s ψの値が必要となり、これは以下のようにして求めら
れる。
【0228】まず、光源ベクトルLと法線ベクトルNの
内積は、 L・N=|L||N|cos φ となる。ここで、|L|=|N|=1なので、 cos φ=L・N=LxNx+LyNy+LzNz ……(3) となる。一方、反射光ベクトルRは、 R=2N(L・N)/|N|2 −L ……(4) と与えられる。ここで、|N|=1なので、(3) 式と
(4) 式より、 R=2Ncos φ−L ……(5) となる。
【0229】次に、cos ψは、視線ベクトルE=[0,
0,1]と反射光ベクトルRとの内積であるため、 cos ψ=E・R=0・Rx+0・Ry+1・Rz =Rz =2Nzcos φ−Lz ……(6) となる。以上より、法線ベクトル〔NX ,NY ,NZ 〕
よりcos φ、cos ψが求められた。そして、このcos
φ、cos ψを(1) 式に代入することで、ドット毎の輝度
情報BRIが求められることになる。
【0230】以上の法線ベクトルから輝度情報を求める
演算は、輝度演算部760により行われる。図27に
は、この輝度演算部760のブロック図の一例が示され
る。
【0231】図27において、定数レジスタ762〜7
72は、光線ベクトルLX 、LY 、LZ 等の定数データ
を格納するレジスタである。そして、乗算器774〜7
78、加算器780により上式(3) の演算が行われcos
φが求められる。同様に乗算器782、左シフト演算器
784、減算器786等により上式(6) の演算が行われ
cos ψが求められる。以上求められたcos φ、cos ψを
用いて、べき乗デーブル788、乗算器790〜79
6、除算器798、加算器800〜84により上式(1)
の演算が行われ、輝度情報BRIが求められることにな
る。
【0232】なお、べき乗テーブル788は、RAMや
ROMで構成され、cos ψとnをアドレスとする。その
データはcosnψに限らず、任意の関数が可能である。
【0233】また、アトリビュート(ポリゴン毎の定
数)の1種として「ポリゴンの面の法線ベクトル」とい
う情報があれば、法線ベクトルそのものではなく法線ベ
クトルの「偏位」を扱うこことにより、ビット数の削減
あるいは精度の向上が図ることができる。この場合は、
補間演算等によりドット毎の法線ベクトルの偏位を求
め、これを「ポリゴンの面の法線ベクトル」に加算する
ことにより、法線ベクトルを求めることになる。 D.第3の実施例 1.実施例の概要 第3の実施例では、レンダリング情報の1つとして表面
形状情報、具体的には法線ベクトルの偏位を選んでい
る。また、テクスチャ座標の1つとしてバンプマッピン
グ用テクスチャ座標を用いる。そして、レンダリング情
報記憶部であるテクスチャ情報記憶部には、レンダリン
グ情報として、法線ベクトルの偏位が記憶される。そし
て、補間演算されたバンプマッピング用テクスチャ座標
により法線ベクトルの偏位が読み出され輝度情報が求め
られることになる。本第3の実施例は、このような構成
によりバンプマッピングと呼ばれる画像処理を行ってい
る。
【0234】さて、バンプマッピングは摂動マッピング
とも呼ばれ、物体表面に任意のパターンの凹凸を表現す
る手法である。バンプマッピングでは物体表面形状に対
する摂動成分(多くは、法線ベクトルの偏位)をテクス
チャ情報として持つ。この摂動成分からなるテクスチャ
情報を、以下バンプと呼ぶ。
【0235】本第3の実施例では、アトリビュートデー
タ(ポリゴン毎の定数)の1種として「ポリゴンの面の
法線ベクトル」をもつ。そして、この「ポリゴン面の法
線ベクトル」が、摂動成分によってドット毎に摂動を受
ける。これにより各ドットの法線ベクトルが求められる
ことになる。この様子が図28に示される。
【0236】このようにしてドット毎の法線ベクトルが
求まったら、その後は前述した第2の実施例と同様の方
法で輝度情報が求まる。これにより例えば図8に示すよ
うに物体の表面にクレータ状の形状が施された画像等を
合成できることになる。 2.具体例 図29に、本第3の実施例の具体な構成を表すブロック
図を示す。図29に示すように、第3の実施例は図25
に示す第2の実施例に比べて、コプロセッサ34、テク
スチャ情報記憶部42の構成が異なり、また、新たに回
転角発生部810、Z軸回転演算部840、摂動回路8
60、乗算器882を含んだ構成となっている。そし
て、テクスチャ情報記憶部42は、カラー情報をテクス
チャ情報として記憶するカラーテクスチャ記憶部830
と、バンプデータをテクスチャ情報として記憶するバン
プテクスチャ記憶部832とを含んで構成される。
【0237】さて、バンプマッピングにおいては、カラ
ー情報のマッピングと異なり、摂動成分を単にマッピン
グしてポリゴンの面の法線ベクトルに加算するだけでは
済まない。摂動成分がベクトルである以上、向きの情報
を持っており、ポリゴンに追随して3次元空間内で回転
・透視変換の演算をしなくてはならないからである。し
かし、ドット毎に摂動成分に対して回転と透視変換の演
算を施すと、膨大な演算量が必要になる。そこで、本第
3の実施例では、より簡便な近似手法を用いることにす
る。
【0238】バンプデータは、直交座標ではなく極座標
で表す。すなわち、ポリゴンの面の法線ベクトルに対す
る摂動を、X軸周りとY軸周りの回転角として表現す
る。これは、ポリゴン自体のX軸周りとY軸周りの回転
に追随するための演算を省略するためである。しかし、
Z軸周りの回転に追随する演算は省くことができない。
そこで、以下、このZ軸周りの回転をバンプデータに反
映させるための演算処理の近似手法について説明する。
【0239】さて、図30(A)に示すように、バンプ
テクスチャ記憶部832におけるバンプテクスチャ平面
を、変数BxとByで表現する。また、図30(A)に
示すように走査線上の補間に際して、左右輪郭点に対応
するバンプテクスチャ平面上の点をA=[Bxa,By
a](始点)とB=[Bxb,Byb](終点)とす
る。テクスチャ平面上の直線は画面上でも直線にマッピ
ングされる。従って、走査線上の補間でマッピングされ
るバンプデータは、常にこの線分AB上にあることにな
る。ここで、線分ABと、Bx軸に平行な直線とのなす
角をθとする。すると、このθは透視変換の結果も反映
しているので、バンプデータもθだけZ軸周りに逆回転
してやれば、Z軸周りの回転と透視変換へ追随する演算
が同時に完了したとみなすことができる。
【0240】具体的には、まず、回転角発生部810
が、 sinθ=ΔBy/(ΔBx2 +ΔBy2 1/2 ……(7) cosθ=ΔBx/(ΔBx2 +ΔBy2 1/2 ……(8) (ΔBx=Bxb−Bxa, ΔBy=Byb−By
a)の演算を行う。図30(B)にはこの場合の回転角
発生部810の構成の一例が示される。図30(B)に
示すように、回転角発生部810には、[Bxa,By
a]と[Bxb,Byb]が入力され、減算器812、
814、2乗回路816、818、加算器820、平方
根回路822により(ΔBx2 +ΔBy2 )が求められ
る。そして、除算器824、826を介してsinθ、
cosθが求められることになる。
【0241】なお、回転角発生部810において、θそ
のものの値を求め、フィールドバッファ部40に記憶す
る方法も考えられる。この方がフィールドバッファ部4
0の容量が削減できる点では有利である。しかし、本第
3の実施例では、演算処理を簡易にするため、sin
θ、cosθを演算し、これをフィールドバッファ部4
0に記憶する構成としている。
【0242】Z軸周りのバンプデータのθの逆回転は、
Z軸回転演算部840において行われる。これは回転演
算の式、
【0243】
【数1】 すなわち、 x = x' cosθ+y' sinθ ……(9a) y =−x' sinθ+y' cosθ ……(9b) z = z' ……(9c) に基づいて行われる。なお、数1(9) 式中
【0244】
【数2】 の部分を、以下Z軸周りの回転マトリクスと呼ぶ。な
お、zに相当するバンプデータは存在しないので、実際
には(9c)式は意味を持たない。
【0245】さて、バンプデータは直交座標ではなく回
転角であるが、数1(9) 及び(9a)〜(9b)式では角度が微
小であると仮定して直交座標xとyと同様に取り扱って
いる。従って、バンプテクスチャ記憶部832に記憶さ
れるX軸回転のバンプデータをα´、Y軸回転のバンプ
データをβ´とすると、(9a)〜(9b)は、 β = β' cosθ+α' sinθ ……(11a) α =−β' sinθ+α' cosθ ……(11b) と表すことができる。これにより、Z軸回転演算部84
0によるZ軸回転演算後のバンプデータα、βが求めら
れたことになる。図31には、この場合のZ軸回転演算
部840の具体的構成が示される。図31に示されるよ
うに、Z軸回転演算部840には、バンプテクスチャ記
憶部832からバンプデータα' 、β'が入力される。
そして、乗算器842〜848、加算器850、減算器
852により、上式(11a) 、(11b) に従ったZ軸回転演
算が行われることになる。
【0246】以上より、X軸回転、Y軸回転の回転マト
リクスはそれぞれ、
【0247】
【数3】
【0248】
【数4】 と表される。ここで、角度が微小であるという条件を用
い、近似式、
【0249】
【数5】
【0250】
【数6】 により、
【0251】
【数7】
【0252】
【数8】 と近似される。
【0253】次に、この回転マトリクスを用いて摂動回
路860において摂動演算が行われる。ここで、摂動さ
れるべきもとの法線ベクトル[NX"、NY"、NZ"]は、
図29に示すようにアトリビュートRAM部38より入
力される。摂動回路860では、このもとの法線ベクト
ル[NX"、NY"、NZ"]に対して、摂動演算が行われ、
摂動された法線ベクトル[NX'、NY'、NZ']が求めら
れる。
【0254】ここで、各軸周りの回転順序は交換不可能
であるが、ここでも角度が微小であるという理由で交換
可能と見なす。例えば、X軸回転を先に行うとすると、 [NX' NY' NZ']=[NX" NY" NZ"]RxRy ……(16) より、 NX'=NX"+αβNY"+βNZ" ……(16a) NY'=NY"−αNZ" ……(16b) NZ'=−βNX"+αNY"+NZ" ……(16c) となる。ここで、(16a) 式の右辺の第2項“αβy”
は、αもβも共に微小であるために“0”とみなせるか
ら、 NX'=NX"+βNZ" ……(16a) ´ となる。逆にY軸回転を先に行っても、同じ結果が得ら
れる。
【0255】図32には、この摂動回路860の構成の
一例が示される。この摂動回路860では、上記した
(16a)'(16b)(16c) の各式に基づいて演算処理が行われ
る。即ち、図32に示すように、摂動回路860には、
ポリゴンの面の法線ベクトル[NX"、NY"、NZ"]がア
トリビュートRAM部38から入力され、乗算器862
〜868、加算器870、872、減算器874、87
6により、摂動された法線ベクトル[NX'、NY'、NZ
']が求められる。
【0256】なお、図32に示すように、アトリビュー
トRAM部38を介してBDEPTH信号を入力し、乗
算器878、880を新たに設ければ、同一のバンプテ
クスチャで凹凸の深さを変えることも可能となる。即
ち、α、βに所定の値に設定されたBDEPTH信号を
乗算することにより、同一のバンプテクスチャで凹凸の
深さを変えることが可能となるわけである。
【0257】以上のようにして演算された法線ベクトル
[NX'、NY'、NZ']は、必要ならば実施例2と同様に
正規化回路740において[NX 、NY 、NZ ]に正規
化される。そして、輝度演算部760及び乗算器882
により所定の演算処理が行われ、輝度情報BRIが求め
られることになる。
【0258】さて、バンプマッピングに関連する回路の
うち、回転角発生部810のみがフィールドバッファ部
40の手前に配置される。メインプロセッサ32、コプ
ロセッサ34による走査線上(左右輪郭点間)の補間
は、原則として左から右へと行われるが、これに先立っ
て右輪郭点の演算が、ポリゴンが既に描かれているか否
かに関わらず行われる。これが図30(A)におけるB
=[Bxb,Byb]点である。元来、走査線補間演算
の開始前には1データ分の空き時間があるので、B点の
出力によって処理時間は影響を受けない。回転角発生部
810は、図30(B)には図示していないが、入力部
にレジスタをもち、このBxbとBybを保持する。
【0259】続いて通常の補間演算が始まり、最初のド
ットがA=[Bxa,Bya]点となり、回転角発生部
810に与えられる。あるいは走査線補間演算前の空き
時間を広げて、B点と同様にポリゴンが既に描かれてい
るか否かに関わらず左輪郭点を演算してA点とすれば、
より正確なsinθとcosθが求まる。
【0260】A点が与えられると、回転角発生部810
は直ちに演算を開始し、sinθとcosθを求め、フ
ィールドバッファ部40に格納する。
【0261】フィールドバッファ部40の読み出し側に
接続されるテクスチャ情報記憶部42は、前記したよう
にカラーテクスチャ記憶部830及びバンプテクスチャ
記憶部832を含んで構成される。これらのカラーテク
スチャ記憶部830、バンプテクスチャ記憶部832で
は、制御を簡単にするためテクスチャ座標を共有してい
る(Tx=Bx,Ty=By)。そして、ブロックナン
バーBNは共有せず、カラーテクスチャとバンプテクス
チャの様々な組合せを選択可能とするため、カラー用の
ブロックナンバーCBN及びバンプ用のブロックナンバ
ーBBNとに区別している。これらのCBN、BBN信
号は、図29に示すように、アトリビュートRAM部3
8よりアトリビュートデータとして与えられる。
【0262】図33には、実施例2で述べたフォンシェ
ーディングと、バンプマッピングとを併用して画像合成
を行う場合のブロック図が示される。この場合には、図
33に示すように、フォンシェーディングで得られた法
線ベクトル[NX"、NY"、NZ"]に対して、摂動をかけ
ることになる。
【0263】なお、フォンシェーディングで扱うパラメ
ータを、法線ベクトルそのものではなく法線ベクトルの
偏位を用いると、ビット数の削減や精度の向上が期待で
きる。
【0264】なお、テクスチャ情報記憶部は、ROMや
RAMのようにテクスチャ情報の数値そのものを記憶す
るとは限らず、テクスチャ座標等の入力に対する関数の
形で記憶することも可能である。この場合のテクスチャ
情報記憶部は、論理演算回路として構成される。
【0265】図34(A)に示されるようなジクザク形
状の関数は、1次関数の複合体なので、
【0266】
【数9】 (w:バンプテクスチャ座標(Bx,By) u:摂動成分
(α,β)i,j:定数) (a mod b は、除算a/bの剰余を意味する) のように表せる。この関数は、疑似サイン曲線の表面形
状を発生させることができる。これは最も基本的なバン
プのひとつなので用途が広い。これをバンプテクスチャ
座標BxとByの片方あるいは両方に適用して利用する
ことができる。
【0267】定数iを2の整数乗とすると、図34
(B)に示すような乗算器900、減算器902、補数
器904で構成される回路で実現できる。
【0268】ここで乗算器900には、Wm 〜W0 (W
の下位m+1ビット)及びjが入力される。そして、乗
算器900の出力は下位mビットが切り捨てられ減算器
902に入力される。減算器902の出力は補数器90
4に入力される。ここで補数器904のE入力にはWm+
1 (Wのビットm+1)が入力されている。
【0269】さらに定数jも2の整数乗とすると、図3
4(C)のようにさらに簡単な回路になる。この回路
は、シフタ906、デクリメンタ908、補数器910
により構成される。
【0270】シフタ906にはWm 〜W0 (Wの下位m
+1ビット)が入力される。ここで、シフタ906は、
以下の演算機能を有する。
【0271】i<j(m<n)の場合、j−iビットの
“0”を下位に追加(左シフト) i=j(m=n)の場合は、何もしない i>j(m>n)の場合、下位i−jビットを削除する
(右シフト) (3者のいずれかの状態に固定) シフタ906の出力はデクリメンタ908に入力される
が、下位mビットについてはバイパスして補数器910
に入力される。補数器910のE入力にはWm+1 (Wの
ビットm+1)が入力されている。
【0272】なお、ここでシフタ906は能動的な回路
ではなく、各ビットの結線の違いをブラックボックス化
して表現したものに過ぎない。バンプの深さ情報BDE
PTHがアトリビュートデータに含まれる場合は特に図
34(C)の回路で十分である。
【0273】なお、簡単で有用性の高い物のひとつに、
乱数器がある。この乱数器は、テクスチャ座標などの入
力に対して一意に定まる疑似乱数を発生する。この例を
図35(A)に示す。この例では乱数発生回路をユニッ
ト化し、乱数ユニットA〜Dというように多段構成にし
ている。図35(B)に示すように、いろいろな乱数ユ
ニット912、914、916等を取捨選択して、目的
にあうバンプパターンを見つける。
【0274】なお、本発明は上記実施例に限定されるも
のではなく、本発明の要旨の範囲内で種々の変形実施が
可能である。
【0275】例えば、本発明における線形補間演算は上
記したものに限らず、例えばDDAを用いて線形補間演
算してもよい。
【0276】また、テクスチャ情報記憶手段を構成する
記憶装置としては、EEPROMに限らず、SRAM、
DRAM、マスクROM等、各種の記憶装置を使用する
ことができる。
【0277】また、本発明によりポリゴンにテクスチャ
マッピングされるテクスチャの形状としては、このポリ
ゴンと同一の形状もしくは相似形状のものには限られ
ず、任意の形状のテクスチャをマッピングすることがで
きる。例えば、ポリゴンの形状と全く異なる形状のテク
スチャをマッピングすることにより、テクスチャを歪ま
せるなど特殊な画像効果を得ることもできる。
【0278】また、上記実施例では、演算における「走
査線」と「CRTの走査線」とを特に区別していなかっ
たが、例えばビデオRAMのSAM容量等のハードウェ
ア上の制約しだいでは、両走査線が別個のものであっ
て、例えば直交しているように場合も考えられる。
【0279】また、バンプマッピングに使用される表面
形状情報としては、実施例に述べた法線ベクトル、法線
ベクトルの偏位に限らず、種々のものを用いることがで
きる。例えば、表面形状の起伏の高さを表面形状情報と
して用いることもできる。
【0280】
【発明の効果】本発明によれば、物体の表面情報の遠近
感、直線性が損なわれずに、高品質の疑似3次元画像を
リアルタイムに画像合成することが可能となる。特に、
本発明によれば、表面情報演算手段において複数の表面
情報を同時に演算処理することが可能であるため、複数
の表面情報を取り扱う場合にも比較的小規模の回路構成
により画像合成を行うことができる。
【0281】また、本発明によれば、左右輪郭点及びこ
れを結ぶ走査線上の各ドットの透視変換表示座標、透視
変換表面情報を線形補間演算により求めることにより、
簡易な回路構成によりリアルタイムに高品質の画像合成
を行うことができる。
【0282】また、本発明によれば、表面情報のうち少
なくとも1つをレンダリング情報、あるいはテクスチャ
座標とすることにより、ポリゴンの各頂点に与えられた
レンダリング情報、テクスチャ座標に基づいて、遠近
感、直線性の損なわれないレンダリング、テクスチャマ
ッピングが可能となる。特に、テクスチャマッピング手
法を用いることにより、高品質の画像合成を、ハードウ
エアの負担を重くすることなく実現することが可能とな
る。また、この場合、テクスチャ座標に対して所定の関
数演算を施して、レンダリング情報を求める構成とすれ
ば、比較的小規模の回路構成によりテクスチャマッピン
グを行うことができ、例えば乱数発生器を用いることに
より従来にない映像効果を作り出すこともできる。
【0283】また、本発明によれば、前記レンダリング
情報のうち少なくとも一種類を、カラー情報、輝度情
報、表面形状情報、透明度情報、拡散反射率情報等とす
ることで、カラー情報、輝度情報、表面形状情報、透明
度情報、拡散反射率情報等を用いたレンダリング、テク
スチャマッピングを遠近感、直線性を損なわことなく行
うことができる。
【0284】例えばレンダリング情報の1つを輝度情報
とすることにより、輝度変化に遠近感があり、3次元物
体が回転等した場合にも、画像のリアリティを損なうこ
とない高品質の画像合成を、例えばグーローシェーディ
ング等の手法を用いて行うことができる。
【0285】また、レンダリング情報の1つを表面形状
情報とし、表面形状情報として法線ベクトル、法線ベク
トルの偏位、物体表面に形成される起伏の高さを用いれ
ば、バンプマッピング等の画像合成を行うこともでき
る。そして、このようにバンプマッピング等を行った場
合にも、物体の表面形状の変化に遠近感があり、3次元
物体が回転等した場合にも、画像のリアリティを損なう
ことない高品質の画像合成を行うことができる。
【0286】また、レンダリング情報の1つを透明度情
報とすることにより、物体の一部分が透明から半透明、
半透明から透明へと変化するおぼろげな物体を表現する
ことも可能となり、この場合にも遠近感、直線性は損な
われない。
【0287】また、レンダリング情報の1つを拡散反射
率情報とすることにより、例えば部分により「つや」の
異なる物体を表現することが可能となり、この場合にも
遠近感、直線性は損なわれない。
【0288】また、本発明によれば、ポリゴンに共通の
画像情報であるアトリビュートデータを用いることによ
り、より高品質な画像合成をより簡易な回路構成で実現
できる。例えば、バンプマッピングを法線ベクトルの偏
位により行う場合に、もとの法線ベクトルを、このアト
リビュートデータにより指定することもできる。
【0289】また、本発明によれば、表示座標演算手段
が表示画面に対して手前に位置するポリゴンから順に演
算処理を行うことにより、演算処理が間に合わなくなっ
ても、画面の手前にあるポリゴンのデータが喪失するの
を有効に防止でき、画像の高品質化を図ることができ
る。また、手前にあるポリゴンの演算処理後、次のポリ
ゴンの演算処理を行う場合、陰面の部分については既に
終了フラッグが書き込まれている。従って、この陰面の
部分については演算処理を省略でき、終了フラッグをN
ドット単位で参照することにより、演算処理を最大でN
ドット分スキップして行うことが可能となる。
【図面の簡単な説明】
【図1】第1図は、本発明にかかる画像合成装置の第1
の実施例について示すブロック図である。
【図2】第2図(A)、(B)は、本発明にかかる画像
合成装置の基本構成及び基本概念について示す概略説明
図である。
【図3】第3図(A)〜(C)は、従来のテクスチャマ
ッピングにおける遠近感の問題について示す概略説明図
である。
【図4】第4図(A)、(B)は、従来のテクスチャマ
ッピングにおける直線性の問題について示す概略説明図
である。
【図5】第5図は、細分化アルゴリズムを用いたテクス
チャマッピングについて示す概略説明図である。
【図6】第6図は、透視変換の概念について示す概略説
明図である。
【図7】第7図(A)は輝度の連続性の問題について示
す概略説明図であり、第7図(B)は、法線ベクトルに
よる疑似曲面の形成について示す概略説明図である。
【図8】第8図はバンプマッピングについて示す概略説
明図である。
【図9】第9図は、本発明にかかる画像装置における画
像処理演算の概要を示すフロチャート図である。
【図10】第10図は、本発明にかかる画像装置におけ
る画像処理演算の概要を視覚的に示した概略説明図であ
る。
【図11】第11図は本発明にかかる画像合成装置によ
り合成された疑似3次元画像の一例である。
【図12】第12図(A)はゲーム空間設定部により設
定されるゲーム空間の一例であり、第12図(B)はこ
の場合に合成される疑似3次元画像の一例である。
【図13】第13図は、ポリゴンの集合で表現された3
次元オブジェクトの一例を示す概略図である。
【図14】第14図は、画像供給部での演算処理を説明
するための概略説明図である。
【図15】第15図は、透視変換部から出力されるポリ
ゴンデータの一例を示す概略説明図である。
【図16】第16図は、本発明の第1の実施例の具体的
な構成を示すブロック図である。
【図17】第17図は、本発明の第1の実施例の画像処
理演算の詳細について示す説明図である。
【図18】第18図(A)〜(C)は、輪郭線及び輪郭
点の演算処理を説明するための概略説明図である。
【図19】第19図(A)〜(B)は、走査線及び走査
線上の各ドットの演算処理を説明するための概略説明図
である。
【図20】第20図は、表示画面に向かって手前側にあ
るポリゴンと奥側にあるポリゴンの関係を示す概略図で
ある。
【図21】第21図は、処理ドット指示部の構成及び終
了フラッグ記憶部との接続関係の一例について示すブロ
ック図である。
【図22】第22図は、テクスチャ記憶平面の構造につ
いて説明するための概略説明図である。
【図23】第23図は、テクスチャ情報記憶部における
データの流れを示す概略説明図である。
【図24】第24図は、フィールドバッファ部へのデー
タ書き込み後、画像出力するまでのデータの流れを説明
するためのブロック図である。
【図25】第25図は、本発明の第2の実施例の具体的
な構成を示すブロック図である。
【図26】第26図は、正規化回路の一例を示すブロッ
ク図である。
【図27】第27図は、輝度演算部の一例を示すブロッ
ク図である。
【図28】第28図は、摂動バンプマッピングの概念を
説明するための概略説明図である。
【図29】第29図は、本発明の第3の実施例の具体的
な構成を示すブロック図である。
【図30】第30図(A)は、バンプテクスチャ平面を
説明するための概略説明図であり、第30図(B)は、
回転角発生部の一例を示すブロック図である。
【図31】第31図は、Z軸回転演算部の一例を示すブ
ロック図である。
【図32】第32図は、摂動回路の一例を示すブロック
図である。
【図33】第33図は、フォンシェーディングとバンプ
マッピングを同時に実現した回路の一例を示すブロック
図である。
【図34】第34図(A)〜(C)は、テクスチャ情報
記憶部を論理演算回路で構成した場合について説明する
ための概略説明図である。
【図35】第35図(A)、(B)は、論理演算回路を
乱数器を用いて形成した場合の概略説明図である。
【図36】第36図は、従来の画像処理装置の概念につ
いて説明するための概略説明図である。
【図37】第37図は、従来の画像処理装置の一例を示
すブロック図である。
【図38】第38図は、スクリーン上に投影された疑似
3次元画像について説明するための概略説明図である。
【図39】第39図は、テクスチャがマッピングされた
3次元物体を画像合成する画像装置について説明するた
めの概略説明図である。
【図40】第40図は、テクスチャマッピングの概念に
ついて説明するための概略説明図である。
【符号の説明】
1 画像合成部 10 画像供給部 12 操作部 13 ゲーム空間演算部 15 処理部 16 3次元画像情報記憶部 18 座標変換部 19 クリッピング処理部 20 透視変換部 22 ソーティング処理部 28 画像形成部 30 プロセッサ部 32 メインプロセッサ 34 コプロセッサ 37 処理ドット指示部 36 終了フラッグ記憶部 38 アトリビュートRAM部 40 フィールドバッファ部 42 テクスチャ情報記憶部 44 パレット&ミキサ回路 70 制御回路 72、82、84、86、88 除算器 74、76、78、80 積和演算器 90、92、94、96 フィールドバッファコントロ
ーラ 150 アトリビュートデータ制御部 152 アトリビュートRAM 160 キャラクターコード記憶部 164 キャラクタージェネレータ

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】 3次元ポリゴンで構成される3次元画像
    を所定投影面上に透視変換して疑似3次元画像を合成す
    る画像合成装置であって、 前記3次元ポリゴンの各頂点の表示座標を前記投影面上
    の各頂点の透視変換表示座標に透視変換し、この各頂点
    の透視変換表示座標により形成されるポリゴンを構成す
    る各ドットの透視変換表示座標を線形補間演算により求
    める表示座標演算手段と、 前記3次元ポリゴンの各頂点に対応して与えられた表面
    情報を前記各頂点の透視変換表示座標に対して線形な各
    頂点の透視変換表面情報に透視変換し、この各頂点の透
    視変換表面情報により形成されるポリゴンを構成する各
    ドットの透視変換表面情報を線形補間演算により求め、
    この透視変換表面情報を逆透視変換して表面情報の演算
    を行う表面情報演算手段と、 前記表面情報演算手段により求められた前記表面情報に
    基づいて前記透視変換表示座標位置における画像情報の
    形成を行う画像情報形成手段と、 を含むことを特徴をする画像合成装置。
  2. 【請求項2】 請求項1において、 前記表示座標演算手段は、 前記各頂点の透視変換表示座標を線形補間することによ
    り、各頂点の透視変換表示座標により形成されるポリゴ
    ンの輪郭線と各走査線とが交差する点である左右輪郭点
    の透視変換表示座標を演算し、この左右輪郭点の透視変
    換表示座標を線形補間することにより、左右輪郭点を結
    ぶ走査線上の各ドットの透視変換表示座標を線形補間演
    算するように形成され、 前記表面情報演算手段は、 前記各頂点の透視変換表面情報を線形補間することによ
    り、各頂点の透視変換表示座標により形成されるポリゴ
    ンの輪郭線と各走査線とが交差する点である左右輪郭点
    の透視変換表面情報を演算し、この左右輪郭点の透視変
    換表面情報を線形補間することにより、左右輪郭点を結
    ぶ走査線上の各ドットの透視変換表面情報を線形補間演
    算するように形成されることを特徴とする画像合成装
    置。
  3. 【請求項3】 請求項1又は2において、 前記表面情報演算手段により演算処理される前記表面情
    報のうち少なくとも1つはレンダリング情報であり、 前記画像情報形成手段が、前記表面情報演算手段により
    求められたレンダリング情報に基づいて前記透視変換表
    示座標位置における画像情報の形成を行うことを特徴と
    する画像合成装置。
  4. 【請求項4】 請求項1又は2において、 前記表面情報演算手段により演算処理される前記表面情
    報のうち少なくとも1つはテクスチャ座標であり、 前記表面情報演算手段により求められたテクスチャ座標
    により指定されるアドレス位置に所定のレンダリング情
    報を記憶するレンダリング情報記憶部を含み、 前記画像情報形成手段が、前記レンダリング情報記憶部
    により読み出されたレンダリング情報に基づいて前記透
    視変換表示座標位置における画像情報の形成を行うこと
    を特徴とする画像合成装置。
  5. 【請求項5】 請求項1又は2において、 前記表面情報演算手段により演算処理される前記表面情
    報のうち少なくとも1つはテクスチャ座標であり、 前記表面情報演算手段により求められたテクスチャ座標
    に対して所定の関数演算を施してレンダリング情報を求
    める関数演算部を含み、 前記画像情報形成手段が、前記関数演算部により求めら
    れたレンダリング情報に基づいて前記透視変換表示座標
    位置における画像情報の形成を行うことを特徴とする画
    像合成装置。
  6. 【請求項6】 請求項1乃至5にいずれかにおいて、 前記レンダリング情報のうち少なくとも一種類がカラー
    情報であり、 前記画像情報形成手段が、このカラー情報を用いて前記
    透視変換表示座標位置における画像情報の形成を行うこ
    とを特徴とする画像合成装置。
  7. 【請求項7】 請求項1乃至5のいずれかにおいて、 前記レンダリング情報のうち少なくとも一種類が輝度情
    報であり、 前記画像情報形成手段が、この輝度情報を用いて前記透
    視変換表示座標位置における画像情報の形成を行うこと
    を特徴とする画像合成装置。
  8. 【請求項8】 請求項1乃至5のいずれかにおいて、 前記レンダリング情報のうち少なくとも一種類が表面形
    状情報であり、 前記画像情報形成手段が、この表面形状情報を用いて前
    記透視変換表示座標位置における画像情報の形成を行う
    ことを特徴とする画像合成装置。
  9. 【請求項9】 請求項1乃至5のいずれかにおいて、 前記レンダリング情報のうち少なくとも一種類が透明度
    情報であり、 前記画像情報形成手段が、この透明度情報を用いて前記
    透視変換表示座標位置における画像情報の形成を行うこ
    とを特徴とする画像合成装置。
  10. 【請求項10】 請求項1乃至5のいずれかにおいて、 前記レンダリング情報のうち少なくとも一種類が拡散反
    射率情報であり、 前記画像情報形成手段が、この拡散反射率情報を用いて
    前記透視変換表示座標位置における画像情報の形成を行
    うことを特徴とする画像合成装置。
  11. 【請求項11】 請求項1乃至10のいずれかにおい
    て、 前記画像情報形成手段は、 分割された各ポリゴンに共通の画像情報であるアトリビ
    ュートデータを記憶するアトリビュートデータ記憶手段
    を有し、 前記画像情報形成手段が、前記アトリビュートデータ及
    び前記表面情報に基づいて前記透視変換表示座標位置に
    おける画像情報の形成を行うことを特徴とする画像合成
    装置。
  12. 【請求項12】 請求項1乃至11のいずれかにおい
    て、 前記表示座標演算手段は、表示画面に対して手前に位置
    するポリゴンから順に演算処理を行い、 前記表示座標演算手段による演算処理が終了したドット
    に対応するアドレス位置に、演算処理の終了を示す終了
    フラッグが記憶される終了フラッグ記憶手段と、 前記終了フラッグ記憶手段から前記終了フラッグを読み
    出し、この終了フラッグに基づいて処理を行うべきドッ
    トを前記表示座標演算手段に指示する処理ドット指示手
    段とを含み、 前記処理ドット指示手段は、処理することを決定したド
    ットの終了フラッグを新たに処理が終了したドットとし
    て前記終了フラッグ記憶手段に書き戻すとともに、前記
    表示座標演算手段に対して処理することを決定したドッ
    トのみ前記演算処理を行うよう指示することで処理の高
    速化を図ることを特徴とする画像合成装置。
JP5234174A 1992-08-26 1993-08-26 画像合成装置及び画像合成方法 Expired - Lifetime JP2883523B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5234174A JP2883523B2 (ja) 1992-08-26 1993-08-26 画像合成装置及び画像合成方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP4-252139 1992-08-26
JP25213992 1992-08-26
JP5234174A JP2883523B2 (ja) 1992-08-26 1993-08-26 画像合成装置及び画像合成方法

Publications (2)

Publication Number Publication Date
JPH06266852A true JPH06266852A (ja) 1994-09-22
JP2883523B2 JP2883523B2 (ja) 1999-04-19

Family

ID=26531406

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5234174A Expired - Lifetime JP2883523B2 (ja) 1992-08-26 1993-08-26 画像合成装置及び画像合成方法

Country Status (1)

Country Link
JP (1) JP2883523B2 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5726689A (en) * 1994-10-28 1998-03-10 Mitsubishi Denki Kabushiki Kaisha Mapping apparatus and method
JP2000067265A (ja) * 1998-08-25 2000-03-03 Canon Inc 画像処理装置およびその方法
US6549202B1 (en) 1999-09-14 2003-04-15 Square Co., Ltd. Rendering method and device, a game device, and a computer readable recording medium storing programs for rendering a three-dimensional model
JP2004206672A (ja) * 2003-05-20 2004-07-22 Namco Ltd 画像処理システム、プログラム及び情報記憶媒体
KR100816622B1 (ko) * 1997-11-07 2008-03-24 가부시키가이샤 세가 화상 처리 장치 및 화상 처리 방법
US7463766B2 (en) 2001-03-01 2008-12-09 Superscape Group Plc Texturing method and apparatus
CN102598062A (zh) * 2009-05-29 2012-07-18 高通股份有限公司 具有延缓的顶点遮影的图形处理单元
CN109671017A (zh) * 2018-12-25 2019-04-23 广州励丰文化科技股份有限公司 一种基于模型的异形面投影校正方法及系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6282470A (ja) * 1985-10-04 1987-04-15 Daikin Ind Ltd Crtデイスプレイ装置の写像回路

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6282470A (ja) * 1985-10-04 1987-04-15 Daikin Ind Ltd Crtデイスプレイ装置の写像回路

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5726689A (en) * 1994-10-28 1998-03-10 Mitsubishi Denki Kabushiki Kaisha Mapping apparatus and method
KR100816622B1 (ko) * 1997-11-07 2008-03-24 가부시키가이샤 세가 화상 처리 장치 및 화상 처리 방법
JP2000067265A (ja) * 1998-08-25 2000-03-03 Canon Inc 画像処理装置およびその方法
US6549202B1 (en) 1999-09-14 2003-04-15 Square Co., Ltd. Rendering method and device, a game device, and a computer readable recording medium storing programs for rendering a three-dimensional model
US7463766B2 (en) 2001-03-01 2008-12-09 Superscape Group Plc Texturing method and apparatus
JP2004206672A (ja) * 2003-05-20 2004-07-22 Namco Ltd 画像処理システム、プログラム及び情報記憶媒体
US7295699B2 (en) 2003-05-20 2007-11-13 Namco Bandai Games Inc. Image processing system, program, information storage medium, and image processing method
CN102598062A (zh) * 2009-05-29 2012-07-18 高通股份有限公司 具有延缓的顶点遮影的图形处理单元
JP2012528410A (ja) * 2009-05-29 2012-11-12 クゥアルコム・インコーポレイテッド 遅延頂点シェーディングを用いたグラフィックス処理ユニット
CN109671017A (zh) * 2018-12-25 2019-04-23 广州励丰文化科技股份有限公司 一种基于模型的异形面投影校正方法及系统

Also Published As

Publication number Publication date
JP2883523B2 (ja) 1999-04-19

Similar Documents

Publication Publication Date Title
US5561746A (en) Image synthesizing system with surface data perspective transformation
US5307450A (en) Z-subdivision for improved texture mapping
US5786822A (en) Method and apparatus for mapping texture on an object displayed at a varying view angle from an observer
KR100261076B1 (ko) 범프 맵핑과 퐁 쉐이딩을 동시에 수행하는 렌더링방법 및 장치
US5896136A (en) Computer graphics system with improved blending
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
US5230039A (en) Texture range controls for improved texture mapping
US5357599A (en) Method and apparatus for rendering polygons
US7755626B2 (en) Cone-culled soft shadows
US5877769A (en) Image processing apparatus and method
WO2000002165A1 (fr) Procede permettant de produire des donnees de polygone et afficheur d'images utilisant lesdites donnees
JPH0916806A (ja) 立体画像処理装置
US20050017974A1 (en) System and method for shadow rendering
JPH07254072A (ja) テクスチャマッピング方法及び装置
JP3839871B2 (ja) 三角形を表わす画素データを生成する装置
WO1996028794A1 (fr) Dispositif d'affichage graphique tridimensionnel
JP2883523B2 (ja) 画像合成装置及び画像合成方法
US6373494B1 (en) Signal processing apparatus and image processing apparatus
JP3035571B2 (ja) 画像処理装置
JP3839870B2 (ja) 四辺形を表わす画素データを生成する装置および方法
JP2763481B2 (ja) 画像合成装置及び画像合成方法
EP0425573B1 (en) Texture mapping for computer graphics display controller system
Ernst et al. Hardware-supported bump mapping
JP2774874B2 (ja) 画像合成装置及び画像合成方法
JPH06238063A (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: 19990119

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

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: 20080205

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: 20090205

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090205

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100205

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100205

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100205

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110205

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110205

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120205

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120205

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120205

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130205

Year of fee payment: 14

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130205

Year of fee payment: 14

EXPY Cancellation because of completion of term