JP4684749B2 - グラフィック装置 - Google Patents

グラフィック装置 Download PDF

Info

Publication number
JP4684749B2
JP4684749B2 JP2005164628A JP2005164628A JP4684749B2 JP 4684749 B2 JP4684749 B2 JP 4684749B2 JP 2005164628 A JP2005164628 A JP 2005164628A JP 2005164628 A JP2005164628 A JP 2005164628A JP 4684749 B2 JP4684749 B2 JP 4684749B2
Authority
JP
Japan
Prior art keywords
depth
flag
pixel
reference plane
wall
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.)
Expired - Fee Related
Application number
JP2005164628A
Other languages
English (en)
Other versions
JP2006338542A (ja
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2005164628A priority Critical patent/JP4684749B2/ja
Publication of JP2006338542A publication Critical patent/JP2006338542A/ja
Application granted granted Critical
Publication of JP4684749B2 publication Critical patent/JP4684749B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Generation (AREA)

Description

この発明は、オブジェクトの大まかな重なり判定を実施して、後段の処理部におけるパイプライン処理の必要性を判定する機能を有するグラフィック装置に関するものである。
3次元グラフィクスでは、複数のオブジェクトが重なり合う場合、視点から遠い側に位置するオブジェクトは、近い側に位置するオブジェクトにより覆い隠されるため、描画が行われない。
複数のオブジェクトの重なり判定は、視点からオブジェクトまでの奥行を示すZ値(深度)を用いて、オブジェクトを構成するピクセルの重なり判定を行うZバッファ法(Zテスト)が多く使われている。このZバッファ法では、全てのピクセルのZ値を保持するZバッファが必要である。
従来のグラフィック装置では、通常、全てのピクセルのZ値を保持するZバッファを用いて、各ピクセルの重なり判定を行うが、この重なり判定は、3次元グラフィクスのパイプライン処理のうち、下流側のパイプライン処理で行われることが多い。
このため、表示の必要のないピクセルに対しても、全てのパイプライン処理が行われることになる。本来、手前のオブジェクトに覆い隠される部分は、表示の必要のないものであり、パイプライン処理を省略することができる。
そこで、出来る限り上流側のパイプライン処理で、手前のオブジェクトに覆い隠される部分を判別する大まかな重なり判定を実施するグラフィック装置が開発されている(例えば、特許文献1を参照)。
このグラフィック装置では、予め、フレームを構成しているピクセル毎に深度範囲(最大/最小値)を記憶し、オブジェクトを構成しているピクセルの深度を深度範囲と比較して、そのピクセルの深度が深度範囲内にあるか否かを判定することにより、オブジェクトの大まかな重なり判定を実施する。
特開2004−537129号公報(段落番号[0008]から[0012]、図3)
従来のグラフィック装置は以上のように構成されているので、オブジェクトを構成しているピクセルの深度を深度範囲と比較すれば、オブジェクトの大まかな重なり判定を実施することができる。しかし、フレームを構成しているピクセル毎に深度範囲(最大/最小値)を記憶する必要があるため、比較的大規模な機構が必要になり、実装負荷が大きくなるなどの課題があった。
この発明は上記のような課題を解決するためになされたもので、大規模な機構を実装することなく、オブジェクトの大まかな重なり判定を実施して、不要なパイプライン処理を省略することができるグラフィック装置を得ることを目的とする。
この発明に係るグラフィック装置は、オブジェクトを構成しているピクセルの深度と基準面の深度を比較する深度比較手段と、そのオブジェクトを構成しているピクセルが基準面より視点側に位置しているか否かを示すフラグを出力するフラグ保持手段とを設け、その深度比較手段の比較結果とフラグ保持手段より出力されたフラグから後段の処理部におけるパイプライン処理の必要性を判定するようにしたものである。
この発明によれば、オブジェクトを構成しているピクセルの深度と基準面の深度を比較する深度比較手段と、そのオブジェクトを構成しているピクセルが基準面より視点側に位置しているか否かを示すフラグを出力するフラグ保持手段とを設け、その深度比較手段の比較結果とフラグ保持手段より出力されたフラグから後段の処理部におけるパイプライン処理の必要性を判定するように構成したので、大規模な機構を実装することなく、オブジェクトの大まかな重なり判定を実施して、不要なパイプライン処理を省略することができる効果がある。
実施の形態1.
図1はこの発明の実施の形態1によるグラフィック装置を示す構成図であり、図1の例では、ラスタライザ1、早期Zテスト部2、テクスチャ処理部3、ピクセル処理部4及びフレームバッファ5がパイプライン処理を実施する構成をなしている。
図において、ラスタライザ1は前段の処理部であり、例えば3次元グラフィクス処理における座標変換や陰影処理などが実施されたオブジェクトのデータが入力されると、そのオブジェクトの塗りつぶし処理などのパイプライン処理を実施して、そのオブジェクトを構成するピクセルのカラー値、視点からピクセルまでの奥行を示す深度Z(Src)及びピクセルの位置を示すアドレスAddressを早期Zテスト部2に出力する処理を実施する。
早期Zテスト部2はラスタライザ1からオブジェクトを構成するピクセルの深度Z(Src)とアドレスAddressを受けると、そのピクセルの深度Z(Src)とアドレスAddressから、オブジェクトの大まかな重なり判定を実施して、後段の処理部におけるパイプライン処理の必要性を判定する処理を実施する。
テクスチャ処理部3は後段の処理部であり、早期Zテスト部2によりパイプライン処理が必要であると判定された場合、例えば、模様をオブジェクトに貼り付けるなどのパイプライン処理を実施する。
ピクセル処理部4は後段の処理部であり、早期Zテスト部2によりパイプライン処理が必要であると判定され、かつ、オブジェクトの正確な重なり判定を実施する必要があると判定された場合、Zテスト部4aを起動して、オブジェクトの正確な重なり判定を実施する処理や、カラーブレンディングなどの処理を実施する。
ピクセル処理部4のZテスト部4aは例えばZバッファ法を実施する。即ち、フレームを構成する全ピクセルの深度Zをフレームバッファ5のZバッファ5bに書き込む処理などを実施して、ピクセルの正確な重なり判定を実施する。
フレームバッファ5はピクセル単位のカラーバッファ5aとZバッファ5bから構成されている。
早期Zテスト部2のZ値保持部11は視点から3次元空間における基準面Z−WALLまでの奥行を示す深度Zrefを保持しているメモリである。なお、Z値保持部11は深度保持手段を構成している。
早期Zテスト部2のZ比較器12はラスタライザ1から出力されたオブジェクトを構成しているピクセルの深度Z(Src)とZ値保持部11に保持されている基準面Z−WALLの深度Zrefを比較し、その比較結果を示す前後フラグSrcをフラグバッファ13及びZ−WALL判定回路14に出力する処理を実施する。なお、Z比較器12は深度比較手段を構成している。
早期Zテスト部2のフラグバッファ13はフレームを構成しているピクセル毎に、当該ピクセルが基準面Z−WALLより視点側(手前側)に位置しているか否かを示す前後フラグDstを保持しており、ラスタライザ1から出力されたアドレスAddressに位置しているピクセルに対応する前後フラグDstをZ−WALL判定回路14に出力する一方、Z比較器12から出力された前後フラグSrcに応じて前後フラグDstを更新する処理を実施する。なお、フラグバッファ13はフラグ保持手段を構成している。
早期Zテスト部2のZ−WALL判定回路14はZ比較器12から出力された前後フラグSrcとフラグバッファ13から出力された前後フラグDstに基づいて後段のパイプライン処理の必要性を判定するとともに、ピクセル処理部4のZテスト部4aによる正確な重なり判定の必要性を判定する処理を実施する。なお、Z−WALL判定回路14は必要性判定手段を構成している。
次に動作について説明する。
早期Zテスト部2は、視点から近い側に位置しているオブジェクトに覆い隠されている遠い側に位置しているオブジェクトに対する後段のパイプライン処理を省略するため、ラスタライザ1からオブジェクトを構成するピクセルの深度Z(Src)とアドレスAddressを受けると、オブジェクトの大まかな重なり判定を実施して、後段のパイプライン処理の必要性を判定する処理を実施する。
具体的には、以下の通りである。
図2は3次元空間上に☆型のオブジェクトと、□型のオブジェクトと、△型のオブジェクトとを配置する例を示す斜視図である。
図3は☆型のオブジェクトと、□型のオブジェクトと、△型のオブジェクトとが表示されている例を示す画面図である。
早期Zテスト部2のZ値保持部11には、3次元空間における基準面Z−WALLの深度Zrefが保持されるが、基準面Z−WALLの深度Zrefは、図2に示すように、3次元空間における透明な一枚の壁の深度と考えることができる。
また、早期Zテスト部2のフラグバッファ13には、フレームを構成しているピクセル毎に、当該ピクセルが基準面Z−WALLより視点側(手前側)に位置しているか否かを示す前後フラグDstを保持される。例えば、当該ピクセルが基準面Z−WALLより手前側に位置している場合は“1”、当該ピクセルが基準面Z−WALLより奥側に位置している場合は“0”の前後フラグDstが保持される。
なお、何れのオブジェクトもフレームに描画されていない初期段階では、図4に示すように、フラグバッファ13におけるピクセル単位の前後フラグDstは全て“0”で初期化される。
以下、オブジェクトの大まかな重なり判定を説明するが、説明の便宜上、□型のオブジェクト→☆型のオブジェクト→△型のオブジェクトの順に描画されるものとする。
3次元グラフィクスにおいて描画を始める前には、フレームバッファ5のZバッファ5bが最遠方を表すZ値で初期化される。
この場合、フレームを構成している全てのピクセルは、一枚の透明な壁である基準面Z−WALLより奥側に存在することになる。
早期Zテスト部2のZ比較器12は、ラスタライザ1から□型のオブジェクトを構成しているピクセルの深度Z(Src)を受けると、そのピクセルの深度Z(Src)とZ値保持部11に保持されている基準面Z−WALLの深度Zrefを比較し、その比較結果を示す前後フラグSrcを出力する。
□型のオブジェクトを構成しているピクセルは、基準面Z−WALLより手前側にあるので、そのピクセルに対応する前後フラグSrcは手前側に存在していることを示す“1”に設定される。
早期Zテスト部2のフラグバッファ13は、ラスタライザ1から□型のオブジェクトを構成しているピクセルのアドレスAddressを受けると、そのアドレスAddressに位置しているピクセルに対応する前後フラグDstを出力するが、上述したように、フラグバッファ13における前後フラグDstは全て“0”で初期化されているので、□型のオブジェクトを構成しているピクセルに対応するピクセルが基準面Z−WALLより奥側に位置していることを示す“0”の前後フラグDstを出力する。
早期Zテスト部2のZ−WALL判定回路14は、Z比較器12から“1”の前後フラグSrcを受けると、□型のオブジェクトを構成しているピクセルが、基準面Z−WALLより手前側にあることが分かる。
また、Z−WALL判定回路14は、フラグバッファ13から“0”の前後フラグDstを受けると、□型のオブジェクトを構成しているピクセルに対応するフレームのピクセルが、現時点では基準面Z−WALLより奥側に位置していることが分かる。
よって、この場合、□型のオブジェクトを構成しているピクセルは、他のオブジェクトの存在を考慮することなく、3次元空間上に描画することができるので、Z−WALL判定回路14は、図5に示すように、case2に分類する。
即ち、Z−WALL判定回路14は、後段のパイプライン処理は必要であるが、Zテスト部4aによる正確な重なり判定は必要ないと判定する。また、フラグバッファ13を更新する必要があると判定する。
早期Zテスト部2のフラグバッファ13は、Z−WALL判定回路14により更新する必要があると判定されると、後段のパイプライン処理で、基準面Z−WALLより手前側に位置している□型のオブジェクトを構成しているピクセルが書き込まれるので、図6に示すように、□型のオブジェクトを構成しているピクセルに対応する前後フラグDstを“1”に更新する。
テクスチャ処理部3は、上記のようにして、早期Zテスト部2により後段のパイプライン処理が必要であると判定されると、例えば、模様をオブジェクトに貼り付けるなどのパイプライン処理を実施する。
ピクセル処理部4は、早期Zテスト部2により後段のパイプライン処理が必要であると判定されると、□型のオブジェクトを構成しているピクセルのカラー値をフレームバッファ5のカラーバッファ5aに書き込むことにより、□型のオブジェクトを構成しているピクセルを3次元空間上に描画する処理を実施する。
ただし、ピクセル処理部4は、早期Zテスト部2により正確な重なり判定は必要ないと判定されているので、Zテスト部4aを起動せず、オブジェクトの正確な重なり判定を行う処理を省略する。
次に、早期Zテスト部2のZ比較器12は、ラスタライザ1から☆型のオブジェクトを構成しているピクセルの深度Z(Src)を受けると、そのピクセルの深度Z(Src)とZ値保持部11に保持されている基準面Z−WALLの深度Zrefを比較し、その比較結果を示す前後フラグSrcを出力する。
☆型のオブジェクトを構成しているピクセルのうち、□型のオブジェクトを構成しているピクセルと重なりがない部分のピクセルの処理は、次のように行われる。
☆型のオブジェクトを構成しているピクセルは、基準面Z−WALLより奥側にあるので、そのピクセルに対応する前後フラグSrcは奥側に存在していることを示す“0”に設定される。
早期Zテスト部2のフラグバッファ13は、ラスタライザ1から☆型のオブジェクトを構成しているピクセルのアドレスAddressを受けると、そのアドレスAddressに位置しているピクセルに対応する前後フラグDstを出力するが、図7に示すように、□型のオブジェクトを構成しているピクセルと重なりがない部分のピクセルに対応する前後フラグDstは“0”で初期化されたままであるため、その重なりがない部分のピクセルに対応するフレームのピクセルが基準面Z−WALLより奥側に位置していることを示す“0”の前後フラグDstを出力する。
早期Zテスト部2のZ−WALL判定回路14は、Z比較器12から“0”の前後フラグSrcを受けると、□型のオブジェクトを構成しているピクセルと重なりがない部分の☆型のオブジェクトのピクセルが、基準面Z−WALLより奥側にあることが分かる。
また、Z−WALL判定回路14は、フラグバッファ13から“0”の前後フラグDstを受けると、□型のオブジェクトを構成しているピクセルと重なりがない部分の☆型のオブジェクトのピクセルに対応するフレームのピクセルが、現時点では基準面Z−WALLより奥側に位置していることが分かる。
よって、この場合、□型のオブジェクトを構成しているピクセルと重なりがない部分の☆型のオブジェクトのピクセルは、□型のオブジェクトの存在を考慮しながら、3次元空間上に描画する必要があるので、Z−WALL判定回路14は、図5に示すように、case4に分類する。
即ち、Z−WALL判定回路14は、後段のパイプライン処理が必要であるとともに、Zテスト部4aによる正確な重なり判定が必要であると判定する。ただし、フラグバッファ13を更新する必要はないと判定する。
テクスチャ処理部3は、上記のようにして、早期Zテスト部2により後段のパイプライン処理が必要であると判定されると、例えば、模様をオブジェクトに貼り付けるなどのパイプライン処理を実施する。
ピクセル処理部4は、早期Zテスト部2により後段のパイプライン処理が必要であると判定され、かつ、正確な重なり判定が必要であると判定されると、Zテスト部4aを起動して、□型のオブジェクトと☆型のオブジェクトの正確な重なり判定を実施する。
そして、ピクセル処理部4は、その判定結果が、重なりがないことを示している部分のピクセル(□型のオブジェクトを構成しているピクセルと重なりがない部分の☆型のオブジェクトのピクセル)のカラー値をフレームバッファ5のカラーバッファ5aに書き込むことにより、□型のオブジェクトを構成しているピクセルと重なりがない部分の☆型のオブジェクトのピクセルを3次元空間上に描画する処理を実施する。
一方、☆型のオブジェクトを構成しているピクセルのうち、□型のオブジェクトを構成しているピクセルと重なりがある部分のピクセルの処理は、次のように行われる。
☆型のオブジェクトを構成しているピクセルは、基準面Z−WALLより奥側にあるので、そのピクセルに対応する前後フラグSrcは奥側に存在していることを示す“0”に設定される。
早期Zテスト部2のフラグバッファ13は、ラスタライザ1から☆型のオブジェクトを構成しているピクセルのアドレスAddressを受けると、そのアドレスAddressに位置しているピクセルに対応する前後フラグDstを出力するが、□型のオブジェクトを構成しているピクセルと重なりがある部分のピクセルに対応する前後フラグDstは、図7に示すように、□型のオブジェクトを描画する際に“1”に更新されているため、その重なりがある部分のピクセルに対応するフレームのピクセルは基準面Z−WALLより手前側に位置していることを示す“1”の前後フラグDstを出力する。
早期Zテスト部2のZ−WALL判定回路14は、Z比較器12から“0”の前後フラグSrcを受けると、□型のオブジェクトを構成しているピクセルと重なりがある部分の☆型のオブジェクトのピクセルが、基準面Z−WALLより奥側にあることが分かる。
また、Z−WALL判定回路14は、フラグバッファ13から“1”の前後フラグDstを受けると、□型のオブジェクトを構成しているピクセルと重なりがある部分の☆型のオブジェクトのピクセルに対応するフレームのピクセルが、基準面Z−WALLより手前側に位置していることが分かる。
よって、この場合、□型のオブジェクトを構成しているピクセルと重なりがある部分の☆型のオブジェクトのピクセルは、3次元空間上に描画する必要がないので、Z−WALL判定回路14は、図5に示すように、case3に分類する。
即ち、Z−WALL判定回路14は、後段のパイプライン処理や、Zテスト部4aによる正確な重なり判定が不要であると判定する。また、フラグバッファ13を更新する必要がないと判定する。
テクスチャ処理部3は、上記のようにして、早期Zテスト部2により後段のパイプライン処理が不要であると判定されると、模様をオブジェクトに貼り付けるなどのパイプライン処理の実施を省略する。
ピクセル処理部4は、早期Zテスト部2により後段のパイプライン処理が不要であると判定され、かつ、正確な重なり判定が不要であると判定されると、Zテスト部4aを起動せず、□型のオブジェクトと☆型のオブジェクトの正確な重なり判定を行う処理を省略する。また、□型のオブジェクトを構成しているピクセルと重なりがある部分の☆型のオブジェクトのピクセルを描画する処理を省略する。
次に、早期Zテスト部2のZ比較器12は、ラスタライザ1から△型のオブジェクトを構成しているピクセルの深度Z(Src)を受けると、そのピクセルの深度Z(Src)とZ値保持部11に保持されている基準面Z−WALLの深度Zrefを比較し、その比較結果を示す前後フラグSrcを出力する。
△型のオブジェクトを構成しているピクセルのうち、□型のオブジェクトを構成しているピクセルと重なりがない部分のピクセルの処理は、次のように行われる。
△型のオブジェクトを構成しているピクセルは、基準面Z−WALLより手前側にあるので、そのピクセルに対応する前後フラグSrcは手前側に存在していることを示す“1”に設定される。
早期Zテスト部2のフラグバッファ13は、ラスタライザ1から△型のオブジェクトを構成しているピクセルのアドレスAddressを受けると、そのアドレスAddressに位置しているピクセルに対応する前後フラグDstを出力するが、□型のオブジェクトを構成しているピクセルと重なりがない部分のピクセルに対応する前後フラグDstは“0”で初期化されたままであるため、その重なりがない部分のピクセルに対応するフレームのピクセルが基準面Z−WALLより奥側に位置していることを示す“0”の前後フラグDstを出力する。
早期Zテスト部2のZ−WALL判定回路14は、Z比較器12から“1”の前後フラグSrcを受けると、□型のオブジェクトを構成しているピクセルと重なりがない部分の△型のオブジェクトのピクセルが、基準面Z−WALLより手前側にあることが分かる。
また、Z−WALL判定回路14は、フラグバッファ13から“0”の前後フラグDstを受けると、□型のオブジェクトを構成しているピクセルと重なりがない部分の△型のオブジェクトのピクセルが、現時点では基準面Z−WALLより奥側に位置していることが分かる。
よって、この場合、□型のオブジェクトを構成しているピクセルと重なりがない部分の△型のオブジェクトのピクセルは、他のオブジェクトの存在を考慮することなく、3次元空間上に描画することができるので、Z−WALL判定回路14は、図5に示すように、case2に分類する。
即ち、Z−WALL判定回路14は、後段のパイプライン処理は必要であるが、Zテスト部4aによる正確な重なり判定は必要ないと判定する。また、フラグバッファ13を更新する必要があると判定する。
早期Zテスト部2のフラグバッファ13は、Z−WALL判定回路14により更新する必要があると判定されると、後段のパイプライン処理で、基準面Z−WALLより手前側に位置している△型のオブジェクトのピクセルが書き込まれるので、図8に示すように、□型のオブジェクトを構成しているピクセルと重なりがある部分の△型のオブジェクトのピクセルに対応する前後フラグDstを“1”に更新する。
テクスチャ処理部3は、上記のようにして、早期Zテスト部2により後段のパイプライン処理が必要であると判定されると、例えば、模様をオブジェクトに貼り付けるなどのパイプライン処理を実施する。
ピクセル処理部4は、早期Zテスト部2により後段のパイプライン処理が必要であると判定されると、□型のオブジェクトを構成しているピクセルと重なりがない部分の△型のオブジェクトのピクセルのカラー値をフレームバッファ5のカラーバッファ5aに書き込むことにより、重なりがない部分の△型のオブジェクトのピクセルを3次元空間上に描画する処理を実施する。
ただし、ピクセル処理部4は、早期Zテスト部2により正確な重なり判定は必要ないと判定されているので、Zテスト部4aを起動せず、オブジェクトの正確な重なり判定を行う処理を省略する。
一方、△型のオブジェクトを構成しているピクセルのうち、□型のオブジェクトを構成しているピクセルと重なりがある部分のピクセルの処理は、次のように行われる。
△型のオブジェクトを構成しているピクセルは、基準面Z−WALLより手前側にあるので、そのピクセルに対応する前後フラグSrcは手前側に存在していることを示す“1”に設定される。
早期Zテスト部2のフラグバッファ13は、ラスタライザ1から△型のオブジェクトを構成しているピクセルのアドレスAddressを受けると、そのアドレスAddressに位置しているピクセルに対応する前後フラグDstを出力するが、□型のオブジェクトを構成しているピクセルと重なりがある部分のピクセルに対応する前後フラグDstは、図8に示すように、□型のオブジェクトを描画する際に“1”に更新されているため、その重なりがある部分のピクセルに対応するフレームのピクセルは基準面Z−WALLより手前側に位置していることを示す“1”の前後フラグDstを出力する。
早期Zテスト部2のZ−WALL判定回路14は、Z比較器12から“1”の前後フラグSrcを受けると、□型のオブジェクトを構成しているピクセルと重なりがある部分の△型のオブジェクトのピクセルが、基準面Z−WALLより手前側にあることが分かる。
また、Z−WALL判定回路14は、フラグバッファ13から“1”の前後フラグDstを受けると、□型のオブジェクトを構成しているピクセルと重なりがある部分の△型のオブジェクトのピクセルに対応するフレームのピクセルが、基準面Z−WALLより手前側に位置していることが分かる。
よって、この場合、□型のオブジェクトを構成しているピクセルと重なりがある部分の△型のオブジェクトのピクセルは、□型のオブジェクトの存在を考慮しながら、3次元空間上に描画する必要があるので、Z−WALL判定回路14は、図5に示すように、case1に分類する。
即ち、Z−WALL判定回路14は、後段のパイプライン処理が必要であるとともに、Zテスト部4aによる正確な重なり判定が必要であると判定する。ただし、フラグバッファ13を更新する必要はないと判定する。
テクスチャ処理部3は、上記のようにして、早期Zテスト部2により後段のパイプライン処理が必要であると判定されると、例えば、模様をオブジェクトに貼り付けるなどのパイプライン処理を実施する。
ピクセル処理部4は、早期Zテスト部2により後段のパイプライン処理が必要であると判定され、かつ、正確な重なり判定が必要であると判定されると、Zテスト部4aを起動して、□型のオブジェクトと☆型のオブジェクトの正確な重なり判定を実施する。
そして、ピクセル処理部4は、その判定結果が、重なりがあることを示している部分のピクセル(□型のオブジェクトを構成しているピクセルと重なりがある部分の△型のオブジェクトのピクセル)のカラー値をフレームバッファ5のカラーバッファ5aに書き込むことにより、□型のオブジェクトを構成しているピクセルと重なりがある部分の△型のオブジェクトのピクセルを3次元空間上に描画する処理を実施する。
以上で明らかなように、この実施の形態1によれば、ラスタライザ1から出力されたオブジェクトを構成しているピクセルの深度Z(Src)とZ値保持部11に保持されている基準面Z−WALLの深度Zrefを比較し、その比較結果を示す前後フラグSrcを出力するZ比較器12と、そのオブジェクトを構成しているピクセルが基準面Z−WALLより手前側に位置しているか否かを示す前後フラグDstを出力するフラグバッファ13とを設け、Z比較器12から出力された前後フラグSrcとフラグバッファ13から出力された前後フラグDstに基づいて後段のパイプライン処理の必要性を判定するとともに、ピクセル処理部4のZテスト部4aによる正確な重なり判定の必要性を判定するように構成したので、大規模な機構を実装することなく、オブジェクトの大まかな重なり判定を実施して、不要なパイプライン処理を省略することができる効果を奏する。
即ち、フラグバッファ13が1ピクセル当り、1ビットの前後フラグDstを保存するだけで、不要なピクセルのパイプライン処理を省略することができる効果を奏する。
実施の形態2.
上記実施の形態1では、Z値保持部11が3次元空間における透明な一枚の壁の深度と考えることができる基準面Z−WALLの深度Zrefを保持しているものについて示したが(図2を参照)、Z値保持部11がアドレス毎に異なる基準面Z−WALLの深度Zrefを保持するようにしてもよい。
即ち、Z値保持部11が図9に示すように、3次元空間における透明な二枚の壁の深度と考えることができる基準面Z−WALLの深度Zrefを保持するようにしてもよい。
この場合、透明の壁が凸凹になっていることに相当し、Z比較器12は、ラスタライザ1から出力されたオブジェクトを構成しているピクセルのアドレスAddressに応じて、いずれかの基準面Z−WALLを選択し、その基準面Z−WALLの深度Zrefとオブジェクトを構成しているピクセルの深度Z(Src)を比較するようにする。
この実施の形態2によれば、例えば、3次元空間の背景などを考慮して、オブジェクトの描画処理を実施することができる効果を奏する。
実施の形態3.
上記実施の形態1では、Z値保持部11が3次元空間における透明な一枚の壁の深度と考えることができる基準面Z−WALLの深度Zrefを保持しているものについて示したが(図2を参照)、図10に示すように、Z値保持部11が複数の基準面Z−WALL(1)(2)の深度Zrefを保持するようにしてもよい。
図10の例では、□型のオブジェクトと☆型のオブジェクトとの間に存在する基準面Z−WALL(1)の深度Zrefと、△型のオブジェクトと□型のオブジェクトとの間に存在する基準面Z−WALL(2)の深度Zrefとを保持している。
この場合、Z比較器12がラスタライザ1からオブジェクトを構成しているピクセルの深度Z(Src)を受けると、そのピクセルの深度Z(Src)と、□型のオブジェクトと☆型のオブジェクトとの間に存在する基準面Z−WALL(1)の深度Zrefとを比較するとともに、△型のオブジェクトと□型のオブジェクトとの間に存在する基準面Z−WALL(2)の深度Zrefとを比較するようにする。
例えば、Z比較器12がラスタライザ1から☆型のオブジェクトを構成しているピクセルの深度Z(Src)を受けると、☆型のオブジェクトが基準面Z−WALL(1)より奥側に位置しているので、基準面Z−WALL(1)より奥側に位置していることを示す“0”の前後フラグSrcを出力する。
また、Z比較器12がラスタライザ1から□型のオブジェクトを構成しているピクセルの深度Z(Src)を受けると、□型のオブジェクトが基準面Z−WALL(1)と基準面Z−WALL(2)の間に位置しているので、基準面Z−WALL(1)と基準面Z−WALL(2)の間に位置していることを示す“1”の前後フラグSrcを出力する。
また、Z比較器12がラスタライザ1から△型のオブジェクトを構成しているピクセルの深度Z(Src)を受けると、△型のオブジェクトが基準面Z−WALL(2)より手前に位置しているので、基準面Z−WALL(2)より手前側に位置していることを示す“2”の前後フラグSrcを出力する。
この場合、フラグバッファ13は、“0”又は“1”又は“2”の前後フラグDstを保持して、“0”又は“1”又は“2”の前後フラグDstを出力することになる。
したがって、Z−WALL判定回路14は、Z比較器12から出力される“0”又は“1”又は“2”の前後フラグSrcと、フラグバッファ13から出力される“0”又は“1”又は“2”の前後フラグDstとに基づいてオブジェクトの大まかな重なり判定を実施することになるで(上記実施の形態1よりも、1つ多いパラメータ(3つのパラメータ)で重なり判定を実施することになる)ので、上記実施の形態1よりも、木目細かな判定を行うことができるようになる。
実施の形態4.
上記実施の形態1では、Z値保持部11が□型のオブジェクトと☆型のオブジェクトとの間に存在する基準面Z−WALLの深度Zrefを保持しているものについて示したが(図2を参照)、図11に示すように、3次元空間において、基準面Z−WALLが視点から最遠方の位置に存在するものとして、Z値保持部11がその基準面Z−WALLの深度Zrefを保持するようにしてもよい。
このように、3次元空間において、基準面Z−WALLが視点から最遠方の位置に存在するものとして、Z値保持部11がその基準面Z−WALLの深度Zrefを保持する場合、3次元グラフィクスにおいて描画を始める前に、フレームバッファ5のZバッファ5bを最遠方を表すZ値で初期化する処理が不要になる。
以降、書き込まれるピクセルは、必ず基準面Z−WALLより手前に存在するため、Z−WALL判定回路14によりcase2と判定される。
よって、ピクセル処理部4のZテスト部4aによる正確な重なり判定が不要になり、フレームバッファ5のZバッファ5bに記録されているZ値の読み出し処理が不要になる。このことから、Zバッファ5bを最遠方で初期化する必要がなくなることがわかる。
したがって、3次元グラフィクスにおいて描画を始める前に、フラグバッファ13を“0”で初期化するだけで足り、比較的負荷の高いZバッファ5bの初期化処理が省略されるため、処理の高速化を図ることができる効果を奏する。
ただし、この実施の形態4では、フラグバッファ13を“0”で初期化した後、初めて書き込みを行うピクセルのみ、Zテスト部4aによる正確な重なり判定が不要になる。
なお、一度ピクセルが書き込まれると、フラグバッファ13は“1”(手前)に更新され、また、フレームバッファ5にピクセルが書き込まれて、Zバッファ5bも更新される。
実施の形態5.
上記実施の形態4では、3次元空間において、基準面Z−WALLが視点から最遠方の位置に存在するものとして、Z値保持部11がその基準面Z−WALLの深度Zrefを保持するものについて示したが、3次元空間において、基準面Z−WALLが視点から最近傍の位置に存在するものとして、Z値保持部11がその基準面Z−WALLの深度Zrefを保持するようにしてもよい。
このように、3次元空間において、基準面Z−WALLが視点から最近傍の位置に存在するものとして、Z値保持部11がその基準面Z−WALLの深度Zrefを保持する場合、3次元グラフィクスにおいて描画を始める前に、フレームバッファ5のZバッファ5bを最近傍を表すZ値で初期化する処理が不要になる。
したがって、この実施の形態5の場合も、上記実施の形態4と同様に、3次元グラフィクスにおいて描画を始める前に、フラグバッファ13を初期化するだけで足り、比較的負荷の高いZバッファ5bの初期化処理が省略されるため、処理の高速化を図ることができる効果を奏する。
この発明の実施の形態1によるグラフィック装置を示す構成図である。 3次元空間上に☆型のオブジェクトと、□型のオブジェクトと、△型のオブジェクトとを配置する例を示す斜視図である。 ☆型のオブジェクトと、□型のオブジェクトと、△型のオブジェクトとが表示されている例を示す画面図である。 フラグバッファ13におけるピクセル単位の前後フラグDstを示す説明図である。 Z−WALL判定回路14の判定結果を示す説明図である。 フラグバッファ13におけるピクセル単位の前後フラグDstを示す説明図である。 フラグバッファ13におけるピクセル単位の前後フラグDstを示す説明図である。 フラグバッファ13におけるピクセル単位の前後フラグDstを示す説明図である。 3次元空間上に☆型のオブジェクトと、□型のオブジェクトと、△型のオブジェクトとを配置する例を示す斜視図である。 3次元空間上に☆型のオブジェクトと、□型のオブジェクトと、△型のオブジェクトとを配置する例を示す斜視図である。 3次元空間上に☆型のオブジェクトと、□型のオブジェクトと、△型のオブジェクトとを配置する例を示す斜視図である。
符号の説明
1 ラスタライザ(前段の処理部)、2 早期Zテスト部、3 テクスチャ処理部(後段の処理部)、4 ピクセル処理部(後段の処理部)、4a Zテスト部、5 フレームバッファ、5a カラーバッファ、5b Zバッファ、11 Z値保持部(深度保持手段)、12 Z比較器(深度比較手段)、13 フラグバッファ(フラグ保持手段)、14 Z−WALL判定回路(必要性判定手段)。

Claims (6)

  1. 視点から3次元間における基準面までの奥行を示す深度を保持する深度保持手段と、前段の処理部でパイプライン処理されたオブジェクトを構成しているピクセルの深度と上記深度保持手段に保持されている深度を比較する深度比較手段と、フレームを構成しているピクセル毎に、当該ピクセルが基準面より視点側に位置しているか否かを示すフラグを保持しており、上記オブジェクトを構成しているピクセルに対応するフラグを出力するフラグ保持手段と、上記深度比較手段の比較結果と上記フラグ保持手段より出力されたフラグから後段の処理部におけるパイプライン処理の必要性を判定する必要性判定手段とを備えたグラフィック装置。
  2. 必要性判定手段は、後段の処理部におけるパイプライン処理が必要であると判定する場合、深度比較手段の比較結果とフラグ保持手段より出力されたフラグから後段の処理部でオブジェクトの正確な重なり判定を実施する必要があるか否かを判定することを特徴とする請求項1記載のグラフィック装置。
  3. 深度保持手段は、アドレス毎に異なる基準面の深度を保持していることを特徴とする請求項1または請求項2記載のグラフィック装置。
  4. 深度比較手段は、深度保持手段により複数の基準面の深度が保持されている場合、オブジェクトを構成しているピクセルの深度を複数の基準面の深度とそれぞれ比較することを特徴とする請求項1または請求項2記載のグラフィック装置。
  5. 深度保持手段は、3次元空間において、基準面が視点から最遠方の位置に存在するものとして、その基準面の深度を保持していることを特徴とする請求項1または請求項2記載のグラフィック装置。
  6. 深度保持手段は、3次元空間において、基準面が視点から最近傍の位置に存在するものとして、その基準面の深度を保持していることを特徴とする請求項1または請求項2記載のグラフィック装置。
JP2005164628A 2005-06-03 2005-06-03 グラフィック装置 Expired - Fee Related JP4684749B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005164628A JP4684749B2 (ja) 2005-06-03 2005-06-03 グラフィック装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005164628A JP4684749B2 (ja) 2005-06-03 2005-06-03 グラフィック装置

Publications (2)

Publication Number Publication Date
JP2006338542A JP2006338542A (ja) 2006-12-14
JP4684749B2 true JP4684749B2 (ja) 2011-05-18

Family

ID=37559019

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005164628A Expired - Fee Related JP4684749B2 (ja) 2005-06-03 2005-06-03 グラフィック装置

Country Status (1)

Country Link
JP (1) JP4684749B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8933933B2 (en) * 2006-05-08 2015-01-13 Nvidia Corporation Optimizing a graphics rendering pipeline using early Z-mode
CN105531743A (zh) * 2013-09-13 2016-04-27 史克威尔·艾尼克斯控股公司 描绘装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0822555A (ja) * 1994-07-08 1996-01-23 Hitachi Ltd 図形描画方法及びその装置
JPH11161159A (ja) * 1997-11-28 1999-06-18 Hitachi Ltd 3次元地図表示装置
JP2004145832A (ja) * 2002-08-29 2004-05-20 Sharp Corp コンテンツ作成装置、コンテンツ編集装置、コンテンツ再生装置、コンテンツ作成方法、コンテンツ編集方法、コンテンツ再生方法、コンテンツ作成プログラム、コンテンツ編集プログラム、および携帯通信端末

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0822555A (ja) * 1994-07-08 1996-01-23 Hitachi Ltd 図形描画方法及びその装置
JPH11161159A (ja) * 1997-11-28 1999-06-18 Hitachi Ltd 3次元地図表示装置
JP2004145832A (ja) * 2002-08-29 2004-05-20 Sharp Corp コンテンツ作成装置、コンテンツ編集装置、コンテンツ再生装置、コンテンツ作成方法、コンテンツ編集方法、コンテンツ再生方法、コンテンツ作成プログラム、コンテンツ編集プログラム、および携帯通信端末

Also Published As

Publication number Publication date
JP2006338542A (ja) 2006-12-14

Similar Documents

Publication Publication Date Title
US10692275B2 (en) Assigning primitives to tiles in a graphics processing system
JP6073533B1 (ja) タイルベースのアーキテクチャ上での最適化されたマルチパスレンダリング
US8004531B2 (en) Multiple graphics processor systems and methods
TWI509562B (zh) 用以輸入修飾覆蓋資料至像素著色器之系統、方法與電腦程式產品
US9684995B2 (en) Setting a display list pointer for primitives in a tile-based graphics processing system
JP6342513B2 (ja) 高解像度表示バッファの効果的な構築方法
EP3180773B1 (en) Bandwidth reduction using texture lookup by adaptive shading
US9019271B2 (en) Z-culling method, three-dimensional graphics processing method and apparatus threrof
US10331448B2 (en) Graphics processing apparatus and method of processing texture in graphics pipeline
US8289319B2 (en) Apparatus and method for processing pixel depth information
JP2006120158A (ja) 3dにおけるハードウェアアクセラレートされたアンチエイリアジング(hardwareacceleratedanti−aliasing)のための方法
CN105550973B (zh) 图形处理单元、图形处理系统及抗锯齿处理方法
EP2300984A2 (en) Gpu bezier path rasterization
TWI622016B (zh) Depicting device
AU2012216432A1 (en) Method, system and apparatus for rendering a graphical object
JP4684749B2 (ja) グラフィック装置
JPH07182526A (ja) グラフィックス表示装置の表示方法
US7528839B1 (en) Faster clears for three-dimensional modeling applications
JP4808167B2 (ja) 画像処理方法および該処理方法を用いた3d描画回路
WO2024118082A1 (en) Methods and systems for rendering video graphics
JP2000076480A (ja) 画像生成装置、画像生成方法および記憶媒体
JPH06162209A (ja) 三次元図形描画方式
JPH04367988A (ja) 図形処理装置のzバッファ方式
JP2005063329A (ja) 3次元描画装置および描画方法
JP2004354896A (ja) 描画処理装置及び描画処理方法

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20071005

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080509

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080728

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101022

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101026

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101221

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110201

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110209

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140218

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees