JP2009545827A - ピクセルマスクを用いたグラフィックシステム - Google Patents

ピクセルマスクを用いたグラフィックシステム Download PDF

Info

Publication number
JP2009545827A
JP2009545827A JP2009523066A JP2009523066A JP2009545827A JP 2009545827 A JP2009545827 A JP 2009545827A JP 2009523066 A JP2009523066 A JP 2009523066A JP 2009523066 A JP2009523066 A JP 2009523066A JP 2009545827 A JP2009545827 A JP 2009545827A
Authority
JP
Japan
Prior art keywords
pixel
mask
primitive
pixels
shape
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.)
Withdrawn
Application number
JP2009523066A
Other languages
English (en)
Inventor
ドービイ、アングス・エム.
ジャオ、グオファン
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2009545827A publication Critical patent/JP2009545827A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/40Filling a planar surface by adding surface attributes, e.g. colour or texture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)

Abstract

システムは、プリミティブピクセルの選択において、境界プリミティブをラスタライズする境界プリミティブラスタライザを含む。プリミティブピクセルの選択はスクリーンに描画される形状に境界を付ける。システムはさらに、形状に対しピクセルマスクを生成するピクセルマスクジェネレータを含む。ピクセルマスクは、それぞれが1つのプリミティブピクセルに対応する複数のマスクピクセルを含む。マスクピクセルは、前記形状が該マスクピクセルの少なくとも閾量を覆うとき被覆ピクセルであり、前記形状が該マスクピクセルを覆わない非被覆ピクセルである。システムはさらに、被覆マスクピクセルに対応するプリミティブピクセルは保持し、非被覆マスクピクセルに対応するプリミティブピクセルは廃棄するピクセルスクリーナを含む。
【選択図】図5

Description

本発明は、一般に画像をレンダリングするグラフィックシステムに関し、より詳しくは、グラフィックソフトウェアインタフェースに関する。
グラフィックシステムは、しばしば、異なる複数の形状をピクセルにラスタライズする。ラスタライズする間、グラフィックシステムは、どのピクセルが当該形状に含まれるかを識別する。形状に含まれるピクセルを識別するプロセスは、形状が複雑になるほど困難になる。形状の複雑さの原因となり得る特徴は、滑らかな曲線、凹形状、自分自身との交差、及び穴を含む。グラフィックシステムはこれら複雑な形状を、複数の単純な形状に変換することにより、または、この複雑な形状をそのままラスタライズすることにより対処することができる。これらの解法は、非効率的であり、ハードウェアで実装することが困難である。これらの理由により、改善されたグラフィックシステムの要求がある。
グラフィックシステムは、ラスタライズされた境界プリミティブ中のピクセルを、ピクセルマスクの対応するピクセルが被覆ピクセルであるとき、保持する。また、該システムは、該ピクセルを、該対応するピクセルが非被覆ピクセルであるとき、廃棄する。該対応するピクセルは、境界プリミティブにより境界の付けられる形状が、該対応するピクセルの少なくとも閾量を覆うとき、被覆ピクセルである。該形状が該対応するピクセルを覆わないとき、該対応するピクセルは非被覆ピクセルである。
前記システムの実施形態は、プリミティブピクセルの選択において、境界プリミティブをラスタライズする境界プリミティブラスタライザを含む。プリミティブピクセルの選択は、スクリーンに描画される形状に境界をつける。該システムは、また、該形状に対しピクセルマスクを生成するピクセルマスクジェネレータを含む。ピクセルマスクは、それぞれがプリミティブピクセルの1つに対応する複数のマスクピクセルを含む。マスクピクセルは、形状が該マスクピクセルの少なくとも閾量を覆うとき、被覆ピクセルであり、形状がマスクピクセルの該閾量より小さい部分を覆うとき、非被覆ピクセルである。システムはさらに、被覆マスクピクセルに対応するプリミティブピクセルは保持し、非被覆マスクピクセルに対応するプリミティブピクセルは廃棄するピクセルスクリーナを含む。システムはさらに、保持されるプリミティブピクセルに対しピクセル属性を生成し、廃棄されるプリミティブピクセルにはピクセル属性を生成しないピクセル属性ジェネレータをさらに含む。
グラフィックシステムのボックス図。 グラフィックシステムによるデータの行程を説明する図。 スクリーン形状から、ピクセルマスクの生成を説明する図。ピクセルマスクは、各マスクピクセルが複数のピクセル領域に分割されるように、スクリーン形状をマスクピクセルにラスタライズすることにより、生成される。 グラフィックシステムの動作方法を説明する図。 グラフィクシステムを動作させるための論理モジュールを示す論理フロー図。
グラフィックシステムは、ピクセルマスクに形状をラスタライズするように構成されている。ピクセルマスクは、それぞれがスクリーン上の1つのピクセルに対応する複数のマスクピクセルをもつ。各マスクピクセルは、被覆(covered)ピクセルまたは非被覆(uncovered)ピクセルである。マスクピクセルは、形状がマスクピクセルの少なくとも閾量を覆うとき、被覆ピクセルであり、形状がマスクピクセルを覆わないとき非被覆ピクセルである。グラフィックシステムは、また、形状の境界を付けるプリミティブピクセルの選択のなかで、境界プリミティブをラスタライズするように構成されている。各プリミティブピクセルは、ディスプレイスクリーン上の1つのピクセルに対応し、従って、1つのマスクピクセルに対応する。システムは、被覆マスクピクセルに対応するプリミティブピクセルを保持し、非被覆マスクピクセルに対応するプリミティブピクセルを廃棄する。システムは、保持するピクセルに対しピクセル属性を生成することができ、廃棄されるピクセルに対してはピクセル属性を生成できない。
グラフィックシステムは、ピクセルマスクを生成するために、ソフトウェア及びまたはファームウェアを用いることができ、境界プリミティブをラスタライ7ズし、プリミティブピクセルを選択するためにハードウェアを用いることができる。ソフトウェア及びまたはファームウェアは、ハードウェアより、複雑な形状に含まれるピクセルを識別することにより適している。結果として、ピクセルマスクを生成するために、ソフトウェア及びまたはファームウェアを用いることは、形状に含まれるピクセルを識別するためのより効果的なリソースを用いることであり、他のアプリケーションに対し、ハードウェアを解放する。従って、ピクセルマスクを生成するためにソフトウェア及びまたはファームウェアを用いることにより、より効果的なグラフィックシステムを提供する。
図1は、ディスプレイスクリーン12と通信する電子機器10を含むグラフィックシステムを示している。電子機器10は、ディスプレイ12に画像を描画するように構成されている。適切なディスプレイ12は、これに限定するものではないが、液晶ディスプレイ(LCD)、陰極線管(CRT)ディスプレイを含む。
電子機器10は、さらに、1または複数のユーザインタフェース14と通信する。適切なユーザインタフェース14は、これに限定するものではないが、ボタン、ノブ(knob)、キー、キーパッド、キーボード、及びマウスを含む。グラフィックシステムのユーザは、電子機器10にコマンドを与えるために1又は複数のユーザインタフェースを用いることができる。
電子機器10はコマンドを実行し、コマンドの結果をディスプレイ12に表示する。コマンドの例には、画像をみる視点の変更を含む。よって、電子機器10は、視点の変更により要求されるディスプレイ上の画像を変化することができる。コマンドを実行する際、電子機器10は、これに限定するわけではないが、オープングラフィックライブラリ(OpenGL)、OpenGLES、及びDirect3Dなどを含むソフトウェアインタフェースに従って、システムを全体的または部分的に操作することができる。OpenGLは、タイトルが“The OpenGL? Graphics System: A Specification,” Version 2.0, dated October 22, 2004という文献に記載されている。
電子機器10は、コントローラ16を含む。適切なコントローラ16は、これに限定するものではないが、汎用プロセッサ、デジタル信号プロセッサ(DSP)、ASIC(application specific integrated circuit)、FPGA(field programmable gate array)、あるいは他のプログラマブル論理デバイス、個別のゲートまたはトランジスターロジック、個別のハードウェアコンポーネント、あるいは、電子機器10及びまたはコントローラ16に起因する機能を実行するために構成されたこれらの任意の組合せを含む。汎用プロセッサは、マイクロプロセッサでもよいが、代わりに、コントローラ16は、任意の使い勝手のよいプロセッサ、マイクロコントローラ、あるいはステートマシーンを含むまたはからなることがある。コントローラ16は、例えば、DSPとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、DSPコアと連動する1または複数のマイクロプロセッサ、あるいは任意の他のそのような構成といった、計算デバイスの組合せとして実装することもできる。
電子機器10は、コントローラ16と通信するメモリ18を含む。電子機器10は、メモリ18に、画像のデータ及び画像を描画するためのデータを記憶することができる。メモリ18は、任意のメモリデバイスまたはリード/ライト動作に適したメモリデバイスの組合せでもよい。
場合によっては、電子機器10は、コントローラ16と通信する、コンピュータ読み取り可能な媒体20を含む。コンピュータ読み取り可能な媒体20は、コントローラ16により実行される命令セットをもつことができる。コントローラ16は、コンピュータ読み取り可能な媒体上に命令を読み出し、実行することができる。コントローラ16は、電子機器10が、ユーザにより与えられたコマンドを実行するような所望の機能を実現するように、命令を実行する。コンピュータ読み取り可能な媒体20は、メモリ18とは異なるように示されているが、コンピュータ読み取り可能な媒体20は、メモリ18と同様でもよい。適切なコンピュータ読み取り可能な媒体は、これに限定するものではないが、CDのような光ディスク、磁気記憶ディスケット、Zipディスク、磁気テープ、RAM、及びROMを含む。
以下に、より詳細に説明するように、電子機器のいくつかの機能は、他の機能をファームウェア及びまたはソフトウェアを用いて実行するとともに、ハードウェアを用いて実行してもよい。電子機器がファームウェア及びまたはソフトウェアを用いて機能を実装するとき、電子機器はコンピュータ読み取り可能な媒体上の命令を実行するプロセッサを用いる。例えば、電子機器は、機能を実装するRAM上に書き込まれたソフトウェアを読み取るプロセッサを用いることができる。その一方、電子機器が機能をハードウェアに実装するとき、ハードウェアは、コンピュータ読み取り可能な媒体上の命令を実行しない。
場合によっては、グラフィックシステムは、ネットワークと無線通信するように構成されている。従って、コントローラ16は、任意に、トランシーバ22と通信することができる。コントローラ16は、ネットワークへのメッセージを送信及びまたは受信するトランシーバを用いることができる。トランシーバの代わりに、電子機器10は、レシーバとトランスミッタと通信することができる。グラフィックシステムがネットワークと無線通信するように構成されている場合、電子機器10は、符号分割多重アクセス(CDMA),時分割多重アクセス(TDMA)、GSM(Global System for Mobile Communication)のような無線通信標準、あるいは、他の無線通信標準に従って動作できる。
適切なグラフィックシステムは、これに限定するわけではないが、セルラー電話、アクセスターミナル、ハンドセット、PDA(Personal Digital Assistant)、ラップトップコンピュータ、ビデオゲームユニット、パーソナルコンピュータを含む。図1は、一例として、1つのデバイスに集積されて配置されている電子機器10、ディスプレイ12、及びまたは1または複数のユーザインタフェースを示しているが、電子機器10、ディスプレイ12、及び1または複数のユーザインタフェースは異なるデバイスに含まれていてもよく、及びまたは互いに離れて配置されていてもよい。さらに、あるいは、これに代えて、電子機器10の異なるコンポーネントが、異なるデバイスに含まれていてもよい。
図2は、グラフィックシステムによるデータの行程を示している。メモリはディスプレイスクリーン上に表示される形状の形状記述を含む。Aとラベル付けされている図は、記述された形状を示す。この形状記述は、2またはそれ以上の次元であってもよい。例えば、形状記述は、3次元でもよい。適切な形状記述は、1又は複数の数学的方程式を含むことがある。例えば、円や球の数学的方程式がよく知られている。形状の複雑さは、数学的方程式を追加したり、数学的方程式を取り除いたり、及びまたは数学的方程式に他の操作を実行することにより増加させることができる。形状記述は数学的方程式の他に、または数学的方程式に加えて、他のメソッドを用いて作成することができる。従って、形状記述は数学的方程式を排除することができる。
テクスチャタイプは、形状の全域で同じである。例えば、全形状は、特定のタイプのテクスチャで覆われることがある。テクスチャの例には、これに限定するものではないが、木材テクスチャ、レンガテクスチャ、ストーンテクスチャを含む。
いくつかの例において、グラフィックシステムは、形状記述をスクリーン座標へ変換する。従って、図2のBとラベル付けされている図は、スクリーン座標でのスクリーン形状を示している。スクリーン形状への変換は、1または複数の変換を含む。例えば、形状記述が3次元であるとき、グラフィックシステムは、対象形状記述をワールド座標へ変換し、ワールド座標から視点座標へ変換し、視点座標から同次透視視点座標へ変換し、この表現から同次分割を経てスクリーン座標へ変換し、最後にスクリーン座標から、視点変換は、これら座標を、あるメモリ内レイアウトへ直接マッピングされるデバイス特有の座標へマッピングする。形状記述からワールド座標への変換は、全ての形状を共通のワールドに効果的に配置する。視点座標は、計算された視点との比較での3D対象の座標である。一般に、形状のワールド座標への変換、そして視点座標への変換は、単一のモデルビュー行列変換によりなされる単一変換として実行される。視点座標系から同次視点系への変換は、同次分割の後、さらに、視点より遠くにある対象は、より近い対象よりも小さく見えるようになる。視点座標からスクリーン座標への変換は、一般に、射影行列によりなされ、同次分割が潜在し、ハードウェアで構成されることがある。スクリーン座標系は、通常、同次正規化が実行された後は2D系であるが、いくらかの3D情報は、陰面及び透視訂正補間計算のために保持される。デバイス座標は、スクリーン上に描画される画像の直接のマッピングを表す。いくつかの例において、デバイス座標はスクリーン座標としての役割をなし、及びまたは、スクリーン座標はデバイス座標としての役割をなす。形状記述が2次元であるとき、上記変換の1または複数は要求されない。例えば、形状記述が2次元であるとき、視点座標及び透視視点座標への変換は要求されないことがある。
電子機器は、スクリーン形状の境界をつける境界プリミティブを生成するために、スクリーン座標を用いる。説明の目的のために、Cとラベル付けされた図は、破線で示された形状を示し、境界プリミティブの周囲は実線で示されている。実線はスクリーン座標の形状に境界をつける。境界プリミティブは、プリミティブとして一般的に用いられる形状をもつことができる。例えば、境界プリミティブは、三角形、正方形、あるいは長方形のような多角形(ポリゴン)とすることができる。境界プリミティブは、プリミティブの各頂点に関連付けられたデータとして定義することができる。各頂点は、位置、色値及びテクスチャ座標のような種々の属性についてのデータに関連付けられる。色属性は、一般に、赤の値、緑の値、及び青の値(r、g、b)により特定される。テクスチャ座標は、一般に、テクスチャマップ上の水平及び垂直座標(s及びt)により特定される。スクリーン座標において、位置属性は、一般に、水平座標及び垂直座標(x、y)により特定されるが、選択的に、陰面除去に用いるために深さ座標(z)をも含むことがある。
電子機器は、境界プリミティブをプリミティブピクセルにラスタライズする。図2において、Dとラベル付けされている図は、プリミティブピクセルにラスタライズされたスクリーン形状を示している。従って、図Dは、プリミティブラスタライズを表す。各プリミティブピクセルはスクリーン上のピクセルに対応する。
電子機器は、さらに、ピクセルマスクを生成するために、スクリーン形状を用いる。電子機器は、各マスクピクセルが1または複数のピクセル領域に分割されるように、スクリーン形状をマスクピクセルにラスタライズすることによりピクセルマスクを生成する。図の説明のために、図2においてEとラベル付けされた図は、各マスクピクセルが1つのピクセル領域を含むようにマスクピクセルにラスタライズされたスクリーン形状を示している。結果として、マスクピクセルと、ピクセル領域とは同じである。
複数のマスクピクセルはスクリーン上の1つのピクセルに対応する。従って、それぞれが1つのプリミティブピクセルに対応する複数のマスクピクセルの少なくとも一部分、及び複数のプリミティブピクセルの少なくとも一部分は、それぞれピクセルマスクの1または複数のピクセル領域と関連する。いくつかの例において、複数のプリミティブピクセルのそれぞれは、ピクセルマスクの1または複数のピクセル領域と関連する。いくつかの例において、各マスクピクセルは、1つのプリミティブピクセルに対応し、各プリミティブピクセルは、1つのマスクピクセルに対応する。
電子機器は、各ピクセル領域が被覆領域であるか非被覆領域であるかを示す領域被覆データを生成するための1または複数の被覆基準を用いることができる。適切な被覆基準の例は、スクリーン形状の任意の部分がピクセル領域に含まれているかいなか、である。例えば、スクリーン形状の一部分がピクセル領域の内部にあるとき、そのピクセル領域は被覆ピクセルであり、スクリーン形状がピクセル領域から完全に外側にあるとき、そのピクセル領域は非被覆ピクセルである。該被覆基準の例は、図2の図Eに適用されている。非被覆領域は白く表され、被覆領域はグレーで表されている。従って、ピクセルマスクは、被覆領域と非被覆領域とを含む。
他のテスト基準が用いられることがある。例えば、テスト基準は、被覆閾割合を用いることができる。スクリーン形状がピクセル領域の閾割合より大きく覆うとき、該ピクセル領域は被覆領域であり、スクリーン形状がピクセル領域の閾割合より小さく覆うとき、該ピクセル領域は非被覆領域である。
電子機器は、マスクピクセルが被覆ピクセルであるか非被覆ピクセルであるかを示すピクセル被覆データを生成するための1または複数の第2の被覆基準を用いることができる。例えば、電子機器は、マスクピクセルにおける被覆領域であるピクセル領域の数が、少なくとも領域閾値に等しいとき、当該マスクピクセルを被覆ピクセルと分類することができる。電子機器は、マスクピクセルにおける被覆領域の数が該領域閾値より少ないとき、当該マスクピクセルを非被覆ピクセルと分類することができる。適切な領域閾値は、これに限定するものではないが、1を含む。
1または複数の第2の被覆基準を用いることはオプションである。例えば、複数のマスクピクセルが単一ピクセル領域を含むとき、1または複数の第2の被覆基準を用いる必要はない。例えば、被覆領域は、選択のために被覆ピクセルとして分類され、非被覆領域は、選択の目的で非被覆ピクセルとして分類されるであろう。従って、1または複数の第2の被覆基準を用いることは、1または複数の基準を用いることと組み合わせることができる。例えば、電子機器は、被覆領域の数が領域閾値に達するまで、1つのマスクピクセルにおける被覆領域を識別することができる。被覆領域の数が領域閾値に達すると、そのマスクピクセルは被覆ピクセルに分類され、当該マスクピクセルにおける被覆領域の総数が領域閾値より小さい場合には、そのマスクピクセルは非被覆領域に分類される。
被覆基準及び第2被覆基準は、各被覆ピクセルの少なくとも閾量が形状により覆われているという結果になる。例えば、被覆基準及び第2被覆基準は、被覆ピクセルとなるマスクピクセルにおける少なくとも閾数のピクセル領域が被覆領域であり、または、被覆ピクセルとなるマスクピクセルとなるために、該ピクセル領域の少なくとも閾割合が覆われていることを保証する。被覆基準及び第2被覆基準は、さらに、非被覆ピクセルは形状で覆われていないことも保証できる。さらに、被覆基準及び第2被覆基準は、各非被覆ピクセルの閾量より小さい部分は形状で覆われていることも保証できる。
電子機器は、追加の処理として、プリミティブピクセルを選別するために、ピクセルマスクを用いる。例えば、電子機器は、さらなる処理のために、1つのマスクピクセルに対応する複数のプリミティブピクセルのそれぞれを考慮する。1つのマスクピクセルに対応する各プリミティブピクセルは、当該対応するマスクピクセルと比較される。当該対応するマスクピクセルが、非被覆ピクセルであるとき、該プリミティブピクセルは、スクリーン上の形状の部分を表さないので、さらなる処理がなされない廃棄ピクセルである。当該対応するマスクピクセルが被覆ピクセルであるとき、該プリミティブピクセルはスクリーン上の形状の部分を表すので、さらなる処理がなされる保持ピクセルである。いくつかの例において、保持ピクセルがスクリーン上の形状の部分を表すかどうかは、その後の当該保持ピクセルの処理の結果による。
保持ピクセルのさらなる処理の例は、ピクセル属性の決定を含む。各保持ピクセルは、ピクセル属性のセットに関連付けることができる。ピクセル属性の例は、色値及びテクスチャ座標を含む。例えば、各保持ピクセルは、色値R、G、Bに関連し、及びまたは、s及びtのようなテクスチャ座標に関連する。ピクセル属性を生成するための適切な方法は、境界プリミティブの複数の頂点間の補間を含む。例えば、テクスチャ座標及び色値は、境界プリミティブの複数の頂点間で補間され得る。境界プリミティブの各頂点は、R、G、B、s、tのような頂点属性のセットに関連付けられる。ピクセル属性は、頂点間で補間することで生成される。いくつかの例において、補間は、テクスチャ座標の空間的勾配の補間を含む。テクスチャ座標の空間的勾配の例は、偏導関数ds/dxであり、dsはテクスチャ座標における変化であり、dxはピクセル座標におけるx方向の動きである。従って、これら勾配は、ピクセル座標との比較でテクスチャ座標の変化速度を反映する。適切な補間技術は、これに限定するものではないが、球面線形補間、バイリニア(bi-linear)補間、トリリニア(tri-linear)補間、最近傍補間、及びフォン(Phong)補間を含む。
いくつかの例において、電子機器は、補間を実行する前及び選別(スクリーニング)を実行する前、及びまたは補間を実行する前及び選別を実行した後に、セットアップ処理を実行する。セットアップ処理の間、電子機器は、その後の、色及びまたはテクスチャのような属性の補間のためのパラメータを生成することができる。例えば、電子機器は、補間に用いられる数式の係数を生成することができる。いくつかの例において、電子機器は、セットアップ処理の間、テクスチャ座標の空間的勾配を生成する。
いくつかの例において、保持ピクセルに実行され得る追加の処理は、テクスチャマッピングを含む。テクスチャ座標の空間的勾配は、テクスチャマッピングで用いられる。例えば、各テクスチャは、それぞれがテクステル(textel)の異なる解像度をもつ複数のMIP(multum in parvo)マップに関連付けることができる。テクスチャ座標の空間的勾配は、ある特定のプリミティブピクセルまたは複数のプリミティブピクセルの集まりに対し、正しいMIPマップを識別するために用いることができる。
保持ピクセルに実行される追加の処理は、さらに、ブレンディング(blending)を含む。ブレンディングはアンチエイリアシングを含む。ブレンディングの後、電子機器は画像をディスプレイスクリーンに描画する。
いくつかの例において、電気機器は、データの一部分をハードウェアで処理し、該データの他の一部分をソフトウェア及び又はファームウェアを用いて処理する。例えば、電子機器は、形状記述をスクリーン座標に変換するために、ピクセルマスクを生成するために、ハードウェアを用いて境界プリミティブをラスタライズしながら境界プリミティブを生成するために、セットアップ処理を実行するために、ピクセルス選別を実行するために、及び補間を実行するために、ソフトウェア及びまたはファームウェアを用いることができる。一例において、電子機器は、境界プリミティブをラスタライズし、プリミティブピクセルを選別するためにハードウェアを用いるとともに、ピクセルマスクを生成するためにソフトウェア及びまたはファームウェアを用いる。
ソフトウェア及びファームウェアを用いてピクセルマスクが生成され、プリミティブピクセルがハードウェアを用いて選別されるとき、ピクセル被覆データはハードウェアを用いて、またはソフトウェア及びまたはファームウェアを用いて生成することができる。例えば、ソフトウェア及びまたはファームウェアは、被覆ピクセル及び非被覆ピクセルを識別するためにピクセル領域を考慮するために用いることができ、各ピクセルに関連するビットをハードウェアへ送る。このビットは、当該ピクセルが被覆ピクセルであるか非被覆ピクセルであるかを示す。その後、ハードウェアは、プリミティブピクセルの選別において、当該ビットを考慮することができる。あるいは、ソフトウェア及びまたはファームウェアは、1つのマスクピクセルにおいて、複数のピクセル領域のそれぞれに関連する単一ビットをハードウェアへ送るために用いることができる。当該ビットは、当該ピクセル領域が被覆領域であるか非被覆領域であるかを示す。ハードウェアは、1または複数のピクセル領域に対し当該ビットを考慮して、マスクピクセルが被覆ピクセルであるかまたは非被覆ピクセルであるかを決定する。あるいは、ソフトウェア及びまたはファームウェアは、1マスクピクセルについて被覆ピクセル領域の数をカウントするために用いることができ、当該マスクピクセルの被覆ピクセル領域の数を示す複数のビットをハードウェアへ送ることができる。ハードウェアは、マスクピクセルが被覆ピクセルであるか非被覆ピクセルであるかを決定するために当該複数のビットを用いることができる。あるいは、ソフトウェア及びまたはファームウェアは、1マスクピクセルについて非被覆ピクセル領域の数をカウントするために用いることができ、当該マスクピクセルの非被覆ピクセル領域の数を示す複数のビットをハードウェアへ送ることができる。ハードウェアは、マスクピクセルが被覆ピクセルであるか非被覆ピクセルであるかを決定するために当該複数のビットを用いることができる。被覆領域または非被覆領域の数をハードウェアへ送ることは、ハードウェアへ送る必要のなるデータのビット数を低減することにより、該ハードウェアへのデータ転送の効率を向上させることができる。例えば、被覆領域の数はnビットで表すことができ、2は1マスクピクセル中のピクセル領域の数である。結果として、被覆領域の数がハードウェアへ送られるとき、2ではなく、nビットのみをハードウェアへ送る必要がある。
ソフトウェア及びまたはファームウェアは、複数のデータブロックをハードウェアへ送信するように構成することができる。多くの例において、1ブロック内のデータ量は、1マスクピクセルに関連するデータ量よりも多い。従って、単一ピクセルのデータをハードウェアへ送信することは、ハードウェアへの非効率的なデータ転送をまねくこととなる。結果として、ピクセルマスクは複数のタイルに分割することができる。各タイルは、複数のマスクピクセルを含み、同じサイズ(nピクセル×mピクセル)をもつ。タイルサイズは、各タイルのデータが、複数のブロックのうちの1つでハードウェアへ転送することができるように、定義できる。その結果、タイルは、ハードウェアへの効率のよいデータ転送を可能にする。
ピクセルマスクがソフトウェア及びまたはファームウェアを用いて生成され、プリミティブピクセルがハードウェアを用いて選別されるとき、マスクピクセルのデータは、ハードウェアがプリミティブピクセルを選別するのと同じシーケンスでハードウェアへ送られる。この結果、ハードウェアへのデータ転送のシーケンスは、ハードウェアはプリミティブピクセルを選別すること、ハードウェアは対応のマスクピクセルにデータを用いることを、を保証する。ピクセルマスクが複数のタイルに分割されるとき、タイルのサイズは、当該タイルのデータをハードウェアへ転送することが、ハードウェアが正しいシーケンスでピクセルマスクのデータを受信することとなるように、選択される。
ソフトウェア及びまたはファームウェアを用いて、ピクセルマスクが生成されるとき、プリミティブピクセルはハードウェアを用いて選別され、ソフトウェアは、境界プリミティブの複数の頂点の属性を、これら複数の頂点の位置とともに、ハードウェアへ提供することができる。ソフトウェアは、各頂点での属性を決定するために用いることができる。例えば、OpenGL APIのようなAPI(Application Programmable Interface)により接続されたソフトウェアアプリケーションにより、属性は生成される。あるいは、属性は、グローバルに特定される関数に係数を用いて、テクスチャ位置、色、及び属性情報を設定できるプログラマブル・シェイダー(programmable shader)により生成することができる。属性は、形状記述をスクリーン座標へ変換する処理の一部として計算される。
電子機器は、スクリーン形状により覆われているマスクピクセルの部分を、各ピクセルを複数のピクセル領域に分割することにより近似する。例えば、電子機器は、複数のマスクピクセルの被覆率を決定することができ、各マスクピクセルの被覆率を示す1または複数のパラメータを決定することができる。図3は、各マスクピクセルが4つのピクセル領域に分割されるようにラスタライズされた、図2のスクリーン形状を示す。図3のBとラベル付けされている図は、1つのマスクピクセルを示す。Dとラベル付けされた図は、4つのピクセル領域に分割された図Bのマスクピクセルを示す。図3のFとラベル付けされている図は、16個のピクセル領域に分割された図Bのマスクピクセルを示す。各ピクセル領域は同じ形状及びサイズをもつ。形状の一部分は、図B、B、及びFに示されているピクセルを覆うことが示されている。上記したように、各ピクセル領域は被覆領域または非被覆領域である。電子機器は、特定のマスクピクセルに関連する被覆領域の数をカウントすることができる。被覆領域であるピクセル領域の数は、1マスクピクセル当たりのピクセル領域の総数が既知であるとき、マスクピクセルの被覆率を示す。例えば、1マスクピクセル当たりのマスク領域の総数を分母とすると、被覆ピクセルであるマスク領域の数は、被覆率の分子である。
被覆率を示すデータは、アンチエイリアシングのために用いることができる。例えば、被覆率は、Porter−Duffブレンディングのようなブレンディング操作に用いることができる。
ピクセルマスクがソフトウェア及び又はファームウェア用いて生成され、プリミティブピクセルがハードウェアを用いて選別されとき、ソフトウェア及びまたはファームウェアは、被覆率を示すデータを決定するために用いることができ、当該データは、ハードウェアへ転送される。例えば、上記のように、ソフトウェア及びまたはファームウェアは、1マスクピクセルにおける被覆ピクセル領域の数をカウントするために用いることができ、マスクピクセルにおける被覆領域の数を示す複数のビットをハードウェアへ送ることができる。ハードウェアは、当該複数のビットを、マスクピクセルが被覆ピクセルであるのか、非被覆ピクセルであるのかを決定するために用いることができる。あるいは、ソフトウェア及びまたはファームウェアは、1マスクピクセルにおける非被覆ピクセル領域の数をカウントするために用いることができ、マスクピクセルにおける非被覆領域の数を示す複数のビットをハードウェアへ送ることができる。あるいは、ハードウェアは、被覆率を示すデータを決定するために用いることができる。例えば、上記したように、ソフトウェア及びまたはファームウェアは、1マスクピクセルの各ピクセル領域に関連する単一ビットをハードウェアへ送るために用いることができる。当該ビットは、当該ピクセル領域が被覆領域であるか、または非被覆領域であるかを示すことができる。そして、ハードウェアは、被覆領域であるピクセル領域の数をカウントすることができる。
図4は、グラフィックシステムの動作方法を示している。処理ブロック100では、電子機器は、形状記述をスクリーン座標に変換する。従って、電子機器は、形状記述に記述された形状をスクリーン形状に変換する。処理ブロック102では、電子機器は、スクリーン形状を用いて、境界プリミティブを生成する。境界プリミティブは、スクリーン形状に境界をつける。処理ブロック104では、電子機器は、各プリミティブピクセルがスクリーン上のピクセルに対応するように、境界プリミティブをプリミティブピクセルにラスタライズする。
処理ブロック106では、電子機器は、スクリーン形状を用いて、ピクセルマスクを生成する。ピクセルマスクを生成することは、各マスクピクセルが1または複数のピクセル領域に分割されるように、スクリーン形状を複数のマスクピクセルにラスタライズすることを含む。ピクセルマスクを生成することは、被覆領域と非被覆領域とを識別するピクセル被覆データを生成することを含むことがある。処理プロセス108では、電子機器は、任意に、マスクピクセルの被覆率を示す1または複数のパラメータを生成することができる。
処理ブロック110では、電子機器は、プリミティブピクセルを選択する。決定ブロック112では、選択されたプリミティブピクセルが廃棄ピクセルであるか、保持ピクセルであるかの決定を行う。選択されたピクセルが被覆ピクセルであるマスクピクセルに対応するとき、その選択されたピクセルは保持ピクセルである。対応するマスクピクセルが非被覆ピクセルであるとき、選択されたピクセルは廃棄ピクセルである。従って、電子機器では、決定ブロック112を実行するとき、処理ブロック106からデータをアクセスする。
電子機器は、選択されたピクセルが保持ピクセルであると決定したとき、電子機器は、処理ブロック114において、該選択されたピクセルに対し属性を決定する。ピクセル属性は、該保持ピクセルの色及びテクスチャを含むことができる。例えば、電子機器は、境界プリミティブの各頂点の色及びテクスチャ属性の間で、該選択されたピクセルの色及びテクスチャ属性を補間することができる。処理ブロック116では、電子機器は、保持ピクセルに対しテクスチャマッピングを実行することができる。
電子機器は、処理ブロック116から決定ブロック118へ進む。さらに、電子機器は、処理ブロック112において、選択されたピクセルが廃棄ピクセルであると決定したとき、決定ブロック118へ進む。決定ブロック118では、電子機器は、プリミティブピクセルのそれぞれが既に選択済みであるか否かを決定する。否と決定されたとき、電子機器は処理ブロック110へ戻る。選択済みと決定されたとき、電子機器は、処理ブロック120において、ブレンディングを実行する。ブレンディングは、アンチエイリアシングを実行するための被覆率を示すパラメータを用いることを含むことができる。例えば、被覆率を示すパラメータは、Porter−Duffブレンディングで用いることができる。従って、電子機器は、処理ブロック120を実行するとき、処理ブロック108からデータをアクセスすることができる。処理ブロック122では、画像がスクリーン上に描画される。
図5は、グラフィックシステムを動作させるための論理モジュールを示す論理フロー図である。電子機器は、形状記述をスクリーン座標に変換するスクリーン形状コンバータ140を含む。スクリーン座標に変換された形状記述は、スクリーン形状となる。電子機器は、さらに、スクレーン形状から境界プリミティブを生成する境界プリミティブジェネレータ142を含む。電子機器は、さらに、境界プリミティブをプリミティブピクセルにラスタライズする境界プリミティブラスタライザ144を含む。
電子機器は、スクリーン座標からピクセルマスクを生成するピクセルマスクジェネレータ146を含む。ピクセルマスクは、各マスクピクセルが1又は複数のピクセル領域を含むように、マスクピクセルにラスタライズされる。ピクセルマスクは、さらに、どのマスクピクセルが被覆ピクセルで、どのピクセルが非被覆ピクセルであるかを識別することができる。各プリもティブピクセルは、1つのマスクピクセルに対応する。
電子機器は、プリミティブピクセルを保持ピクセルと廃棄ピクセルとに選別するピクセルスクリーナ148を含む。プリミティブピクセルが被覆ピクセルであるマスクピクセルに対応するとき、該プリミティブピクセルは保持ピクセルである。対応するマスクピクセルが非被覆ピクセルであるとき、該プリミティブピクセルは廃棄ピクセルである。
電子機器は、保持ピクセルに対し属性を生成するピクセル属性ジェネレータ150を含む。ピクセル属性は、保持ピクセルの色及びテクスチャを含む。
電子機器は、画像のアンチエイリアシング処理を行うブレンディングモジュール152を含む。ブレンディングモジュールは、任意に、保持ピクセルの被覆率データを用いることができる。従って、電子機器は、保持ピクセルの被覆率を推定する被覆率推定部154を任意に含むことができる。電子機器は、スクリーン上に画像を描画する画像描画部モジュール156を含む。
電子機器は、図示されたモジュールに加えて、いくつかのモジュールを含むことができる。例えば、電子機器は、z−バッファモジュールを含みことができる。z−バッファモジュールは、画像中の重なり合う形状を正しく重ねることを保証することができる。例えば、z−バッファモジュールは、画像の前面に最も近い形状は、スクリーン上で実際に見られている画像であることを保証する。z−バッファモジュールは、形状記述が3次元であるとき最も有用であり、形状記述が2次元であるときには要求されない。
この開示は、2次元ディスプレイスクリーンという目的に関連しているが、本発明の要旨は、より高い次元の目的にも適用可能である。例えば、本発明の要旨は、3次元モデル化技術に適用可能である。
上述した1または複数の方法の全てまたは一部は、グラフィックシステムにより、及びまたはグラフィックシステム内の電子機器により、実行可能である。さらに、コントローラは、電子機器及びまたはグラフィックシステムに、上述の方法の1つまたは複数の全てまたは一部を実行させることができる。電子機器がコンピュータ読み取り可能な媒体を含むとき、コントローラは、このコンピュータ読み取り可能な媒体上の命令を実行することができる。この命令は、コントローラに、上記に開示された1または複数の方法の全てまたは一部を実行させることができる。さらに、上記方法の1または複数も全てまたは一部は、グラフィックシステム以外のシステム及びデバイスにより実行可能である。
当業者は、情報及び信号は、種々の異なる技術及び手法のうちのいずれかを用いて表すことができることは理解できよう。例えば、上記説明で参照されたデータ及び命令は、電圧、電流、電磁波、磁場、あるいは粒子、光場または粒子、あるいは、これらの任意の組合せにより表される。
当業者は、さらに、ここに開示された実施形態に関連した、種々の例示の論理ブロック、回路、メソッドステップは、電子的ハードウェア、コンピュータソフトウェア、または両者の組合せとして実行できることは理解できよう。このハードウェア及びソフトウェアの互換性を明確にするために、種々の実例のコンポーネント、ブロック、ロジック、モジュール、回路、及びステップが、それの機能の観点から一般的に上述されている。そのような機能がハードウェアまたはソフトウェアとして実装されるかは、特定の用途及びシステム全体に課せられる構成上の制約に依存する。熟練者は、上述の機能を、特定の用途に応じて変更して実装できるであろうが、そのような実装は、本発明の範囲から逸脱するものであってはならない。
ここに開示された実施形態に関連して説明された、種々の例示的な論理ブロック、ロジック、モジュール及び回路は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、ASIC(application specific integrated circuit)、FPGA(field programmable gate array)、あるいは他のプログラマブルロジックデバイス、ディスクリートゲートあるいはトランジスタロジック、別々のハードウェアコンポーネント、あるいは、上述の機能を実行するために構成されたこれらの任意の組合せを用いて実装または実行することができる。汎用プロセッサは、マイクロプロセッサでもよいが、その代わりに、プロセッサは他の利便性のよいプロセッサ、コントローラ、マイクロコントローラ、あるいはステートマシーンでもよい。プロセッサは、例えば、DSPとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、DSPコアと連動する1または複数のマイクロプロセッサ、あるいは任意の他のそのような構成といった、計算デバイスの組合せとして実装することもできる。
茲に開示された実施形態に関連して説明された方法のステップは、ハードウェア、プロセッサにより実行されるソフトウェアモジュール、あるいはこの2つの組合せで、そのまま具現化することもできる。ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、リムーバブルディスク、CD−ROM、あるいは従来技術として知られている任意の他のコンピュータ読み取り可能な媒体に記憶される。典型的なコンピュータ読み取り可能な記録媒体は、プロセッサが該記録媒体に対し情報の読み出しや情報の書込が可能となるように、プロセッサに結合されている。あるいは、記憶媒体は、プロセッサに統合されていることもある。プロセッサ及び記憶媒体は、ASIC内に存在することもある。ASICはユーザ端末に存在することがある。あるいは、プロセッサ及び記憶媒体は、ユーザ端末内の別個のコンポーネントとして存在することもある。
開示された実施形態の上記説明は、当業者に本発明を製造及び使用させることができるように提供されている。これら実施形態の種々の変形は、当業者には既に明らかであろう。また、ここに定義された一般的な要旨は、本発明の精神及び範囲を逸脱しない限り、他の実施形態に適用可能である。従って、本発明は、ここに示した実施形態に限定するものではないが、ここに開示された要旨及び新規な特徴に一致する限りの広い範囲に許容される。

Claims (26)

  1. ラスタライズされたプリミティブ中のピクセルを、ピクセルマスクの対応するピクセルが被覆ピクセルであるとき保持し、前記対応するピクセルが非被覆ピクセルであるとき廃棄するグラフィックシステムであって、
    前記対応するピクセルは、前記プリミティブにより境界の付けられる形状が、前記対応するピクセルの少なくとも閾量を覆うとき、被覆ピクセルであり、前記形状が前記対応するピクセルの前記閾量より小さい部分を覆うとき、非被覆ピクセルであるグラフィックシステム。
  2. 前記保持されたピクセルに対しピクセル属性を生成し、前記廃棄されるピクセルに対しピクセル属性を生成しない、請求項1のグラフィックシステム。
  3. スクリーンに描画される形状に境界を付けるプリミティブピクセルの選択の中で、境界プリミティブをラスタライズする境界プリミティブラスタライザ;
    前記形状に対し、それぞれが1つのプリミティブピクセルに対応する複数のマスクピクセルを含むピクセルマスクであって、マスクピクセルは、前記形状が該マスクピクセルの少なくとも閾量を覆うとき被覆ピクセルであり、前記形状が該マスクピクセルの前記閾量より小さい部分を覆うとき非被覆ピクセルである、前記ピクセルマスクを生成するピクセルマスクジェネレータ;及び
    被覆マスクピクセルに対応するプリミティブピクセルは保持し、非被覆マスクピクセルに対応するプリミティブピクセルは廃棄するピクセルスクリーナ
    を含むグラフィックシステム。
  4. 前記保持されるプリミティブピクセルに対しピクセル属性を生成し、前記廃棄されるプリミティブピクセルにはピクセル属性を生成しない属性ジェネレータをさらに含む請求項3のシステム。
  5. 前記ピクセル属性は、前記境界プリミティブの複数の頂点に関連する属性間で補間することにより生成される請求項4のシステム。
  6. 前記ピクセル属性は、色値を含む請求項4のシステム。
  7. 前記ピクセルスクリーナは、ハードウェアにより実装され、前記ピクセルマスクジェネレータは、コンピュータ読み取り可能な媒体上の命令を実行するプロセッサにより実装される請求項3のシステム。
  8. 前記境界プリミティブジェネレータは、ハードウェアに実装される請求項7のシステム。
  9. 前記形状で覆われているマスクピクセルの分量である前記マスクピクセルの被覆率を示す1または複数の変数を生成する被覆率推定部をさらに含む請求項3のシステム。
  10. 前記形状が、各マスクピクセルが複数のピクセル領域を含むように、複数のマスクピクセルにラスタライズされるように、前記ピクセルマスクを生成するピクセルマスクジェネレータをさらに含む請求項9のシステム。
  11. マスクピクセルの被覆率を示す前記1または複数の変数を生成することは、前記マスクピクセル内で、被覆領域であるピクセル領域の数を決定することを含み、
    前記ピクセル領域は、前記形状が前記ピクセル領域の少なくとも閾量を覆うとき、被覆領域である、請求項10のシステム。
  12. 被覆率を示す前記1または複数の変数を、前記形状のアンチエイリアシング処理に用いるブレンディングモジュールをさらに含む請求項11のシステム。
  13. スクリーンに描画される形状に境界を付けるプリミティブピクセルの選択において、境界プリミティブを、ハードウェアでラスタライズする境界プリミティブラスタライザ;
    前記形状に対し、それぞれが1つのプリミティブピクセルに対応する複数のマスクピクセルを含むピクセルマスクであって、マスクピクセルは、前記形状が該マスクピクセルの少なくとも閾量を覆うとき被覆ピクセルであり、前記形状が該マスクピクセルの前記閾量より小さい部分を覆うとき非被覆ピクセルである、前記ピクセルマスクを、コンピュータ読み取り可能な媒体上の命令を実行するプロセッサにより生成するピクセルマスクジェネレータ;
    被覆マスクピクセルに対応するプリミティブピクセルは保持し、非被覆マスクピクセルに対応するプリミティブピクセルは廃棄する、ハードウェアに実装されたピクセルスクリーナ;及び
    前記保持されるプリミティブピクセルに対しピクセル属性を生成し、前記廃棄されるプリミティブピクセルにはピクセル属性を生成しない、ハードウェアに実装された属性ジェネレータを含み、
    前記ピクセル属性を生成することは、前記境界プリミティブの複数の頂点に関連する属性間で補間することを含み、前記ピクセル属性は色値及びテクスチャ座標を含むグラフィックシステム。
  14. スクリーンに描画される形状に境界を付けるプリミティブピクセルの選択の中で、境界プリミティブをラスタライズすること;
    前記形状に対し、それぞれが1つのプリミティブピクセルに対応する複数のマスクピクセルを含むピクセルマスクであって、マスクピクセルは、前記形状が該マスクピクセルの少なくとも閾量を覆うとき被覆ピクセルであり、前記形状が該マスクピクセルの前記閾量より小さい部分を覆うとき非被覆ピクセルである、前記ピクセルマスクを生成すること;及び
    被覆マスクピクセルに対応するプリミティブピクセルは保持し、非被覆マスクピクセルに対応するプリミティブピクセルは廃棄することにより、プリミティブピクセルを選別することを含むグラフィックシステムの動作方法。
  15. 前記保持されるプリミティブピクセルに対しピクセル属性を生成し、前記廃棄されるプリミティブピクセルにはピクセル属性を生成しないことをさらに含む請求項14の方法。
  16. 前記ピクセル属性は、前記境界プリミティブの複数の頂点に関連する属性間で補間することにより生成される請求項15の方法。
  17. 前記ピクセル属性は、色値を含む請求項16のシステム。
  18. 前記境界プリミティブはハードウェアでラスタライズされ、前記ピクセルマスクはコンピュータ読み取り可能な媒体上の命令を実行するプロセッサにより生成され、前記プリミティブピクセルはハードウェアで選別される請求項14の方法。
  19. 前記形状で覆われているマスクピクセルの分量である前記マスクピクセルの被覆率を示す1または複数の変数を生成することをさらに含む請求項14の方法。
  20. 前記形状が、各マスクピクセルが複数のピクセル領域を含むように、複数のマスクピクセルにラスタライズされるように、前記ピクセルマスクを生成することをさらに含み、
    前記マスクピクセルの被覆率を示す1または複数の変数を生成することは、前記マスクピクセル内で、被覆領域であるピクセル領域の数を決定することを含み、
    ピクセル領域は、前記形状が前記ピクセル領域の少なくとも閾量を覆うとき、被覆領域である、請求項19の方法。
  21. コンピュータ実行可能な命令セットを有するコンピュータ読み取り可能媒体であって、
    前記命令セットは、
    スクリーンに描画される形状に境界を付けるプリミティブピクセルの選択を行うプリミティブピクセルの選択において、境界プリミティブをラスタライズするように境界プリミティブを生成すること;
    前記形状に対し、それぞれが1つのプリミティブピクセルに対応する複数のマスクピクセルを含むピクセルマスクを生成すること;及び
    マスクピクセルは、前記形状が前記マスクピクセルの少なくとも閾量を覆う被覆ピクセルと、前記形状が該マスクピクセルを少しも覆わない非被覆ピクセルとを識別すること;
    を含むコンピュータ読み取り可能記録媒体。
  22. スクリーンに描画される形状に境界を付けるプリミティブピクセルの選択において、境界プリミティブをラスタライズする手段;
    前記形状に対し、それぞれが1つのプリミティブピクセルに対応する複数のマスクピクセルを含むピクセルマスクであって、マスクピクセルは、前記形状が該マスクピクセルの少なくとも閾量を覆うとき被覆ピクセルであり、前記形状が該マスクピクセルを少しも覆わないとき非被覆ピクセルである、前記ピクセルマスクを生成する手段ピクセルマスクジェネレータ;及び
    被覆マスクピクセルに対応するプリミティブピクセルは保持し、非被覆マスクピクセルに対応するプリミティブピクセルは廃棄することにより、プリミティブピクセルを選別する手段
    を含むグラフィックシステム。
  23. 前記保持されるプリミティブピクセルに対しピクセル属性を生成し、前記廃棄されるプリミティブピクセルにはピクセル属性を生成しない手段をさらに含む請求項22のシステム。
  24. 前記ピクセル属性は、前記境界プリミティブの複数の頂点に関連する属性間で補間することにより生成される請求項23のシステム。
  25. 前記ピクセルマスクを生成する手段はハードウェアであり、
    ピクセルマスクを生成する手段は、コンピュータ読み取り可能な媒体上の命令を実行するプロセッサであり、
    前記ピクセルマスクを生成する手段はハードウェアである
    請求項22のシステム。
  26. 前記形状で覆われているマスクピクセルの分量である前記マスクピクセルの被覆率を示す1または複数の変数を生成する手段をさらに含む請求項14のシステム。
JP2009523066A 2006-08-03 2007-08-02 ピクセルマスクを用いたグラフィックシステム Withdrawn JP2009545827A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/499,200 US7652677B2 (en) 2006-08-03 2006-08-03 Graphics system employing pixel mask
PCT/US2007/075135 WO2008017058A2 (en) 2006-08-03 2007-08-02 Graphics system employing pixel mask

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2012139620A Division JP2012230689A (ja) 2006-08-03 2012-06-21 ピクセルマスクを用いたグラフィックシステム

Publications (1)

Publication Number Publication Date
JP2009545827A true JP2009545827A (ja) 2009-12-24

Family

ID=38870355

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2009523066A Withdrawn JP2009545827A (ja) 2006-08-03 2007-08-02 ピクセルマスクを用いたグラフィックシステム
JP2012139620A Pending JP2012230689A (ja) 2006-08-03 2012-06-21 ピクセルマスクを用いたグラフィックシステム

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2012139620A Pending JP2012230689A (ja) 2006-08-03 2012-06-21 ピクセルマスクを用いたグラフィックシステム

Country Status (6)

Country Link
US (1) US7652677B2 (ja)
EP (1) EP2047428A2 (ja)
JP (2) JP2009545827A (ja)
KR (1) KR101046553B1 (ja)
CN (1) CN101496065B (ja)
WO (1) WO2008017058A2 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7944442B2 (en) * 2006-09-26 2011-05-17 Qualcomm Incorporated Graphics system employing shape buffer
US8547395B1 (en) 2006-12-20 2013-10-01 Nvidia Corporation Writing coverage information to a framebuffer in a computer graphics system
US8004522B1 (en) * 2007-08-07 2011-08-23 Nvidia Corporation Using coverage information in computer graphics
US8325203B1 (en) 2007-08-15 2012-12-04 Nvidia Corporation Optimal caching for virtual coverage antialiasing
KR101415064B1 (ko) * 2007-12-11 2014-07-04 엘지디스플레이 주식회사 액정표시장치의 구동 제어 장치 및 방법
US8269775B2 (en) * 2008-12-09 2012-09-18 Qualcomm Incorporated Discarding of vertex points during two-dimensional graphics rendering using three-dimensional graphics hardware
KR20110110433A (ko) 2010-04-01 2011-10-07 삼성전자주식회사 영상 표시 장치 및 영상 표시 방법
KR102059578B1 (ko) * 2012-11-29 2019-12-27 삼성전자주식회사 3차원 그래픽스 렌더링 시스템에서 프리미티브 처리 장치 및 방법
US9582847B2 (en) * 2013-04-22 2017-02-28 Intel Corporation Color buffer compression
US10127700B2 (en) * 2014-03-31 2018-11-13 Samsung Display Co., Ltd. Generation of display overlay parameters utilizing touch inputs
US9478042B1 (en) 2014-08-12 2016-10-25 Google Inc. Determining visibility of rendered content
US9804709B2 (en) * 2015-04-28 2017-10-31 Samsung Display Co., Ltd. Vector fill segment method and apparatus to reduce display latency of touch events
US10269154B2 (en) 2015-12-21 2019-04-23 Intel Corporation Rasterization based on partial spans
US10051191B1 (en) 2017-03-31 2018-08-14 Qualcomm Incorporated Systems and methods for improved exposures when panning
CN107391073B (zh) * 2017-07-26 2020-07-10 北京小米移动软件有限公司 显示模组及电子设备
WO2021102772A1 (en) * 2019-11-28 2021-06-03 Qualcomm Incorporated Methods and apparatus to smooth edge portions of an irregularly-shaped display
US11308646B2 (en) 2020-05-13 2022-04-19 Walmart Apollo, Llc Extracting color from item images

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08212355A (ja) * 1995-01-31 1996-08-20 Matsushita Electric Ind Co Ltd 図形処理方法
JPH10275241A (ja) * 1997-03-28 1998-10-13 Internatl Business Mach Corp <Ibm> グラフィック処理装置
JP2001005989A (ja) * 1999-06-17 2001-01-12 Sega Enterp Ltd アンチエイリアシング方法及びこれを用いた画像処理装置
JP2006209223A (ja) * 2005-01-25 2006-08-10 Sony Computer Entertainment Inc 描画方法、画像生成装置、および電子情報機器

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0750515B2 (ja) * 1987-11-27 1995-05-31 株式会社日立製作所 三次元図形塗り潰し表示装置
US5321770A (en) * 1991-11-19 1994-06-14 Xerox Corporation Method for determining boundaries of words in text
JP3223617B2 (ja) * 1992-11-30 2001-10-29 富士ゼロックス株式会社 描画装置及び描画方法
US5613052A (en) * 1993-09-02 1997-03-18 International Business Machines Corporation Method and apparatus for clipping and determining color factors for polygons
JPH10191020A (ja) * 1996-12-20 1998-07-21 Canon Inc 被写体画像切出し方法及び装置
GB9921777D0 (en) * 1999-09-16 1999-11-17 Koninkl Philips Electronics Nv Method and apparatus for handling translucency in 3d graphics
US6633297B2 (en) * 2000-08-18 2003-10-14 Hewlett-Packard Development Company, L.P. System and method for producing an antialiased image using a merge buffer
US6819332B2 (en) * 2001-02-27 2004-11-16 3Dlabs Inc. Ltd. Antialias mask generation
US6731300B2 (en) 2001-05-18 2004-05-04 Sun Microsystems, Inc. Efficient anti-aliased dot rasterization
US6768491B2 (en) * 2001-12-21 2004-07-27 Ati Technologies Inc. Barycentric centroid sampling method and apparatus
EP1447774B1 (en) 2003-02-13 2018-03-07 ATI Technologies Inc. Method and apparatus for sampling on a non-power-of-two pixel grid
US7006110B2 (en) * 2003-04-15 2006-02-28 Nokia Corporation Determining a coverage mask for a pixel
US7456846B1 (en) * 2005-06-03 2008-11-25 Nvidia Corporation Graphical processing system, graphical pipeline and method for implementing subpixel shifting to anti-alias texture

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08212355A (ja) * 1995-01-31 1996-08-20 Matsushita Electric Ind Co Ltd 図形処理方法
JPH10275241A (ja) * 1997-03-28 1998-10-13 Internatl Business Mach Corp <Ibm> グラフィック処理装置
JP2001005989A (ja) * 1999-06-17 2001-01-12 Sega Enterp Ltd アンチエイリアシング方法及びこれを用いた画像処理装置
JP2006209223A (ja) * 2005-01-25 2006-08-10 Sony Computer Entertainment Inc 描画方法、画像生成装置、および電子情報機器

Also Published As

Publication number Publication date
CN101496065B (zh) 2012-05-23
CN101496065A (zh) 2009-07-29
KR101046553B1 (ko) 2011-07-05
EP2047428A2 (en) 2009-04-15
WO2008017058A2 (en) 2008-02-07
US20080030522A1 (en) 2008-02-07
KR20090040454A (ko) 2009-04-24
US7652677B2 (en) 2010-01-26
WO2008017058A3 (en) 2008-12-24
JP2012230689A (ja) 2012-11-22

Similar Documents

Publication Publication Date Title
JP2009545827A (ja) ピクセルマスクを用いたグラフィックシステム
TWI636423B (zh) 用於高解析度顯示緩衝器之有效構造之方法
CN101116111B (zh) 使用3d光栅化算法的2d/3d线条渲染
US7944442B2 (en) Graphics system employing shape buffer
TWI618030B (zh) 藉由追蹤物件及/或基元識別符的圖形處理增強之方法及系統,圖形處理單元及非暫時性電腦可讀媒體
CN103946895B (zh) 基于平铺块的呈现中的镶嵌方法和设备
KR100896155B1 (ko) 내장형 디바이스의 플렉시블 안티에일리어싱
US11348308B2 (en) Hybrid frustum traced shadows systems and methods
JP2018129051A (ja) スクリーンの位置によって異なる解像度のターゲットの複数レンダリングのテクスチャ・マッピングの傾き調整
JP2008077627A (ja) 3次元画像のレンダリングにおける早期zテスト方法およびシステム
US8072456B2 (en) System and method for image-based rendering with object proxies
JP2010510608A (ja) グラフィックスアプリケーションのための効率的なシザリング
US6756989B1 (en) Method, system, and computer program product for filtering a texture applied to a surface of a computer generated object
US11030791B2 (en) Centroid selection for variable rate shading
JP4311877B2 (ja) 副標本化テクスチャ端縁部のアンチエイリアシング
JP4042377B2 (ja) 画像処理装置、および画像処理方法、並びにコンピュータ・プログラム
EP1926052B1 (en) Method, medium, and system rendering 3 dimensional graphics data considering fog effect
JP7455546B2 (ja) 画像処理装置、画像処理方法、及びプログラム
KR20190013146A (ko) 모바일 환경에서 3d 객체의 실시간 대량 처리를 위한 랜더링 최적화 방법
JP2010157170A (ja) 全方向影投下レンダラー

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110823

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20111124

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20111201

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111219

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120221

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120621

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20120629

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20120720

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20120914