(57)【特許請求の範囲】
【請求項１】
入力されたポリゴンデータを所定形式のポリゴンデータに変換して出力するポリゴンデータ変換装置であって、
ポリゴンの頂点に与えられる頂点番号の割り振り順序を調べることで入力ポリゴンの裏表を判定する裏表判定手段と、
ポリゴンに対して左右反転処理を行うか否かを設定する情報である左右反転フラグに基づいて入力ポリゴンの頂点座標を左右反転する座標反転手段と、
前記裏表判定手段における判定結果と前記左右反転フラグに基づいてポリゴンの頂点に対する頂点番号の割り振り順序を入れ替える割り振り順序入れ替え手段と、
前記割り振り順序入れ替え手段により入れ替えられた頂点番号の割り振り順序にしたがって前記座標反転手段からの頂点座標を出力する手段とを含み、
前記左右反転フラグによりポリゴンの左右反転処理を行うように設定された場合に、前記座標反転手段が入力ポリゴンの頂点座標を左右反転するとともに、
前記割り振り順序入れ替え手段が、前記判定結果と前記左右反転フラグとの排他的論理和に基づいて頂点番号の割り振り順序を入れ替えると判断した場合には、該割り振り順序をポリゴンの裏表が反転するように入れ替えることを特徴とするポリゴンデータ変換装置。
【請求項２】
入力されたポリゴンデータを所定形式のポリゴンデータに変換して出力するポリゴンデータ変換装置であって、
ポリゴンの頂点に与えられる頂点番号の割り振り順序を調べることで入力ポリゴンの裏表を判定する裏表判定手段と、
ポリゴンに対して上下反転処理を行うか否かを設定する情報である上下反転フラグに基づいて入力ポリゴンの頂点座標を上下反転処理する座標反転手段と、
前記裏表判定手段における判定結果と前記上下反転フラグに基づいてポリゴンの頂点に対する頂点番号の割り振り順序を入れ替える割り振り順序入れ替え手段と、
前記割り振り順序入れ替え手段により入れ替えられた頂点番号の割り振り順序にしたがって前記座標反転手段からの頂点座標を出力する手段とを含み、
前記上下反転フラグによりポリゴンの上下反転処理を行うように設定された場合に、前記座標反転手段が入力ポリゴンの頂点座標を上下反転するとともに、
前記割り振り順序入れ替え手段が、前記判定結果と前記上下反転フラグとの排他的論理和に基づいて頂点番号の割り振り順序を入れ替えると判断した場合には、該割り振り順序をポリゴンの裏表が反転するように入れ替えることを特徴とするポリゴンデータ変換装置。
【請求項３】
入力されたポリゴンデータを所定形式のポリゴンデータに変換して出力するポリゴンデータ変換装置であって、
ポリゴンの頂点に与えられる頂点番号の割り振り順序を調べることで入力ポリゴンの裏表を判定する裏表判定手段と、
前記裏表判定手段における判定結果と、裏のポリゴンを出力するか否かを設定する情報である裏ポリゴン出力フラグとに基づいてポリゴンの頂点に対する頂点番号の割り振り順序を入れ替える割り振り順序入れ替え手段と、
前記割り振り順序入れ替え手段により入れ替えられた頂点番号の割り振り順序にしたがって入力ポリゴンの頂点座標を出力する手段とを含み、
前記割り振り順序入れ替え手段が、前記裏表判定手段により入力ポリゴンが裏のポリゴンであると判定され前記裏ポリゴン出力フラグにより裏のポリゴンを出力するように設定された場合に、頂点番号の割り振り順序をポリゴンの裏表が反転するように入れ替えることを特徴とするポリゴンデータ変換装置。
【請求項４】
請求項３において、
前記裏ポリゴン出力フラグが処理の対象となるポリゴン毎に設定されることを特徴とするポリゴンデータ変換装置。
【請求項５】
入力されたポリゴンデータを所定形式のポリゴンデータに変換して出力するポリゴンデータ変換装置であって、
ポリゴンの頂点に与えられる頂点番号の割り振り順序を調べることで入力ポリゴンの裏表を判定する裏表判定手段と、
ポリゴンに対して左右反転処理を行うか否かを設定する情報である左右反転フラグと、ポリゴンに対して上下反転処理を行うか否かを設定する情報である上下反転フラグとに基づいて入力ポリゴンの頂点座標の左右反転処理、上下反転処理を行う座標反転手段と、
前記裏表判定手段における判定結果と前記左右反転フラグと前記上下反転フラグとに基づいてポリゴンの頂点に対する頂点番号の割り振り順序を入れ替える割り振り順序入れ替え手段と、
前記割り振り順序入れ替え手段により入れ替えられた頂点番号の割り振り順序にしたがって前記座標反転手段からの頂点座標を出力する手段とを含み、
前記座標反転手段が、前記左右反転フラグによりポリゴンの左右反転処理を行うように設定された場合には入力ポリゴンの頂点座標を左右反転するとともに、前記上下反転フラグによりポリゴンの上下反転処理を行うように設定された場合には入力ポリゴンの頂点座標を上下反転し、
前記割り振り順序入れ替え手段が、前記裏表判定手段における判定結果と前記左右反転フラグと前記上下反転フラグとの排他的論理和に基づいて頂点番号の割り振り順序を入れ替えると判断した場合には、該割り振り順序をポリゴンの裏表が反転するように入れ替えることを特徴とするポリゴンデータ変換装置。
【請求項６】
請求項１乃至５のいずれかにおいて、
頂点の数が任意の数値である入力ポリゴンを頂点の数が前記任意の数値以下の所定数である複数のポリゴンに分割するとともに、前記割り振り順序入れ替え手段により入れ替えられた割り振り順序にしたがって前記複数のポリゴンの頂点に対して前記入力ポリゴンの頂点番号を割り当てる手段を含み、
前記出力手段が、前記頂点番号割り当て手段により割り当てられた前記頂点番号に基づいて前記入力ポリゴンの頂点座標あるいは座標反転された頂点座標を出力することを特徴とするポリゴンデータ変換装置。
【請求項７】
請求項１乃至６のいずれかのポリゴンデータ変換装置を含む３次元シミュレータ装置であって、
前記ポリゴンデータ変換装置により変換されたポリゴンデータに基づいて仮想３次元空間の任意の位置における視界画像を形成する画像形成手段を含み、
前記画像形成手段が、頂点に対する頂点番号の割り振り順序が所定の順序であるポリゴンについては前記視界画像を形成するための画像形成処理を省略することを特徴とする３次元シミュレータ装置。
【請求項８】
請求項６のポリゴンデータ変換装置を含む３次元シミュレータ装置であって、
前記ポリゴンデータ変換装置により変換されたポリゴンデータに基づいて仮想３次元空間の任意の位置における視界画像を形成する画像形成手段を含み、
前記画像形成手段が、頂点の数が前記所定数であるポリゴン以外のポリゴンについては前記視界画像を形成するための画像形成処理を省略することを特徴とする３次元シミュレータ装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、入力されたポリゴンデータを所定形式のポリゴンデータに変換して出力するポリゴンデータ変換装置及び該ポリゴンデータ変換装置が用いられる３次元シミュレータ装置に関する。
【０００２】
【従来の技術】
従来、例えば３次元ゲームあるいは飛行機及び各種乗物の操縦シュミレ―タ等に使用される３次元シミュレータ装置として種々のものが知られている。このような３次元シミュレータ装置では、図２３（Ａ）に示す３次元物体３００に関する画像情報が、あらかじめ装置に記憶されている。ここで、この３次元物体３００は、プレーヤ３０２がスクリーン３０６を介して見ることができる風景等を表すものである。そして、この風景等を表す３次元物体３００の画像情報をスクリーン３０６上に透視投影変換することにより疑似３次元画像３０８をスクリーン３０６上に画像表示している。この装置では、プレーヤ３０２が、操作パネル３０４により回転、並進等の操作を行うと、この操作信号に基づいて所定の３次元演算処理が行われる。具体的には、まず、操作信号によりプレーヤ３０２の視点位置、視線方向あるいはプレーヤ３０２の搭乗する移動体の位置、方向等がどのように変化するかを求める演算処理が行われる。次に、この視点位置、視線方向等の変化に伴い、３次元物体３００の画像がスクリーン３０６上でどのように見えるかを求める演算処理が行われる。そして、以上の演算処理はプレーヤ３０２の操作に追従してリアルタイムで行われる。これによりプレーヤ３０２は、自身の視点位置、視線方向の変化あるいは自身の搭乗する移動体の位置、方向の変化に伴う風景等の変化を疑似３次画像としてリアルタイムに見ることが可能となり、仮想的な３次元空間を疑似体験できることとなる。
【０００３】
図２３（Ｂ）には、以上のような３次元シミュレータ装置により形成される表示画面の一例が示される。
【０００４】
【発明が解決しようとする課題】
さて、ドライビングゲーム、ドライビングシミュレータ等において、図２３（Ｂ）に示す表示画面（メイン画面）上にバックミラー、サイドミラー等のサブ画面を形成できれば、ゲームあるいはシミュレーションのリアル性を高めることができる。
【０００５】
この場合、ゲーム等のリアル性をより高めるためには、バックミラー等にも、メイン画面と同様にリアルな疑似３次元画像を表示することが望ましい。そのためには、まずプレーヤの視点位置から後ろ向き方向の視界画像を求める必要がある。そして、この後ろ向き方向の視界画像を鏡に映した画像、即ち、この視界画像に対して左右反転処理を行った画像を求め、この画像をバックミラーの画像としてメイン画面上に映し出す必要がある。
【０００６】
さて、図２３（Ａ）で説明した３次元シミュレータ装置では、３次元物体をポリゴン(1) 〜(6) （(4) 〜(6) は図示せず）に分割して視界画像の合成を行っている。そして、このような３次元シミュレータ装置には、１フレーム内、例えば１／６０秒内に画像合成のための演算処理を完了しなければならないという制約がある。このため、画像合成に必要な演算処理量を軽減すべく、表ポリゴンのみを描画し裏ポリゴンについては描画しないハードウェアとするのが一般的である。ここで、表ポリゴンとは、視点から見て表向きのポリゴンをいい、裏ポリゴンとは、視点から見て裏向きのポリゴンをいう。表ポリゴンか裏ポリゴンか否かは、ポリゴンの頂点に与えられる頂点番号の割り振り順序により判断される。例えば、頂点番号の割り振り順序が反時計周りの場合は表ポリゴンと判断され、時計回りの場合は裏ポリゴンと判断される（この逆でもかまわない）。
【０００７】
ところが、ポリゴンの表ポリゴンのみを描画するハードウェアにおいては、バックミラーをメイン画面上に形成すべく上記のように視界画像の左右反転処理を行うと、表ポリゴンが裏ポリゴンになってしまい当該ポリゴンが描画されなくなるという問題が生じた。演算処理の負担を軽減し、装置の低コスト化を図るためには、表ポリゴンのみを描画し裏ポリゴンは描画しないようなハードウェア構成とする必要がある。従って、このような低コスト化可能のハードウェア構成において、如何にしてメイン画面上に正常なバックミラー画像を形成するかが大きな技術的課題となる。
【０００８】
また、ゲームによっては、裏ポリゴンについても表示できることが望ましいケースも考えられる。例えば、風船玉のような閉じた空間にプレーヤの操作する移動体が突入するようなケースを考える。このような場合、表ポリゴンしか描画しないハードウェアにおいては、風船玉の内部については描画されないことになるため、移動体が風船玉等の閉じた空間に突入した瞬間にプレーヤの周りには何も表示されないという事態が生じてしまう。このような事態を回避するためには、例えば風船玉の内部にも風船の内部を全て覆うように別のポリゴンを配置しておく構成とする必要がある。しかし、このような構成とすると必要とされるポリゴンの数が２倍となってしまい、画像処理の高速化、装置の小規模化、低コスト化の妨げとなる。
【０００９】
更に、図２３（Ａ）に示すような３次元シミュレーション装置では、透視投影変換を行う前にクリッピングと呼ばれる処理が行われる。そして、このクリッピング処理が行われると、クリッピング面の境界にあるポリゴンが四角形以外の多角形に変形してしまい、この変形したポリゴンを例えば四角形のポリゴンに変換してやる必要がある。そして、このような変換を行う際に、元のポリゴンが持っていた裏表情報をどのように変換後のポリゴンに伝えるかが大きな技術的課題となる。
【００１０】
本発明は、以上のような技術的課題を解決するためになされたものであり、その目的とするところは、裏ポリゴンを描画しないようなハードウェア等を有効利用できるポリゴンデータ変換装置及び該ポリゴンデータ変換装置を含む３次元シミュレータ装置を提供するところにある。
【００１１】
【課題を解決するための手段及び作用】
上記課題を解決するために請求項１の発明は、入力されたポリゴンデータを所定形式のポリゴンデータに変換して出力するポリゴンデータ変換装置であって、ポリゴンに対して左右反転処理を行うか否かを設定する情報である左右反転フラグに基づいて入力ポリゴンの頂点座標の左右反転処理を行う座標反転手段と、前記左右反転フラグに基づいてポリゴンの頂点に対する頂点番号の割り振り順序を入れ替える手段と、
前記割り振り順序入れ替え手段により入れ替えられた頂点番号の割り振り順序にしたがって前記座標反転手段からの頂点座標を出力する手段とを含み、
前記左右反転フラグによりポリゴンの左右反転処理を行うように設定された場合に、前記座標反転手段が入力ポリゴンの頂点座標を左右反転するとともに、前記割り振り順序入れ替え手段が頂点番号の割り振り順序をポリゴンの裏表が反転するように入れ替えることを特徴とする。
【００１２】
請求項１の発明によれば、座標反転手段が、左右反転フラグに基づいて入力ポリゴンの頂点座標の反転処理を行う。また、割り振り順序入れ替え手段が、左右反転フラグに基づいて頂点番号の割り振り順序の入れ替え処理を行う。そして、入れ替えられた割り振り順序にしたがって座標反転手段から頂点座標が出力される。即ち、左右反転フラグが立つと、座標反転手段により入力ポリゴンの頂点座標が左右反転されるとともに、頂点番号の割り振り順序がポリゴンの裏表が反転するように入れ替えられる。これにより、左右反転されて裏ポリゴンとなってしまったポリゴンについても、表ポリゴンとして出力することが可能となる。
【００１３】
また、請求項２の発明は、入力されたポリゴンデータを所定形式のポリゴンデータに変換して出力するポリゴンデータ変換装置であって、
ポリゴンに対して上下反転処理を行うか否かを設定する情報である上下反転フラグに基づいて入力ポリゴンの頂点座標の上下反転処理を行う座標反転手段と、前記上下反転フラグに基づいてポリゴンの頂点に対する頂点番号の割り振り順序を入れ替える手段と、
前記割り振り順序入れ替え手段により入れ替えられた頂点番号の割り振り順序にしたがって前記座標反転手段からの頂点座標を出力する手段とを含み、
前記上下反転フラグによりポリゴンの上下反転処理を行うように設定された場合に、前記座標反転手段が入力ポリゴンの頂点座標を上下反転するとともに、前記割り振り順序入れ替え手段が頂点番号の割り振り順序をポリゴンの裏表が反転するように入れ替えることを特徴とする。
【００１４】
請求項２の発明によれば、上下反転フラグが立つと、座標反転手段により入力ポリゴンの頂点座標が上下反転され、頂点番号の割り振り順序がポリゴンの裏表が反転するように入れ替えられる。これにより、上下反転されて裏ポリゴンとなってしまったポリゴンについても、表ポリゴンとして出力することが可能となる。
【００１５】
また、請求項３の発明は、入力されたポリゴンデータを所定形式のポリゴンデータに変換して出力するポリゴンデータ変換装置であって、
ポリゴンの頂点に与えられる頂点番号の割り振り順序を調べることで入力ポリゴンの裏表を判定する手段と、
前記裏表判定手段における判定結果と、裏のポリゴンを出力するか否かを設定する情報である裏ポリゴン出力フラグとに基づいてポリゴンの頂点に対する頂点番号の割り振り順序を入れ替える手段と、
前記割り振り順序入れ替え手段により入れ替えられた頂点番号の割り振り順序にしたがって入力ポリゴンの頂点座標を出力する手段とを含み、
前記割り振り順序入れ替え手段が、前記裏表判定手段により入力ポリゴンが裏のポリゴンであると判定され前記裏ポリゴン出力フラグにより裏のポリゴンを出力するように設定された場合に、頂点番号の割り振り順序をポリゴンの裏表が反転するように入れ替えることを特徴とする。
【００１６】
請求項３の発明によれば、裏表判定手段が、頂点番号の割り振り順序を調べることで入力ポリゴンの裏表の判定を行う。また、割り振り順序入れ替え手段が、この判定結果と裏ポリゴン出力フラグとに基づいて頂点番号の入れ替えを行う。そして、入れ替えられた割り振り順序にしたがって入力ポリゴンの頂点座標が出力される。即ち、裏ポリゴン出力フラグが立っていると、裏表判定手段により入力ポリゴンが裏ポリゴンと判定されても、頂点番号の割り振り順序がポリゴンの裏表が反転するように入れ替えられる。これにより、裏ポリゴンであても、裏ポリゴン出力フラグが立っている限り、表ポリゴンとして出力することが可能となる。
【００１７】
また、請求項４の発明は、請求項３において、前記裏ポリゴン出力フラグが処理の対象となるポリゴン毎に設定されることを特徴とする。
【００１８】
請求項４の発明によれば、ポリゴン毎に裏ポリゴン出力フラグが設定される。即ち、ポリゴン毎に、該ポリゴンが裏であっても出力するという設定を行うことが可能となる。
【００１９】
また、請求項５の発明は、入力されたポリゴンデータを所定形式のポリゴンデータに変換して出力するポリゴンデータ変換装置であって、
ポリゴンの頂点に与えられる頂点番号の割り振り順序を調べることで入力ポリゴンの裏表を判定する手段と、
ポリゴンに対して左右反転処理を行うか否かを設定する情報である左右反転フラグと、ポリゴンに対して上下反転処理を行うか否かを設定する情報である上下反転フラグとに基づいて入力ポリゴンの頂点座標の左右反転処理、上下反転処理を行う座標反転手段と、
前記裏表判定手段における判定結果と前記左右反転フラグと前記上下反転フラグとに基づいてポリゴンの頂点に対する頂点番号の割り振り順序を入れ替える手段と、
前記割り振り順序入れ替え手段により入れ替えられた頂点番号の割り振り順序にしたがって前記座標反転手段からの頂点座標を出力する手段とを含み、
前記座標反転手段が、前記左右反転フラグによりポリゴンの左右反転処理を行うように設定された場合には入力ポリゴンの頂点座標を左右反転するとともに、前記上下反転フラグによりポリゴンの上下反転処理を行うように設定された場合には入力ポリゴンの頂点座標を上下反転し、
前記割り振り順序入れ替え手段が、前記裏表判定手段における判定結果と前記左右反転フラグと前記上下反転フラグとの排他的論理和に基づいて頂点番号の割り振り順序を入れ替えると判断した場合には、該割り振り順序をポリゴンの裏表が反転するように入れ替えることを特徴とする。
【００２０】
請求項５の発明によれば、裏表判定手段が、頂点番号の割り振り順序を調べることで入力ポリゴンの裏表の判定を行う。また、座標反転手段が、左右反転フラグ、上下反転フラグに基づいて入力ポリゴンの頂点座標の反転処理を行う。また、割り振り順序入れ替え手段が、上記判定結果と左右反転フラグと上下反転フラグとに基づいて頂点番号の入れ替えを行う。そして、入れ替えられた割り振り順序にしたがって入力ポリゴンの頂点座標が出力される。即ち、左右反転フラグ、上下判定フラグが立つと、座標反転手段により入力ポリゴンの頂点座標が左右反転上下反転される。また、裏表判定手段からの判定結果である裏判定フラグと左右反転フラグと上下反転フラグとの排他的論理和がとられ、フラグの立つ個数が奇数の場合には、頂点番号の割り振り順序がポリゴンの裏表が反転するように入れ替えられる。これにより、左右反転、上下反転されて裏ポリゴンとなってしまったポリゴンについても、表ポリゴンとして出力することが可能となる。
【００２１】
また、請求項６の発明は、請求項１乃至５のいずれかにおいて、頂点の数が任意である入力ポリゴンを頂点の数が所定数である１又は複数のポリゴンに分割するとともに、前記割り振り順序入れ替え手段により入れ替えられた割り振り順序にしたがって前記１又は複数のポリゴンの頂点に対して前記入力ポリゴンの頂点番号を割り当てる手段を含み、
前記出力手段が、前記頂点番号割り当て手段により割り当てられた前記頂点番号に基づいて前記入力ポリゴンの頂点座標あるいは座標反転された頂点座標を出力することを特徴とする。
【００２２】
請求項６の発明によれば、任意の頂点数を持つ入力ポリゴンが、頂点の数が所定数のポリゴン、例えば四角形のポリゴンに分割される。そして、入れ替えられた割り振り順序にしたがって分割ポリゴンの頂点に対して入力ポリゴンの頂点番号が割り当てられる。そして、この割り当てられた頂点番号に基づいて入力ポリゴンの頂点座標、座標反転された頂点座標が出力される。これにより、クリッピング処理等により例えば四角形以外の多角形に変形されたポリゴンを、例えば四角形のポリゴンに分割することが可能となる。そして、この分割されたポリゴンに対して、一度に頂点番号の入れ替え処理を行うことが可能となる。
【００２３】
また、請求項７の発明は、請求項６において、前記頂点番号割り当て手段が、前記入力ポリゴンの頂点の数が奇数である場合には、頂点数が前記所定数に満たないポリゴンの頂点の中で頂点数が所定数に満たないため頂点番号を割り当てられない頂点に対して、入力ポリゴンの第１番目の頂点番号を割り当てることを特徴とする。
【００２４】
請求項７の発明によれば、入力ポリゴンを例えば四角形に分割していった場合において、入力ポリゴンの頂点数が奇数であるため四角形に分割できず、最後のポリゴンが三角形となってしまった場合には、頂点番号を割り当てられない最後の頂点に対して頂点番号１が設定される。これにより、実際には例えば三角形であるポリゴンを四角形のポリゴンとして後段のハードウェアに対して出力することが可能となる。
【００２５】
また、請求項８の発明は、請求項１乃至７のいずれかのポリゴンデータ変換装置を含む３次元シミュレータ装置であって、
前記ポリゴンデータ変換装置により変換されたポリゴンデータに基づいて仮想３次元空間の任意の位置における視界画像を形成する画像形成手段を含み、
前記画像形成手段が、頂点に対する頂点番号の割り振り順序が所定の順序であるポリゴンについては前記視界画像を形成するための画像形成処理を省略することを特徴とする。
【００２６】
請求項８の発明によれば、ポリゴンデータ変換装置により変換されたポリゴンデータに基づいて仮想３次元空間の任意の位置における視界画像が形成される。そして、頂点番号の割り振り順序が所定の順序であるポリゴン、例えば裏ポリゴンについては画像形成処理が省略される。従って、例えば左右反転処理等されて裏ポリゴンとなった場合には、通常は裏ポリゴンの描画処理が省略されることになる。しかし、ポリゴンデータ変換装置により頂点番号の割り振り順序をポリゴンの裏表が反転するように入れ替えることができるため、裏ポリゴンであっても表ポリゴンとして出力することが可能となる。
【００２７】
また、請求項９の発明は、請求項６又は７のいずれかのポリゴンデータ変換装置を含む３次元シミュレータ装置であって、
前記ポリゴンデータ変換装置により変換されたポリゴンデータに基づいて仮想３次元空間の任意の位置における視界画像を形成する画像形成手段を含み、
前記画像形成手段が、頂点の数が前記所定数であるポリゴン以外のポリゴンについては前記視界画像を形成するための画像形成処理を省略することを特徴とする。
【００２８】
請求項９の発明によれば、ポリゴンデータ変換装置により変換されたポリゴンデータに基づいて仮想３次元空間の任意の位置における視界画像が形成される。そして、頂点数が所定数であるポリゴン、例えば四角形のポリゴン以外のポリゴンについては描画処理が省略される。従って、例えばクリッピング処理等により四角形以外の多角形に変形したポリゴンが画像形成手段に入力されると画像形成処理が省略されることになる。しかし、ポリゴンデータ変換装置により、この多角形に変形されたポリゴンを例えば四角形のポリゴンに分割することができるため、このように変形されたポリゴンについても描画処理を行えることになる。
【００２９】
【実施例】
Ａ．第１の実施例
図１には、本発明の第１の実施例に係るポリゴンデータ変換装置のブロック図の一例が示される。
【００３０】
図１に示すように、このポリゴンデータ変換装置は、全体コントロール部４００、入力コントロール部４０２、出力コントロール部４０４、設定メモリ４０６、裏表判定部４０８、座標反転部４１０、データメモリ４１２、排他的論理和部４１４、割り振り順序入れ替え部４２０、頂点番号割り当て部４２２、実アドレス生成部４２６を含む。このポリゴンデータ変換装置は、設定メモリ４０６等に設定された情報に基づいて、入力されたポリゴンデータに対して座標反転処理、頂点番号の割り振り順序入れ替え処理を施し、出力ポリゴンデータとして出力するものである。
【００３１】
ここで、全体コントロール部４００は装置全体を制御する機能を有するものであり、全体設定信号等が入力され、ＣＮＴ（コントロール）信号等で入力コントロール部４０２、出力コントロール部４０４、設定メモリ４０６等の制御を行う。
【００３２】
また、入力コントロール部４０２は、ポリゴンデータの入力をコントロールする機能を有するものであり、装置の外部から入力イネーブルが入力され、裏表判定部駆動信号、メモリ書込アドレス等により裏表判定部４０８、データメモリ４１２等の制御を行う。更に、入力コントロール部４０２は、入力ポリゴンデータから得られる入力ポリゴン頂点数を出力コントロール部４０４、頂点番号割り当て部４２２に出力している。
【００３３】
出力コントロール部４０４は、ポリゴンデータの出力を制御する機能を有するものであり、裏判定フラグがアサートされた時（アクティブの時）、裏ポリゴン出力フラグの設定によってポリゴンデータを出力しない、あるいは裏ポリゴンを表にして出力する等の制御を行っている。そして、この制御を行うために、出力コントロール部４０４には裏判定フラグ（裏表判定部４０８の出力）、裏ポリゴン出力フラグ（入力ポリゴンデータのヘッダ情報に含まれる）が入力されるとともに、割り振り順序入れ替え部４２０に割り振り順序を、頂点番号割り当て部４２２に分割ポリゴンナンバーを、実アドレス生成部４２６に実アドレスを生成するための情報を出力している。また、装置の外部に対して出力イネーブルを出力している。
【００３４】
設定メモリ４０６には、左右反転フラグ、上下反転フラグが記憶されており、この左右反転フラグ、上下反転フラグは、座標反転部４１０、排他的論理和部４１４に出力される。
【００３５】
裏表判定部４０８は、入力されたポリゴンが裏か表かを判定して、判定結果を裏判定フラグとして出力する（裏判定フラグは、入力ポリゴンが裏の時に”１”となる）。このポリゴンの裏表判定は、ポリゴンの頂点座標（Ｘ、Ｙ）の外積を計算し、この外積のＺ座標成分の正負を求めることで行っている。具体的には、本装置には透視投影変換処理を施した後の２次元のポリゴンが入力されており、ポリゴンの頂点座標（Ｘ、Ｙ）は、図２（Ａ）に示すようなスクリーン座標系上の座標となっている。そして、このスクリーン座標系から奥へ向かう方向がＺ座標となっているため、頂点座標の外積を求め、この外積のＺ座標成分の正負を求めることでポリゴンの裏表を判定することができる。これはポリゴン面の法線ベクトルの向きを求めることに相当する。
【００３６】
座標反転部４１０は、設定メモリ４０６に設定された左右反転フラグ、上下反転のフラグに従い、入力ポリゴンデータの頂点座標を反転する機能を有する。具体的には、これらのフラグが”０”か”１”かで（フラグは全て正論理）、図２（Ｂ）に示すようにして頂点座標（Ｘ、Ｙ）の反転を行う。例えば、左右反転フラグが”１”となると頂点座標Ｘの正負が反転し、上下反転フラグが”１”となると頂点座標Ｙがの正負が反転する。
【００３７】
データメモリ４１２には、入力コントロール部４０２からのメモリ書き込みアドレスにしたがって、座標反転部４１０を介して入力ポリゴンデータが格納され、一時的に蓄えられる。この場合、データメモリ４１２には、座標反転部４１０により座標反転が行われると反転された頂点座標が格納され、座標反転が行われないと反転されない頂点座標が格納される。また、ポリゴンの各頂点に頂点輝度情報、頂点テクスチャ座標が与えられている場合には、これらの頂点輝度情報、頂点テクスチャ座標も格納される。
【００３８】
排他的論理和部４１４は、裏表判定フラグ、左右反転フラグ、上下反転フラグの排他的論理和をとり、これを（割り振り順序）入れ替えフラグとして出力するものであり、２入力のＥＸＯＲ回路４１６、４１８を含む。図３（Ａ）には、この３入力の排他的論理和の真理値表が示される。例えば、ポリゴンが表と判定され、かつ左右反転処理、上下反転処理をともに行わない場合は（裏判定フラグ＝０、左右反転フラグ＝０、上下反転フラグ＝０）、ポリゴンの頂点への頂点番号の割り振り順序を入れ替える必要がないため、入れ替えフラグ＝０となる。一方、ポリゴンが裏と判定され、かつ左右反転処理、上下反転処理をともに行なわない場合は（裏判定フラグ＝１、左右反転フラグ＝０、上下反転フラグ＝０）、裏ポリゴン出力フラグの設定によっては割り振り順序を入れ替える必要性が生じるので、入れ替えフラグ＝１となる。更に、ポリゴンが裏と判定され、かつ左右反転処理を行い、上下反転処理を行なわない場合は（裏判定フラグ＝１、左右反転フラグ＝１、上下反転フラグ＝０）、頂点番号の割り振り順序は結局もとに戻ることになるため、入れ替えフラグ＝０となる。他の場合も図３（Ａ）に示すように同様となり、フラグの立つ個数が偶数の場合は入れ替えフラグ＝０となり、奇数の場合は入れ替えフラグ＝１となる。
【００３９】
割り振り順序入れ替え部４２０は、排他的論理和部４１４からの入れ替えフラグにしたがって、出力コントロール部４０４から入力される割り振り順序（例えば１、２、３、４）を入れ替える機能を有する。即ち、図３（Ｂ）に示すように、入れ替えフラグ＝０の場合には、出力コントロール部４０４から入力される割り振り順序は（１、２、３、４）のまま変化せずに頂点番号割り当て部４２２に出力される。これに対して、入れ替えフラグ＝１の場合には、割り振り順序は（１、２、３、４）から（１、４、３、２）に入れ替えられて頂点番号割り当て部４２２に出力される。
【００４０】
なお、本実施例においては、ポリゴンデータ変換装置がクリッピング処理により変形されたＮ角形（Ｎは３以上の整数）の入力ポリゴンを、四角形のポリゴンに変換して出力する場合について説明している。これに対して、Ｎ角形のポリゴンを例えば三角形のポリゴンに変換して出力する場合には、出力コントロール部４０４からは割り振り順序（１、２、３）が入力され、割り振り順序入れ替え部４２０は、これを（１、２、３）のまま頂点番号割り当て部４２２に出力する、あるいは、（１、３、２）に入れ替えて頂点番号割り当て部４２２に出力することになる。
【００４１】
頂点番号割り当て部４２２は、ポリゴン分割部４２４を含んでいる。そして、Ｎ角形の入力ポリゴンを、頂点数が所定数の１又は複数のポリゴン、即ち１又は複数の四角形のポリゴンに分割するとともに、割り振り順序入れ替え部４２０から入力される入れ替え済み割り振り順序にしたがって、分割された四角形のポリゴンの頂点に対して入力ポリゴンの頂点番号を割り当てる機能を有する。
【００４２】
次に、図４（Ａ）、（Ｂ）、図５（Ａ）、（Ｂ）を用いて、頂点番号割り当て部４２２において行われる処理について説明する。頂点番号割り当て部４２２には、入れ替え済み割り当て順序、分割ポリゴンナンバ、入力ポリゴンの頂点数が入力され、割り当て頂点番号が出力される。ここで、分割ポリゴンナンバは、図４（Ａ）、（Ｂ）に示されるように、現在処理を行っているポリゴンが何枚目の分割ポリゴンであるかを示すものである。また、割り当て頂点番号は、分割されたポリゴンに対して入力ポリゴンのどの頂点番号を割り当てるかを示すものである。
【００４３】
今、ｎは自然数でかつ２以上とする。また、入れ替え済み割り振り順序をＡＳＥＱ（１〜４）とし、分割ポリゴンナンバをＤＰＮ（１〜）とし、入力ポリゴン頂点数をＮＵＭＶ（３以上の自然数）とし、求める割り当て頂点番号をＶＮとする。
【００４４】
まず、ＮＵＭＶ＝２ｎの場合（４，６，８，１０・・・角形の時）を考える。この場合には、ＤＰＮは１から（ＮＵＭＶ−２）／２へと１つずつ順次変化することになる。即ち、この場合、出力されるポリゴンは（（ＮＵＭＶ−２）／２）枚となり、例えば図４（Ａ）、（Ｂ）に示す六角形の場合は２枚となる。このＤＰＮは、出力コントロール部４０４で計算される。
【００４５】
さて、ＮＵＭＶ＝２ｎの時、即ち入力ポリゴンの頂点数が偶数の場合、割り当て頂点番号ＶＮは頂点番号割り当て部４２２により以下の演算式にしたがって演算される。
【００４６】
ＶＮ  ＝  １                （ＡＳＥＱ  ＝  １の時）
ＶＮ  ＝  ＤＰＮ×２        （ＡＳＥＱ  ＝  ２の時）
ＶＮ  ＝  ＤＰＮ×２  ＋１  （ＡＳＥＱ  ＝  ３の時）
ＶＮ  ＝  ＤＰＮ×２  ＋２  （ＡＳＥＱ  ＝  ４の時）
図４（Ａ）には、割り振り順序ＡＳＥＱが入れ替わっていない場合の上記の演算式にしたがった演算結果が示される。即ち、図４（Ａ）において、まず、ＤＰＮ＝１となり、分割ポリゴンＡのＶＮが演算される。この場合には、ＶＮは上式にしたがって、（１、２、３、４）となる。つまり、分割ポリゴンＡの頂点に対しては、元の入力ポリゴンの頂点番号（１、２、３、４）が割り当てられることになる。次に、ＤＰＮ＝２となり、分割ポリゴンＢのＶＮが演算される。この場合には、ＶＮは上式にしたがって、（１、４、５、６）となる。つまり、分割ポリゴンＢの頂点に対しては、元の入力ポリゴンの頂点番号（１、４、５、６）が割り当てられることになる。
【００４７】
図４（Ｂ）には、割り振り順序ＡＳＥＱが入れ替わった場合の演算結果が示される。この場合、図４（Ａ）と異なり割り振り順序ＡＳＥＱが（１、２、３、４）から（１、４、３、２）に入れ替わっている。即ち、割り振り順序がポリゴンの裏表を反転するように入れ替わっている。そして、まず、ＤＰＮ＝１としてＶＮが演算され、分割ポリゴンＡの頂点に対して割り当てる元の入力ポリゴンの頂点番号が（１、４、３、２）とされる。次に、ＤＰＮ＝２としてＶＮが演算され、分割ポリゴンＢの頂点に対して割り当てる元の入力ポリゴンの頂点番号が（１、６、５、４）とされる。以上より、図４（Ｂ）に示すように、裏向きとなったポリゴンを構成する全ての分割ポリゴンＡ、Ｂについて、頂点番号の割り振り順序を反時計回りにすることが可能となり、表ポリゴンとして出力することが可能となる。
【００４８】
次に、ＮＵＭＶ＝２ｎ−１の場合（３，５，７，９・・・角形の時）を考える。この場合には、ＤＰＮは１から（ＮＵＭＶ−１）／２へと１つずつ順次変化することになる。即ち、この場合、出力されるポリゴンは（（ＮＵＭＶ−１）／２）枚となり、例えば図５（Ａ）、（Ｂ）に示す７角形の場合は３枚となる。
【００４９】
さて、ＮＵＭＶ＝２ｎ−１の時、即ち入力ポリゴンの頂点数が奇数の場合、割り当て頂点番号ＶＮは頂点番号割り当て部４２２により以下の演算式にしたがって演算される。
【００５０】
0003638637.tif 000002
図５（Ａ）には、割り振り順序ＡＳＥＱが入れ替わっていない場合の演算結果が示される。まず、ＤＰＮ＝１としてＶＮが演算され、分割ポリゴンＡの頂点に対して割り当てる元の入力ポリゴンの頂点番号が（１、２、３、４）とされる。次に、ＤＰＮ＝２としてＶＮが演算され、分割ポリゴンＢの頂点に対して割り当てる元の入力ポリゴンの頂点番号が（１、４、５、６）とされる。
【００５１】
最後に、ＤＰＮ＝３としてＶＮが演算される。この場合、ＤＰＮ＝（ＮＵＭＶ−１）／２＝３であるため、上式より、分割ポリゴンＣの４頂点目の頂点番号はＶＮ＝１となる。即ち、この場合には、分割ポリゴンＣの頂点数は所定数である４に満たなく、分割ポリゴンＣは三角形となる。従って、このままでは分割ポリゴンの頂点に対して頂点番号を割り当てられなくなるため、分割ポリゴンの４頂点目の頂点に対して入力ポリゴンの第１番目の頂点番号である１を割り当てる。これにより、分割ポリゴンＣの頂点に対して割り当てる元の入力ポリゴンの頂点番号が（１、６、７、１）とされる。本ポリゴンデータ変換装置では、このように実際には三角形であるポリゴンを、四角形のポリゴンとして後段の画像形成部に出力している。本実施例においては、後段にある画像形成部を四角形のポリゴンのみを描画できるハードウェア構成として描画処理の単純化を図っている。従って、このようなハードウェア構成の画像形成部であっても、本ポリゴンデータ変換装置によれば、三角形のポリゴンを四角形のポリゴンに見せかけることで、正常な動作を保証できることになる。
【００５２】
図５（Ｂ）には、割り振り順序ＡＳＥＱが入れ替わった場合の演算結果が示される。まず、ＤＰＮ＝１としてＶＮが演算され、分割ポリゴンＡの頂点に対して割り当てる元の入力ポリゴンの頂点番号が（１、４、３、２）とされる。次に、ＤＰＮ＝２としてＶＮが演算され、分割ポリゴンＢの頂点に対して割り当てる元の入力ポリゴンの頂点番号が（１、６、５、４）とされる。最後に、ＤＰＮ＝３としてＶＮが演算され、分割ポリゴンＣの頂点に対して割り当てる元の入力ポリゴンの頂点番号が（１、７、６、１）とされる。以上より、図５（Ｂ）に示すように、裏向きとなったポリゴンを構成する全ての分割ポリゴンＡ、Ｂ、Ｃについて、頂点番号の割り振り順序を反時計回りにすることが可能となり、表ポリゴンとして出力することが可能となる。
【００５３】
以上のようにして、頂点番号割り当て部４２２では、クリッピング処理等で頂点数が変化した入力ポリゴンを、頂点数が所定数のポリゴン、即ちに四角形のポリゴンに分割するのと同時に、入れ替え済みの割り振り順序にしたがって元の入力ポリゴンの頂点番号を分割ポリゴンの頂点に割り当てることが可能となる。
【００５４】
実アドレス生成部４２６では、頂点番号割り当て部４２４からの割り当て頂点番号に基づいて、メモリ上の実アドレスが生成される。この場合、出力コントロール部４０４からは、実アドレス生成に必要な情報が入力されることになる。実アドレス生成部４２６から出力されたメモリ読み出しアドレスは、データメモリ４１２に入力され、このメモリ読み出しアドレスによって該当する（割り当て頂点番号により指定される）入力ポリゴンの頂点座標が読み出される。この場合、例えば座標反転部４１０により左右反転、上下反転処理が行われている場合には、左右反転、上下反転された頂点座標が読み出されることになる。また、入力ポリゴンデータに頂点輝度情報、頂点テクスチャ座標が含まれている場合には、これらの情報も読み出され、出力ポリゴンデータとして出力されることになる。
【００５５】
なお、図６には、本ポリゴンデータ変換装置に入力されるポリゴンデータの基本的フォーマットが示される。同図に示すように、このポリゴンデータは、ヘッダ情報と、頂点輝度情報と、頂点テクスチャ座標と、頂点座標とを含む。但し、頂点輝度情報、頂点テクスチャ座標を含ませるか否かは任意である。また、ヘッダ情報には、裏のポリゴンを出力するか否かを設定する情報である裏ポリゴン出力フラグと、頂点輝度情報の有無、頂点テクスチャ座標の有無を指定する情報と、入力ポリゴンの頂点数情報等が含まれる。このように、本実施例によれば、裏ポリゴン出力フラグがポリゴンデータに含まれるため、ポリゴン毎に裏ポリゴン出力フラグを設定できることになる。即ち、ポリゴン毎に、該ポリゴンが裏であっても出力するという設定を行うことができる。全てのポリゴンについて裏ポリゴンを描画するようにすると、演算処理の負担が余りに大きくなる。従って、このような場合に、裏ポリゴン出力フラグにより必要なポリゴンのみ裏を表示し、他のポリゴンは裏を表示しないようにすれば、特殊の映像効果を出しながらも演算処理の負担を軽減できることになる。但し、この裏ポリゴン出力フラグをポリゴン毎にではなく、画面に表示する全てのポリゴンに対して設定することも可能である。
【００５６】
次に、本実施例の動作について図７（Ａ）、（Ｂ）を用いて簡単に説明する。
【００５７】
まず、イニシャライズにより、装置全体の初期設定が行われる。この際に、設定メモリ４０６等に必要な情報が書き込まれる。
【００５８】
次に、ポリゴンデータの入力が開始される。すると、図７（Ａ）に示すように、入力コントロール部４０２が生成する書き込みアドレスにしたがい、入力イネーブルのタイミングで入力ポリゴンデータがデータメモリ４１２に書き込まれる。この時、同時に裏表判定部４０８に入力ポリゴンデータが入力され、裏表の判定が行われる。また、入力ポリゴンデータは、入力コントロール部４０２にも入力され、これにより入力ポリゴン頂点数、裏ポリゴン出力フラグ等の情報が読み込まれる。この入力ポリゴン頂点数は、出力コントロール部４０４、頂点番号割り当て部４２２に出力され、裏ポリゴン出力フラグは、出力コントロール部４０４に出力される。このようにして全ての入力が完了すると、入力コントロール部４０２は、入力完了フラグを全体コントロール部４００に出力する。そして、全体コントロール部４００は、この入力完了フラグを受け取ると、今度は、出力コントロール部４０４を動作させる。
【００５９】
出力コントロール部４０４は、出力が必要な場合は、入力ポリゴンの頂点数にしたがい割り振り順序を１、２、３、４と変化させながら、分割ポリゴンナンバを１ずつ変化させる。この分割ポリゴンナンバは１からポリゴンの分割数まで１づつ変化することになる。この様子が図７（Ｂ）に示される。一方、出力が必要でない場合は、出力コントロール部４０４は出力完了フラグを全体コントロール部４００に出力し、これにより動作を終了する。このような場合としては、例えば裏ポリゴン出力フラグにより裏ポリゴンは出力しないと判断された場合が考えられる。
【００６０】
裏判定フラグ、左右反転フラグ、上下反転フラグは、３入力の排他的論理和部４１４に入力され、図３（Ａ）の真理値表にしたがった入れ替えフラグが形成される。これにより、ポリゴンが裏で、かつ左右反転、上下反転ともに行なわれない場合は、割り振り順序の入れ替えを行なう。また、ポリゴンが表で、左右反転を行い、上下反転を行なわない場合も、割り振り順序の入れ替えを行なう。また他の場合においても、図３（Ａ）、（Ｂ）の真理値表に従って、割り振り順序の入れ替えが行なわれる。
【００６１】
これにより得られた入れ替え済み割り振り順序は、頂点番号割り当て部４２２、実アドレス生成部４２６を介して、メモリの読み出しアドレスとなる。これによりポリゴンは分割され、裏表も正しく出力されることになる。この時、実アドレス生成部４２６に必要な情報を送ることにより、頂点輝度情報や、頂点テクスチャ座標等についても、正しく出力することが可能となる。
【００６２】
図８（Ａ）、（Ｂ）には、本実施例のポリゴンデータ変換装置を用いて「旗」についての画像合成を行った場合の表示画面の一例が示される。図８（Ａ）は、「旗」の表側を見た場合の表示画面であり、図８（Ｂ）は、旗の裏側を見た場合の表示画面である。このように、本実施例によれば、図８（Ａ）で「ＰＯＬＹＧＯＮ」と描かれた文字を、図８（Ｂ）に示すようにポリゴンの裏側にも表示できる。従来のハードウェアでは、このような表示を行うためには、２枚のポリゴンを張り合わせておく必要があった。これに対して、本実施例は、１枚のポリゴンで、このように表裏に模様が施された「旗」が風でなびくというような映像効果を得ることができる。
【００６３】
図９（Ａ）、（Ｂ）には、図９（Ｃ）に示すような立体迷路を用いたゲーム装置に本実施例を適用した場合の表示画面の一例が示される。図９（Ａ）は、図９（Ｃ）のＡ点において見える表示画面であり、図９（Ｂ）は、図９（Ｃ）のＢ点において見える表示画面である。この場合、例えば壁９５を表すポリゴンは、表のみならず裏も表示されるように裏ポリゴン出力フラッグにより設定されている。これにより、図９（Ａ）において壁９５の表側９６に施された模様を、図９（Ｂ）における裏側９７にも同様に表示できることになる。そして、このような表示を行うにあたって、本実施例では壁９５を１枚のポリゴンで表せるため、立体迷路を表現するのに必要なポリゴンの枚数を半分に減らすことが可能となる。
Ｂ．第２の実施例
第２の実施例は、本発明のポリゴンデータ変換装置を含む３次元シミュレータ装置に関する実施例である。
【００６４】
１．ゲームの概要
まず、本実施例に係る３次元シミュレータ装置で実現される３次元ゲームの一例について簡単に説明する。
【００６５】
本３次元シミュレータ装置により実現される３次元ゲームは、移動体、例えばプレーヤレーシングカーにてマップ上に形成されたコース上を走行し、他のプレーヤが操作する相手レーシングカー、コンピュータが操作するコンピュータカーと順位を競い合うレーシングカーゲームである。図１０には、本３次元シミュレータ装置の外観図の一例が示される。同図に示すようにこの３次元シミュレータ装置は、実際のレーシングカーの運転席と同様に形成されている。そして、プレーヤは、シート１８に着座し、ＣＲＴ（ディスプレイ）１０に映し出されたゲーム画面（レーシングカーの運転席から見える風景の疑似３次元画像）を見ながら、操作部１２に設けられたハンドル１４、アクセル１５、シフトレバー１６等を操作して架空のレーシングカーを運転してゲームを行う。
【００６６】
図１１には、本３次元ゲームにおける仮想３次元空間の一例が示される。このように、本３次元ゲームにおける仮想３次元空間には、３次元的に形成されたコース２０が配置されている。そして、コース２０の周辺には、ビル６０、トンネル６２、山６４、崖６６、壁６８等の３次元オブジェクトが配置されている。プレーヤはこれらのコース等が映し出されたＣＲＴ１０を見ながらレーシングカーを操作する。そして、スタートポイント７０からスタートして、コース２０を周回し、所定回数コースを周回するとゴールとなり、プレーヤの順位が決定される。
【００６７】
図１２には、本３次元ゲームにおいてＣＲＴ１０上に映し出されるゲーム画面の一例が示される。図１２に示すようにメイン画面１には例えば相手レーシングカー５２が映し出されており、プレーヤはメイン画面１を見ながら、この相手レーシングカー５２と競争を行うことになる。図１２に示すように、メイン画面１には、相手レーシングカー５２の他に、路面２１、トンネルの壁２２等が映し出されている。そして、メイン画面１上には、更にバックミラー（サブ画面）２が表示されており、このバックミラー２を見ることによりプレーヤは、コンピュータ−カー５４が後ろから追いかけてくるということを認識できる。これにより、ゲームの臨場感、面白味を非常に高めることができる。更に、バックミラー２には、メイン画面と同様に路面２３、壁２４が映し出されている。そして、バックミラー２に映る路面２３には、メイン画面１の路面２１と同様に、アスファルト状の模様が施されており、また、センターライン２６等も描かれている。即ち、メイン画面と同様にテクスチャマッピングが行われている。
【００６８】
このように、本実施例によれば、バックミラー２に映る画像もメイン画面１と同様にリアリティに溢れるものとすることができる。これは、バックミラー２に映る画像も、メイン画面とほとんど同様の処理で仮想３次元空間上における視界画像を求めることで形成しているからである。更に、メイン画面と同様の処理でテクスチャマッピングを行っているからである。
【００６９】
さて、このようなリアル感ある画像を映し出すためには、まずプレーヤの視点位置から前向きの視線方向の視界画像を求め、これをメイン画面１に表示する。そして、次に、プレーヤの視点位置から後ろ向き視線方向の視界画像を求め、この視界画像に左右反転処理を施し、求められた画像をバックミラー２に表示する。この場合の、左右反転処理は、設定メモリ４０６の左右反転フラグを”１”に設定することにより行う。更に具体的には、メイン画面１を構成するポリゴンに対して演算処理を行う際には左右反転フラグを”０”に設定し、バックミラー２を構成するポリゴンに対して演算処理を行う際には左右反転フラグを”１”に設定する。そして、左右反転フラグ＝１となると、座標反転部４１０により、ポリゴンの頂点座標が左右反転される。このように左右反転処理を行うとポリゴンが裏向きになってしまい、裏ポリゴンを描画できないようなハードウェアを用いた場合では、ポリゴンの描画ができなくなるという事態が生じる。これに対して、本実施例では、このような場合には入れ替えフラグ＝１となり、割り振り順序入れ替え部４２０により頂点番号の割り振り順序の入れ替え処理が行われるため、正常にポリゴンを描画できることになる。このように、本実施例によれば、裏ポリゴンを描画できないようなハードウェアを用いながらも、バックミラー２に、リアル感溢れる画像を表示できることになる。
【００７０】
２．装置の構成の説明
次に、本実施例に係る３次元シミュレータ装置の構成について説明する。本３次元シミュレータ装置は、図５に示すように、操作部１０、仮想３次元空間演算部１００、画像合成部２００、ＣＲＴ１０を含むが、まず仮想３次元空間演算部１００について説明する。
【００７１】
（１）仮想３次元空間演算部
図１３に示すように、仮想３次元空間演算部１００は、処理部１０２、仮想３次元空間設定部１０４、移動情報演算部１０６、オブジェクト情報記憶部１０８を含んで構成される。
【００７２】
ここで、処理部１０２では、３次元シミュレータ装置全体の制御が行われる。また、処理部１０２内に設けられた記憶部には、所定のゲームプログラムが記憶されている。仮想３次元空間演算部１００は、このゲームプログラム及び操作部１２からの操作信号にしたがって仮想３次元空間設定の演算を行うことになる。
【００７３】
移動情報演算部１０６では、操作部１２からの操作信号及び処理部１０２からの指示等にしたがって、レーシングカーの移動情報が演算される。
【００７４】
オブジェクト情報記憶部１０８には、仮想３次元空間を構成するオブジェクトの位置情報・方向情報及びこの位置に表示すべきオブジェクトのオブジェクトナンバーが記憶されている（以下、この記憶された位置情報・方向情報及びオブジェクトナンバーをオブジェクト情報と呼ぶ）。図１４には、オブジェクト情報記憶部１０８に記憶されるオブジェクト情報の一例が示される。また、図１５には、これらのオブジェクト情報に含まれる位置情報、方向情報（Ｘｍ、Ｙｍ、Ｚｍ、θｍ、φｍ、ρｍ）と絶対座標系（Ｘｗ、Ｙｗ、Ｚｗ）の関係が示される。
【００７５】
ここで、オブジェクトにはレーシングカー等を表現する移動体オブジェクト、及び、コース等を表現するマップオブジェクトがあり、これらのオブジェクトは図１５に示すように四角形のポリゴンの集合で表現されている。
【００７６】
オブジェクト情報記憶部１０８に記憶されているオブジェクト情報は、仮想３次元空間設定部１０４により読み出される。この場合、オブジェクト情報記憶部１０８には、当該フレームの１つ前のフレームにおけるオブジェクト情報が記憶されている。そして、仮想３次元空間設定部１０４では、読み出されたオブジェクト情報と、移動情報演算部１０６で演算された移動情報とに基づいて、当該フレームにおけるオブジェクト情報（位置情報、方向情報）が求められる。
【００７７】
このようにして、仮想３次元空間設定部１０４では、当該フレームにおける仮想３次元空間を構成する全てのオブジェクトのオブジェクト情報が設定されることになる。
【００７８】
なお、マップ設定部１００は、仮想３次元空間上に分割されたマップを表示する場合のマップ設定を行うものである。また、本実施例でメイン画面上にサブ画面（バックミラー）を形成するためには、例えば図１６（Ａ）、（Ｂ）に示すように、メイン画面用のオブジェクト情報（図１６（Ａ）のオブジェクト情報）、サブ画面用のオブジェクト情報（図１６（Ｂ）のオブジェクト情報）というように、複数のオブジェクト情報を形成している。具体的には、仮想３次元空間設定部１０４がオブジェクト情報記憶部１０８に記憶された図１４に示すオブジェクト情報を読み出し、オブジェクトナンバーのみを変更することで複数のオブジェクト情報を形成している。そして、この形成された複数のオブジェクト情報を、画像合成部２００に出力している。例えば、図１６（Ａ）のＯＢ0 と図１６（Ｂ）のＯＢi+1 とでは、位置情報、方向情報（Ｘ0 、Ｙ0 、Ｚ0 、θ0 、φ0 、ρ0 ）が同一となっているが、オブジェクトナンバーが異なっている。そして、この異なるオブジェクト情報により、ポリゴン数の異なるオブジェクト指定でき、ポリゴン数の多いオブジェクトをメイン画面に、ポリゴン数の少ないオブジェクトをサブ画面に表示する。これにより、サブ画面を形成するのに必要とされるポリゴン数を減らすことができ、装置のリアルタイム性を維持することが可能となる。
【００７９】
（２）画像供給部
画像供給部２１０は、図１７に示すように、オブジェクト画像情報記憶部２１２、処理部２１５、座標変換部２１８、クリッピング処理部２２０、ポリゴンデータ変換装置２２４、ソーティング処理部２２６を含んでいる。また、クリッピング処理部２２０は、透視投影変換部２２２を含んでいる。
【００８０】
画像供給部２１０では、仮想３次元空間演算部１００により設定された仮想３次元空間の設定情報にしたがって、各種の座標変換処理、３次元演算処理が行われる。
【００８１】
即ち、まず、図１８に示すように、レーシングカー、コース等を表すオブジェクト３００、３３３、３３４について、それを構成するポリゴンを、絶対座標（ワールド座標）系（ＸW 、ＹW 、ＺW ）で表現される仮想３次元空間上に配置するための演算処理が行われる。次に、これらの各オブジェクトについて、それを構成するポリゴンをプレーヤ３０２の視点を基準とした視点座標系（Ｘｖ、Ｙｖ、Ｚｖ）へ座標変換する処理が行われる。その後、いわゆるクリッピング処理が行われ、次に、スクリーン座標系（ＸS 、ＹS ）への透視投影変換処理が行われる。次に、ポリゴンデータが本発明のポリゴンデータ変換装置により所定形式に変換され、最後に、Ｚ方向についてのソーティング処理が行われる。
【００８２】
次に、画像供給部２１０の動作の詳細について説明する。
【００８３】
（ａ）初期設定
まず、初期設定時に、レーシングカー、コース等を表すオブジェクトの画像情報が、オブジェクト画像情報記憶部２１２に書き込まれる。但し、オブジェクト画像情報記憶部２１２がＲＯＭである場合は、この書き込みは必要とされない。
【００８４】
（ｂ）フレームデータの転送
全てのオブジェクトに共通する視点情報、即ちプレーヤの視点位置・角度・視野角の情報、モニタの情報等は、１フィールド毎、例えば（１／６０）秒毎に更新され、仮想３次元空間演算部１００から処理部２１５を介して座標変換部２１８に転送される。座標変換部２１８では、このデータを基に各種の座標変換が行われる。また、モニタの角度・大きさ等の情報もクリッピング処理用のデータとしてクリッピング処理部２２０に転送される。これらの転送されるデータはフレームデータと呼ばれる。
【００８５】
（ｃ）オブジェクトデータ及びポリゴンデータの形成
オブジェクトの位置情報、方向情報、オブジェクトナンバーを含むオブジェクト情報が、仮想３次元空間演算部１００から処理部２１５へと転送される。
【００８６】
次に、前記のオブジェクトナンバーをアドレスとして、オブジェクト画像情報記憶部２１２から対応するオブジェクトの画像情報が読み出される。即ち、例えばオブジェクトナンバーがレーシングカーを指定するものである場合は、このレーシングカーの画像情報がオブジェクト画像情報記憶部２１２から読み出される。オブジェクト画像情報記憶部２１２には、レーシングカー等の画像情報が複数枚のポリゴンの集合（多面体）として表現され格納されている。処理部２１５は、データフォーマット形成部２１７により、この読み出されたデータからオブジェクトデータ及びポリゴンデータを組にしたデータを形成して、座標変換部２１８以下へと順次転送する。
【００８７】
ここで、オブジェクトデータとは、オブジェクトの位置情報、回転情報、その他の付属データ等で構成されるデータをいう。また、ポリゴンデータとは、オブジェクトを構成するポリゴンについての画像情報であり、ポリゴンの頂点座標、頂点テクスチャ座標、頂点輝度情報、その他の付属データで構成されるデータをいう。
【００８８】
なお、ここでいうポリゴンデータは、前述の図６に説明したポリゴンデータと異なり、透視投影変換処理等が施されていない３次元ポリゴンについてのポリゴンデータである。
【００８９】
これらのデータは、データフォーマット形成部２１７により図１９（Ａ）、（Ｂ）に示すようなデータフォーマットに変換される。
【００９０】
（ｄ）座標変換部等での動作
座標変換部２１８では、処理部２１５から転送されたプレーヤの視点情報と、処理部２１５から転送されたレーシングカ−位置情報、回転情報からなるオブジェクトデータをもとに、ポリゴンデータに対して各種の座標変換が行われる。即ち、ポリゴンデータに対するローカル座標系での回転、ワールド座標系への平行移動、視点座標系への回転等が行われる。
【００９１】
クリッピング処理部２２０では、これらの座標変換が終了したポリゴンデータに対してクリッピング処理が行われる。次に、クリッピング処理部２２０内の透視投影変換部２２２において、スクリーン座標系への透視投影変換が行われる。なお、本実施例では、このクリッピング処理と透視投影変換処理とを同一のハードウェアを用いて行っている。
【００９２】
ポリゴンデータ変換装置２２４には、クリッピング処理により四角形以外の多角形に変形してしまったポリゴンデータ（２次元ポリゴンデータ）が入力される。そして、必要に応じて左右反転処理、上下反転処理、裏ポリゴン表示のための処理が行われ、これと同時に、この変形したポリゴンを四角形のポリゴンに変換する処理が行われる。そして、フォーマット変換されたポリゴンデータは、次段のソーティング処理部２２６、画像形成部２２８に出力される。
【００９３】
さて、本実施例では、図１９（Ａ）に示すように、データフォーマット形成部２１７により、メイン画面用データと、サブ画面用データとが形成され、これらのデータが１フレーム内に処理すべきデータとして、座標変換部２１８等に転送される。ここで、メイン画面用データでは、フレームデータを先頭に、オブジェクト１Ａ、２Ａ、３Ａ等のデータが連なっている。即ち、当該フレームにおいてメイン画面に表示すべき全てのオブジェクトに関するデータが連なっている。そして、例えばオブジェクト１Ａのオブジェクトデータの後ろには当該オブジェクトを構成する全ての３次元ポリゴンのポリゴンデータが連なっている。これらのポリゴンデータは、例えば図１９（Ｂ）に示すようなフォーマットとなっておりポリゴンの頂点座標情報等を含んでいる。同様に、オブジェクト２Ａのオブジェクトデータの後ろにも当該オブジェクトを構成する全ての３次元ポリゴンのポリゴンデータが連なっている。
【００９４】
サブ画面用データについても、メイン画面用データと全く同様のデータフォーマット形式となっている。但し、オブジェクト１Ａとオブジェクト１Ｂとでは、オブジェクトの配置位置、方向は同一であるが、オブジェクトデータに連なるポリゴンデータの数が異なっている。オブジェクト２Ａとオブジェクト２Ｂとの相違も同様である。本実施例では、データフォーマット形成部２１７により、このようなフォーマットのデータを形成することで、メイン画面とサブ画面とで表示されるオブジェクトのポリゴン数を異ならせることが可能となっている。更に、メイン画面用データ、サブ画面用データの先頭に置かれるフレームデータの内容を異ならせることで、メイン画面用データとサブ画面用データとで視点位置、視点方向等を異ならせている。即ち、メイン画面用データのフレームデータでは、視線方向が正面向きであるように設定し、サブ画面用データのフレームデータでは、視線方向が後向きであるように設定し、これによりメイン画面上にバックミラーを形成している。
【００９５】
（３）画像形成部についての説明
画像形成部２２８は、このポリゴンの各頂点ごとに与えられた頂点画像情報に基づいてポリゴン内部の画像情報を演算して、これをＣＲＴ１０に出力するものであり、図２０に示すように、プロセッサ部（テクスチャ演算手段）２３０、テクスチャ情報記憶部２４２、パレット＆ミキサ回路２４４とを含む。
【００９６】
さて、本実施例では、より高品質の画像をより効率よく画像合成すべく、テクスチャマッピングと呼ぶ手法により画像合成を行っている。即ち、図２１に示すように、本実施例では、オブジェクト３３２の回転、並進、透視投影変換等の座標変換及びクリッピング等の処理を、各面を構成するポリゴンＡ、Ｂ、Ｃごとに行い（具体的には各ポリゴンの頂点ごと）、格子状、縞状の模様については、テクスチャとして取り扱い、ポリゴンの処理と分割して処理を行っている。つまり、図２０に示すように画像形成部２２８内にはテクスチャ情報記憶部２４２が設けられ、この中には各３次元ポリゴンにはり付けるべきテクスチャ情報、つまり格子状、縞状の模様等の画像情報が記憶されている。
【００９７】
そして、このテクスチャ情報を指定するテクスチャ情報記憶部２４２のアドレスを、各３次元ポリゴンの頂点テクスチャ座標ＶＴX 、ＶＴY として与えておく（以下、頂点を表す場合に”Ｖ”のサフィックスをつける）。具体的には、図２１に示すように、ポリゴンＡの各頂点に対しては、（ＶＴX0、ＶＴY0）、（ＶＴX1、ＶＴY1）、（ＶＴX2、ＶＴY2）、（ＶＴX3、ＶＴY3）の頂点テクスチャ座標が設定される。画像形成部２２８内のプロセッサ部２３０では、この頂点テクスチャ座標ＶＴX 、ＶＴY から、ポリゴン内の全てのドットについてのテクスチャ座標ＴX 、ＴY が求められる。そして、求められたテクスチャ座標ＴX 、ＴY により、テクスチャ情報記憶部２４２から対応するテクスチャ情報が読み出され、パレット＆ミキサ回路２４４に出力される。これにより、図２１に示すような、格子状、縞状等のテクスチャが施された３次元オブジェクトを画像合成することが可能となる。
【００９８】
更に、本実施例では、各ポリゴンの境界に「丸み」を出すために、グーローシェーディングと呼ばれる手法を用いている。この手法では、前記したテクスチャマッピング手法と同様に、３次元ポリゴンの各頂点に図２１に示すように頂点輝度情報ＶＢＲＩ0 〜ＶＢＲＩ3 を与えておき、画像形成部２２８で最終的に画像表示する際に、この頂点輝度情報ＶＢＲＩ0 〜ＶＢＲＩ3 より３次元ポリゴン内の全てのドットについての輝度情報を補間処理して求めている。
【００９９】
さて、図２２（Ａ）〜（Ｋ）には、テクスチャマッピングについての演算処理の流れが視覚的に示されている。既に述べたように、画像形成部２２８では、ポリゴンの頂点画像情報に基づいて、ポリゴン内の全ての画像情報を形成する演算処理が行われる。この場合、ポリゴンにはり付けるべきテクスチャ情報は、テクスチャ情報記憶部３４２に記憶されており、このテクスチャ情報を読み出すために、テクスチャ座標ＴX 、ＴY が必要となる。そして、図２２（Ｆ）、（Ｇ）、（Ｈ）、（Ｉ）には、ポリゴン内の全ての透視変換テクスチャ座標ＴX * 、Ｔ Y* を求める演算処理の様子が視覚的に示されている。また、図２２（Ｂ）、（Ｃ）、（Ｄ）、（Ｅ）には、テクスチャ情報を表示すべき座標である透視変換表示座標Ｘ* 、Ｙ* を求める演算処理の様子が視覚的に示されている。以上の演算はプロセッサ部２３０により行われる。そして、図２２（Ｊ）に示すように、演算された透視変換テクスチャ座標ＴX * 、ＴY * はテクスチャ座標ＴX 、ＴY に逆透視投影変換され、この逆透視投影変換されたテクスチャ座標ＴX 、ＴY により、テクスチャ情報記憶部２４２からテクスチャ情報が読み出される。最後に、図２２（Ｋ）に示すように、演算されたＸ* 、Ｙ* の座標位置に、読み出されたテクスチャ情報を対応づけることで、画像合成が行われることになる。
【０１００】
以上のように画像形成部２２８では、まずポリゴンの左右輪郭線上の左右輪郭点を求め、次に、この左右輪郭点に囲まれる直線上のドット（ピクセル）の補間処理を行うことで、ポリゴン内部の全てのドットにおける画像情報を求めている。この場合、左輪郭線か右輪郭線であるかの判断は頂点座標に基づいて求められる。従って、仮に、裏向きのポリゴンがプロセッサ部２３０に入力された場合、即ち図２２の（Ｂ）において、Ａ* 、Ｄ* 、Ｃ* 、Ｂ* の順番で頂点座標が入力された場合には、左輪郭線を右輪郭線と判断し、右輪郭線を左輪郭線と判断してしまう。これにより、左輪郭点と右輪郭点を逆に判断してしまうことになる。そして、この画像形成部２２８では更に、左右輪郭点に囲まれた直線上のドットの画像情報を求める際に、左輪郭点よりも左側にあるドット、あるいは右輪郭点よりも右にあるドットについては、そこにはデータが無いものとして取り扱っている。即ち、このような取り扱いをすることで、演算処理を簡単化するとともに演算処理にかかる負荷を軽減している。ところが、このようなハードウェア構成では、上記のように裏ポリゴンが入力されると、左輪郭点と右輪郭点とを逆に判断してしまうことになり、従って、左輪郭点と右輪郭点に囲まれた直線上にはデータが無いものと判断されることになる。これにより、裏ポリゴンについては描画されないということになる。
【０１０１】
本実施例では、以上のような事態を防止すべく、ポリゴンデータ変換装置２２４により、頂点番号の割り振り順序を入れ替えて、裏ポリゴンでも表示できるようにしている。また、これにより、バックミラーを形成する際の左右反転処理により裏ポリゴンとなったポリゴン等についても表示することが可能となる。
【０１０２】
なお、本発明は上記実施例に限定されるものではなく、本発明の要旨の範囲内で種々の変形実施が可能である。
【０１０３】
例えば、上記実施例では、左右・上下反転に伴い裏となったポリゴンを表ポリゴンに変換する処理、裏ポリゴンを裏ポリゴン出力フラグに基づいて表ポリゴンに変換する処理、四角形以外の多角形に変形したポリゴンを四角形に分割する処理等、全ての処理が同時に可能なハードウェアについて説明したが本発明はこれに限られるものではない。例えば、左右反転（あるいは上下反転）に伴い裏となったポリゴンを表ポリゴンに変換する処理のみが可能なハードウェア構成でもかまわない。この場合は、例えば排他的論理和部等を省略することができる。また、裏ポリゴンを裏ポリゴン出力フラグに基づいて表ポリゴンに変換する処理のみが可能なハードウェア構成でもかまわない。この場合は、左右反転フラグ、上下反転フラグが必要なくなり、座標反転部等も必要なくなる。また、四角形以外のポリゴンを四角形のポリゴンに変形する機能が必要ない場合には、頂点番号割り当て部においてポリゴンを分割して頂点番号を割り振る必要もなくなる。但し、本実施例で説明したポリゴンデータ変換装置は、排他的論理和部４１４を設けたり、頂点番号割り当て部４２２を設けたりすることにより、これらの処理を全て同一のハードウェア構成で可能とした点については、大きな優位点をもっている。
【０１０４】
また、本発明に係るポリゴンデータ変換装置が適用されるものとしては、上記第２の実施例で説明した３次元シミュレータ装置に限定されず、あらゆる構成の３次元シミュレータ装置、画像合成装置等に対して適用できる。
【０１０５】
また、仮想３次元空間演算部、画像供給部等における演算処理は、専用の画像処理用デバイスにより処理することもできるし、マイクロコンピュータ等を利用して処理することも可能である。
【０１０６】
また、画像合成部等で行われる演算処理も本実施例で説明したものに限定されるものではなく、例えばテクスチャマッピングの手法も上記に説明したものに限られない。
【０１０７】
また、本実施例では、３次元シミュレータ装置が適用されるものとしてレーシングカーゲームを例にとり説明したが、本発明はこれに限らず、あらゆる種類の３次元ゲームに適用でき、例えば３次元的にマップが形成された宇宙船ゲーム等にも適用できる。また、本発明は、業務用の３次元ゲームのみならず、例えば、家庭用のゲーム装置、フライトシミュレータ、教習所等で使用されるドライビングシミュレータ等にも適用することができる。
【０１０８】
また、本発明により得ることができるサブ画面は、本実施例で説明したバックミラーに限らず種々のものに適用できる。例えば、サイドミラー、上から見た画面等に適用することも可能である。
【０１０９】
また、本発明により画像合成される疑似３次元画像は、ＣＲＴ１０のようなディスプレイのみならずヘッドマウントディスプレイ（ＨＭＤ）と呼ばれるディスプレイにも当然に表示できる。
【０１１０】
【発明の効果】
以上説明したように、請求項１の発明によれば、左右反転されて裏ポリゴンとなってしまったポリゴンについても、表ポリゴンとして出力することが可能となる。これにより、例えば本発明を３次元シミュレータ装置等に適用した場合に、メイン画面上にサイドミラー（左右反転画像）等を映し出すことが可能となる。即ち、仮想３次元空間で所定の視点からの視界画像を求める。そして、この視界画像を、本発明により左右反転処理するともに、左右反転により裏ポリゴンになったポリゴンを表ポリゴンに戻す。これにより、メイン画面上に、メイン画面と同様にリアル感溢れるサイドミラー等を映し出すことが可能となる。
【０１１１】
また、請求項２の発明によれば、上下反転されて裏ポリゴンとなってしまったポリゴンについても、表ポリゴンとして出力することが可能となる。
【０１１２】
また、請求項３の発明によれば、裏ポリゴンであても、裏ポリゴン出力フラグが立っている限り、表ポリゴンとして出力することが可能となる。これにより、例えば旗、壁、板等の裏表を一枚のポリゴンにより表すことができ、少ないポリゴン数で高い映像効果を得ることができる。
【０１１３】
また、請求項４の発明によれば、ポリゴン毎に、該ポリゴンが裏であっても出力するという設定を行うことが可能となる。即ち、全てのポリゴンについて裏ポリゴンを描画するようにすると、演算処理の負担が余りに大きくなる。従って、このような場合に、裏ポリゴン出力フラグにより必要なポリゴンのみ裏を表示し、他のポリゴンは裏を表示しないようにすれば、特殊の映像効果を出しながらも演算処理の負担を軽減できることになる。
【０１１４】
また、請求項５の発明によれば、左右反転、上下反転されて裏ポリゴンとなってしまったポリゴンについても、表ポリゴンとして出力することが可能となる。これにより、例えば左右反転されて更に上下反転された場合等でも、正常に表ポリゴンを出力できることになる。
【０１１５】
また、請求項６の発明によれば、クリッピング処理等により例えば四角形以外の多角形に変形されたポリゴンを、例えば四角形のポリゴンに分割することが可能となる。そして、この分割されたポリゴンに対して、一度に頂点番号の入れ替え処理を行うことが可能となる。これにより、ポリゴンの分割処理と、左右反転、上下反転により裏となったポリゴンを表に戻す等の処理とを同時に行うことができ、処理の高速化、ハードウェアの負担の軽減等を図ることができる。
【０１１６】
また、請求項７の発明によれば、実際には例えば三角形であるポリゴンを四角形のポリゴンとして後段のハードウェアに対して出力することが可能となる。これにより、後段にある画像形成部等のハードウェアが、処理の高速化等を図るため四角形のポリゴンのみを描画できるハードウェアであった場合でも、本発明によれば、三角形のポリゴンを四角形のポリゴンに見せかけることで、正常な動作を保証できることになる。
【０１１７】
請求項８の発明によれば、画像形成部が裏ポリゴンの描画処理を省略できるハードウェア構成となるため、ポリゴンの描画処理を簡単化でき、画像形成部の処理の高速化、装置の小規模化を図れる。しかも、ポリゴンデータ変換装置により頂点番号の割り振り順序をポリゴンの裏表が反転するように入れ替えることができるため、左右反転により裏ポリゴンとなってしまった場合等でも、裏ポリゴンを表ポリゴンとして出力することが可能となる。
【０１１８】
請求項９の発明によれば、画像形成部が四角形のポリゴン以外のポリゴンについては描画処理を省略できるハードウェア構成となるため、ポリゴンの描画処理を簡単化でき、画像形成部の処理の高速化、装置の小規模化を図れる。しかも、例えばクリッピング処理等により例えば四角形以外の多角形に変形されたポリゴンについても、ポリゴンデータ変換装置により四角形のポリゴンに分割することができ、このように変形されたポリゴンについても正常に描画処理を行うことが可能となる。
【図面の簡単な説明】
【図１】本発明に係る第１の実施例を示すブロック図である。
【図２】図２（Ａ）は、本実施例におけるスクリーン座標系の例を示す図であり、図２（Ｂ）は、左右反転処理、上下反転処理について説明するための図である。
【図３】図３（Ａ）は、排他的論理和部の真理値表であり、図３（Ｂ）は、入れ替えフラグによる割り振り順序の入れ替えを説明するための図である。
【図４】図４（Ａ）、（Ｂ）は、六角形のポリゴンを分割する場合のＤＰＮ、ＡＳＥＱ、ＶＮの関係を示す図である。
【図５】図５（Ａ）、（Ｂ）は、七角形のポリゴンを分割する場合のＤＰＮ、ＡＳＥＱ、ＶＮの関係を示す図である。
【図６】図６は、入力ポリゴンデータのデータフォーマットを示す図である。
【図７】図７（Ａ）、（Ｂ）は、本実施例の動作を示すタイミング図である。
【図８】図８（Ａ）、（Ｂ）は、本実施例により旗の画像を形成した場合の表示画面の一例である。
【図９】図９（Ａ）、（Ｂ）、（Ｃ）は、本実施例を立体迷路のゲーム装置に適用した場合の表示画面及び立体迷路の平面図を示す図である。
【図１０】本第２の実施例に係る３次元シミュレータ装置の外観の一例を示す概略図である。
【図１１】本３次元ゲームにおける仮想３次元空間の一例を示す概略図である。
【図１２】本３次元シミュレータ装置により画像合成されたゲーム画面（疑似３次元画像）を示す概略図である。
【図１３】本第２の実施例に係る３次元シミュレータ装置、特に仮想３次元空間演算部の詳細な一例を示すブロック図である。
【図１４】オブジェクト情報記憶部に記憶されるオブジェクト情報について説明するための概略説明図である。
【図１５】オブジェクトに設定されるオブジェクト情報について説明するための概略説明図である。
【図１６】図１６（Ａ）、（Ｂ）は、位置情報及び方向情報が同一であり、オブジェクトナンバーが異なる複数のオブジェクト情報を説明するための概略説明図である。
【図１７】画像供給部の一例を示すブロック図である。
【図１８】本実施例における３次元演算処理について説明するための概略説明図である。
【図１９】図１９（Ａ）、（Ｂ）は、データフォーマット形成部で形成されるデータフォーマットの一例を示す図である。
【図２０】画像合成部の一例を示すブロック図である。
【図２１】テクスチャマッピング手法を説明するための概略説明図である。
【図２２】図２２（Ａ）〜（Ｋ）は、本実施例におけるテクスチャマッピング手法を視覚的に表した図である。
【図２３】図２３（Ａ）は、３次元シミュレータ装置の概念を説明するための概略説明図であり、図２３（Ｂ）は、この３次元シミュレータ装置により形成される画面の一例を示す図である。
【符号の説明】
１  メイン画面
２  バックミラー（サブ画面）
１０  ＣＲＴ
１２  操作部
２０  コース
１００  仮想３次元空間演算部
１０２  処理部
１０４  仮想３次元空間設定部
１０６  移動情報演算部
１０８  オブジェクト情報記憶部
１１０  マップ設定部
２００  画像合成部
２１０  画像供給部
２１２  オブジェクト画像情報記憶部
２１５  処理部
２１７  データフォーマット形成部
２１８  座標変換部
２２０  クリッピング処理部
２２２  透視投影変換部
２２４  ポリゴンデータ変換装置
２２８  画像形成部
２２６  ソーティング処理部
２３０  プロセッサ部
２３２  テクスチャ情報記憶部
２４４  パレット＆ミキサ回路
４００  全体コントロール部
４０２  入力コントロール部
４０４  出力コントロール部
４０６  設定メモリ
４０８  裏表判定部
４１０  座標反転部
４１２  データメモリ
４１４  排他的論理和部
４１６、４１８  ＥＸＯＲ回路
４２０  割り振り順序入れ替え部
４２２  頂点番号割り当て部
４２４  ポリゴン分割部
４２６  実アドレス生成部
【図１】
0003638637.tif 000003
【図２】
0003638637.tif 000004
【図３】
0003638637.tif 000005
【図４】
0003638637.tif 000006
【図５】
0003638637.tif 000007
【図６】
0003638637.tif 000008
【図７】
0003638637.tif 000009
【図８】
0003638637.tif 000010
【図９】
0003638637.tif 000011
【図１０】
0003638637.tif 000012
【図１１】
0003638637.tif 000013
【図１２】
0003638637.tif 000014
【図１３】
0003638637.tif 000015
【図１４】
0003638637.tif 000016
【図１５】
0003638637.tif 000017
【図１６】
0003638637.tif 000018
【図１７】
0003638637.tif 000019
【図１８】
0003638637.tif 000020
【図１９】
0003638637.tif 000021
【図２０】
0003638637.tif 000022
【図２１】
0003638637.tif 000023
【図２２】
0003638637.tif 000024
【図２３】
0003638637.tif 000025