JP3979162B2 - 画像処理装置およびその方法 - Google Patents

画像処理装置およびその方法 Download PDF

Info

Publication number
JP3979162B2
JP3979162B2 JP2002119009A JP2002119009A JP3979162B2 JP 3979162 B2 JP3979162 B2 JP 3979162B2 JP 2002119009 A JP2002119009 A JP 2002119009A JP 2002119009 A JP2002119009 A JP 2002119009A JP 3979162 B2 JP3979162 B2 JP 3979162B2
Authority
JP
Japan
Prior art keywords
data
vertex
vertices
unit
adjacent
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
JP2002119009A
Other languages
English (en)
Other versions
JP2003317111A5 (ja
JP2003317111A (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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2002119009A priority Critical patent/JP3979162B2/ja
Priority to US10/419,390 priority patent/US7372461B2/en
Publication of JP2003317111A publication Critical patent/JP2003317111A/ja
Publication of JP2003317111A5 publication Critical patent/JP2003317111A5/ja
Application granted granted Critical
Publication of JP3979162B2 publication Critical patent/JP3979162B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)
  • Image Processing (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、モデルを単位図形の組み合わせによって表現する画像処理装置およびその方法に関するものである。
【0002】
【従来の技術】
昨今のコンピュータシステムにおける演算速度の向上や描画機能の強化とも相俟って、コンピュータ資源を用いて図形や画像の作成や処理を行う「コンピュータ・グラフィックス(CG)」技術が盛んに研究・開発され、さらに実用化されている。
【0003】
たとえば、3次元グラフィックスは、3次元オブジェクトが所定の光源によって照らされたときの光学現象を数学モデルで表現して、このモデルに基づいてオブジェクト表面に陰影や濃淡を付けたり、さらには模様を貼り付けたりして、よりリアルで3次元的な2次元高精細画像を生成するものである。
このようなコンピュータ・グラフィックスは、科学、工学、製造などの開発分野でのCAD/CAM、その他の各種応用分野においてますます盛んに利用されるようになってきている。
【0004】
3次元グラフィックスは、一般には、フロントエンドとして位置づけられる「ジオメトリ・サブシステム」と、バックエンドとして位置づけられる「ラスタ・サブシステム」とにより構成される。
【0005】
ジオメトリ・サブシステムとは、ディスプレイ・スクリーン上に表示する3次元オブジェクトの位置や姿勢などの幾何学的な演算処理を行う過程のことである。
ジオメトリ・サブシステムでは、一般にオブジェクトは多数のポリゴンの集合体として扱われ、ポリゴン単位で、「座標変換」、「クリッピング」、「光源計算」などの幾何学的な演算処理が行われる。
【0006】
一方、ラスタ・サブシステムは、オブジェクトを構成する各ピクセル(pixel)を塗りつぶす過程のことである。
ラスタライズ処理は、たとえばポリゴンの頂点毎に求められた画像パラメータを基にして、ポリゴン内部に含まれるすべてのピクセルの画像パラメータを補間することによって実現される。
ここで言う画像パラメータには、いわゆるRGB形式などで表される色(描画色)データ、奥行き方向の距離を表すz値などがある。
また、最近の高精細な3次元グラフィックス処理では、遠近感を醸し出すためのf(fog:霧)や、物体表面の素材感や模様を表現してリアリティを与えるテクスチャt(texture)なども、画像パラメータの1つとして含まれている。
【0007】
ここで、ポリゴンの頂点情報からポリゴン内部のピクセルを発生する処理では、よくDDA(Digital Differential Analyzer)と呼ばれる線形補間手法を用いて実行される。
DDAプロセスでは、頂点情報からポリゴンの辺方向へのデータの傾きを求め、この傾きを用いて辺上のデータを算出した後、続いてラスタ走査方向(X方向)の傾きを算出し、この傾きから求めたパラメータの変化分を走査の開始点のパラメータ値に加えていくことで、内部のピクセルを発生していく。
【0008】
【発明が解決しようとする課題】
ところで、画像処理装置において、たとえば曲面データを単位図形列に切りばめて(テセレーションして)表示する際には、1ピクセルにも満たないような微小な単位図形も生成される。
このため、従来の画像処理装置では、描画装置の稼働率を悪化させる要因の一つになっていた。
【0009】
たとえば、曲面をトライアングル列にテセレーションすると、図20に示すように、微小なトライアングルが増える。
場合によっては、図20中に斜線を付したように、描画した場合にピクセルを持たないようなトライアングルも生成する。
このような、いわゆる0ピクセルのトライアングル(ピクセルの中心を含まないトライアングル)は、描画装置の性能低下を引き起こす。
【0010】
また、たとえば図21(A)に示すよう曲面データに対して、規則的なパターンを用いずに適応的にトライアングルを生成する場合には、図21(B)に斜線を付して示すように、曲面に裂け目が生じる。
したがって、従来の画像処理装置では、規則的なパターンを用いずに適応的にトライアングルを生成する場合には、図21(C)に示すように、裂け目を生成しないように注意する必要があり、処理に制約を受けて、また、煩雑な処理を要するという不利益がある。
【0011】
本発明は、かかる事情に鑑みてなされたものであり、その目的は、微小単位図形の数を削減でき、描画装置の描画処理の性能向上を図れ、画像を効率的に描画することができる画像処理装置およびその方法を提供することにある。
【0012】
【課題を解決するための手段】
上記目的を達成するため、本発明の第1の観点は、プリミティブを複数の頂点間を結んで形成される複数の単位図形の組み合わせとして表現し、スクリーン座標系の描画対象領域内にピクセルを発生して単位図形をメモリに描画する画像処理装置であって、所定の形状を形成可能な複数の頂点データから所定の端点を除く複数の頂点を選択し、選択した頂点の隣接する頂点との距離に基づいて選択した各頂点が有効であるか無効であるかを判定し、各頂点の有効/無効の情報に基づいて単位図形データを生成する単位図形生成手段と、上記単位図形生成手段で生成された単位図形データを受けて少なくとも一つの単位図形の描画処理を行う描画手段と、を有し、上記単位図形生成手段は、選択した各頂点と隣接する複数の頂点との距離の和があらかじめ設定した一定値以上である場合に有効であると判定し、一定値以下の場合に無効であると判定する
【0013】
本発明の第2の観点は、プリミティブを複数の頂点間を結んで形成される複数の単位図形の組み合わせとして表現し、スクリーン座標系の描画対象領域内にピクセルを発生して単位図形をメモリに描画する画像処理装置であって、所定の形状を形成可能な複数の頂点データから所定の端点を除く複数の頂点を選択し、選択した頂点の隣接する頂点との距離に基づいて選択した各頂点が有効であるか無効であるかを判定し、各頂点の有効/無効の情報に基づいて単位図形データを生成する単位図形生成手段と、上記単位図形生成手段で生成された単位図形データを受けて少なくとも一つの単位図形の描画処理を行う描画手段と、を有し、上記単位図形生成手段に供給される複数の頂点データは、所定のマトリクスを形成し、上記単位図形生成手段は、供給された端点を除く複数の頂点データのうちマトリクスの中心に位置する頂点と、当該中心頂点に隣接する複数の隣接頂点にかかわるデータを選択的に入力し、上記中心頂点と複数の隣接頂点との距離の和があらかじめ設定した一定値以上であるか否かを判定し、一定値以上であると判定した場合には上記中心頂点が有効であることを意味するデータを出力し、一定値以下であると判定した場合には無効であることを意味するデータを出力する中心点有効判定回路と、上記マトリクスの上記中心頂点を含まない同一の行または列に配置されて所定の一辺を構成する複数の頂点うちの辺の中心となる頂点と、当該辺中頂点に隣接する複数の頂点にかかわるデータを選択的に入力し、辺中頂点と複数の隣接頂点との距離の和があらかじめ設定した一定値以上であるか否かを判定し、一定値以上であると判定した場合には上記辺中頂点が有効でることを意味するデータを出力し、一定値以下であると判定した場合には無効でることを意味するデータを出力する複数の辺中点有効判定回路と、上記中心点有効判定回路による有効/無効データ、上記辺中点有効判定回路による有効/無効データ、並びに、供給された複数の頂点データに基づいて、複数の有効/無効データのうちの有効を示すデータ数に応じて各頂点間の隣接関係データを生成し、生成した隣接関係データに応じた単位図形データを生成する頂点間隣接関係データ生成回路と、を含む
【0017】
また、本発明では、上記単位図形生成手段に供給される複数の頂点データは、ジオメトリ処理後のデータである。
【0018】
また、本発明では、上記単位図形生成手段に供給される複数の頂点データは、スクリーン座標系での2次元座標のみを含むデータであり、上記単位図形生成手段により生成された単位図形データに対してジオメトリ処理を行い、ジオメトリ処理後の単位図形データを上記描画手段に供給するジオメトリ処理手段を、さらに有する。
【0019】
本発明の第3の観点は、プリミティブを複数の頂点間を結んで形成される複数の単位図形の組み合わせとして表現し、単位図形をメモリに描画する画像処理方法であって、複数の頂点データに基づいて、各頂点間を結んで単位図形を形成する場合に、形成した単位図形がスクリーン座標系の描画対象領域内に発生されたピクセルの中心を含むことができるか否かを判定し、当該ピクセルの中心を含む単位図形を形成可能な複数の頂点を有効な頂点であると判定する第1のステップと、上記第1のステップの有効な頂点情報に基づいて単位図形データを生成する第2のステップと、上記第2のステップ生成された単位図形データを受けて少なくとも一つの単位図形の描画処理を行う第3のステップとを有する。
【0020】
本発明では、上記第1のステップの判定処理に用いられる複数の頂点データは、ジオメトリ処理後のデータである。
【0021】
また、本発明では、上記第1のステップの判定処理に用いられる複数の頂点データは、スクリーン座標系での2次元座標のみを含むデータであり、上記第2のステップと第3のステップとの間に、第2のステップで生成された単位図形データに対してジオメトリ処理を行う第4のステップを、さらに有し、上記第3のステップでは、ジオメトリ処理後の単位図形を描画処理する。
【0022】
本発明の第4の観点は、プリミティブを複数の頂点間を結んで形成される複数の単位図形の組み合わせとして表現し、スクリーン座標系の描画対象領域内にピクセルを発生して単位図形をメモリに描画する画像処理方法であって、所定の形状を形成可能な複数の頂点データから所定の端点を除く複数の頂点を選択し、選択した頂点の隣接する頂点との距離に基づいて選択した各頂点が有効であるか無効であるかを判定する第1のステップと、上記第1のステップの各頂点の有効/無効の情報に基づいて単位図形データを生成する第2のステップと、上記第2のステップで生成された単位図形データを受けて少なくとも一つの単位図形の描画処理を行う第3のステップとを有する。
【0023】
本発明では、上記第1のステップでは、選択した各頂点の隣接する頂点との距離があらかじめ設定した一定値以上である場合に有効であると判定し、一定値以下の場合に無効であると判定する。
【0024】
好適には、上記第1のステップでは、選択した各頂点と隣接する複数の頂点との距離の和があらかじめ設定した一定値以上である場合に有効であると判定し、一定値以下の場合に無効であると判定する。
【0025】
本発明では、上記第1のステップの判定処理に用いられる複数の頂点データは、所定のマトリクスを形成し、上記第1のステップは、供給される端点を除く複数の頂点データのうちマトリクスの中心に位置する頂点と、当該中心頂点に隣接する複数の隣接頂点にかかわるデータを選択的に入力し、上記中心頂点と複数の隣接頂点との距離の和があらかじめ設定した一定値以上であるか否かを判定する第4のステップと、上記第4のステップにおいて、一定値以上であると判定した場合には上記中心頂点が有効であることを意味するデータを出力し、一定値以下であると判定した場合には無効であることを意味するデータを出力する第5のステップと、上記マトリクスの上記中心頂点を含まない同一の行または列に配置されて所定の一辺を構成する複数の頂点うちの辺の中心となる頂点と、当該辺中頂点に隣接する複数の頂点にかかわるデータを選択的に入力し、辺中頂点のと複数の隣接頂点との距離の和があらかじめ設定した一定値以上であるか否かを判定する第6のステップと、上記第6のステップで、一定値以上であると判定した場合には上記中心頂点は有効を意味するデータを出力し、一定値以下であると判定した場合には無効を意味するデータを各辺毎に出力する第7のステップと、を含み、上記第2のステップは、上記第5のステップによる有効/無効データ、上記第7のステップによるによる有効/無効データ、並びに、供給される複数の頂点データに基づいて、複数の有効/無効データのうちの有効を示すデータ数に応じて各頂点間の隣接関係データを生成する第8のステップと、上記第8のステップで生成した隣接関係データに応じた単位図形データを生成する第9のステップと、を含む。
【0026】
本発明によれば、たとえば上位側で生成された頂点データに対して、ジオメトリ処理が施され、ジオメトリ処理後の頂点データが単位図形生成装置に供給される。
単位図形生成装置では、所定の形状を形成可能な複数の頂点データから所定の端点を除く複数の頂点が選択され、選択した頂点の隣接する頂点との距離に基づいて選択した各頂点が有効であるか無効であるかが判定される。
そして、各頂点の有効/無効の情報に基づいて単位図形データが生成されて描画装置に供給される。
これに伴い、描画装置では、生成された単位図形データを受けて少なくとも一つの単位図形の描画処理が行われる。
【0027】
また、本発明によれば、たとえば上位側で生成された頂点データが、スクリーン座標系での2次元座標のみを含むデータに変換されて単位図形生成装置に供給される。
単位図形生成装置では、所定の形状を形成可能な複数の頂点データから所定の端点を除く複数の頂点が選択され、選択した頂点の隣接する頂点との距離に基づいて選択した各頂点が有効であるか無効であるかが判定される。
そして、各頂点の有効/無効の情報に基づいて単位図形データが生成されてジオメトリ処理装置に供給される。
ジオメトリ処理装置では、単位図形データに対してジオメトリ処理が施され、ジオメトリ処理後の頂点データが描画装置に供給される。
これに伴い、描画装置では、生成された単位図形データを受けて少なくとも一つの単位図形の描画処理が行われる。
【0028】
【発明の実施の形態】
以下、本実施形態においては、パーソナルコンピュータなどに適用される、任意の3次元物体モデルに対する所望の3次元画像をCRT(Cathode Ray Tube)などのディスプレイ(モニタ)上に高速に表示する3次元コンピュータグラフィックスシステムについて説明する。
【0029】
第1実施形態
図1は、本発明に係る画像処理装置としての3次元コンピュータグラフィックスシステム10の第1の実施形態を示すシステム構成図である。
【0030】
3次元コンピュータグラフィックスシステム10は、立体モデル(プリミティブ)を単位図形である三角形(ポリゴンまたはトライアングル)の組み合わせとして表現し、このポリゴンを描画することで表示画面の各画素(ピクセル)の色を決定し、ディスプレイに表示するポリゴンレンダリング処理を行うシステムである。
また、3次元コンピュータグラフィックスシステム10では、平面上の位置を表現する(x,y)座標の他に、奥行きを表すz座標を用いて3次元物体を表し、この(x,y,z)の3つの座標で3次元空間の任意の一点を特定する。
【0031】
図1に示すように、3次元コンピュータグラフィックスシステム10は、メインプロセッサ(CPU)11、メインメモリ12、グラフィックスプロセッサ13、およびCRT等のモニタ14を有している。
【0032】
メインプロセッサ11は、たとえば、アプリケーションの進行状況などに応じて、メインメモリ12から必要なグラフィックデータを読み出し、このグラフィックデータに対して所定の処理を施して曲面データ11aを生成して、グラフィックスプロセッサ13に出力する。
また、メインプロセッサ11は、メインメモリ12から必要なグラフィックデータを読み出し、このグラフィックデータに対して所定の処理を施していわゆるワールド座標系の9点の頂点データ(×9)S11bを生成して、グラフィックスプロセッサ13に出力する。
【0033】
グラフィックスプロセッサ13は、頂点生成装置131、ジオメトリ処理装置132、トライアングル生成装置133、トライアングルバッファ134、トライアングル描画装置135、およびグラフィックスメモリ136を有している。
【0034】
頂点生成装置131は、メインプロセッサ11により供給された曲面データS11aを受けて、曲面データ11aの制御点から頂点データS131を生成し、ジオメトリ装置132に出力する。
【0035】
ジオメトリ処理装置132は、頂点生成装置131による頂点データS131またはメインプロセッサ11による頂点データS11bに対して、座標変換、クリッピング(Clipping)処理、ライティング(Lighting)処理などのジオメトリ(Geometry)処理などを行い、ワールド座標系からスクリーン座標系に変換された9点の頂点データS132を生成し、トライアングル生成装置133に出力する。
【0036】
トライアングル生成装置133は、ジオメトリ処理装置132による複数の頂点データS132を受けて、各頂点間を結んでトライアングル(単位図形)を形成する場合に、形成したトライアングルがスクリーン座標系の描画対象領域内に発生されたピクセルの中心を含むことができる否かを判定し、当該ピクセルの中心を含むトライアングルを形成可能な複数の頂点を有効な頂点であると判定し、この有効な頂点情報に基づいてトライアングルデータS133を生成し、トライアングルバッファ134を介してトライアングル描画装置135に出力する。
具体的には、トライアングル生成装置133は、ジオメトリ処理装置132による所定の形状(あるいはマトリクス)を形成可能な複数の頂点データS132を受けて、いわゆるメッシュを形成する3×3の頂点から所定の端点を除く複数の頂点を選択し、選択した頂点の隣接する頂点との距離に基づいて選択した各頂点が有効であるか無効であるかを判定し、各頂点の有効/無効の情報に基づいてトライアングルデータ(ポリゴンレンダリングデータ)S134を生成し、トライアングルバッファ134を介してトライアングル描画装置135に出力する。
【0037】
図2は、本実施形態に係るトライアングル生成装置133における処理を説明するためのフローチャートである。
また、図3は、図2の各ステップに対応する処理を概念的に示す図である。
【0038】
ステップST1
トライアングル生成装置133は、ステップST1において、図3(A)に示すような、メッシュを構成する3×3のマトリクスの頂点TP1〜TP9を選択する。
【0039】
ステップST2
ステップST2において、四隅の頂点TP1〜TP4以外の5頂点TP5〜TP9について、隣接する頂点との距離をもとに、当該頂点が有効であるか無効であるかを判定する。
具体的には、隣接する頂点との距離(あるいは複数の隣接する頂点との距離の和)が一定値以上であれば有効として判定し、一定値以下であれば無効として判定する。
図3(B)の例では、選択された5頂点TP5〜TP9のうち2つの頂点TP5およびTP6は、隣接する頂点、たとえばTP1等との距離が一定値以上であることから有効として判定されている。
一方、選択された5頂点のうち3つの頂点TP7,TP8,TP9は、隣接する頂点、たとえばTP2,TP3との距離が一定値以下であることから無効として判定されている。
【0040】
ステップST3
ステップST3において、四隅を除く5頂点TP5〜TP9に関する有効/無効の情報に基づいて、図3(C)に示すようなトライアングルデータを生成する。
この場合、図3(C)に示すように、頂点TP5と頂点3、並びに、頂点TP6と頂点3を結んで、4つのトライアングルを生成する。
この生成したトライアングルは、すべて描画した場合にピクセルを持つトライアングル、すなわち、0ピクセルのトライアングル(ピクセルの中心を含まないトライアングル)ではない。
【0041】
図4は、トライアングル生成装置133の構成例を示すブロック図である。
【0042】
トライアングル生成装置133は、図4に示すように、中心点有効判定回路1331、辺中点有効判定回路1332〜1335、および頂点間隣接関係データ生成回路1336を有している。
【0043】
中心点有効判定回路1331は、ジオメトリ処理装置132によるスクリーン座標系の9個の頂点データS132のうち、図5に示すように、3×3のマトリクスの中心に位置する頂点TP7とその上下左右に隣接する頂点TP5,TP6,TP8,TP9にかかわるデータS132−1を選択的に入力し、図6のフローチャートに示すような処理を行う。
【0044】
すなわち、中心点有効判定回路1331は、中心点TP7と隣接点TP5,TP6,TP8,TP9との距離を計算する(ステップST11)。
次に、計算した中心点TP7と各隣接点TP5,TP6,TP8,TP9との距離の和があらかじめ設定された一定値以上であるか否かの判定を行う(ステップST12)。
そして、ステップST12において、中心点TP7と各隣接点TP5,TP6,TP8,TP9との距離の和が一定値以上であると判定した場合には、有効を意味するデータS1331を頂点間隣接関係データ生成回路1336に出力する(ST13)。
一方、ステップST12において、中心点TP7と各隣接点TP5,TP6,TP8,TP9との距離の和が一定値以下であると判定した場合には、無効を意味するデータS1331を頂点間隣接関係データ生成回路1336に出力する(ST14)。
【0045】
辺中点有効判定回路1332は、ジオメトリ処理装置132によるスクリーン座標系の9個の頂点データS132のうち、図7に示すように、3×3のマトリクスを構成する中心点TP7を含まない同一の行または列に配置されて4角形の4辺のうちの第1辺L1を構成する3つの頂点、すなわち第1辺L1の両端に位置する頂点TP1,TP2とこれらの辺中点TP6にかかわるデータS132−2を選択的に入力し、図8のフローチャートに示すような処理を行う。
【0046】
すなわち、辺中点有効判定回路1332は、辺中点TP6と 隣接点(端点)TP1,TP2との距離を計算する(ステップST21)。
次に、計算した辺中点TP6と各隣接点TP1,TP2との距離の和があらかじめ設定された一定値以上であるか否かの判定を行う(ステップST22)。
そして、ステップST22において、辺中点TP6と各隣接点TP1,TP2との距離の和が一定値以上であると判定した場合には、有効を意味するデータS1332を頂点間隣接関係データ生成回路1336に出力する(ST23)。
一方、ステップST22において、辺中点TP6と各隣接点TP1,TP2との距離の和が一定値以下であると判定した場合には、無効を意味するデータS1332を頂点間隣接関係データ生成回路1336に出力する(ST24)。
【0047】
辺中点有効判定回路1333は、ジオメトリ処理装置132によるスクリーン座標系の9個の頂点データS132のうち、図9に示すように、3×3のマトリクスを構成する中心点TP7を含まない同一の行または列に配置されて4角形の4辺のうちの第2辺L2を構成する3つの頂点、すなわち第2辺L2の両端に位置する頂点TP1,TP4とこれらの辺中点TP5にかかわるデータS132−3を選択的に入力し、図8のフローチャートに示すような処理を行う。
【0048】
すなわち、辺中点有効判定回路1333は、辺中点TP5と 隣接点(端点)TP1,TP4との距離を計算する(ステップST21)。
次に、計算した辺中点TP5と各隣接点TP1,TP4との距離の和があらかじめ設定された一定値以上であるか否かの判定を行う(ステップST22)。
そして、ステップST22において、辺中点TP5と各隣接点TP1,TP4との距離の和が一定値以上であると判定した場合には、有効を意味するデータS1333を頂点間隣接関係データ生成回路1336に出力する(ST23)。
一方、ステップST22において、辺中点TP5と各隣接点TP1,TP4との距離の和が一定値以下であると判定した場合には、無効を意味するデータS1333を頂点間隣接関係データ生成回路1336に出力する(ST24)。
【0049】
辺中点有効判定回路1334は、ジオメトリ処理装置132によるスクリーン座標系の9個の頂点データS132のうち、図10に示すように、3×3のマトリクスを構成する中心点TP7を含まない同一の行または列に配置されて4角形の4辺のうちの第3辺L3を構成する3つの頂点、すなわち第3辺L3の両端に位置する頂点TP2,TP3とこれらの辺中点TP8にかかわるデータS132−4を選択的に入力し、図8のフローチャートに示すような処理を行う。
【0050】
すなわち、辺中点有効判定回路1334は、辺中点TP8と 隣接点(端点)TP2,TP3との距離を計算する(ステップST21)。
次に、計算した辺中点TP8と各隣接点TP2,TP3との距離の和があらかじめ設定された一定値以上であるか否かの判定を行う(ステップST22)。
そして、ステップST22において、辺中点TP8と各隣接点TP2,TP3との距離の和が一定値以上であると判定した場合には、有効を意味するデータS1334を頂点間隣接関係データ生成回路1336に出力する(ST23)。
一方、ステップST22において、辺中点TP8と各隣接点TP2,TP3との距離の和が一定値以下であると判定した場合には、無効を意味するデータS1334を頂点間隣接関係データ生成回路1336に出力する(ST24)。
【0051】
辺中点有効判定回路1335は、ジオメトリ処理装置132によるスクリーン座標系の9個の頂点データS132のうち、図11に示すように、3×3のマトリクスを構成する中心点TP7を含まない同一の行または列に配置されて4角形の4辺のうちの第4辺L4を構成する3つの頂点、すなわち第4辺L4の両端に位置する頂点TP3,TP4とこれらの辺中点TP9にかかわるデータS132−5を選択的に入力し、図8のフローチャートに示すような処理を行う。
【0052】
すなわち、辺中点有効判定回路1335は、辺中点TP9と 隣接点(端点)TP3,TP4との距離を計算する(ステップST21)。
次に、計算した辺中点TP9と各隣接点TP3,TP4との距離の和があらかじめ設定された一定値以上であるか否かの判定を行う(ステップST22)。
そして、ステップST22において、辺中点TP9と各隣接点TP3,TP4との距離の和が一定値以上であると判定した場合には、有効を意味するデータS1335を頂点間隣接関係データ生成回路1336に出力する(ST23)。
一方、ステップST22において、辺中点TP9と各隣接点TP3,TP4との距離の和が一定値以下であると判定した場合には、無効を意味するデータS1335を頂点間隣接関係データ生成回路1336に出力する(ST24)。
【0053】
頂点間隣接関係データ生成回路1336は、中心点有効判定回路1331による有効/無効データS1331、辺中点有効判定回路1332による有効/無効データS1332、辺中点有効判定回路1333による有効/無効データS1333、辺中点有効判定回路1334による有効/無効データS1334、および辺中点有効判定回路1334による有効/無効データS1335の5つの有効/無効データ、並びに、ジオメトリ処理装置132によるスクリーン座標系の9個の頂点データS132に基づいて、5つの有効/無効データS131〜S135のうちの有効を示すデータ数に応じて各頂点間の隣接関係データを生成し、生成した隣接関係データに応じたトライアングルデータを生成してトライアングルバッファ134を介してトライアングル描画装置135に出力する。
【0054】
図12(A)〜(F)は、頂点間隣接関係データ生成回路1336の処理概要を説明するための図である。
【0055】
図12(A)は、有効を示す有効/無効データが無い(0)の場合の処理を示している。
この場合、頂点間隣接関係データ生成回路1336は、四隅の頂点TP1〜TP4を除く5つの頂点TP5〜TP9のすべてが無効であることから、頂点TP2とTP4(またはTP1とTP3)とを結んで2つのトライアングルを形成するトライアングルデータを生成する。
【0056】
図12(B)は、有効を示す有効/無効データが一つの場合の処理を示している。
この場合、四隅の頂点TP1〜TP4を除く5つの頂点TP5〜TP9のうちの一つが有効であることから、中心点PT7か4つの辺中点TP5,TP6,TP8,TP9のうちの一つが有効である。
したがって、頂点間隣接関係データ生成回路1336は、図13(B−1)に示すように、中心点TP7が有効である場合、頂点TP1と中心点TP7と頂点TP3、並びに、頂点TP2と中心点TP7と頂点TP4とを結んで4つのトライアングルを形成するトライアングルデータを生成する。
また、頂点間隣接関係データ生成回路1336は、図13(B−2)に示すように、辺中点、たとえばTP8が有効である場合、頂点TP1と辺中点TP8、並びに、頂点TP4と辺中点TP8とを結んで3つのトライアングルを形成するトライアングルデータを生成する。
【0057】
図12(C)は、有効を示す有効/無効データが2つの場合の処理を示している。
この場合、四隅の頂点TP1〜TP4を除く5つの頂点TP5〜TP9のうちの2つが有効であることから、中心点PT7と4つの辺中点TP5,TP6,TP8,TP9のうちの一つ、あるいは4つの辺中点TP5,TP6,TP8,TP9のうちの2つが有効である。
したがって、頂点間隣接関係データ生成回路1336は、図12(C−1)に示すように、中心点TP7とたとえば辺中点TP9が有効である場合、頂点TP1と中心点TP7と頂点TP3、頂点TP2と中心点TP7と頂点TP4、並びに中心点TP7と辺中点TP9とを結んで5つのトライアングルを形成するトライアングルデータを生成する。
また、頂点間隣接関係データ生成回路1336は、図12(C−2)に示すように、互いに隣接する辺の辺中点、たとえば第3辺L3の辺中点TP8と第4辺L4の辺中点TP9が有効である場合、頂点TP1と辺中点TP8、並びに、頂点TP1と辺中点TP9とを結んで4つのトライアングルを形成するトライアングルデータを生成する。
また、頂点間隣接関係データ生成回路1336は、図12(C−3)に示すように、互いに対向する辺の辺中点、たとえば第1辺L1の辺中点TP6と第4辺L4の辺中点TP9が有効である場合、頂点TP4と辺中点TP6、辺中点TP6と辺中点TP9、並びに、頂点TP2と辺中点TP9とを結んで4つのトライアングルを形成するトライアングルデータを生成する。
【0058】
図12(D)は、有効を示す有効/無効データが3つの場合の処理を示している。
この場合、四隅の頂点TP1〜TP4を除く5つの頂点TP5〜TP9のうちの3つが有効であることから、中心点PT7と4つの辺中点TP5,TP6,TP8,TP9のうちの2つ、あるいは4つの辺中点TP5,TP6,TP8,TP9のうちの3つが有効である。
したがって、頂点間隣接関係データ生成回路1336は、図12(D−1)に示すように、中心点TP7と、たとえば互いに隣接する辺の辺中点、たとえば第3辺L3の辺中点TP8と第4辺L4の辺中点TP9が有効である場合、辺中点TP9が有効である場合、頂点TP1と中心点TP7と頂点TP3、頂点TP2と中心点TP7と頂点TP4、中心点TP7と辺中点TP8、並びに中心点TP7と辺中点TP9とを結んで5つのトライアングルを形成するトライアングルデータを生成する。
また、頂点間隣接関係データ生成回路1336は、図12(D−2)に示すように、互いに対向する辺の辺中点、たとえば第1辺L1の辺中点TP6と第4辺L4の辺中点TP9が有効である場合、頂点TP1と中心点TP7と頂点TP3、頂点TP2と中心点TP7と頂点TP4、並びに辺中点TP6と中心点TP7と辺中点TP9とを結んで6つのトライアングルを形成するトライアングルデータを生成する。
また、頂点間隣接関係データ生成回路1336は、図12(D−3)に示すように、4つの辺中点のうちの3つ、たとえば第1辺L1の辺中点TP6、第3辺L3の辺中点TP8、および第4辺L4の辺中点TP9が有効である場合、頂点TP4と辺中点TP6、辺中点TP6と辺中点TP9、辺中点TP6と辺中点TP8、並びに辺中点TP8と辺中点TP9とを結んで5つのトライアングルを形成するトライアングルデータを生成する。
【0059】
図12(E)は、有効を示す有効/無効データが4つの場合の処理を示している。
この場合、四隅の頂点TP1〜TP4を除く5つの頂点TP5〜TP9のうちの一つが無効であることから、中心点PT7か4つの辺中点TP5,TP6,TP8,TP9のうちの一つが無効である。
したがって、頂点間隣接関係データ生成回路1336は、図12(E−1)に示すように、辺中点、たとえばTP5が無効である場合、頂点TP1と中心点TP7と頂点TP3、頂点TP2と中心点TP7と頂点TP4、辺中点TP6と中心点TP7と辺中点TP9、並びに中心点TP7と辺中点TP8とを結んで7つのトライアングルを形成するトライアングルデータを生成する。
また、頂点間隣接関係データ生成回路1336は、図12(E−2)に示すように、中心点TP7が無効である場合、辺中点TP5と辺中点TP6、辺中点TP5と辺中点TP9、辺中点TP5と辺中点TP8、辺中点TP6と辺中点TP8、並びに、辺中点TP8と辺中点TP9とを結んで6つのトライアングルを形成するトライアングルデータを生成する。
【0060】
図12(F)は、有効を示す有効/無効データが5つの場合の処理を示している。
この場合、四隅の頂点TP1〜TP4を除く5つの頂点TP5〜TP9のうちのすべてが有効である。
したがって、頂点間隣接関係データ生成回路1336は、図12(F)に示すように、頂点TP1と中心点TP7と頂点TP3、頂点TP2と中心点TP7と頂点TP4、辺中点TP6と中心点TP7と辺中点TP9、並びに、辺中点TP5と中心点TP7と辺中点TP8とを結んで8つのトライアングルを形成するトライアングルデータを生成する。
【0061】
トライアングルバッファ134は、トライアングル生成装置133で生成されたトライアングルデータS133を保持し、データS134としてトライアングル描画装置135に出力する。
このトライアングルバッファ134は、スループット調整のためのバッファである。
【0062】
トライアングル描画装置135は、トライアングルバッファ134による描画すべきトライアングルデータS134を受けて、以下に詳述する線形補間等の処理を行って、たとえばページ単位でピクセルデータPIXおよびテクスチャデータTEXをグラフィックスメモリに描画し、あるいは表示データのモニタ14への読み出し処理等を行う。
【0063】
トライアングル描画装置135に入力されるトライアングルデータ(ポリゴンレンダリングデータ)は、ポリゴンの各3頂点の(x,y,z,R,G,B,s,t,q)のデータを含んでいる。
ここで、(x,y,z)データは、トライアングル(ポリゴン)の頂点の3次元座標を示し、(R,G,B)データは、それぞれ当該3次元座標における赤、緑、青の輝度値を示している。
(s,t,q)データのうち、(s,t)は、対応するテクスチャの同次座標を示しており、qは同次項を示している。ここで、「s/q」および「t/q」に、それぞれテクスチャサイズUSIZEおよびVSIZEを乗じて、実際のテクスチャ座標データ(u,v)が得られる。
トライアングル描画装置135によるグラフィックスメモリ(具体的には後記するテクスチャバッファ)136に記憶されたテクスチャデータへのアクセスは、テクスチャ座標データ(u,v)を用いて行われる。
すなわち、トライアングルデータ(ポリゴンレンダリングデータ)は、三角形の各頂点の物理座標値と、それぞれの頂点の色とテクスチャデータである。
【0064】
以下、トライアングル描画装置135について詳細に説明する。
【0065】
図13に示すように、トライアングル描画装置135は、線形補間演算のための初期設定演算ブロックとしてのDDA(Digital Differential Analyzer) セットアップ回路1351、線形補間処理ブロックとしてのトライアングルDDA回路1352、テクスチャエンジン回路1353、メモリインタフェース(I/F)回路1354、およびCRTコントロール回路1355を有している。
【0066】
以下、トライアングル描画装置135の各ブロックの構成および機能について、図面に関連付けて順を追って説明する。
【0067】
DDAセットアップ回路1351は、後段のトライアングルDDA回路1352において物理座標系上の三角形の各頂点の値を線形補間して、三角形の内部の各画素の色と深さ情報を求めるに先立ち、トライアングルデータ(ポリゴンレンダリングデータ)S133aが示す(z,R,G,B,s,t,q)データについて、三角形の辺と水平方向の差分などを求めるセットアップ演算を行う。
このセットアップ演算は、具体的には、開始点の値と終点の値と、開始点と終点との距離を用いて、単位長さ移動した場合における、求めようとしている値の変分を算出する。
DDAセットアップ回路1351は、算出した変分データを含むプリミティブに関する情報としてのセットアップデータS1351およびページデータS133bをトライアングルDDA回路1352に出力する。
【0068】
DDAセットアップ回路1351の機能について図14に関連付けてさらに説明する。
上述したように、DDAセットアップ回路1351の主な処理は、前段のジオメトリ処理を経て物理座標にまで落ちてきた各頂点における各種情報(色、テクスチャ座標)の与えられた三頂点P0(x0,y0)、P1(x1,y1)、P2(x2,y2)により構成される三角形内部で変分を求めて、後段の線形補間処理の基礎デ−タを算出することである。
三角形の描画はひとつひとつの画素の描画に集約されるが、そのために描画開始点における最初の値を求める必要がある。
最初の描画点における各種情報は、頂点からその最初の描画点までの水平距離に水平方向の変分を掛けた値と、垂直距離に垂直方向の変分を掛けた値を足し合わせたものとなる。いったん目的の三角形の内部の一つの整数格子上の値が求まれば、対象の三角形内部のその他の格子点における値は変分の整数倍で求めることが可能となる。
【0069】
三角形の各頂点データは、たとえばx,y座標が16ビット、z座標が24ビット、RGBカラー値が各12ビット(=8+4)、s,t,qテクスチャ座標は各32ビット浮動少数値(IEEEフォーマット)等で構成される。
【0070】
なお、このDDAセットアップ回路1351は、従来のようにDSP構造ではなく、ASIC手法により実装している。
具体的には、図15に示すように、多段に配置したレジスタ13511−1〜13513間に並列に複数の演算ユニットを並列に配置した演算ユニット群13512−1〜13512−3を挿入したフルデータパスロジック、換言すれば、同期パイプライン方式の時間並列構造として構成されている。
【0071】
トライアングルDDA回路1352は、DDAセットアップ回路1351から入力した変分データを含むプリミティブに関する情報としてのセットアップデータS1351を基に、三角形内部の各画素における線形補間された(z,R,G,B,s,t,q)データを算出する。
トライアングルDDA回路1352は、各画素の(x,y)データと、当該(x,y)座標における(z,R,G,B,s,t,q)データとを、DDAデータ(補間データ)S1352としてテクスチャエンジン回路1353に出力する。
【0072】
すなわち、トライアングルDDA回路1352は、ポリゴンの頂点毎に求められた画像パラメータに基づいてポリゴン内部に含まれるすべてのピクセルの画像パラメータを補間するラスタライズ処理(ラスタライゼーション:Rasterization)を行う。
具体的には、トライアングルDDA回路1352は、各種データ(z,テクスチャ座標、カラーなど)をラスタライズする。
【0073】
テクスチャエンジン回路1353は、「s/q」および「t/q」の算出処理、テクスチャ座標データ(u,v)の算出処理、グラフィックスメモリ136からの(R,G,B)データの読み出し処理等をパイプライン方式で行う。
なお、テクスチャエンジン回路1353は、たとえば所定の矩形内に位置する複数(たとえば4あるいは8)画素についての処理を同時に並行して行う。
【0074】
テクスチャエンジン回路1353は、DDAデータS1352が示す(s,t,q)データについて、sデータをqデータで除算する演算と、tデータをqデータで除算する演算とを行う。
テクスチャエンジン回路1353には、たとえば図示しない除算回路が並列処理する画素数分だけ(たとえば8個)設けられており、8画素についての除算「s/q」および「t/q」が同時に行われる。また、8画素のうち代表点からの補間演算処理を行うように実装することも可能である。
【0075】
また、テクスチャエンジン回路1353は、除算結果である「s/q」および「t/q」に、それぞれテクスチャサイズUSIZEおよびVSIZEを乗じて、テクスチャ座標データ(u,v)を生成する。
また、テクスチャエンジン回路1353は、メモリI/F回路1354を介して、グラフィックスメモリ136に、生成したテクスチャ座標データ(u,v)を含む読み出し要求を出力し、メモリI/F回路1354を介して、グラフィックスメモリ136に含まれるテクスチャバッファに記憶されているテクスチャデータを読み出すことで、(s,t)データに対応したテクスチャアドレスに記憶された(R,G,B)データを得る。
テクスチャエンジン回路1353は、読み出した(R,G,B)データの(R,G,B)データと、前段のトライアングルDDA回路1352からのDDAデータS1352に含まれる(R,G,B)データとを、それぞれ掛け合わせるなどして、ピクセルデータを生成する。
テクスチャエンジン回路1353は、この画素データを最終的にピクセルのカラー値としてメモリI/F回路1354に出力する。
【0076】
なお、グラフィックスメモリ136に含まれるテクスチャバッファには、MIPMAP(複数解像度テクスチャ)などの複数の縮小率に対応したテクスチャデータが記憶されている。ここで、何れの縮小率のテクスチャデータを用いるかは、所定のアルゴリズムを用いて、前記三角形単位で決定される。
【0077】
テクスチャエンジン回路1353は、フルカラー方式の場合には、テクスチャバッファから読み出した(R,G,B)データを直接用いる。
一方、テクスチャエンジン回路1353は、インデックスカラー方式の場合には、あらかじめ作成しておいたカラーインデックステーブルのデータを、テクスチャカラールックアップテーブル(CLUT)バッファより内蔵するSRAM等で構成した一時保管バッファに転送しておいて、このカラールックアップテーブルを用いて、テクスチャバッファから読み出したカラーインデックスに対応する(R,G,B)データを得る。
たとえばカラールックアップテーブルがSRAMで構成された場合、カラーインデックスをSRAMのアドレスに入力すると、その出力には実際の(R,G,B)データが出てくるといった使い方となる。
【0078】
ここで、いわゆるテクスチャマッピング処理について、図16および図17に関連付けてさらに説明する。
図16は、テクスチャエンジン回路1353におけるテクスチャマッピング処理回路の構成例を示すブロック図であり、図17は、実際のテクスチャマッピング処理をイメージ的に示す図である。
【0079】
このテクスチャマッピング処理回路は、DDA回路13531,13532、テクスチャ座標算出回路(Div)13533、MIPMAPレベル算出回路13534、フィルタ回路13535、第1の合成回路(FUNC)13536、および第2の合成回路(FOG)13537を有している。
【0080】
このテクスチャマッピング処理回路においては、図17(A)に示すように、DDA回路13531,13532において、三角形の内部で線形補間されたテクスチャの同時座標s、t、qを用いて、デカルト座標でのテクスチャの実際のアドレスに変換する(qでの除算)。
さらにMIPMAP等を行う場合は、MIPMAPレベル算出回路13534においてMIPMAPのレベルの算出を行う。そして、図17(B)に示すように、テクスチャ座標算出回路13533においてテクスチャ座標の算出を行う。また、フィルタ回路13535において、グラフィックスメモリ136に含まれるテクスチャバッファからそれぞれのレベルのテクスチャデータを読み出し、そのまま使うポイントサンプリング(Point Sampling)または、bi-Linea(4近傍)補間、Tri-Linea 補間等を行う。
そこで得られたテクスチャーカラーに対して次の処理を行う。すなわち、第1の合成回路13536において、入力された物体カラーとテクスチャーカラーを合成し、さらに第2の合成回路13537でそれにフォグカラーを合成して、最終的に描画する画素のカラーを決定する。
【0081】
メモリI/F回路1354は、テクスチャエンジン回路1353から入力した画素データS135に対応するzデータと、グラフィックスメモリ136に含まれるzバッファに記憶されているzデータとの比較を行い、入力した画素データによって描画される画像が、前回、グラフィックスメモリ136(ディスプレイバッファ)に書き込まれた画像より、手前(視点側)に位置するか否かを判断し、手前に位置する場合には、画像データに対応するzデータでzバッファに記憶されたzデータを更新する。
また、メモリI/F回路1354は、(R,G,B)データをグラフィックスメモリ136(ディスプレイバッファ)に書き込む。
【0082】
さらに、メモリI/F回路1354は、今から描画しようとしているピクセルにおけるテクスチャアドレスに対応したテクスチャデータを格納しているグラフィックメモリ136のメモリブロックをそのテクスチャアドレスより算出し、そのメモリブロックにのみ読み出し要求を出すことにより、テクスチャデータを読み出す。
この場合、該当するテクスチャデータを保持していないメモリブロックにおいては、テクスチャデータの読み出しのためのアクセスが行われないため、描画により多くのアクセス時間を提供することが可能となっている。
【0083】
メモリI/F回路1354は、描画においても同様に、今から描画しようとしている画素アドレスに対応する画素データを格納しているグラフィックスメモリ136のメモリブロックに対して、該当アドレスから画素データをモディファイ書き込みをするために読み出し、モディファイ後同じアドレスへ書き戻す。
隠れ面処理を行なう場合には、やはり同じように今から描画しようとしている画素アドレスに対応する奥行きデータを格納しているメモリブロックに対して、該当アドレスから奥行きデータをモディファイ書き込みするため読み出し、必要ならばモディファイ後同じアドレスへ書き戻す。
【0084】
また、メモリI/F回路1354は、テクスチャエンジン回路1353からグラフィックスメモリ136に対する、生成されたテクスチャ座標データ(u,v)を含む読み出し要求を受けた場合には、グラフィックスメモリ136に記憶された(R,G,B)データを読み出す。
また、メモリI/F回路1354は、CRTコントロール回路1355から表示データを読み出す要求を受けた場合には、この要求に応じて、グラフィックメモリ136(ディスプレイバッファ)から一定の固まり、たとえば8画素あるいは16画素単位で表示データを読み出す。
【0085】
メモリI/F回路1354は、グラフィックスメモリ136へのアクセス(書き込みまたは読み出し)を行うが、書き込み経路と読み出し経路とが別経路として構成されている。
すなわち、書き込みの場合には書き込みアドレスADRWと書き込みデータDTWが書き込み系回路で処理されてグラフィックスメモリ136に書き込み、読み出しの場合には読み出し系回路で処理されてグラフィックスメモリ136から読み出す。
そして、メモリI/F回路1354は、所定のインターリーブ方式のアドレッシングに基づいてグラフィックスメモリ136へのアクセスを、たとえば16画素単位で行う。
【0086】
このようなメモリとのデータのやりとりにおいては、それまでの処理を複数並行処理することで、描画性能を向上させることができる。
特に、トライアングルDDA部分とテクスチャエンジン部分を並列実効形式で、同じ回路を設ける(空間並列)か、または、パイプラインを細かく挿入する(時間並列)ことで、複数画素の同時算出を行っている。
グラフィックスメモリ136のメモリブロックは表示領域において隣接した部分は、後述するように異なるメモリブロックとなるように配置してあるので、三角形のような平面を描画する場合には面で同時に処理できることになるため、それぞれのメモリブロックの動作確率は非常に高くなっている。
【0087】
グラフィックスメモリ136は、テクスチャバッファ、ディスプレイバッファ、zバッファおよびテクスチャCLUT(Color Look Up Table) バッファとして機能する。
また、グラフィックスメモリ136は、同一機能を有する複数、たとえば4個のモジュールに分割されている。
【0088】
また、グラフィックスメモリ136には、より多くのテクスチャデータを格納するために、インデックスカラーにおけるインデックスと、そのためのカラールックアップテーブル値が、テクスチャCLUTバッファに格納されている。
インデックスおよびカラールックアップテーブル値は、上述したように、テクスチャ処理に使われる。
すなわち、通常はR,G,Bそれぞれ8ビットの合計24ビットでテクスチャ要素を表現するが、それではデータ量が膨らむため、あらかじめ選んでおいたたとえば256色等の中から一つの色を選んで、そのデータをテクスチャ処理に使う。このことで256色であればそれぞれのテクスチャ要素は8ビットで表現できることになる。インデックスから実際のカラーへの変換テーブルは必要になるが、テクスチャの解像度が高くなるほど、よりコンパクトなテクスチャデータとすることが可能となる。
これにより、テクスチャデータの圧縮が可能となり、内蔵メモリの効率良い利用が可能となる。
【0089】
さらに、グラフィックスメモリ136には、描画と同時並行的に隠れ面処理を行うため、描画しようとしている物体の奥行き情報が格納されている。
なお、表示データと奥行きデータおよびテクスチャデータの格納方法としては、たとえばメモリブロックの所定の位置、たとえば先頭から連続して表示データが格納され、次に奥行きデータが格納され、残りの空いた領域に、テクスチャの種類毎に連続したアドレス空間でテクスチャデータが格納される。
図面に関連付けて概念的に説明すると、図18(A)〜(C)に示すように、いわゆるベースポインタ(BP)で示された位置から図中FBで示す領域に、たとえば24ビット幅で表示データと奥行きデータが格納され、残りの空いた領域である8ビット幅の領域に図中TBで示すようにテクスチャデータが格納される。これらは表示データとテクスチャデータのユニファイドメモリ(Unified Memory)化ということになる。
これにより、テクスチャデータを効率よく格納できることになる。
【0090】
以上のように、DDAセットアップ回路1351、トライアングルDDA回路1352、テクスチャエンジン回路1353、メモリI/F回路1354等における処理を経て、最終的なメモリアクセスがピクセル(Pixel;Picture Cell Element) という描画画素単位になる。
【0091】
CRTコントロール回路1355は、与えられた水平および垂直同期信号に同期して、CRT等のモニタ14に表示する表示アドレスを発生し、グラフィックスメモリ136に含まれるディスプレイバッファから表示データを読み出す要求をメモリI/F回路1354に出力する。
この要求に応じて、メモリI/F回路1354は、グラフィックスメモリ136(ディスプレイバッファ)から一定の固まりで表示データを読み出す。
CRTコントローラ回路1355は、グラフィックスメモリ136から読み出した表示データを記憶するたとえばFIFO回路を内蔵し、一定の時間間隔で、RGBのインデックス値を発生する。
CRTコントローラ回路1355は、各インデックス値に対応するR,G,Bデータを記憶しており、発生したRGBのインデックス値に対応するデジタル形式のR,G,Bデータを、図示しないD/Aコンバータ(Digital/Analog Converter)に転送し、アナログ形式のR,G,Bデータを生成する。
CRTコントローラ回路1355は、この生成されたR,G,Bデータを図示しないCRTに出力する。
【0092】
次に、上記構成による動作を説明する。
【0093】
3次元コンピュータグラフィックスシステム10においては、メインプロセッサ11に、たとえば、アプリケーションの進行状況などに応じて、メインメモリ12から必要なグラフィックデータが読み出される。
メインプロセッサ11では、このグラフィックデータに対して所定の処理が施されて、たとえば曲面データS11aが生成され、グラフィックスプロセッサ13に出力される。
あるいは、メインプロセッサ11においては、メインメモリ12から読み出されたグラフィックデータに対して所定の処理が施され頂点データS11bが生成されて、グラフィックスプロセッサ13に出力される。
【0094】
グラフィックスプロセッサ13では、メインプロセッサ11による曲面データS11aが頂点生成装置131に入力され、頂点データ11bはジオメトリ処理装置132に入力される。
頂点生成装置131では、メインプロセッサ11により供給された曲面データS11aを受けて、曲面データ11aの制御点から頂点データS131が生成されてジオメトリ装置132に出力される。
【0095】
ジオメトリ処理装置132では、頂点生成装置131による頂点データまたはメインプロセッサ11による頂点データS11bに対して、座標変換、クリッピング処理、ライティング処理などのジオメトリ(Geometry)処理などが行われる。そして、ジオメトリ処理装置132において、トライアングルデータS132が生成され、トライアングル生成装置133に出力される。
【0096】
トライアングル生成装置133においては、ジオメトリ処理装置132による頂点データS132またはメインプロセッサ11による頂点データS11bを受けて、メッシュを形成する3×3の頂点から所定の端点を除く複数の頂点が選択される。
トライアングル生成装置133では、選択した頂点の隣接する頂点との距離に基づいて選択した各頂点が有効であるか無効であるかが判定される。
具体的には、たとえば複数の隣接する頂点との距離の和が一定値以上であれば有効として判定され、一定値以下であれば無効として判定される。
トライアングル生成装置133では、判定結果である各頂点の有効/無効の情報、たとえば選択した複数の頂点に対する判定結果のうち有効である数がいくつであるかという情報に基づいて、各頂点間の隣接関係データが生成される
そして、トライアングル生成装置133では、生成した隣接関係データに応じたトライアングルデータが生成されてトライアングルバッファ134を介してトライアングル描画装置135に出力される。
【0097】
トライアングル描画装置135において、DDAセットアップ回路1351でポリゴンレンダリングデータS11に基づいて、三角形の辺と水平方向の差分などを示す変分データが生成される。
具体的には、開始点の値と終点の値、並びに、その間の距離を用いて、単位長さ移動した場合における、求めようとしている値の変化分である変分が算出され、変分データを含むセットアップデータS1351としてトライアングルDDA回路1352に出力される。
【0098】
トライアングルDDA回路1352においては、変分データを含むセットアップデータS1351を用いて、三角形内部の各画素における線形補間された(z,R,G,B,s,t,q)データが算出される。
そして、この算出された(z,R,G,B,s,t,q)データと、三角形の各頂点の(x,y)データとが、DDAデータS1352として、トライアングルDDA回路1352からテクスチャエンジン回路1353に出力される。
すなわち、トライアングルDDA1352においては、ポリゴンの頂点毎に求められた画像パラメータに基づいてポリゴン内部に含まれるすべてのピクセルの画像パラメータ(z,テクスチャ座標、カラーなど)を補間するラスタライズ処理が行われる。
そして、トライアングルDDA回路1352において、各種データ(z,テクスチャ座標、カラーなど)がラスタライズされて、DDAデータS1352としてテクスチャエンジン回路1353に出力される。
【0099】
テクスチャエンジン回路1353においては、DDAデータS1352が示す(s,t,q)データについて、sデータをqデータで除算する演算と、tデータをqデータで除算する演算とが行われる。そして、除算結果「s/q」および「t/q」に、それぞれテクスチャサイズUSIZEおよびVSIZEが乗算され、テクスチャ座標データ(u,v)が生成される。
【0100】
次に、テクスチャエンジン回路1353からメモリI/F回路1354に対して生成されたテクスチャ座標データ(u,v)を含む読み出し要求が出力され、メモリI/F回路1354を介して、グラフィックスメモリ136に記憶された(R,G,B)データが読み出される。
次に、テクスチャエンジン回路1353において、読み出した(R,G,B)データの(R,G,B)データと、前段のトライアングルDDA回路1352からのDDAデータS1352に含まれる(R,G,B)データとが掛け合わされ、ピクセルデータとして生成される。
このピクセルデータは、テクスチャエンジン回路1353からメモリI/F回路1354に出力される。
【0101】
そして、メモリI/F回路1354において、テクスチャエンジン回路1353から入力した画素データに対応するzデータと、zバッファに記憶されているzデータとの比較が行われ、入力した画素データS135によって描画される画像が、前回、ディスプレイバッファに書き込まれた画像より、手前(視点側)に位置するか否かが判断される。
判断の結果、手前に位置する場合には、画像データに対応するzデータでzバッファに記憶されたzデータが更新される。
【0102】
次に、メモリI/F回路1354において、(R,G,B)データがグラフィックスメモリ136のディスプレイバッファに書き込まれる。
これら書き込む(更新も含む)べきデータは、書き込み系回路を介し所定のメモリに対して並列的に書き込まれる。
【0103】
メモリI/F回路1354においては、今から描画しようとしているピクセルにおけるテクスチャアドレスに対応したテクスチャを格納しているグラフィックスメモリ136のメモリブロックがそのテクスチャアドレスにより算出され、そのメモリブロックにのみ読みだし要求が出され、テクスチャデータが読み出される。
この場合、該当するテクスチャデータを保持していないメモリブロックにおいては、テクスチャ読み出しのためのアクセスが行われないため、描画により多くのアクセス時間を提供することが可能となっている。
【0104】
描画においても同様に、今から描画しようとしている画素アドレスに対応する画素データを格納しているメモリブロックに対して、該当アドレスから画素データがモディファイ書き込み(Modify Write)を行うために読み出され、モディファイ後、同じアドレスへ書き戻される。
【0105】
隠れ面処理を行う場合には、やはり同じように今から描画しようとしている画素アドレスに対応する奥行きデータを格納しているメモリブロックに対して、該当アドレスから奥行きデータがモディファイ書き込み(Modify Write)を行うために読み出され、必要ならばモディファイ後、同じアドレスへ書き戻される。
【0106】
そして、図示しないCRTに画像を表示する場合には、CRTコントロール回路1355において、与えられた水平垂直同期周波数に同期して、表示アドレスが発生され、メモリI/F回路1354へ表示データ転送の要求が出される。
メモリI/F回路1354では、その要求に従い、一定のまとまった固まりで、表示データがCRTコントロール回路1355に転送される。
CRTコントロール回路1355では、図示しないディスプレイ用FIFO等にその表示データが貯えられ、一定の間隔でRGBのインデックス値が生成される。
CRTコントロール回路1355においては、内部にRGBのインデックスに対するRGB値が記憶されていて、インデックス値に対するRGB値が図示しないD/Aコンバータへ転送される。
そして、D/Aコンバータでアナログ信号に変換されたRGB信号がCRTへ転送される。
【0107】
以上説明したように、本実施形態によれば、ジオメトリ処理装置132による頂点データS132を受けて、メッシュを形成する3×3の頂点から所定の端点を除く複数の頂点を選択し、選択した頂点の隣接する頂点との距離に基づいて選択した各頂点が有効であるか無効であるかを判定し、各頂点の有効/無効の情報に基づいてトライアングルデータS134を生成し、トライアングルバッファ134を介してトライアングル描画装置135に出力するトライアングル生成装置133を設けたので、生成したトライアングルとして、0ピクセルのトライアングル(ピクセルの中心を含まないトライアングル)を削減できることから、微小単位図形の数を削減でき、トライアングル描画装置135の描画処理の性能向上を図ることができる利点がある。
【0108】
第2実施形態
図19は、本発明に係る画像処理装置としての3次元コンピュータグラフィックスシステム10の第2の実施形態を示すシステム構成図である。
【0109】
本第2の実施形態が上述した第1の実施形態と異なる点は、グラフィックスプロセッサ13Aの処理にある。
【0110】
すなわち、第1の実施形態では、頂点データに対してジオメトリ処理装置132において座標変換、クリッピング(Clipping)処理、ライティング(Lighting)処理などのジオメトリ(Geometry)処理などを行い、ワールド座標系からスクリーン座標系に変換された9点の頂点データS132を生成した後に、トライアングル生成装置133で各頂点の有効/無効の判定を行っていた。
【0111】
これに対して、本第2の実施形態においては、頂点生成装置131の次段にスクリーン座標算出装置137を配置して、頂点の有効/無効の判断に必要なスクリーン座標系でのxy座標のみを計算し、この計算後の頂点データS137をトライアングル生成装置133に入力して各頂点の有効/無効の判定を行ってトライアングルデータを生成している。
そして、本第2の実施形態においては、ジオメトリ装置132Aをトライアングルバッファ134とトライアングル描画装置135の間に配置し、各頂点の有効/無効の判定を行って頂点データを減らした後で、クリッピング(Clipping)処理、ライティング(Lighting)処理などのジオメトリ(Geometry)処理を行う。
【0112】
本第2の実施形態によれば、上述した第1の実施形態の効果に加えて、演算量を削減でき、処理の高速化を図れる利点がある。
【0113】
【発明の効果】
以上説明したように、本発明によれば、微小単位図形の数を削減でき、描画装置の描画処理の性能向上を図ることができる。
その結果、画像を効率的に描画することができる。
【0114】
また、本発明によれば、演算量を削減でき、処理の高速化を図れる利点がある。
【図面の簡単な説明】
【図1】本発明に係る画像処理装置としての3次元コンピュータグラフィックスシステムのシステム構成図である。
【図2】本実施形態に係るトライアングル生成装置における処理を説明するためのフローチャートである。
【図3】図2の各ステップに対応する処理を概念的に示す図である。
【図4】本実施形態に係るトライアングル生成装置の構成例を示すブロック図である。
【図5】図4のトライアングル生成装置における中心点有効判定回路の処理を説明するための図である。
【図6】図4のトライアングル生成装置における中心点有効判定回路の処理動作を説明するためのフローチャートである。
【図7】図4のトライアングル生成装置における辺中点有効判定回路の処理を説明するための図である。
【図8】図4のトライアングル生成装置における辺中点有効判定回路の処理動作を説明するためのフローチャートである。
【図9】図4のトライアングル生成装置における他の辺中点有効判定回路の処理を説明するための図である。
【図10】図4のトライアングル生成装置における他の辺中点有効判定回路の処理を説明するための図である。
【図11】図4のトライアングル生成装置における他の辺中点有効判定回路の処理を説明するための図である。
【図12】図4のトライアングル生成装置における頂点間隣接関係データ生成回路の処理を説明するための図である。
【図13】本実施形態に係るトライアングル描画装置の構成例を示すブロック図である。
【図14】本実施形態に係るDDAセットアップ回路の機能を説明するための図である。
【図15】本実施形態に係るDDAセットアップ回路の構成例を示す図である。
【図16】本実施形態に係るテクスチャエンジン回路におけるテクスチャマッピング処理回路の構成例を示すブロック図である。
【図17】本実施形態に係るテクスチャエンジン回路における実際のテクスチャマッピング処理をイメージ的に示す図である。
【図18】本実施形態に係るグラフィックスメモリへの表示データと奥行きデータおよびテクスチャデータの格納方法を概念的に説明するための図である。
【図19】本発明に係る画像処理装置としての3次元コンピュータグラフィックスシステム10の第2の実施形態を示すシステム構成図である。
【図20】曲面データをテセレーションする際の従来の課題を説明するための図である。
【図21】曲面データに関して適応的にトライアングル生成を行う場合の従来の課題を説明するための図である。
【符号の説明】
10,10A…画像処理装置、11…メインプロセッサ、12…メインメモリ、13,13A…グラフィックスプロセッサ、131…頂点生成装置、132,132A…ジオメトリ処理装置、133…トライアングル生成御装置、1331…中心点有効判定回路、1332〜1335…辺中点有効判定回路、1336…頂点間隣接関係データ生成回路、134…トライアングルバッファ、135…トライアングル描画装置、1351…DDAセットアップ回路、1352…トライアングルDDA回路、1353…テクスチャエンジン回路、1354…メモリインタフェース(I/F)回路、1355…CRTコントロール回路、136…グラフィックスメモリ、137…スクリーン座標算出装置、14…モニタ。

Claims (6)

  1. プリミティブを複数の頂点間を結んで形成される複数の単位図形の組み合わせとして表現し、スクリーン座標系の描画対象領域内にピクセルを発生して単位図形をメモリに描画する画像処理装置であって、
    所定の形状を形成可能な複数の頂点データから所定の端点を除く複数の頂点を選択し、選択した頂点の隣接する頂点との距離に基づいて選択した各頂点が有効であるか無効であるかを判定し、各頂点の有効/無効の情報に基づいて単位図形データを生成する単位図形生成手段と、
    上記単位図形生成手段で生成された単位図形データを受けて少なくとも一つの単位図形の描画処理を行う描画手段と、を有し、
    上記単位図形生成手段は、選択した各頂点と隣接する複数の頂点との距離の和があらかじめ設定した一定値以上である場合に有効であると判定し、一定値以下の場合に無効であると判定する
    画像処理装置。
  2. プリミティブを複数の頂点間を結んで形成される複数の単位図形の組み合わせとして表現し、スクリーン座標系の描画対象領域内にピクセルを発生して単位図形をメモリに描画する画像処理装置であって、
    所定の形状を形成可能な複数の頂点データから所定の端点を除く複数の頂点を選択し、選択した頂点の隣接する頂点との距離に基づいて選択した各頂点が有効であるか無効であるかを判定し、各頂点の有効/無効の情報に基づいて単位図形データを生成する単位図形生成手段と、
    上記単位図形生成手段で生成された単位図形データを受けて少なくとも一つの単位図形の描画処理を行う描画手段と、を有し、
    上記単位図形生成手段に供給される複数の頂点データは、所定のマトリクスを形成し、
    上記単位図形生成手段は、
    供給された端点を除く複数の頂点データのうちマトリクスの中心に位置する頂点と、当該中心頂点に隣接する複数の隣接頂点にかかわるデータを選択的に入力し、上記中心頂点と複数の隣接頂点との距離の和があらかじめ設定した一定値以上であるか否かを判定し、一定値以上であると判定した場合には上記中心頂点が有効であることを意味するデータを出力し、一定値以下であると判定した場合には無効であることを意味するデータを出力する中心点有効判定回路と、
    上記マトリクスの上記中心頂点を含まない同一の行または列に配置されて所定の一辺を構成する複数の頂点うちの辺の中心となる頂点と、当該辺中頂点に隣接する複数の頂点にかかわるデータを選択的に入力し、辺中頂点と複数の隣接頂点との距離の和があらかじめ設定した一定値以上であるか否かを判定し、一定値以上であると判定した場合には上記辺中頂点が有効でることを意味するデータを出力し、一定値以下であると判定した場合には無効でることを意味するデータを出力する複数の辺中点有効判定回路と、
    上記中心点有効判定回路による有効/無効データ、上記辺中点有効判定回路による有効/無効データ、並びに、供給された複数の頂点データに基づいて、複数の有効/無効データのうちの有効を示すデータ数に応じて各頂点間の隣接関係データを生成し、生成した隣接関係データに応じた単位図形データを生成する頂点間隣接関係データ生成回路と、を含む
    画像処理装置。
  3. 上記単位図形生成手段に供給される複数の頂点データは、ジオメトリ処理後のデータである
    請求項1または2記載の画像処理装置。
  4. 上記単位図形生成手段に供給される複数の頂点データは、スクリーン座標系での2次元座標のみを含むデータであり、
    上記単位図形生成手段により生成された単位図形データに対してジオメトリ処理を行い、ジオメトリ処理後の単位図形データを上記描画手段に供給するジオメトリ処理手段を、さらに有する
    請求項1または2記載の画像処理装置。
  5. プリミティブを複数の頂点間を結んで形成される複数の単位図形の組み合わせとして表現し、スクリーン座標系の描画対象領域内にピクセルを発生して単位図形をメモリに描画する画像処理方法であって、
    所定の形状を形成可能な複数の頂点データから所定の端点を除く複数の頂点を選択し、選択した頂点の隣接する頂点との距離に基づいて選択した各頂点が有効であるか無効であるかを判定する第1のステップと、
    上記第1のステップの各頂点の有効/無効の情報に基づいて単位図形データを生成する第2のステップと、
    上記第2のステップで生成された単位図形データを受けて少なくとも一つの単位図形の描画処理を行う第3のステップと、を有し、
    上記第1のステップにおいては、選択した各頂点と隣接する複数の頂点との距離の和があらかじめ設定した一定値以上である場合に有効であると判定し、一定値以下の場合に無効であると判定する
    画像処理方法。
  6. プリミティブを複数の頂点間を結んで形成される複数の単位図形の組み合わせとして表現し、スクリーン座標系の描画対象領域内にピクセルを発生して単位図形をメモリに描画する画像処理方法であって、
    所定の形状を形成可能な複数の頂点データから所定の端点を除く複数の頂点を選択し、選択した頂点の隣接する頂点との距離に基づいて選択した各頂点が有効であるか無効であるかを判定する第1のステップと、
    上記第1のステップの各頂点の有効/無効の情報に基づいて単位図形データを生成する第2のステップと、
    上記第2のステップで生成された単位図形データを受けて少なくとも一つの単位図形の描画処理を行う第3のステップと、を有し、
    上記第1のステップの判定処理に用いられる複数の頂点データは、所定のマトリクスを形成し、
    上記第1のステップは、
    供給される端点を除く複数の頂点データのうちマトリクスの中心に位置する頂点と、当該中心頂点に隣接する複数の隣接頂点にかかわるデータを選択的に入力し、上記中心頂点と複数の隣接頂点との距離の和があらかじめ設定した一定値以上であるか否かを判定する第4のステップと、
    上記第4のステップにおいて、一定値以上であると判定した場合には上記中心頂点が有効であることを意味するデータを出力し、一定値以下であると判定した場合には無効であることを意味するデータを出力する第5のステップと、
    上記マトリクスの上記中心頂点を含まない同一の行または列に配置されて所定の一辺を構成する複数の頂点うちの辺の中心となる頂点と、当該辺中頂点に隣接する複数の頂点にかかわるデータを選択的に入力し、辺中頂点と複数の隣接頂点との距離の和があらかじめ設定した一定値以上であるか否かを判定する第6のステップと、
    上記第6のステップで、一定値以上であると判定した場合には上記辺中頂点あ有効であることを意味するデータを出力し、一定値以下であると判定した場合には無効であることを意味するデータを各辺毎に出力する第7のステップと、を含み、
    上記第2のステップは、
    上記第5のステップによる有効/無効データ、上記第7のステップによるによる有効/無効データ、並びに、供給される複数の頂点データに基づいて、複数の有効/無効データのうちの有効を示すデータ数に応じて各頂点間の隣接関係データを生成する第8のステップと、
    上記第8のステップで生成した隣接関係データに応じた単位図形データを生成する第9のステップと、を含む
    画像処理方法。
JP2002119009A 2002-04-22 2002-04-22 画像処理装置およびその方法 Expired - Fee Related JP3979162B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2002119009A JP3979162B2 (ja) 2002-04-22 2002-04-22 画像処理装置およびその方法
US10/419,390 US7372461B2 (en) 2002-04-22 2003-04-21 Image processing apparatus and method of same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002119009A JP3979162B2 (ja) 2002-04-22 2002-04-22 画像処理装置およびその方法

Publications (3)

Publication Number Publication Date
JP2003317111A JP2003317111A (ja) 2003-11-07
JP2003317111A5 JP2003317111A5 (ja) 2005-04-07
JP3979162B2 true JP3979162B2 (ja) 2007-09-19

Family

ID=29535687

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002119009A Expired - Fee Related JP3979162B2 (ja) 2002-04-22 2002-04-22 画像処理装置およびその方法

Country Status (2)

Country Link
US (1) US7372461B2 (ja)
JP (1) JP3979162B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4082194B2 (ja) * 2002-12-03 2008-04-30 セイコーエプソン株式会社 画像処理方法および画像処理装置ならびに画像処理プログラム
JP5046222B2 (ja) * 2006-02-07 2012-10-10 株式会社Jsol 有限要素解析装置、有限要素解析方法、及びコンピュータプログラム
US7663621B1 (en) * 2006-11-03 2010-02-16 Nvidia Corporation Cylindrical wrapping using shader hardware
KR101669873B1 (ko) 2009-10-16 2016-10-27 삼성전자주식회사 삼차원 메쉬 압축장치 및 방법
US20140192051A1 (en) * 2012-03-30 2014-07-10 Etay Meiri Offloading Tessellation from a Graphics Processor to a Central Processing Unit
CN110414645B (zh) * 2018-04-28 2023-05-30 深圳果力智能科技有限公司 一种基于元素匹配的图案识别方法
CN112102435B (zh) * 2020-09-24 2023-08-01 安徽文香科技股份有限公司 一种几何图形绘制的方法、装置、设备及存储介质

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4894729A (en) * 1986-10-02 1990-01-16 Ricoh Company, Ltd. Picture element data generating method
JPS63238665A (ja) * 1987-03-26 1988-10-04 Toshiba Corp 離散化用3角形メツシユの形成装置
EP0466330B1 (en) 1990-07-13 1996-10-30 Adobe Systems Inc. Method for editing character bit maps at small sizes using connected runs
JP3252623B2 (ja) * 1994-11-09 2002-02-04 松下電器産業株式会社 形状モデル生成装置
JPH096941A (ja) 1995-06-15 1997-01-10 Oki Electric Ind Co Ltd 3次元地形データ変換装置
JP2796284B1 (ja) * 1997-06-04 1998-09-10 日本電気アイシーマイコンシステム株式会社 画像処理装置
US6266062B1 (en) * 1997-10-08 2001-07-24 Maria-Cecilia Rivara Longest-edge refinement and derefinement system and method for automatic mesh generation
JPH11242585A (ja) * 1998-02-24 1999-09-07 Sony Corp 除算回路およびグラフィック演算装置
US6600485B1 (en) * 1998-07-03 2003-07-29 Sega Enterprises, Ltd. Polygon data generation method and image display apparatus using same
US6426750B1 (en) * 1998-07-14 2002-07-30 Microsoft Corporation Run-time geomorphs
JP4182565B2 (ja) 1998-08-06 2008-11-19 株式会社セガ ポリゴン処理方法及びポリゴン処理プログラムを記録した記録媒体
US6377265B1 (en) * 1999-02-12 2002-04-23 Creative Technology, Ltd. Digital differential analyzer
JP3638224B2 (ja) 1999-02-23 2005-04-13 富士通株式会社 3次元ポリゴン表示装置
US6518974B2 (en) * 1999-07-16 2003-02-11 Intel Corporation Pixel engine
TW509879B (en) * 2001-01-29 2002-11-11 Silicon Integrated Sys Corp Method and apparatus for minimizing the idle time of a graphics engine by using rendering control before flipping frame buffer
US6891535B2 (en) * 2001-03-16 2005-05-10 Mitsubishi Electric Research Labs, Inc. System and method for modeling graphics objects
US7136063B2 (en) * 2001-03-19 2006-11-14 Microsoft Corporation Triangle management in triangular meshes based on a tri-edge structure

Also Published As

Publication number Publication date
US7372461B2 (en) 2008-05-13
US20030231180A1 (en) 2003-12-18
JP2003317111A (ja) 2003-11-07

Similar Documents

Publication Publication Date Title
US6704018B1 (en) Graphic computing apparatus
US8059119B2 (en) Method for detecting border tiles or border pixels of a primitive for tile-based rendering
JP2000227966A (ja) 3dコンピュ―タ・グラフィックス処理装置及び方法
JP2005352657A (ja) 描画処理装置、描画処理方法、及び描画処理プログラム
JPH0916806A (ja) 立体画像処理装置
JP4198087B2 (ja) 画像生成装置および画像生成方法
JPH09330423A (ja) 三次元形状データ変換装置
JP2006235839A (ja) 画像処理装置および画像処理方法
US6774897B2 (en) Apparatus and method for drawing three dimensional graphics by converting two dimensional polygon data to three dimensional polygon data
US8179399B2 (en) Rasterizing method
JP3979162B2 (ja) 画像処理装置およびその方法
JP3687945B2 (ja) 画像処理装置およびその方法
JP3747859B2 (ja) 画像処理装置およびその方法
JP2005332195A (ja) テクスチャユニット、画像描画装置、テクセル転送方法
US7372466B2 (en) Image processing apparatus and method of same
JP4081304B2 (ja) 描画処理プログラム,描画処理プログラムを記憶させた記憶媒体,描画処理装置、及び描画処理方法
JP4691494B2 (ja) 画像描画装置、頂点選出方法、頂点選出プログラム及び集積回路
US6476818B1 (en) Storage circuit control device and graphic computation device
JP4042462B2 (ja) 画像処理装置およびその方法
JP2003296748A (ja) 画像処理装置およびその方法
JP4042204B2 (ja) グラフィック演算装置およびその方法
JP2006133940A (ja) 詳細度を用いたリアルタイム画像生成装置
JP2774874B2 (ja) 画像合成装置及び画像合成方法
JP3971448B2 (ja) 描画装置及び描画方法
JP3312560B2 (ja) テクスチャマッピング装置

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040430

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040430

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070313

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070514

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: 20070605

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070618

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

Free format text: PAYMENT UNTIL: 20100706

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100706

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110706

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110706

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120706

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120706

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130706

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees