(57)【要約】  多数の異なるオブジェクトを含むコンピュータ発生映像の質を改善する方法及び装置が提供される。映像の各ピクセルに対して、そのピクセルでレンダリングされるオブジェクト及びそのピクセルに要求されるフィルタリングに基づいてフラグを発生する。このフラグをフラグ記憶装置に記憶する。その後、このフラグを検索することができ、そして出力ピクセルを発生するために１つ以上のピクセルに適用すべきフィルタを選択する。次いで、その選択されたフィルタをピクセルに適用し、そしてそのピクセルを表示のために供給する。【選択図】図１
2009514083.tif 000002
【特許請求の範囲】
【請求項１】
多数の異なるオブジェクトを含むコンピュータ発生映像の質を改善する方法において、
映像の各ピクセルに対して、そのピクセルでレンダリングされるオブジェクト及びそのピクセルに要求されるフィルタリングに基づいてフラグを発生するステップと、
前記フラグをフラグ記憶装置に記憶するステップと、
前記フラグ記憶装置からフラグデータを読み取るステップと、
前記読み取られたフラグデータに基づいて出力ピクセルを発生するために、１つ以上のピクセルに適用すべきフィルタを選択するステップと、
前記フィルタをソースピクセルのセットに適用して、前記出力ピクセルを発生するステップと、
このようにフィルタリングされたピクセルを表示のために供給するステップと、
を備えた方法。
【請求項２】
前記フラグは、ピクセル当たり単一のビットを含む、請求項１に記載の方法。
【請求項３】
前記フラグは、ピクセル当たり複数のビットを含む、請求項１に記載の方法。
【請求項４】
選択に使用できる前記フィルタの１つは、ボックスフィルタである、請求項１から３のいずれかに記載の方法。
【請求項５】
選択に使用できる前記フィルタの１つは、バートレットフィルタである、請求項１から４のいずれかに記載の方法。
【請求項６】
フィルタされたピクセルを記憶する前記ステップは、二次フレーム記憶装置に記憶する、請求項１から５のいずれかに記載の方法。
【請求項７】
フラグを発生する前記ステップは、そのピクセルにおいて見ることのできるオブジェクトに基づいてそれを行なう、請求項１から６のいずれかに記載の方法。
【請求項８】
多数の異なるオブジェクトを含むコンピュータ発生映像の質を改善する装置において、
映像の各ピクセルに対して、そのピクセルでレンダリングされるオブジェクト及びそのピクセルに要求されるフィルタリングに基づいてフラグを発生する手段と、
前記映像のためのフラグ記憶装置と、
前記フラグ記憶装置からフラグデータを検索する手段と、
前記読み取られたフラグに基づいて出力ピクセルを発生するために１つ以上のピクセルに適用すべきフィルタを選択する手段と、
このように選択されたフィルタをピクセルに適用する手段と、
このようにフィルタリングされたピクセルを表示のために供給する手段と、
を備えた装置。
【請求項９】
前記フラグは、ピクセル当たり単一のビットを含む、請求項８に記載の装置。
【請求項１０】
前記フラグは、ピクセル当たり複数のビットを含む、請求項８に記載の装置。
【請求項１１】
選択に使用できる前記フィルタの１つは、ボックスフィルタである、請求項８、９又は１０のいずれかに記載の装置。
【請求項１２】
選択に使用できる前記フィルタの１つは、バートレットフィルタである、請求項８から１１のいずれかに記載の装置。
【請求項１３】
フィルタされたピクセルを記憶する二次フレーム記憶装置を備えた、請求項８から１２のいずれかに記載の装置。
【請求項１４】
フラグを発生する前記手段は、そのピクセルにおいて見ることのできるオブジェクトに基づいてそれを行なう、請求項８から１３のいずれかに記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、映像、特に三次元又は二次元のいずれかでレンダリングされるコンピュータグラフィック映像に対してアンチエイリアシングを実行する方法及び装置に係る。
【背景技術】
【０００２】
コンピュータグラフィックシステムにおいてシーンが３Ｄ又は２Ｄのいずれかでレンダリングされるときには、特に、オブジェクトの縁について映像の質をしばしば改善することができる。コンピュータ映像の性質は、それらが通常直線グリッドを横切ってデータの個別サンプルを取り上げることにより導出されることを意味する。これは、オブジェクトの縁においてシーンにエイリアシング欠陥を導入し、それ故、ギザギザ状又は階段状の縁をもつ境界線が残される。これは、良く知られた問題であり、通常、線又は縁がピクセルに対してなす貢献を、それがカバーするピクセルの量に基づいて変更することにより線をアンチエイリアシングするために多数の方法が提案されている。コンピュータで発生される映像の場合、アンチエイリアシングは、通常、ベクトルベースの表現からラスタベース映像への映像変換中に、又はラスタ化表現から直接的に実行される。
【０００３】
オブジェクトの前フィルタリングは、最良のアンチエイリアシング結果を与えるが、それを達成するには高い費用がかかる。それ故、多くのリアルタイムグラフィックアプリケーションでは、スーパーサンプリング及びマルチサンプリングの形態の後フィルタリングが通常使用される。これは、必要な全てのアンチエイリアシングをフィルタの単一パスで達成できるようにするが、それにより得られる結果は、常に、前フィルタリングにより得られるもの程高質ではない。しかしながら、実施のための費用が遥かに安い。
【０００４】
スーパーサンプリング技術により発生されるアンチエイリアシング結果は、サンプリングレートが高い程改善されることが分っているが、付加的なコンピュータパワー及び付加的なメモリを犠牲にする。これらは著しく増加する。というのは、２ｘ２のスーパーサンプリングアレーは、スーパーサンプリングを伴わないシステムの４倍ものメモリ及び計算努力を必要とするからである。４ｘ４スーパーサンプリングを伴うシステムは、１６倍もの計算及びメモリを要求することになる。
【０００５】
その結果、小さなサンプルサイズを使用して良好な結果を与えるために、異なるフィルタ及びパターンを使用する多数の変形例が案出されている。このようなパターンは、グリッド、回転グリッド、及び推計学的サンプリングを含む。
【０００６】
スーパーサンプリングシステムでは、選択されるダウンサンプリングフィルタは、エイリアシングの望ましい排除と、ぼけを生じ得る映像の過剰フィルタリングと、実施コストとの間の兼ね合いを表わす。選択は、通常、受け容れられる量のエイリアシングと映像のぼけとの間の妥協である。あるシステムでは、ダウンフィルタリングは、ディスプレイサブシステムの一部分として「オンザフライ」で実行することができる。これが達成される場合には、物理的なバッファーでターゲット解像度のアンチエイリアシングされた映像を記憶する必要がない。このようなシステムは、リアルタイムレンダリングアプリケーションにおいてメモリ帯域巾要求を緩和できるので、好ましく使用される。
【０００７】
スーパーサンプリングがグラフィックシーンにおいて実行されるときには、行なわれるフィルタリングの結果として全シーンが若干ぼけた状態になることがある。これは、存在する硬い縁の線を軟化させる。ほとんどの３Ｄ又は２Ｄアニメーショングラフィックでは、これは問題ではなく、通常、望ましいことである。しかしながら、ユーザがアンチエイリアシングされた明快な縁を見ることが期待される場所で、映像の「ヘッドアップ表示」部分のようなユーザインターフェイスエレメントをレンダリングするときには問題が生じる。例えば、ウインドウ及びメニューの境界や、特別に生成されたフォントは、通常、良好に画成された明快な縁をもつことが期待される。メニューウインドウに対するスーパーサンプリングの作用の一例が図２のＡ及びＢに示されている。ここでは、メニュー内のテキスト及びカーソルは、メニュー表示に関連した期待される先鋭度をもたないことが明らかである。図２のＢにおける映像のメニュー部分の拡大は、ぼけ作用を示している。メニュー表示に対するこの作用を取り扱う１つの仕方は、図２のメニューのようなユーザインターフェイスエレメントを個別のバッファーへレンダリングすることである。従って、このときに、先鋭さを維持する異なるアンチエイリアシング技術が使用される。映像のこの部分は、次いで、アンチエイリアス三次元又は二次元映像にピクセルごとにコピーすることができる。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
このような解決策は、付加的なメモリバッファーを使用する付加的なコスト、データをコピーする計算的コスト、及び２つのシステム間に要求される同期を被ることが明らかである。この同期問題は、ディスプレイサブシステムにおいてリアルタイムでスーパーサンプリングフィルタリングを遂行するシステムではより大きな問題点である。
【課題を解決するための手段】
【０００９】
本発明の実施形態によれば、グラフィックディスプレイへレンダリングされるべきオブジェクトを、アンチエイリアシングを適用すべきもの、又はアンチエイリアシングを適用すべきでないものとして識別するための手段を備えたグラフィックディスプレイシステムが提供される。ターゲット解像度ピクセルごとに１つのフラグ（又は複数のフラグ）というようにして、フラグの付加的セットが存在するのが好ましい。
【００１０】
好ましい実施形態では、アイテムがスーパーサンプリング（又はそれとは別にマルチサンプリング）バッファーへ書き込まれ、これに対してダウンサンプルフィルタリングが後で適用される。同時に、システムは、アンチエイリアシングフラグバッファーを使用してピクセルにタグ付けし、それにより、システムは、アンチエイリアシングされるべき領域と、メニュー／ウインドウの垂直線及び水平線のような先鋭さを維持すべき領域とを識別することができる。
【００１１】
スーパーサンプリングバッファーがいっぱいになると、ダウンサンプリングプロセスが行なわれる。各段階において、適用されるフィルタを動的に変更するためにアンチエイリアシングフラグバッファーが使用され、好ましい実施形態では、アンチエイリアシングフィルタと、先鋭さを保存するフィルタとの間に使用される。
【００１２】
以下、添付図面を参照して、本発明の好ましい実施形態を詳細に説明する。
【発明を実施するための最良の形態】
【００１３】
図１のａ）、ｂ）及びｃ）は、コンピュータで発生される２Ｄ又は３Ｄ映像に使用するために本発明をどのように実施できるかを概略的に示す。これは、次のように動作する。
【００１４】
レンダラー１は、フレームバッファー２にオブジェクトデータを書き込む。レンダラー１は、おそらくリアルタイムでフレームバッファーへオブジェクトを繰り返しレンダリングする３Ｄグラフィックエンジンである。この場合に、これは、必要な全ての隠れた表面除去及びテクスチャリング並びにシェーディング回路を含む。又、これは、映像に重畳されるべき図２に示すもののようなグラフィックオーバーレイオブジェクトを発生するための手段も備え又は含むことができる。
【００１５】
各ピクセルがフレームバッファー２に書き込まれるときに、オブジェクトジェネレータ１は、アンチエイリアシングフラグも発生し、これをアンチエイリアシングフラグバッファー３へ送出する。このアンチエイリアシングフラグバッファーは、この実施形態では、各ピクセルに対して単一のビットを備え（ターゲット映像解像度で）、これを使用して、アンチエイリアシング又は他のファンクションが当該ピクセルに適用されるかどうか決定することができる。
【００１６】
フィルタユニット４は、アンチエイリアシングフラグバッファー３の情報及びフレームバッファー２のピクセルを使用して、ピクセルごとのベースで、ターゲット解像度映像を生成する。各ピクセルに対して、アンチエイリアシングフラグがフィルタ選択ユニット９により読み取られ、そしてフラグの値に基づいて、フィルタ記憶装置１０からフィルタが選択されて、出力ピクセルを発生する。次いで、ピクセルのグループがフレームバッファー２から読み取られ、フィルタユニットに通されて、ターゲットピクセルに対する単一のカラー値を発生し、これは、次いで、ディスプレイ装置出力５へまっすぐに送出される。ピクセルを直ちに出力するのではなく、二次フレーム記憶装置６に記憶することもできるし、又は他の出力又はバッファー装置１１へ送出することもできる。図１のａ）では、フィルタユニット１０は、異なるフィルタを備え、そのいずれか１つを、そのピクセルに対するフラグの値に基づいて選択することができる。
【００１７】
好ましい実施形態（図１のｂ））では、フレームバッファー２から読み取られたピクセルのグループが、２ｘ２ブロックか又は４ｘ４ブロックであり、フィルタセレクタ９を通してフィルタ１０の集合体の１つへ入力として通され、フィルタの集合体は、好ましい実施形態では、２ｘ２ボックスフィルタ７及び４ｘ４バートレット(Bartlett)フィルタ８を含む。ボックスフィルタ７は、狭いベースを有し、線の縁にぼけを生じさせず、一方、バートレットフィルタ８は、広いベースを有し、より多くのエイリアシング欠陥を除去するが、映像に若干のぼけを生じさせる。これは、先鋭なインターフェイスアイテム及びアンチエイリアシングされたシーンを同時にレンダリングできるようにし、従って、アンチエイリアシングされたシーンを中間バッファーへレンダリングし、それに対してフィルタリングを遂行し、次いで、非アンチエイリアシングのアイテムを映像にコンポーズするという必要性を排除する。
【００１８】
入力シーンデータがフレームバッファー２に入力されると、それが２ｘ２解像度でスーパーサンプリングされるのが好ましい。しかしながら、これは、サンプリングレートを変更するためのありふれたステップである。例えば、別の４ｘ４スーパーサンプリングレートが使用される場合には、２５６ｘ２５６ピクセルの出力映像は、１０２４ｘ１０２４ピクセルの入力サンプリングを要求するが、アンチエイリアシングフラグバッファーは、依然として、１ビット／出力ピクセル（即ち、２５６ｘ２５６）しか要求しない。オブジェクトジェネレータ２がこの映像を発生すると、線を先鋭にすべきかアンチエイリアシングすべきかに基づいてフラグがセットされる。この状態は、次いで、フレームバッファー２にピクセルが書き込まれるのと同時に、アンチエイリアシングフラグバッファー３に記録される。先鋭にされることが意図されたピクセルは、「マークされた」と称され、そしてアンチエイリアシングされることが意図されたピクセルは、「非マーク」と称され、これら２つの状態は、アンチエイリアシングフラグのセット及び非セット状態に対応すると考えることができる。
【００１９】
重畳する線から構成される映像は、ピクセルがマークされるかどうか決定するために何らかのルールをもつ必要がある。不透明な線がレンダリングされるときに、ピクセル状態をオーバーライトするステップは、これを取り扱えば充分である。しかしながら、透明なオブジェクトが使用されるときには、ユーザは、ピクセルをマークするためのルールに対して何らかの制御を行う必要がある。それ故、アンチエイリアシングフラグは、多数の考えられる仕方又は更新モードで次のようにセットすることができる。
【００２０】
１．アンチエイリアシングをセット：これは、アンチエイリアシングフラグバッファーの現在ピクセルをアンチエイリアシングにセットする。
２．非アンチエイリアシングをセット：これは、現在ピクセルを非アンチエイリアシングにセットする。
３．アンチエイリアシングを保存：ピクセルが既にアンチエイリアシングを要求するものとしてセットされている場合には、この状態に放置しなければならず、さもなければ、オーバーライトされることになる。
４．非アンチエイリアシングを保存：これは、非アンチエイリアシング現在設定である場合にピクセルを非アンチエイリアシングにセットしたままにする。
【００２１】
これら異なるルールの作用が図４に示されている。ここでは、「非アンチエイリアシングをセット」のルールで水平線がレンダリングされる。次いで、これら線の上にレンダリングされた不透明度の変化する４本の線があり、これらは、アンチエイリアシングされるべきものである。水平線の上にある不透明度の変化する４本の線は、「アンチエイリアシングをセット」のルール及び「アンチエイリアシングを保存」のルールを使用してフレームバッファーへレンダリングされる。これらの結果が図４の異なる部分に示されている。「アンチエイリアシングを保存」のルールは、線４０及び４１に適用され、その下に横たわる線を先鋭な状態に保ち、一方、「アンチエイリアシングをセット」のルールは、４２及び４３に適用され、その上に横たわる線の内部を完全にアンチエイリアシングさせ、その下の不透明線を軟化させる。
【００２２】
次のステップは、フレームバッファー４から映像データが読み取られるときに行なわれる映像フィルタリングである。この作用は、図５に見ることができる。
【００２３】
この例において、２ｘ２スーパーサンプリングフィルタ及び４ｘ４バートレットフィルタが示されている。マークされたピクセル、即ち線の先鋭さが維持されるべきピクセルに対して２ｘ２ボックスフィルタが使用され、そしてアンチエイリアシングされるべき非マークピクセルに対して４ｘ４バートレットフィルタが使用される。
【００２４】
図５において、他のものより明るい単一ピクセルをもつ垂直線を含む映像が５０で示されている。５１及び５２は、映像の中心エレメントを計算するのに必要な異なる形式のフィルタリングの作用を各々示す。
【００２５】
第１フィルタは、５１における映像データに適用される２ｘ２ボックスフィルタであり、出力５３を発生する。第２フィルタは、５２における映像に適用されるバートレットフィルタであり、出力５４を発生する。バートレットフィルタは、巾の広いベースを有し、大きなピクセルグループを使用して断片カラーを決定するので、この場合の出力値は、ボックスフィルタにより発生されるピクセルより明るい色である。又、ボックスフィルタされた映像において白である隣接ピクセルは、隣接する黒のピクセルから色を継承する。
【００２６】
アンチエイリアシングフィルタは、単一ピクセルブロックより巾が広いので、映像の縁までフィルタリングするか、又はマークされたピクセル（即ち、アンチエイリアシングできないもの）に隣接するピクセルブロックをフィルタリングするときには問題が生じる。映像処理のために、タイル化されたテクスチャー映像にアルゴリズムが適用される場合には、フィルタが縁をラップアラウンドすることができる。しかしながら、これは、マークされたピクセルが含まれる問題を阻止するものではない。
【００２７】
一実施形態では、フィルタからマークされたピクセルを除去し、終了時に累積されたピクセル組み合せを、使用する重みの和で分割する。これは、良好な結果を与えるが、全除算器を伴うハードウェアのより複雑なセットを必要とすることが分っている。
【００２８】
あまり複雑でないがそれでも有用な解決策は、中心に最も近いサブピクセルから、マークされたオリジナルピクセルの縁の外側にあるサブピクセルへカラー値を複写し、これは、ピクセルの相対的カラーを保存すると共に、バートレットフィルタの重みは２の累乗で累積するのでシフトの使用を許す。
【００２９】
別の実施形態では、アンチエイリアシングに使用されるフィルタは、広いベース又は異なる分布をもつフィルタに置き換えることができる。他の実施形態では、スーパーサンプリングの量を変更することができる。これは、特別なメモリ要件に加えて、より大きなフィルタの使用を要求する。
【００３０】
更に別の実施形態では、先鋭な映像のデータフィルタも、程度の低いフィルタリング又は縁改善フィルタリングに置き換えることができる。
【００３１】
更に別の実施形態では、３つ以上のフィルタを選択することができる。しかしながら、これは、アンチエイリアシングフラグバッファーのビット巾の増加を必要とし、バッファーを更新するための付加的な描写ルールを導入することになる。
【００３２】
更にそれとは別に、図１に第３の実施形態で示したような即時出力表示サブシステムでダイナミックフィルタリングを遂行することができる。これは、解像度の低い映像がメモリに書き込まれることは決してなく、出力装置へ直接送り込まれることを保証する。
【００３３】
フラグバッファの振舞いは、スーパーサンプリングの振舞い以外のファンクションに対してピクセルごとの制御を与えるように拡張することができる。このようなファンクションは、低カラー深度の装置でレンダリングが実行されるときにディザに対して微細な制御を可能にすることを含む。通常、計算されたカラー値は、ダウンサンプルプロセスにおいてディザ処理を受けることができ、一方、このような拡張は、指示されたエリアが一様のカラーを継承できるようにする。
【図面の簡単な説明】
【００３４】
【図１】本発明による装置を示す３つのブロック図である。
【図２】オーバーレイインターフェイスアイテムを伴うサンプル及びグラフィックシーンを示す図である。
【図３】本発明の実施形態が適用された図２と同じシーンを示す図である。
【図４】異なるアンチエイリアシングフラグを使用する半不透明線のレンダリングを示す図である。
【図５】サンプル映像へのボックス及びバートレットフィルタの適用を示す図である。
【図１】
2009514083.tif 000003
【図４】
2009514083.tif 000004
【図５】
2009514083.tif 000005
【図２】
2009514083.tif 000006
【図３】
2009514083.tif 000007
【国際調査報告】
2009514083.tif 000008
2009514083.tif 000009
2009514083.tif 000010