(57)【特許請求の範囲】
【請求項１】
ソース画像を自在に変形して描画するテクスチャーマッピングによる描画方法において、
テクスチャーマッピングの走査方法として、ソース画像領域を１ドットづつ水平スキャンして描画画像領域へマッピングする走査（以下、ソース水平スキャンと呼ぶ）、または、前記描画画像領域を１ドットづつ水平スキャンし前記ソース画像領域からマッピングする走査（以下、描画水平スキャンと呼ぶ）を、所定の判定基準に応じて動的に選択することを特徴とする描画方法。
【請求項２】
請求項１において、前記判定基準は、描画図形の種類がｎ角形以下、描画図形が特定ウインドウの外部（または内部）、描画図形の変形の程度を示す偏平率が閾い値より大で、これらの一つを満足するときは前記描画水平スキャンを選択し、これらの全てを満足しないときは前記ソース水平スキャンを選択することを特徴とする描画方法。
【請求項３】
請求項２において、前記偏平率は、描画図形の最大高さまたは最大高さ／底辺を算出して求めることを特徴とする描画方法。
【請求項４】
描画すべき画像を指示するＣＰＵと、ソース画像領域と描画画像領域をそれぞれ有する画像メモリと、前記ソース画像領域のデータを前記描画画像領域へテクスチャーマッピングする描画プロセッサを備えるグラフィックス装置において、
前記描画プロセッサは、前記テクスチャーマッピングの複数の走査方法の一つを前記ＣＰＵからのモードの指定に応じて決定する走査方法選択手段を有することを特徴とするグラフィックス装置。
【請求項５】
請求項４において、前記複数の走査方法に、前記ソース画像領域を１ドットづつ水平スキャンし描画画像領域へマッピングする走査（以下、ソース水平スキャンと呼ぶ）と、前記描画画像領域を１ドットづつ水平スキャンしソース画像領域からマッピングする走査（以下、描画水平スキャンと呼ぶ）を含むグラフィック装置。
【請求項６】
請求項４または５において、前記モードの指定には、アプリケーション単位の固定モード、ポリゴン単位の固定モード、前記描画プロセッサ側で決定する自動モードを含むことを特徴とするグラフィック装置。
【請求項７】
請求項５において、前記ＣＰＵからのコマンド中に、前記ソース水平スキャンまたは前記描画水平スキャンを指定するフィールドを含むことを特徴とするグラフィックス装置。
【請求項８】
請求項６において、前記走査方法選択手段は、前記ＣＰＵからのコマンドに前記自動モードが指定されている場合に、所定の判定条件に従ってポリゴン毎の走査方法を動的に決定することを特徴とするグラフィックス装置。
【請求項９】
請求項８において、前記自動モードは、描画図形の図形種が三角形、描画図形が特定のウインドウの外部（内部）、描画図形の偏平率が閾い値より大からなる判定条件の一つを満足するときは前記描画水平スキャンを、前記判定条件の全てを満足しないときは前記ソース水平スキャンを選択することを特徴とするグラフィックス装置。
【請求項１０】
請求項９において、前記走査方法選択手段は、テクスチャーマッピングを実施する描画図形の偏平率を算出する演算手段を有することを特徴とするグラフィックス装置。
【請求項１１】
描画すべき画像を指示するＣＰＵと、ソース画像領域と描画画像領域をそれぞれ有する画像メモリと、前記ソース画像領域のデータを前記描画画像領域へテクスチャーマッピングする描画プロセッサを備えるグラフィックス装置において、
前記描画プロセッサは、前記テクスチャーマッピングの走査方法として、前記ソース画像領域を１ドットづつ水平スキャンし描画画像領域へマッピングする走査（以下、ソース水平スキャンと呼ぶ）と、前記描画画像領域を１ドットづつ水平スキャンしソース画像領域からマッピングする走査（以下、描画水平スキャンと呼ぶ）の一つを選択する走査方法選択手段を設け、
前記描画プロセッサのコマンド中に、前記ソース水平スキャンにおける前記ソース画像領域の走査ライン数を間引き指示するフィールドを有することを特徴とするグラフィックス装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明はアミューズメント機器、画像通信端末、プリンタなどで使用され、画像データを加工、編集して出力するグラフィック装置に関し、特に、テクスチャーマッピング描画方法に関する。
【０００２】
【従来の技術】
近年、グラフィックス装置では、テクスチャーマッピングと呼ばれる矩形のソース画像を自在に変形描画する処理を実現し、臨場感に溢れる３次元グラフィックスを実現している。このテクスチャーマッピングの描画は、特開平６−２８４８５号記載のように、テクスチャーアドレスを発生する手段として、ソース画像領域を１ドットづつ水平スキャンし描画画像領域へマッピングするモード（以下、ソース水平スキャンと呼ぶ）、あるいは、特開平１−３２３９３号記載のように、描画画像領域を１ドットづつ水平スキャンしソース画像領域からマッピングするモード（以下、描画水平スキャンと呼ぶ）を固定的に使用していた。
【０００３】
【発明が解決しようとする課題】
上記従来の技術では、それぞれのテクスチャマッピング走査方法の利害得失を有効に利用できないという問題があった。つまり、ソース水平スキャンでは、自然な３次元画像を生成できるが、偏平した画像を描画する際、描画画像の抜けを防止するために重ね書きが多数発生し、描画速度が極端に低下するという問題があった。一方、描画水平スキャンでは、上記のような重ね書きは発生しないが、四角形を描画する際、画像が平面的になり、不連続性が目立つという問題があった。
【０００４】
本発明の目的は、テクスチャマッピングによる高速で高画質な描画方法と、その手法を応用したグレードの高いグラフィックス装置を提供することにある。
【０００５】
【課題を解決するための手段】
上記目的を達成するための本発明の特徴は、ソース画像を自在に変形して描画するテクスチャーマッピングによる描画方法において、テクスチャーマッピングの走査方法として、ソース画像領域を１ドットづつ水平スキャンして描画画像領域へマッピングする走査（以下、ソース水平スキャンと呼ぶ）、または、前記描画画像領域を１ドットづつ水平スキャンし前記ソース画像領域へマッピングする走査（以下、描画水平スキャンと呼ぶ）を、所定の判定基準に応じて動的に選択することにある。
【０００６】
前記判定基準は描画図形の種類がｎ角形以下、描画図形が特定ウインドウの外部（または内部）、描画図形の変形の程度を示す偏平率が閾い値より大であり、これらの一つを満足するときは前記描画水平スキャンを選択し、これらの全てを満足しないときは前記ソース水平スキャンを選択する。
【０００７】
このような描画方法を応用する装置として、描画すべき画像を指示するＣＰＵと、ソース画像領域と描画画像領域をそれぞれ有する画像メモリと、前記ソース画像領域のデータを前記描画画像領域へテクスチャーマッピングする描画プロセッサを備え、前記描画プロセッサは、前記テクスチャーマッピングの複数の走査方法の一つを、前記ＣＰＵからのモードの指定に応じて決定する走査方法選択手段を有することを特徴とするグラフィックス装置として実現される。
【０００８】
前記モードの指定には、アプリケーション単位の固定モード、ポリゴン単位の固定モード、前記描画プロセッサ側で決定する自動モードを含み、該自動モードの場合には、前記判定条件に従ってポリゴン毎の走査方法を動的に決定する。
【０００９】
上記目的を達成するための本発明の他の特徴は、ソース画像を自在に変形して描画するテクスチャーマッピングによる描画方法において、前記ソース水平スキャンのソース画像領域の走査ライン数を間引き指定することにある。
【００１０】
前記間引き指定する走査ライン数は、前記描画画像領域の図形高さに相当する走査ライン数を最小値とする。
【００１１】
このような描画方法を応用する他の装置として、描画すべき画像を指示するＣＰＵと、ソース画像領域と描画画像領域をそれぞれ有する画像メモリと、前記ソース画像領域のデータを前記描画画像領域へテクスチャーマッピングする描画プロセッサを備え、前記ＣＰＵまたは前記描画プロセッサのコマンド中に、前記ソース水平スキャンにおけるソース画像領域の走査ライン数を間引き指示するフィールドを有することを特徴とするグラフィック装置として実現される。
【００１２】
【作用】
本発明によると、コマンドによる指定や描画図形の性質等に応じて、高画質なソース水平スキャンまたは高速な描画水平スキャンを選択してテクチャーマッピングを実行するため、描画の処理性と画質をともに向上できる。
【００１３】
特に、描画図形の種別や特定ウインドウとの関係あるいは変形の程度などをポリゴン毎に判定して、画質と処理性の両面からみた最適な走査方法を動的に決定できるので、グレードの高いグラフィックス装置を提供できる。
【００１４】
また、前記ソース水平スキャンのソース描画ライン数を間引き指定することができるため、画質を維持しながら処理性を向上でき、実時間に追随できる所定時間内などに描画処理を完了することも可能になる。
【００１５】
【実施例】
以下、本発明の一実施例を図を参照して説明する。
【００１６】
図１は本発明の一実施例の高速グラフィックス装置３０のブロック構成図である。高速グラフィックス装置３０は、入力パッド２０の指示に基づき、ＣＰＵ１１でアプリケーションプログラムを実行し、グラフィックスプロセッサ１０に描画すべき画像を指示する。描画プロセッサ１０は描画メモリ１５、表示メモリ１６を用いて所望の画像を合成し、表示部１０７を経由しモニタ２１に表示する。
【００１７】
以下、本装置の動作を説明する。ＣＰＵ１１は、プログラムメモリ１２を用いて処理すべきコマンドおよびソースデータを作成し、グラフィックスプロセッサ１０に転送する。グラフィックスプロセッサ１０は、コマンドおよびソースデータを一時的にコマンドメモリ１３とソースメモリ１４に記憶する。このコマンドにはグラフィックスプロセッサ１０自身で生成したものを含む。
【００１８】
その後、ＣＰＵ１１は実行開始コマンドを発行する。グラフィックスプロセッサ１０内のコマンド解析部１０１は、実行開始コマンドにより、コマンドメモリ１３からコマンドを取りだし、必要なパラメータを走査方法選択部１０２に転送し、起動する。
【００１９】
走査方法選択部１０２は、コマンド解析部１０１からのコマンドやパラメータに従って走査方法を決定する。そして、ソースデータの格納されている座標および描画座標を計算し、ソースアドレス発生部１０３を起動する。同様に、描画結果を格納する座標および描画座標を計算し、描画アドレス発生部１０４を起動する。
【００２０】
ソースアドレス発生部１０３及び描画アドレス発生部１０４では、走査方法選択部１０２より指定されたテクスチャーマッピングの走査手法で、ソースデータの格納されている座標および描画座標を演算し、ソースメモリ１４と描画メモリ１５をアクセスする。すなわち、指定された走査方法がソース水平スキャンの場合は、ソース画像領域を１ドットづつ水平スキャンし描画画像領域へマッピングする。また、描画水平スキャンの場合は、描画画像領域を１ドットづつ水平スキャンしソース画像領域からマッピングする。
【００２１】
ソースメモリ１４から読み出されたソースデータは、描画部１０５で加工処理され、描画メモリ１５に書き込まれる。描画メモリ１５と表示メモリ１６はスイッチ１０８で切り替わる交代バッファをなしており、前のフレームにて書き込まれた画像は表示メモリ１６に格納されている。表示アドレス発生部１０６で発生したアドレスで表示メモリ１６をアクセスし、読み出しデータを、表示部１０７を経由しモニター２１に出力し、表示する。
【００２２】
図２は、テクスチャーマッピングの走査方法の概念図である。同図（ａ）、（ｂ）はソース画像領域のデータを１ドットづつ水平スキャンし描画画像領域へマッピングするソース水平スキャンを示しており、（ａ）がソース側の走査処理、（ｂ）が描画側の走査処理を示している。図示のように、このモードではソース側のＹ座標を固定し、ソース側のＸ座標を１ドットづつ進め、これが描画側のどの位置にマッピングされるかを計算し、描画する。
【００２３】
ソース水平スキャンによる描画方法では、ソースの四角形を横方向に細かな短冊状に切り、描画側の対応する辺の位置に合わせて張り付けていくため、図２（ｂ）のように垂直な線分が曲がって再現されて擬似立体的な表現が可能になり、見た目に自然な画像を生成できるメリットがある。しかし、描画画像の形状、サイズにかかわらず原画像をすべて走査するための時間が必要であり、また、特に描画画像が偏平していると重ね書きが頻発し、多大な描画時間を必要とするという欠点がある。
【００２４】
図２（ｃ）、（ｄ）は描画画像領域を１ドットづつ水平スキャンしソース画像領域からマッピングする描画水平スキャンを示しており、（ｃ）がソース側の走査処理、（ｄ）が描画側の走査処理を示している。図示のように、このモードでは描画側のＹ座標を固定し、描画側のＸ座標を１ドットづつ進め、これがソース側のどの位置からマッピングされるかを計算し、ソースデータをアクセスする。
【００２５】
描画水平スキャンによる描画方法では、描画される部分から逆算するため、不必要な重ね書きが全く発生せず、高速な描画が可能になるメリットがある。しかし、描画面が平面形状でない、例えばねじれた曲面へのテクスチャーマッピングなどの場合は、ソース画像の逆算時間が増大して実用的でなくなる。また、３次元描画の場合はポリゴンが四角形以上になると、テクスチャーマッピング後の画像に不自然な歪みが発生する。これは、逆算時のソースのマッピング位置が複数個存在するにもかかわらず、採用ルールが統一的に適用されないために生ずる。
【００２６】
本発明は、テクスチャーマッピングの複数の走査方法をコマンドで指定したり、描画図形の性質等から最適な走査方法を自動選択したりして、高速で画質の良いグラフィックス装置を実現するもので、以下にその詳細を説明する。
【００２７】
図３は、走査方法選択部による走査方法の決定処理フローを示している。走査方法の決定方式には大別してアプリケーション単位指定、コマンド指定、ポリゴン単位指定の３のモードがある。まず、ＣＰＵ１１のコマンドによる指定モードを判別して（１１０１）、モードに応じた走査方法の決定処理を実行する。
【００２８】
アプリケーション単位指定は、もっともマクロな指定方法であり固定モードである。たとえば、ゲームのカートリッジのＲＯＭなどに、アプリケーション単位で、テクスチャーマッピングの走査方法を予め記憶している。自然な画像表現が必要なものにはソース水平スキャン、高速描画が必要なものには描画水平スキャンを、それぞれ固定走査方式指定情報として記述し、この情報を参照して走査方法を決定する（１１０２）。固定走査方式指定情報は、コマンド内の走査フィールドに後述のように記述されている。
【００２９】
コマンド指定は、描画図形の種類を示す図形の角数ｎ、描画座標位置と特定ウインドウの内外関係、描画図形の形状を示す偏平率などの判定条件により、テクスチャーマッピングの走査方法を動的に決定する自動モードである。本実施例での図形の角数ｎは、テクスチャーマッピング後に不自然な歪みの発生しない三角形を判定基準としている。
【００３０】
コマンド指定による走査方法の決定アルゴリズムは、描画図形の種類が三角形か判定し（１１０４）、描画図形が所定のウインドウ外か判定し（１１０５）、いずれも否（ＮＯ）であれば偏平率を計算し（１１０６）、偏平率が閾い値より大きいか判定し（１１０７）、閾い値より小さければソース水平スキャンを選択し（１１０８）、上記判定でいずれかを満たしていれば（ＹＥＳ）描画水平スキャンを選択する（１１０９）。ここでは、単純に３つの判定基準を順番に並べたが、順番の変更や判定基準の組み合わせ、評価関数の導入、他の条件の追加など、種々の変形は容易に実現できる。
【００３１】
ポリゴン単位指定とは、１ポリゴン毎に、走査方法を指定する固定モードである。コマンド内の走査フィールドに、後述のように指定されている走査方法を参照して決定する（１１０３）。
【００３２】
このように、ＣＰＵ１１からの指定手法を判別し、アプリケーション単位指定、コマンド指定またはポリゴン単位指定のいずれかに応じた処理によって走査方法を決定し、ソースアドレス発生部１０３と描画アドレス発生部１０４へ指示する（１１１０）。
【００３３】
図４（ａ）は、グラフィックスプロセッサ１０のコマンドリストの一例を示している。コマンドリストはポリゴン毎に設定され、コマンドメモリ１３に格納されている。オペコードはコマンドの種類を示す。パラメータはコマンドに付随する条件を規程している。走査方式指定フィールドは、テクスチャーマッピングの走査方法の選択を行うフィールドである。ソースアドレス情報はソースデータの開始アドレスやサイズ、描画アドレス情報は描画開始アドレスや形状を指定する。このアドレス情報から描画するライン数を算出できる。アトリビュートは、画素演算部１０５で用いる画像処理データの参照データを記述している。
【００３４】
図４（ｂ）は、走査方式指定情報のコマンドフィールドの詳細を示している。このコマンドは、固定モードではＣＰＵ１１で、自動モードではＣＰＵ１１とグラフィックスプロセッサ１０によって作成される。
【００３５】
コマンド解析部上位２ビットは走査方式指定ビット（ＳＤ）を表し、テクスチャーマッピングの走査モードを決定するための処理手法の指定を行う。ＳＤ＝００の手法は固定モードであり、走査モードの変更はない。ＳＤ＝０１の手法は自動モードであり、図形種判定（Ｓ）、ウインドウ判定（Ｗ）、偏平率判定（Ｈ）の各々のイネブルビットに応じて自動的に走査方法を決定し、これによって走査方法の動的な変更が可能になる。ポリゴン単位の個別指定モードは、ＳＤ＝１０でソース水平スキャン、ＳＤ＝１１で描画水平スキャンをコマンドリストにいて指定する。
【００３６】
図形種判定イネブルビット（Ｓ）は、登録した図形種を描画水平スキャンとすることを許可するビットである。ウインドウ判定イネブルビット（Ｗ）は、登録したウインドウ外に描画される図形を描画水平スキャンとすることを許可するビットである。偏平率判定イネブルビット（Ｈ）は描画される図形の偏平率またはその評価量を計算し、登録した閾値より大きいときに描画水平スキャンで描画することを許可するビットである。
【００３７】
図５に、ウインドウ判定による走査方法の自動設定の概念図を示す。画面１２００に特定ウインドウ１２０１が設定されている。ウインドウ以外の図形１２０２、１２０６‐１２０９は、静止した単純な図形で構成されている。ウインドウ内の図形１２０３‐１２０５は、例えば宇宙船の操縦席のスクリーンを想定していて、高速で移動、変形し、複雑な形状をしており、描画に多くの時間を要している。従って、ウインドウ内の図形を高速に描画すれば、全体の処理を高速化できる。本実施例では、ウインドウ判定イネブルビット（Ｗ）を１にすることで、ウインドウ内の図形を高速の描画水平スキャンで描画する。
【００３８】
図６に、図形の偏平率を求めるための概念図を示す。四角形ＡＢＣＤの頂点Ｂを原点として正規化した概念図で、頂点ＡのＸ座標はＸａ、Ｙ座標はＹａ、頂点ＣのＸ座標はＸｃ、Ｙ座標はＹｃと定義する。同図（ａ）はＹａ≧Ｙｃの場合を示し、同図（ｂ）はＹａ＜Ｙｃの場合を示している。
【００３９】
偏平率とは、ソース画像に比べて描画画像の変形量を定量化する指標である。重ね書きが頻発するのは、左右の辺の傾きが底辺に対して水平に近く、図形高さが低い場合である。このため、図形高さの最大値（図６のＡＩ）を評価量とすることができる。
【００４０】
図形の偏平率は、ソース図形の高さと描画図形の高さを比較することで判別できる。図６（ａ）の場合、描画図形の高さＡＩは、角ＣＢＦが小さければ、距離ＡＥに近似することができる。距離ＡＥは距離ＡＧ−距離ＥＧであり、距離ＡＧはＹａ、距離ＥＧはＸａ＊Ｙｃ／Ｘｃと計算できる。これは、三角形ＢＧＥと三角形ＢＦＣは相似形であり、ＥＧ：ＣＦ＝ＢＧ：ＢＦが成立するからである。この場合、求めたＡＥの値は真のＡＩの値に比べて誤差を含んでいる。しかし、ＡＩがＡＥを超えることはない。
【００４１】
同様に、図６（ｂ）の場合、ＡＩはＡＫと近似できるので、ＡＫ＝ＪＢ、ＪＢ＝ＪＧ−ＢＧより、ＡＫ＝Ｘｃ＊Ｙａ／Ｙｃ−Ｘａと計算できる。これは、三角形ＪＧＡと三角形ＢＦＣは相似形で、ＪＧ：ＢＦ＝ＡＧ：ＣＦが成立するからである。この場合も、求めたＡＫは真のＡＩに比べて誤差を含んでいるが、ＡＩがＡＫを超えることはない。
【００４２】
上記の例では偏平率の評価量を図形高さとしたが、高さと底辺の比や底辺と側辺がなす角度（図６の角ＡＢＣ）によってもよい。なお、図形高さは後述する描画ライン数の決定にも利用できる。
【００４３】
本実施例によれば、テクスチャーマッピングの走査方法として、高画質のソース水平スキャンと高速な描画水平スキャンを、ＣＰＵからの指定や所定のポリゴン性質等に応じて自動的に選択できる。
【００４４】
また、図形種別、特定ウインドウとの内外関係またはポリゴン形状より計算した偏平率などに応じて、ダイナミックに走査方法を切り替えることができるので、処理性と画質の両方を向上できる。なお、判定条件の一つとして、要求される描画処理時間による選択も可能である。
【００４５】
次に、本発明の他の実施例として、ソース水平スキャンを高速化する手法を、図４（ｂ）を参照して説明する。
【００４６】
ソース水平スキャン方式では、ソースの高さだけスキャンして描画するため、描画画像が偏平していると多数の重ね書きが発生する。このため、描画する図形の高さを計算して描画に必要なライン数を取得し、このライン数に合うようにソースのスキャンを間引いて描画すれば、その分だけ処理を高速化できる。
【００４７】
走査方式指定フィールドのスキップモード（ＫＭ）は、ＣＰＵ１１またはグラフィックスプロセッサ１０からの指定で、ソース水平スキャンの走査ライン数を切り替える。ＫＭ＝００で毎ライン描画、ＫＭ＝０１で走査ライン数ＬＮ（８ビット）で指定したライン数のみ描画、ＫＭ＝１０で走査飛ばしパターンＰＴ（８ビット）で指定したパターンでラインスキップを実行する。
【００４８】
ＫＭ＝０１のときは、ＬＮ本のラインを描画する場合に平均して間引く必要がある。このため、描画ライン数ＬＮを基点に走査ラインＬを、Ｌ＝Ｌ＋Ｍによって繰返し決定する（Ｍ＝ＬＮ）。Ｌ＞（ソースの全ライン数ＡＮ）となると、その端数（超過数）を新たなＭ（＝Ｌ−ＡＮ）として、上記のＬ＝Ｌ＋Ｍによる走査ラインの決定を繰り返す。
【００４９】
ＫＭ＝１０のときは、ＰＴのパターンで間引きを指示するが、ＰＴの上位ビットからスキャンし、該当ビットが１であれば描画しないで次のラインに移り、該当ビットが０であれば描画する。最下位ビットまで来たら、再度ＰＴの最上位ビットに戻って繰り返す。例えば、５０％間引きのＰＴパターンは、フィールドが８ビットの場合（１０１０１０１０）である。
【００５０】
上記の例では、ＣＰＵからのコマンドによって描画ライン数ＬＮを設定しているが、走査方式指定フィールドに偏平率のビットを設けて、偏平率の評価量である図形高さを基に、走査ライン数を自動設定することも容易に実現できる。たとえば、描画図形の高さに相当するライン数（ドット数）を、ソース図形の走査ライン数の最小値として設定する。
【００５１】
本実施例によるソース水平スキャンの高速化の手法は、グラフィックスプロセッサ１０に走査方法選択部１０２を有しない、従来タイプのグラフィックス装置にもそのまま適用できる。この場合、走査方式指定フィールドのスキップモード（ＫＭ）は、ＣＰＵから指定される。
【００５２】
本実施例のソース水平スキャンによれば、描画のライン数を限定したり、描画すべきライン数あるいは描画しないラインをパターン設定して、間引きする処理ライン数を処理前に確定させ、画質を維持しながら描画を高速化することができる。
【００５３】
次に、本発明のグラフィックス装置を実現するハードウェア構成の一適用例を、図７〜図９により説明する。
【００５４】
図７は、走査方法設定部１０２のハードウエア構成を示している。コマンド解析部１０１からのアドレスＭＡをアドレスデコーダ１２１でデコードし、データＭＤをレジスタＲａ１からＲｎに書き込む。制御信号Ｔｒｉｇを入力したら、シーケンサ１２２が動作し、ＡＬＵａ、ＡＬＵｂとレジスタＲａ１からＲｎを用いて図３のフローを実行する。ここで生成されたソースアドレス、描画アドレスはバスＭＬＡ、ＭＬＢを通してソースアドレス発生部１０３、描画アドレス発生部１０４に送られる。
【００５５】
図８はソースアドレス発生部１０３、描画アドレス発生部１０４のブロック図を示す。コマンド解析部１０１からのアドレスＭＡによって選択されるレジスタに走査方法設定部１０２で作成したアドレスパラメータを書込み、アドレス発生のＤＤＡを起動する。ソース側も描画側も同じ構成となる。
【００５６】
図９は描画部１０５のブロック図を示す。ソースアドレス発生部１０３のアドレスで読み出したソースデータをラッチ１０５４、１０５５でタイミング調整し、合成器１０５６に入力する。走査方法設定部１０２で生成した重畳データＤＤは、ラッチ１０５１を経由し演算器１０５２とレジスタ１０５３に接続され補間処理される。この補間処理されたデータは合成器１０５６の片方の入力に接続され、ソースデータと合成し、ラッチ１０５７を経由し描画メモリ１５に書込を行う。
【００５７】
【発明の効果】
本発明によれば、コマンドによる指定や描画図形の性質等に応じて、高画質なソース水平スキャンまたは高速な描画水平スキャンを選択してテクチャーマッピングを実行するため、使い勝手がよく描画の処理性と画質をともに向上できる。
【００５８】
本発明によれば、描画図形の性質などをポリゴン毎に判定して、画質と処理性の両面からみた最適な走査方法を動的に決定できるので、グレードの高いグラフィックス装置を提供できる。
【００５９】
本発明によれば、ソース水平スキャンのソース描画ライン数を間引き指定することができるため、高画質なソース水平スキャンの処理性を向上できる。また、所定時間内（例えば、実時間あるいは処理終了予定時間）に描画処理を完了することも可能になる。
【図面の簡単な説明】
【図１】本発明の一実施例によるグラフィックス装置のブロック構成図。
【図２】テクスチャーマッピングの走査手法を説明する概念図。
【図３】走査方法の選択を行う処理フローチャート。
【図４】グラフィックスプロセッサのコマンドリストとコマンドフィールドの説明図。
【図５】ウインドウ判定による走査方法の自動決定を説明する概念図。
【図６】偏平率の計算方法を説明する概念図。
【図７】走査方法選択部のハード構成図。
【図８】ソースアドレス発生部及び描画アドレス発生部のハード構成図。
【図９】描画部のハード構成図。
【符号の説明】
１０…グラフィックスプロセッサ、１１…ＣＰＵ、１２…プログラムメモリ、１３…コマンドメモリ、１４…ソースメモリ、１５…描画メモリ、１６…表示メモリ、１０１…コマンド解析部、１０２…走査方法選択部、１０３…ソースアドレス発生部、１０４…描画アドレス発生部、１０５…描画部、１０６…表示アドレス発生部、１０７…表示部、１０８…スイッチ。
【図１】
0003688765.tif 000002
【図２】
0003688765.tif 000003
【図３】
0003688765.tif 000004
【図４】
0003688765.tif 000005
【図５】
0003688765.tif 000006
【図６】
0003688765.tif 000007
【図７】
0003688765.tif 000008
【図８】
0003688765.tif 000009
【図９】
0003688765.tif 000010