(57)【特許請求の範囲】
【請求項１】
単位図形の組合せにより定義される画像を描画する描画装置であって、
前記単位図形を描画するための描画規則を選択する選択手段と、
前記選択手段により選択された前記描画規則にしたがって、前記単位図形を描画する描画手段とを備え、
前記選択手段は、前記単位図形が、共有頂点型のデータで表現されるものであるとき、前記単位図形の境界の一部を描画しないという前記描画規則を選択すること
を特徴とする描画装置。
【請求項２】
単位図形の組合せにより定義される画像を描画する描画装置であって、
前記単位図形を描画するための描画規則を選択する選択手段と、
前記選択手段により選択された前記描画規則にしたがって、前記単位図形を描画する描画手段とを備え、
前記選択手段は、前記単位図形が、独立頂点型のデータで表現されるものであるとき、前記単位図形の境界すべてを描画するという前記描画規則を選択すること
を特徴とする描画装置。
【請求項３】
単位図形の組合せにより定義される画像を描画する描画装置が行う描画方法であって、
前記描画装置は、
前記単位図形を描画するための描画規則を選択するステップと、
前記選択された前記描画規則にしたがって、前記単位図形を描画するステップとを実行し、
前記選択するステップは、前記単位図形が、共有頂点型のデータで表現されるものであるとき、前記単位図形の境界の一部を描画しないという前記描画規則を選択すること
を特徴とする描画方法。
【請求項４】
単位図形の組合せにより定義される画像を描画する描画装置が行う描画方法であって、
前記描画装置は、
前記単位図形を描画するための描画規則を選択するステップと、
前記選択された前記描画規則にしたがって、前記単位図形を描画するステップとを実行し、
前記選択するステップは、前記単位図形が、独立頂点型のデータで表現されるものであるとき、前記単位図形の境界すべてを描画するという前記描画規則を選択すること
を特徴とする描画方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、描画装置および描画方法に関し、特に、例えば、ビデオゲーム機や、グラフィックコンピュータシステム、エフェクタなどにおいて、共有頂点型や独立頂点型などの異なるデータ形式で表現される単位図形（ポリゴン）が混在している画像を、その画質を損ねることなく描画することができるようにする描画装置および描画方法に関する。
【０００２】
【従来の技術】
従来の、例えばビデオゲーム機などにおいては、３次元のオブジェクト（画像）を表示する場合に、そのオブジェクトを複数のポリゴン（単位図形）に分解し、これらのポリゴンそれぞれを描画することで、オブジェクト全体を描画するようになされている。従って、このようにして描画される画像は、ポリゴンの組合せにより定義されているということができる。
【０００３】
ところで、ポリゴンのデータの表現形式には、例えば、共有頂点型や独立頂点型などがあり、共有頂点型で表現されたポリゴン（以下、適宜、３次元ポリゴンという）は、図９（Ａ）に示すように、隣接するポリゴンと、境界を共有して描画され、独立頂点型で表現されたポリゴン（以下、適宜、２次元スプライトという）は、図９（Ｂ）に示すように、隣接するポリゴンと、境界を共有せずに描画される。
【０００４】
なお、図９は、４角形（正方形）のポリゴンをメッシュ状に並べた様子を示している。また、３次元ポリゴンは、３次元空間における図形を透視変換することにより生成され、２次元スプライトは、２次元空間（２次元平面）における図形を平行移動することにより生成される。
【０００５】
３次元ポリゴンは、隣接するポリゴンとの境界を共有するため、例えば、４角形の３次元ポリゴンは、図１０（Ａ）または図１０（Ｂ）に点線で示すように、その右および下の境界、または右上および右下の境界は描画しないという描画規則（以下、適宜、共有頂点描画規則という）にしたがって描画される。なお、図１０（後述する図１１においても同様）におけるＴの向きは、テクスチャの向きを表している。
【０００６】
一方、２次元スプライトは、隣接するポリゴンとの境界を共有しないため、例えば、四角形の２次元スプライトは、図１１に示すように、いずれの境界も省略せずに描画するという描画規則（以下、適宜、独立頂点描画規則という）にしたがって描画される。
【０００７】
従って、例えば、５×５ピクセルの４角形の３次元ポリゴンを、横に３個、縦に２個だけメッシュ状に並べたものを、共有頂点描画規則にしたがって描画した場合、図１２に示すような画像が得られる。なお、図１２において、実線の小さな四角形（正方形）が、画素を表しており、その中に数字（この数字は１６進数で表してある）を記載してあるものが、描画が行われた画素を表している。
【０００８】
図１２では、点線で囲んである四角形が、１つの３次元ポリゴンを表している。例えば、最も左上の３次元ポリゴンの描画が行われる場合においては、その右および下の境界の、番号０４，１４，２４、３４、および４０乃至４４の画素は描画されないが、番号０４，１４，２４、３４、および４４の画素は、その右に隣接する３次元ポリゴンが描画されるときに、また、番号４０乃至４４の画素は、その下に隣接する３次元ポリゴンが描画されるときに、それぞれ描画される。他のポリゴンについても同様にして描画が行われる。
【０００９】
また、図１２においては、上から２つめの３次元ポリゴンの下に隣接するポリゴンは存在しないので、上から９行目の画素への描画は行われない。即ち、上から２つめの３次元ポリゴンが描画されるときには、共有頂点描画規則にしたがい、その右および下の境界は描画されず、また、その下に隣接するポリゴンも存在しないため、上から９行目の画素への描画は行われない。同様に、左から３番目の３次元ポリゴンの右に隣接するポリゴンも存在しないので、左から１３列目の画素への描画も行われない。
【００１０】
従って、図１２では、上から５行目の、番号４０乃至４Ｂの画素、および左から５列目と９列目の、番号０４，１４，２４，３４，４４，５４，６４，７４，０８，１８，２８，３８，４８，５８，６８，７８の画素が、３次元ポリゴンどうしで共有されている。
【００１１】
一方、例えば、４×４ピクセルの４角形の２次元スプライトを、図１２における場合と同様に、横に３個、縦に２個だけメッシュ状に並べたものを、独立頂点描画規則にしたがって描画した場合、図１３に示すような画像が得られる。なお、図１３においても、実線の小さな四角形が、画素を表しており、その中に数字（この数字は１６進数で表してある）を記載してあるものが、描画が行われた画素を表している。
【００１２】
図１３では、点線で囲んである四角形が、１つの２次元スプライトを表している。２次元スプライトは、隣接するポリゴン（２次元スプライト）と境界を共有せず、また、独立頂点描画規則によれば、境界の描画は省略されないから、図１３に示すように、１２×８（＝（４×３）×（４×２））の長方形の範囲に描画がなされた画像が得られる。
【００１３】
【発明が解決しようとする課題】
ところで、例えば、３次元ポリゴンにより画像を描画するビデオゲーム機などにおいて、３次元ポリゴンと２次元スプライトとが混在する画像を描画した場合、いずれも共有頂点描画規則にしたがって描画されることになる。このため、３次元ポリゴンによる画像は、図１２に示したように描画されるが、２次元スプライトによる画像は、その２次元スプライトの境界（エッジ）がかけたものとなる課題があった。
【００１４】
即ち、２次元スプライトは、隣接するポリゴンと境界を共有しないため、例えば、４×４ピクセルの４角形の２次元スプライトを、横に３個、縦に２個だけメッシュ状に並べたものを、独立頂点描画規則ではなく、共有頂点描画規則にしたがって描画すると、図１４に示すように、各２次元スプライトの右および下の境界が描画されず、いわばエッジ欠けした画像が得られる課題があった。
【００１５】
また、２次元スプライトを、共有頂点描画規則にしたがって描画すると、テクスチャに不自然さが生じる場合があった。
【００１６】
即ち、例えば、図１５（Ａ）は、４×４の四角形の２次元スプライトを独立頂点描画規則にしたがって描画した場合を示している。なお、図１５においては、実線の小さな四角形が、画素を表している。また、その中の数字（この数字は１６進数で表してある）は、テクスチャマッピングのためのテクスチャアドレスを表しているものとする。
【００１７】
いま、図１５（Ａ）において、２次元スプライトの最も左上、右上、左下、または右下の画素の座標が、それぞれ（０，０），（３，０），（０，３）、または（３，３）であるとし、このような４頂点を有する２次元スプライトを、横方向に２倍するとする。この場合、独立頂点描画規則にしたがえば、例えば、図１５（Ｂ）に示すように、（０，０），（７，０），（０，３）、および（７，３）を４頂点とする２次元スプライトが得られる。
【００１８】
ここで、２次元スプライトを横方向に２倍したことに伴い、テクスチャアドレスも変更する必要がある。即ち、図１５（Ａ）において、横方向のテクスチャアドレスの変化量は３であり、図１５（Ｂ）において、２次元スプライトの横方向の変化量は７であるから、２次元スプライトを横方向に２倍した場合、テクスチャアドレスが３／７ずつ変化して行くようにする必要がある。このため、図１５（Ｂ）において、例えば、最上行のテクスチャアドレスは、最も左の画素から、０／７，３／７，６／７，９／７，１２／７，１５／７，１８／７，２１／７となるが、テクスチャアドレスは、小数点以下を四捨五入して用いられるため、実際には、０，０，１，１，２，２，３，３となる。
【００１９】
従って、この場合、図１５（Ａ）に示した、元の２次元スプライトについてのテクスチャアドレス以外は出現しない。
【００２０】
一方、図１６（Ａ）は、例えば、５×５の四角形の２次元スプライトを共有頂点描画規則にしたがって描画した場合を示している。なお、図１６においても、実線の小さな四角形が、画素を表しており、また、その中の数字（この数字は１６進数で表してある）は、テクスチャマッピングのためのテクスチャアドレスを表しているものとする。
【００２１】
いま、図１５（Ｂ）において、２次元スプライトの最も左上、右上、左下、または右下の画素の座標が、それぞれ（０，０），（４，０），（０，４）、または（４，４）であるとし、このような４頂点を有する２次元スプライトを、横方向に２倍するとする。この場合、共有頂点描画規則にしたがうと、例えば、図１６（Ｂ）に示すように、（０，０），（８，０），（０，４）、および（８，４）を４頂点とする２次元スプライトが得られる。
【００２２】
ここで、この場合も、２次元スプライトを横方向に２倍したことに伴い、テクスチャアドレスも変更する必要がある。即ち、図１６（Ａ）において、横方向のテクスチャアドレスの変化量は４であり（図１６（Ａ）においては、上から４行目と左から４列目のテクスチャアドレス０４，１４，２４，３４、および４０乃至４４が記載されていないが、これは、共有頂点描画規則にしたがい、上から４行目と左から４列目の画素への描画が行われないためである）、図１６（Ｂ）において、２次元スプライトの横方向の変化量は８であるから、２次元スプライトを横方向に２倍した場合、テクスチャアドレスが４／８ずつ変化して行くようにする必要がある。
【００２３】
このため、図１６（Ｂ）において、例えば、最上行のテクスチャアドレスは、最も左の画素から、０／８，４／８，８／８，１２／８，１６／８，２０／８，２４／８，２８／８となるが、テクスチャアドレスは、小数点以下を四捨五入して用いられるため、実際には、０，１，１，２，２，３，３，４，４となる（但し、共有頂点描画規則にしたがい、最後のテクスチャアドレス４に対応する画素（最も右の画素）への描画は行われない）。
【００２４】
従って、この場合、図１６（Ａ）に示した、元の２次元スプライトについてのテクスチャアドレス以外に、テクスチャアドレス０４，１４，２４，３４が出現する。
【００２５】
以上のように、２次元スプライトを、共有頂点描画規則にしたがって描画すると、元の２次元スプライトにないテクスチャが現れ、画像が不自然なものとなることがあった。
【００２６】
本発明は、このような状況に鑑みてなされたものであり、複数のデータ形式のポリゴンが混在していても、自然で、画質の劣化（エッジ欠け）のない画像を得ることができるようにするものである。
【００２７】
【課題を解決するための手段】
請求項１に記載の描画装置は、単位図形を描画するための描画規則を選択する選択手段と、選択手段により選択された描画規則にしたがって、単位図形を描画する描画手段とを備えることを特徴とする。
【００２８】
請求項４に記載の描画方法は、単位図形を描画するための描画規則を選択し、その描画規則にしたがって、単位図形を描画することを特徴とする。
【００２９】
請求項１に記載の描画装置および請求項４に記載の描画方法においては、単位図形を描画するための描画規則を選択し、その描画規則にしたがって、単位図形を描画するようになされている。
【００３０】
【発明の実施の形態】
図１は、本発明を適用したビデオゲーム機の一実施例の構成を示す平面図である。なお、図２に、その正面図（図１において、下方向から見た図）を、図３に、その右側面の側面図（図１において、向かって右方向から見た側面図）を、それぞれ示す。
【００３１】
ビデオゲーム機は、ゲーム機本体２、このゲーム機本体２と接続される略四角形状をなした接続端子部２６を備えた操作装置１７、および同じくゲーム機本体２と接続される記録装置３８とから構成されている。
【００３２】
ゲーム機本体２は、略四角形状に形成され、その中央の位置に、ゲームを行うためのプログラムやデータが記録されたゲーム用記録媒体を装着するディスク装着部３が設けられている。なお、本実施例では、ディスク装着部３には、例えば、図４に示すようなＣＤ（Compact Disc）−ＲＯＭ５１がゲーム用記録媒体として着脱可能になされている。但し、ゲーム用記録媒体は、ディスクに限定されるものではない。
【００３３】
ディスク装着部３の左側には、ゲームをリセットするときなどに操作されるリセットスイッチ４と、電源のオン／オフをするときに操作される電源スイッチ５とが設けられており、その右側には、ディスク装着部３を開閉するときに操作されるディスク操作スイッチ６が設けられている。さらに、ゲーム機本体２の正面には、操作装置１７および記録装置３８を１組として接続することのできる接続部７Ａ，７Ｂが設けられている。なお、本実施例では、２組の操作装置１７および記録装置３８を接続することができるように、接続部７Ａ，７Ｂが設けられているが、接続部は、２組以外の組数の操作装置１７および記録装置３８を接続することができる数だけ設けるようにすることが可能である。
【００３４】
接続部７Ａ，７Ｂは、図２および図３に示すように、２段に形成され、上段には記録装置３８と接続する記録挿入部８を設け、下段には操作装置１７の接続端子部２６と接続する接続端子挿入部１２を設けた構造となっている。
【００３５】
記録挿入部８の挿入孔は、横方向に長い長方形状に形成し、その下側の両端のコーナーを上側の両端のコーナーに比べて丸みを多くして、記録装置３８が逆に挿入できない構造となっている。さらに、記録挿入部８には、内部の電気的接続を得る接続端子（図示せず）を保護するためのシャッタ９が設けられている。
【００３６】
シャッタ９は、例えば、コイルねじりバネ状に形成されたスプリングなどの弾性体（図示せず）により常時外側に向けて付勢された状態で取り付けられている。従って、シャッタ９は、記録装置３８を差し込む時には記録装置３８を挿入する先端側で奥側に開けられ、記録装置３８を抜いた時には弾性体の付勢力により戻され、自動的に閉じた状態となって、内部の接続端子の防埃の役目をし、さらに外部の衝撃から守る役目をする。
【００３７】
接続端子挿入部１２は、図２および図３に示すように、横方向に長い長方形状をした挿入孔の下側の両端のコーナーを上側の両端のコーナーに比べて丸みを多くした形状にして操作装置１７の接続端子部２６が逆に入らない構造であり、且つ記録装置３８も入らないように挿入孔の形状を異にした構造となっている。このようにして、記録装置３８と操作装置１７の挿入孔の大きさ及び形状を異にして互いに入れ間違いのないようにした構造となっている。
【００３８】
操作装置１７は、図１に示すように、両手の掌で挟持して５本の指が自由自在に動いて操作できる構造をしており、左右対象に連設した丸型形状に形成された第１及び第２の操作部１８，１９、この第１及び第２の操作部１８，１９から角状に突出形成した第１及び第２の支持部２０，２１、第１及び第２の操作部１８，１９の中間位置の括れた部分に設けたセレクトスイッチ２２およびスタートスイッチ２３、第１及び第２の操作部１８，１９の前面側に突出形成した第３及び第４の操作部２４，２５、並びにゲーム機本体２とケーブル２７を介して電気的接続をする接続端子部２６とから構成されている。尚、ケーブル２７を介さなくともよい構成とすることもできる。
【００３９】
接続端子部２６は、ゲーム機本体２と電気的接続をするためのケーブル２７の先端に取り付けられており、図３に示すように、その左右の両側面には、凹凸状のある形状にして、いわゆるギザギザ模様にした滑り止め加工（例えば、ローレット加工など）が施されている把持部が設けられている。なお、接続端子部２６に設けられた把持部は、いわゆる抜き差し部を形成し、その大きさ、即ち、その幅Ｗと長さＬは、例えば、後述する記録装置３８の把持部と同一とされている。
【００４０】
記録装置３８は、例えばフラッシュメモリなどの不揮発性メモリを内蔵しており、その両側面には、例えば、接続端子部２６における場合と同様に構成される把持部（図３）が設けられ、ゲーム機本体２に対し、容易に着脱することができるようになされている。なお、記録装置３８には、例えば、ゲームを一時的に中断する場合に、そのときの状態が記憶されるようになされており、これにより、再起動の際に、そこからデータを読み出すことで、そのデータに対応した状態、即ち、中断時の状態から、ゲームを再開することができるようになされている。
【００４１】
以上のように構成されるビデオゲーム機によりゲームを行う場合においては、ユーザは、例えば、操作装置１７を、ゲーム機本体２に接続し、さらに、必要に応じて、記録装置３８も、ゲーム機本体２に接続する。また、ユーザは、ディスク操作スイッチ６を操作することにより、ゲーム用記録媒体としてのＣＤ−ＲＯＭ５１を、ディスク装着部３にセットし、電源スイッチ５を操作することにより、ゲーム機本体２の電源をオンにする。これにより、ゲーム機本体２においては、ゲームのための画像および音声が再生されるので、ユーザは、操作装置１７を操作することによりゲームを行う。
【００４２】
次に、図５は、図１のゲーム機本体２の電気的構成例を示している。
【００４３】
このゲーム機本体２は、各ブロックにおいてデータをやりとりするためのバスとして、メインバス１０１およびサブバス１０２の２種類のバスを有しており、このメインバス１０１とサブバス１０２とは、バスコントローラ１１６を介して接続されている。
【００４４】
メインバス１０１には、バスコントローラ１１６の他、例えばマイクロプロセッサなどからなるメインＣＰＵ（Central Processing Unit）１１１、例えばＲＡＭ（Random Access Memory）などでなるメインメモリ１１２、メインＤＭＡＣ（Direct Memory Access Controller）１１３、ＭＤＥＣ（MPEG Decorder）、ＧＰＵ１１５（選択手段）（描画手段）、およびＰＰＰ（Programable Preprocessor）１２０が接続されている。
【００４５】
サブバス１０２には、バスコントローラ１１６の他、ＧＰＵ１１５、例えばメインＣＰＵ１１１と同様に構成されるサブＣＰＵ１２１、例えばメインメモリ１１２と同様に構成されるサブメモリ１２２、サブＤＭＡＣ１２３、オペレーティングシステムなどが格納されたＲＯＭ（Read Only Memory）１２４、ＳＰＵ（Sound Processing Unit）１２５、ＡＴＭ（Asynchronous Transmission Mode）通信部１２６、補助記憶装置１２７、および入力デバイス用Ｉ／Ｆ（Interface）１２８が接続されている。
【００４６】
なお、ここでは、メインバス１０１では、高速でデータのやりとりが行われるようになされており、サブバス１０２では、低速でデータのやりとりが行われるようになされている。即ち、低速でやりとりが可能なデータについては、サブバス１０２を用いることで、メインバス１０１の高速性を確保するようになされている。
【００４７】
バスコントローラ１１６は、メインバス１０１とサブバス１０２とを切り離したり、メインバス１０１にサブバス１０２を接続したりするようになされている。メインバス１０１とサブバス１０２とが切り離された場合、メインバス１０１上からは、メインバス１０１に接続されたデバイスのみにしかアクセスできず、また、サブバス１０２上からも、サブバスに接続されたデバイスのみにしかアクセスすることができないが、メインバス１０１にサブバス１０２が接続された場合には、メインバス１０１およびサブバス１０２のいずれからであっても、いずれのデバイスにもアクセスすることができる。なお、例えば、装置の電源がオンにされた直後などの初期状態においては、バスコントローラ１１６はオープン状態になっている（メインバス１０１とサブバス１０２とが接続された状態となっている）。
【００４８】
メインＣＰＵ１１１は、メインメモリ１１２に記憶されたプログラムにしたがって各種の処理を行うようになされている。即ち、メインＣＰＵ１１１は、例えば、装置が起動されると、バスコントローラ１１６を介して、サブバス１０２上にある（サブバス１０２に接続された）ＲＯＭ１２４からブートプログラムを読み出して実行する。これにより、メインＣＰＵ１１１は、補助記憶装置１２７からアプリケーションプログラム（ここでは、ゲームのプログラム）および必要なデータ（例えば、ポリゴンなどのデータ）を、メインメモリ１１２やサブメモリ１１２にロードさせる。そして、メインＣＰＵ１１１は、このようにしてメインメモリ１１２にロードさせたプログラムを実行する。
【００４９】
メインＣＰＵ１１１は、ＧＴＥ（Geometry Transfer Engine）１１７を内蔵しており、このＧＴＥ１１７は、例えば複数の演算を並列に実行する並列演算機構を備え、メインＣＰＵ１１１からの要求に応じて、座標変換や、光源計算、３次元ポリゴンの透視変換、２次元スプライトの回転、拡大、縮小処理などのジオメトリ処理を高速に行うようになされている。このように、ＧＴＥ１１７は、メインＣＰＵ１１１からの要求にしたがった処理（ジオメトリ処理）を行うことにより、表示すべき画像を構成するポリゴン（本明細書中では、３点以上の頂点を有する多角形の他、直線（線分）や点も含まれるものとする）のデータ（以下、適宜、ポリゴンデータという）を生成し、メインＣＰＵ１１１に供給する。
【００５０】
メインＣＰＵ１１１は、ＧＴＥ１１７からポリゴンデータを受信すると、そのポリゴンデータをパケット化し、メインバス１０１を介してＰＰＰ１２０またはＧＰＵ１１５に転送するようになされている。また、メインＣＰＵ１１１は、必要に応じて、後述するＧＰＵ１１５において用いられる描画規則を指示するためのコマンド（以下、適宜、描画コマンドという）もパケット化して、ＧＰＵ１１５に送信するようになされている。
【００５１】
なお、メインＣＰＵ１１１は、キャッシュメモリ（Cache）１１９を内蔵しており、メインメモリ１１２にアクセスする代わりに、このキャッシュメモリ１１９にアクセスすることで、処理の高速化を図るようになされている。
【００５２】
メインメモリ１１２は、上述したように、プログラムやデータなどを記憶するになされている。メインＤＭＡＣ１１３は、メインバス１０１上のデバイスを対象に、ＤＭＡ転送の制御を行うようになされている。但し、バスコントローラ１１６がオープン状態にあるときは、メインＤＭＡＣ１１３は、サブバス１０２上のデバイスをも対象として制御を行うようになされている。ＭＤＥＣ１１４は、メインＣＰＵ１１１と並列に動作可能なＩ／Ｏデバイスで、画像伸張エンジンとして機能するようになされている。即ち、ＭＤＥＣ１１４は、ＭＰＥＧ（Moving Picture Experts Group）符号化されて圧縮された画像データを復号化するようになされている。
【００５３】
ＧＰＵ１１５は、レンダリングプロセッサとして機能するようになされている。即ち、ＧＰＵ１１５は、メインＣＰＵ１１１またはＰＰＰ１２０から送信されてくるパケットを受信し、そのパケットにポリゴンデータとして配置されている、例えば、ポリゴンの頂点の色データと奥行き（視点からの深さ）を示すＺ値に基づいて、ポリゴンに対応する画像データを、グラフィックメモリ１１８に書き込む（描画する）レンダリング処理を行うようになされている。さらに、ＧＰＵ１１５は、グラフィックメモリ１１８に書き込んだ画像データを読み出し、ビデオ信号として出力するようにもなされている。
【００５４】
なお、ＧＰＵ１１５は、必要に応じて、メインＤＭＡＣ１１３、あるいはサブバス１０２上のデバイスからもパケットを受信し、そのパケットに配置されているポリゴンデータにしたがってレンダリング処理を行うようになされている。
【００５５】
また、ＧＰＵ１１５は、例えば、共有頂点描画規則や、独立頂点描画規則などを含む複数の描画規則を記憶しており、その中から所定のものを選択し、その選択した描画規則にしたがって、ポリゴンの描画（テクスチャマッピングその他のレンダリング処理）を行うようになされている。なお、描画規則の選択は、メインＣＰＵ１１１から送信されてくる描画コマンドにしたがって行われるようになされている。
【００５６】
グラフィックメモリ１１８は、例えば、ＤＲＡＭなどで構成され、ＧＰＵ１１５から供給される画像データを一時記憶するようになされている。なお、グラフィックメモリ１１８は、例えば、２画面（２フレーム）分の画像データを記憶することができる領域を有しており、これにより、一方の領域に書き込みが行われている場合には、他方の領域から読み出しを行うことができるようになされている。
【００５７】
ＰＰＰ１２０は、メインＣＰＵ１１１またはメインＤＭＡＣ１１３から送信されてくるパケットを受信し、ＧＴＥ１１１におけるジオメトリ処理の一部を負担するようになされている。なお、ＰＰＰ１２０において処理されたパケットは、メインバス１０１を介さず、ＧＰＵ１１５に、直接転送されるようになされている。
【００５８】
サブＣＰＵ１２１は、サブメモリ１２２に記憶されたプログラムを読み出して実行することにより、各種の処理を行うようになされている。サブメモリ１２２には、メインメモリ１１２と同様に、プログラムや必要なデータが記憶されるようになされている。サブＤＭＡＣ１２３は、サブバス１０２上のデバイスを対象として、ＤＭＡ転送の制御を行うようになされている。なお、サブＤＭＡＣ１２３は、バスコントローラ１１６がクローズ状態にあるとき（メインバス１０１とサブバス１０２とが切り離されている状態にあるとき）のみ、バス権を獲得するようになされている。ＲＯＭ１２４は、上述したようにブートプログラムや、オペレーティングシステムなどを記憶している。なお、ＲＯＭ１２４には、メインＣＰＵ１１１およびサブＣＰＵ１２１の両方のプログラムが記憶されている。また、ＲＯＭ１２４は、ここでは、アクセス速度の遅いものが用いられており、そのため、サブバス１０２上に設けられている。
【００５９】
ＳＰＵ１２５は、サブＣＰＵ１２１またはサブＤＭＡＣ１２３から送信されてくるパケットを受信し、そのパケットに配置されているサウンドコマンドにしたがって、サウンドメモリ１２９から音声データを読み出すようになされている。そして、ＳＰＵ２５は、読み出した音声データを、図示せぬスピーカに供給して出力させるようになされている。ＡＴＭ通信部１２６は、例えば、図示せぬ公衆回線を介して行われる通信の制御（ＡＴＭ通信の制御）を行うようになされている。これにより、ビデオゲーム機のユーザは、他のビデオゲーム機のユーザと直接、あるいは所定のセンタ局を介してデータのやりとりをすることで対戦することができるようになされている。
【００６０】
補助記憶装置１２７は、例えば、ディスクドライブなどで、ＣＤ−ＲＯＭ５１（図１、図４）に記録されている情報（プログラム、データ）を再生するようになされている。また、補助記憶装置１２７は、記録装置３８（図１）に対する情報の記録や読み出しも行うようになされている。入力デバイス用Ｉ／Ｆ１２８は、コントロールパッドとしての操作装置１７（図１）の操作に対応する信号や、他の装置によって再生された画像や音声などの外部入力を受け付けるためのインターフェイスで、外部からの入力に応じた信号を、サブバス１０２上に出力するようになされている。サウンドメモリ１２９は、音声データを記憶している。
【００６１】
以上のように構成されるゲーム機本体２においては、装置の電源がオンにされると、メインＣＰＵ１１１において、ブートプログラムがＲＯＭ１２４から読み出されて実行されることにより、補助記憶装置１２７にセットされたＣＤ−ＲＯＭ５１からプログラムおよびデータが読み出され、メインメモリ１１２およびサブメモリ１２２に展開される。そして、メインＣＰＵ１１１またはサブＣＰＵ１２１それぞれにおいて、メインメモリ１１２またはサブメモリ１２２に展開されたプログラムが実行されることにより、ゲームの画像、音声が再生される。
【００６２】
即ち、例えば、メインＣＰＵ１１１において、メインメモリ１１２に記憶されたデータにしたがって、所定の３次元画像を構成するポリゴンを描画するためのポリゴンデータが生成される。このポリゴンデータは、パケット化され、例えば、ＧＰＵ１１５に供給される。ＧＰＵ１１５は、メインＣＰＵ１１１からのパケットを受信し、そのパケットに配置されているポリゴンデータにしたがって、レンダリング処理を行い、これにより、画像データを、グラフィックメモリ１１８に書き込む。そして、ＧＰＵ１１５は、グラフィックメモリ１１８から、既に書き込んだフレームの画像データを読み出し、ビデオ信号として出力する。これにより、ゲームの画面（画像）が表示される。
【００６３】
一方、サブＣＰＵ１２１では、サブメモリ１２２に記憶されたデータにしたがって、音声の生成を指示するサウンドコマンドが生成される。このサウンドコマンドは、パケット化され、サブバス１０２を介して、ＳＰＵ１２５に供給される。ＳＰＵ１２５は、サブＣＰＵ１２１からのサウンドコマンドにしたがって、サウンドメモリ１２９から音声データを読み出して出力する。これにより、ゲームのＢＧＭ（Background Music）その他の音声が出力される。
【００６４】
次に、図６のフローチャートを参照して、図５のゲーム機本体２におけるポリゴンの描画処理について、さらに説明する。なお、ＣＤ−ＲＯＭ５１（図１、図４）には、３次元ポリゴンと２次元スプライトのデータが混在して記憶されており、メインＣＰＵ１１１からＧＰＵ１１５に転送されるパケットに配置されたポリゴンデータとしては、この３次元ポリゴンと２次元スプライトとの２種類があるものとする。
【００６５】
ポリゴンの描画が行われる場合においては、まず最初に、ステップＳ１において、そのポリゴンが、３次元ポリゴンであるか、または２次元スプライトであるかが判定され、３次元ポリゴンまたは２次元スプライトであると判定された場合、ステップＳ２またはＳ３に進み、描画規則が共有頂点描画規則または独立頂点描画規則にそれぞれ設定される。そして、ステップＳ４に進み、その設定された描画規則にしたがって、ポリゴンの描画が行われる。
【００６６】
即ち、メインＣＰＵ１１１は、ステップＳ１において、ＧＰＵ１１５に転送するパケットが、３次元ポリゴンまたは２次元スプライトのうちのいずれのデータが配置されたパケットであるかを判定し、３次元ポリゴンまたは２次元スプライトのデータが配置されたパケットを、ＧＰＵ１１５に転送する場合、その転送に先立って、共有頂点描画規則または独立頂点描画規則を用いるべきことを指示する描画コマンドを、ＧＰＵ１１５に転送する。
【００６７】
ＧＰＵ１１５は、メインＣＰＵ１１１から転送されてきた描画コマンドにしたがい、ステップＳ３またはＳ４において、用いるべき描画規則として、共有頂点描画規則または独立頂点描画規則をそれぞれ選択し、その後、ステップＳ４において、その選択した描画規則にしたがって、メインＣＰＵ１１１から転送されてくるパケットに配置されたデータに対応するポリゴンを描画する。
【００６８】
従って、このゲーム機本体２においては、３次元ポリゴンは共有頂点描画規則にしたがって、また、２次元スプライトは独立頂点描画規則にしたがって描画されるので、即ち、ゲーム機本体２によれば、３次元ポリゴンは、前述の図１２と同様の図７に示すように描画され、２次元スプライトは、前述の図１３と同様の図８に示すように描画されるので、３次元ポリゴンと２次元スプライトとが混在していても、画質の劣化のない画像を得ることができる。また、テクスチャに不自然さが生じることも防止することができる。
【００６９】
なお、メインＣＰＵ１１１において、ポリゴンデータが配置されたパケットを送信するたびに、描画コマンドを送信するのは、処理が繁雑になるので、メインＣＰＵ１１１には、２次元スプライトのデータが配置されたパケットを送信した後に、３次元ポリゴンのデータが配置されたパケットを送信するときに、共有頂点描画規則を用いるべきことを指示する描画コマンドを送信させるとともに、３次元ポリゴンのデータが配置されたパケットを送信した後に、２次元スプライトのデータが配置されたパケットを送信するときに、独立頂点描画規則を用いるべきことを指示する描画コマンドを送信させるようにするのが望ましい。
【００７０】
以上、本発明を、ビデオゲーム機に適用した場合について説明したが、本発明は、ビデオゲーム機の他、ポリゴン単位で画像の描画を行う、例えば、ビデオエフェクタや、コンピュータグラフィックシステム、その他の画像処理装置に適用可能である。
【００７１】
なお、本実施例においては、３次元ポリゴンと２次元スプライトとが混在している場合を対象としたが、本発明は、その他のデータ形式のポリゴンが混在している場合にも適用可能である。
【００７２】
また、上述したように、描画するポリゴンが、３次元ポリゴンから２次元スプライトに、または２次元スプライトから３次元ポリゴンに切り替わるときに、描画コマンドを送信するようにした場合には、３次元ポリゴンと、２次元スプライトとは、それぞれまとめて描画するようにするのが望ましい。この場合、描画コマンドの送信回数を低減することができる。
【００７３】
さらに、本実施例では、ポリゴンデータが配置されたパケットとは別に、描画コマンドを送信するようにしたが、描画コマンドは、例えば、ポリゴンデータが配置されたパケットに含めて送信するようにすることも可能である。
【００７４】
また、本発明は、例えば、ポリゴンの形状や、頂点の位置関係、その描画順に無関係に適用可能である。
【００７５】
【発明の効果】
請求項１に記載の描画装置および請求項４に記載の描画方法によれば、単位図形を描画するための描画規則が選択され、その描画規則にしたがって、単位図形が描画される。従って、自然で、かつ画質の劣化のない画像を得ることが可能となる。
【図面の簡単な説明】
【図１】本発明を適用したビデオゲーム機の一実施例の構成を示す平面図である。
【図２】図１のビデオゲーム機の正面図である。
【図３】図１のビデオゲーム機の側面図である。
【図４】ＣＤ−ＲＯＭ５１を示す平面図である。
【図５】図１のゲーム機本体２の電気的構成例を示すブロック図である。
【図６】図５のゲーム機本体２におけるポリゴンの描画処理を説明するためのフローチャートである。
【図７】図５のゲーム機本体２による３次元ポリゴンの描画結果を示す図である。
【図８】図５のゲーム機本体２による２次元スプライトの描画結果を示す図である。
【図９】３次元ポリゴンおよび２次元スプライトを説明するための図である。
【図１０】共有頂点描画規則を説明するための図である。
【図１１】独立頂点描画規則を説明するための図である。
【図１２】３次元ポリゴンを共有頂点描画規則にしたがって描画した場合の描画結果を示す図である。
【図１３】２次元スプライトを独立頂点描画規則にしたがって描画した場合の描画結果を示す図である。
【図１４】２次元スプライトを共有頂点描画規則にしたがって描画した場合の描画結果を示す図である。
【図１５】２次元スプライトを横方向に２倍して、独立頂点描画規則にしたがって描画した場合の描画結果を示す図である。
【図１６】２次元スプライトを横方向に２倍して、共有頂点描画規則にしたがって描画した場合の描画結果を示す図である。
【符号の説明】
１１１  メインＣＰＵ，  １１２  メインメモリ，  １１５  ＧＰＵ（選択手段）（描画手段），  １１７  ＧＴＥ，  １１８  グラフィックメモリ，  １２０  ＰＰＰ
【図１】
0003795580.tif 000002
【図２】
0003795580.tif 000003
【図３】
0003795580.tif 000004
【図４】
0003795580.tif 000005
【図５】
0003795580.tif 000006
【図６】
0003795580.tif 000007
【図７】
0003795580.tif 000008
【図８】
0003795580.tif 000009
【図９】
0003795580.tif 000010
【図１０】
0003795580.tif 000011
【図１１】
0003795580.tif 000012
【図１２】
0003795580.tif 000013
【図１３】
0003795580.tif 000014
【図１４】
0003795580.tif 000015
【図１５】
0003795580.tif 000016
【図１６】
0003795580.tif 000017