JP5864474B2 - 空間を分割してグラフィックスを処理する画像処理装置及び画像処理方法 - Google Patents
空間を分割してグラフィックスを処理する画像処理装置及び画像処理方法 Download PDFInfo
- Publication number
- JP5864474B2 JP5864474B2 JP2013096577A JP2013096577A JP5864474B2 JP 5864474 B2 JP5864474 B2 JP 5864474B2 JP 2013096577 A JP2013096577 A JP 2013096577A JP 2013096577 A JP2013096577 A JP 2013096577A JP 5864474 B2 JP5864474 B2 JP 5864474B2
- Authority
- JP
- Japan
- Prior art keywords
- processing
- unit
- processing unit
- color
- post
- 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.)
- Active
Links
- 238000012545 processing Methods 0.000 title claims description 321
- 238000003672 processing method Methods 0.000 title claims description 7
- 238000007781 pre-processing Methods 0.000 claims description 69
- 230000006870 function Effects 0.000 claims description 68
- 238000012805 post-processing Methods 0.000 claims description 61
- 238000000034 method Methods 0.000 claims description 57
- 230000008569 process Effects 0.000 claims description 56
- 238000000605 extraction Methods 0.000 claims description 15
- 230000009466 transformation Effects 0.000 claims description 12
- 239000000284 extract Substances 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 description 18
- 238000006243 chemical reaction Methods 0.000 description 16
- 238000012360 testing method Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 8
- 238000005286 illumination Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 238000009877 rendering Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 5
- 238000013507 mapping Methods 0.000 description 5
- 239000012634 fragment Substances 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000004148 unit process Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 239000003086 colorant Substances 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Landscapes
- Image Generation (AREA)
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
Description
具体的に説明すると,本発明は以下の構成を有する。
本発明の画像処理装置は,コンパイラ処理部10と,空間インデックス追加部20と,前段処理部30と,後段処理部40と,ピクセル出力部50と,を備えている。
コンパイラ処理部10は,グラフィックスアプリケーション内のシェーダプログラムを読み込み,カラー・奥行き値の生成に必要な機能を抽出した前段処理用シェーダと,当該前段処理用シェーダに含まれていないテクスチャ・シェーディング処理を含む後段処理用シェーダとを,出力する。
空間インデックス追加部20は,グラフィックスアプリケーション内のポリゴンを構成する頂点データを読み込んで,座標変換を含む頂点処理を行い,処理済み頂点データを得ると共に,変換後の座標系における空間インデックスを生成し,当該ポリゴンの構成情報,当該処理済み頂点データ,及び当該空間インデックスを関連付けて記憶した空間インデックス付き頂点バッファ21を作成する。
前段処理部30は,空間インデックス付き頂点バッファ21を読み込んでポリゴンを構築し,空間インデックスにより定義される空間ごとに,当該ポリゴンにラスタライズ処理を行なってピクセルに変換し,前段処理用シェーダに基づいて,ラスタライズ処理済みのピクセルのカラー値及び奥行き値を生成する。
後段処理部40は,ラスタライズ処理済みのピクセルの奥行き値を参照して出力カラーバッファ51に書き込むことが決定されたピクセルについて,後段処理用シェーダに基づいたテクスチャ・シェーディング処理を行い,テクスチャ・シェーディング処理済みのピクセルのカラー値を生成する。
ピクセル出力部50は,前段処理部30及び後段処理部40により得られたピクセルのカラー値を出力カラーバッファ51に出力する。
フロントエンド処理部11は,前記シェーダプログラムに対してフロントエンド処理を行い,中間表現へと変換する。
機能抽出部12は,中間表現と,事前に用意されたカラー・奥行き値の生成に関する処理パターンとのターンマッチ処理を行うことにより,当該中間表現から,カラー・奥行き値の生成に必要な機能を抽出する。
バックエンド処理部13は,中間表現に対してバックエンド処理を行い,機能抽出部12が抽出したカラー・奥行き値の生成に必要な機能を前段処理用シェーダとして出力すると共に,シェーダプログラムのうちのカラー・奥行き値の生成に必要な機能以外の機能を後段処理用シェーダとして出力する。
本発明の画像処理方法では,画像処理装置が,コンパイラ処理工程と,空間インデックス追加工程と,前段処理工程と,後段処理工程と,ピクセル出力工程と,を行う。
コンパイラ処理部10は,グラフィックスアプリケーション内のシェーダプログラムを読み込み,カラー・奥行き値の生成に必要な機能を抽出した前段処理用シェーダと,当該前段処理用シェーダに含まれていないテクスチャ・シェーディング処理を含む後段処理用シェーダとを,出力する。
空間インデックス追加工程では,グラフィックスアプリケーション内のポリゴンを構成する頂点データを読み込んで,座標変換を含む頂点処理を行い,処理済み頂点データを得ると共に,変換後の座標系における空間インデックスを生成し,当該ポリゴンの構成情報,当該処理済み頂点データ,及び当該空間インデックスを関連付けて記憶した空間インデックス付き頂点バッファ21を作成する。
前段処理部工程では,空間インデックス付き頂点バッファ21を読み込んでポリゴンを構築し,空間インデックスにより定義される空間ごとに,当該ポリゴンにラスタライズ処理を行なってピクセルに変換し,前段処理用シェーダに基づいて,ラスタライズ処理済みのピクセルのカラー値及び奥行き値を生成する。
後段処理部工程では,ラスタライズ処理済みのピクセルの奥行き値を参照して出力カラーバッファ51に書き込むことが決定されたピクセルについて,後段処理用シェーダに基づいたテクスチャ・シェーディング処理を行い,テクスチャ・シェーディング処理済みのピクセルのカラー値を生成する。
ピクセル出力部工程では,前段処理工程及び後段処理工程により得られたピクセルのカラー値を出力カラーバッファ51に出力する。
図1は,本発明に係る画像処理装置1のブロック図を示している。本発明に係る画像処理装置1は,3次元コンピュータグラフィックス処理用のハードウェアとして利用される。
図1に示されるように,画像処理装置1は,グラフィックスアプリケーション60を読み込んで,所定のグラフィックス描画処理を行い,描画処理の結果を出力カラーバッファ51に出力する。画像処理装置1は,図1の上段に示されているコンパイラ処理部10と,図1の下段に示されているグラフィックスパイプラインを備えている。グラフィックスパイプラインは,空間インデックス追加部20と,前段処理部30と,後段処理部40と,ピクセル出力部50を含む。コンパイラ処理部10は,グラフィックスアプリケーション60からシェーダプログラム61を読み込んで,このシェーダプログラム61を前段処理用シェーダ62と後段処理用シェーダ63とに分割する。すなわち,コンパイラ処理部10は,シェーダプログラム61に記述された指令を,前段処理部30と後段処理部40に割り当てる処理を行う。グラフィックスパイプラインでは,空間インデックス追加部20によって空間インデックス付き頂点バッファ21を作成する処理を行った後,前段処理部30が,空間インデックス付き頂点バッファ21を読み込んで,空間ごとにラスタライズ処理を行うと共に,前処理用シェーダに基づいて,ピクセルのカラー値及び奥行き値を生成する。その後,後段処理部40は,必要なピクセルに対し,後段処理用シェーダ63に基づいてテクスチャ処理及びシェーディング処理を行う。ピクセル出力部50は,前段処理部30及び後段処理部40におけるピクセル処理の結果を,出力カラーバッファ51へと出力する。出力カラーバッファ51に蓄積されたピクセルのカラー値は,公知のディスプレイ装置によって動画像又は静止画像を表示する際に参照される。
−w≦x≦w,
−w≦y≦w,
−w≦z≦w,
のような判定式を用いればよい。
他方,空間が任意形状の場合,クリッピングインデックスを定義するためには,例えば空間が4辺によって定義される場合を例に挙げて説明すると,
a0x+b0y+c0= 0
a1x+b1y+c1= 0
a2x+b2y+c2= 0
a3x+b3y+c3= 0
のような3つ以上の直線の方程式により空間を定義し,これら式に判定する対象(ポリゴンの頂点)のx,y座標を代入することで,計算結果の符号により空間の内外判定を行うことができる。なお,z方向については従来通り−w<z<wのような判定式で合わせて行うことも出来る。また,空間インデックスを生成する処理は,空間インデックス追加部20が,グラフィックスアプリケーション内の頂点シェーダプログラムに従って行うものであってもよい。
図6は,本発明の一実施態様に係るコンピュータを示すブロック図である。この実施態様は,コンピュータグラフィックスによるコンピュータ(グラフィック用コンピュータなど)に関する。図6に示されるとおり,このコンピュータは,中央演算装置(CPU)102,ジオメトリ演算回路103などのジオメトリ演算部,レンダラー104などの描画部,テクスチャ生成回路105などのテクスチャ生成部,照明処理回路107などの照光処理部,表示回路108などの表示情報作成部,フレームバッファ109,及びモニター110を具備する。これらの要素は,バスなどにより接続され,相互にデータを伝達できる。そのほか,図示しないメインメモリや,各種テーブル,ワーク領域となるワークメモリ111,テクスチャを格納するテクスチャメモリ112などを具備する記憶部などを有してもよい。各部を構成するハードウェアは,例えばバスなどを介して連結されている。なお,記憶部は,VRAMなどのRAMや,CR−ROM,DVD,ハードディスクなどにより構成されても良い。本発明に係る画像処理装置は,このようなコンピュータグラフィックス用のコンピュータに具備されて,実装されたものであってもよい。
図7は,本発明の他の実施形態に係るゲーム機のブロック図である。このブロック図で表される実施形態は,特に携帯用,家庭用又は業務用のゲーム機として好適に利用されうる。そこで,以下では,ゲーム機として説明する。なお,同図に示されるゲーム機は,少なくとも処理部200を含めばよく(又は処理部200と記憶部270,又は処理部200と記憶部270と情報記憶媒体280を含んでもよく),それ以外のブロック(例えば操作部260,表示部290,音出力部292,携帯型情報記憶装置294,通信部296)については,任意の構成要素とすることができる。本発明に係る画像処理装置は,このようなゲーム機に具備されて,実装されたものであってもよい。
10…コンパイラ処理部
11…フロントエンド処理部
12…機能抽出部
13…バックエンド処理部
20…空間インデックス追加部
21…空間インデックス付き頂点バッファ
30…前段処理部
31…前段プロセッサコア
32…カラー・奥行き値バッファ
40…後段処理部
41…後段プロセッサコア
50…ピクセル出力部
51…出力カラーバッファ
60…グラフィックスアプリケーション
61…シェーダプログラム
62…前段処理用シェーダ
63…後段処理用シェーダ
70…スペースクリップ処理部
Claims (7)
- コンピュータグラフィックス処理用の画像処理装置であって,
グラフィックスアプリケーション内のシェーダプログラムを読み込み,カラー・奥行き値の生成に必要な機能を抽出した前段処理用シェーダコードと,当該前段処理用シェーダコードに含まれていないテクスチャ・シェーディング処理を含む後段処理用シェーダコードとを,出力するコンパイラ処理部(10)と,
グラフィックスアプリケーション内のポリゴンを構成する頂点データを読み込んで,座標変換を含む頂点処理を行い,処理済み頂点データを得ると共に,変換後の座標系における空間インデックスを生成し,当該ポリゴンの構成情報,当該処理済み頂点データ,及び当該空間インデックスを関連付けて記憶した空間インデックス付き頂点バッファ(21)を作成する空間インデックス追加部(20)と,
前記空間インデックス付き頂点バッファ(21)を読み込んでポリゴンを構築し,前記空間インデックスにより定義される空間ごとに,当該ポリゴンにラスタライズ処理を行なってピクセルに変換し,前記前段処理用シェーダコードに基づいて,ラスタライズ処理済みのピクセルのカラー値及び奥行き値を生成する前段処理部(30)と,
前記ラスタライズ処理済みのピクセルの奥行き値を参照して出力カラーバッファ(51)に書き込むことが決定されたピクセルについて,前記後段処理用シェーダコードに基づいたテクスチャ・シェーディング処理を行い,テクスチャ・シェーディング処理済みのピクセルのカラー値を生成する後段処理部(40)と,
前記前段処理部(30)及び前記後段処理部(40)により得られたピクセルのカラー値を出力カラーバッファ(51)に出力するピクセル出力部(50)と,を備える
画像処理装置。 - 前記前段処理部(30)は,前記ラスタライズ処理を行う前段プロセッサコア(31)を有し,
前記後段処理部(40)は,前記テクスチャ・シェーディング処理を行う後段プロセッサコア(41)を有し,
前記前段プロセッサコア(31)と後段プロセッサコア(41)は,異なるハードウェアである
請求項1に記載の画像処理装置。 - 前記空間インデックス追加部(20)は,ユーザによって任意に与えられた空間情報に基づいて空間分割を行い,前記空間インデックスを生成する
請求項1又は請求項2に記載の画像処理装置。 - 前記コンパイラ処理部(10)は,
前記シェーダプログラムに対してフロントエンド処理を行い,中間表現へと変換するフロントエンド処理部(11)と,
前記中間表現と,事前に用意されたカラー・奥行き値の生成に関する処理パターンとのパターンマッチ処理を行うことにより,当該中間表現から,カラー・奥行き値の生成に必要な機能を抽出する機能抽出部(12)と,
前記中間表現に対してバックエンド処理を行い,前記機能抽出部(12)が抽出した前記カラー・奥行き値の生成に必要な機能を前段処理用シェーダコードとして出力すると共に,前記シェーダプログラムのうちの前記カラー・奥行き値の生成に必要な機能以外の機能を後段処理用シェーダコードとして出力するバックエンド処理部(13)と,を有する
請求項1から請求項3のいずれかに記載の画像処理装置。 - コンピュータグラフィックス処理用の画像処理装置により実行される画像処理方法であって,
前記画像処理装置が,
グラフィックスアプリケーション内のシェーダプログラムを読み込み,カラー・奥行き値の生成に必要な機能を抽出した前段処理用シェーダコードと,当該前段処理用シェーダコードに含まれていないテクスチャ・シェーディング処理を含む後段処理用シェーダコードとを,出力するコンパイラ処理工程と,
グラフィックスアプリケーション内のポリゴンを構成する頂点データを読み込んで,座標変換を含む頂点処理を行い,処理済み頂点データを得ると共に,変換後の座標系における空間インデックスを生成し,当該ポリゴンの構成情報,当該処理済み頂点データ,及び当該空間インデックスを関連付けて記憶した空間インデックス付き頂点バッファ(21)を作成する空間インデックス追加工程と,
前記空間インデックス付き頂点バッファ(21)を読み込んでポリゴンを構築し,前記空間インデックスにより定義される空間ごとに,当該ポリゴンにラスタライズ処理を行なってピクセルに変換し,前記前段処理用シェーダコードに基づいて,ラスタライズ処理を行ったピクセルのカラー値及び奥行き値を生成する前段処理工程と,
前記ラスタライズ処理済みのピクセルの奥行き値を参照して出力カラーバッファ(51)に書き込むことが決定されたピクセルについて,前記後段処理用シェーダコードに基づいたテクスチャ・シェーディング処理を行い,テクスチャ・シェーディング処理を行ったピクセルのカラー値を生成する後段処理工程と,
前記前段処理工程及び前記後段処理工程により得られたピクセルのカラー値を出力カラーバッファ(51)に出力するピクセル出力工程と,を行う
画像処理方法。 - 請求項1に記載の画像処理装置を具備するコンピュータ。
- 請求項1に記載の画像処理装置を具備するゲーム機。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013096577A JP5864474B2 (ja) | 2013-05-01 | 2013-05-01 | 空間を分割してグラフィックスを処理する画像処理装置及び画像処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013096577A JP5864474B2 (ja) | 2013-05-01 | 2013-05-01 | 空間を分割してグラフィックスを処理する画像処理装置及び画像処理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014219739A JP2014219739A (ja) | 2014-11-20 |
JP5864474B2 true JP5864474B2 (ja) | 2016-02-17 |
Family
ID=51938150
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013096577A Active JP5864474B2 (ja) | 2013-05-01 | 2013-05-01 | 空間を分割してグラフィックスを処理する画像処理装置及び画像処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5864474B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9361697B1 (en) * | 2014-12-23 | 2016-06-07 | Mediatek Inc. | Graphic processing circuit with binning rendering and pre-depth processing method thereof |
JP2022137826A (ja) | 2021-03-09 | 2022-09-22 | 株式会社Mawari | 3dオブジェクトのストリーミング方法、装置、及びプログラム |
CN114820990B (zh) * | 2022-06-29 | 2022-09-20 | 浙江远算科技有限公司 | 一种基于数字孪生的流域防洪可视化方法及系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0944697A (ja) * | 1995-07-27 | 1997-02-14 | Toshiba Corp | 図形描画装置 |
GB0810205D0 (en) * | 2008-06-04 | 2008-07-09 | Advanced Risc Mach Ltd | Graphics processing systems |
EP3385913B1 (en) * | 2008-09-22 | 2020-04-01 | Imagination Technologies Limited | Systems and methods for a ray tracing shader api |
JP5296656B2 (ja) * | 2009-10-26 | 2013-09-25 | 株式会社ソニー・コンピュータエンタテインメント | 画像処理装置および画像処理方法 |
US9619918B2 (en) * | 2011-04-28 | 2017-04-11 | Digital Media Professionals Inc. | Heterogenious 3D graphics processor and configuration method thereof |
-
2013
- 2013-05-01 JP JP2013096577A patent/JP5864474B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2014219739A (ja) | 2014-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10510183B2 (en) | Graphics processing enhancement by tracking object and/or primitive identifiers | |
EP3308359B1 (en) | Rendering using ray tracing to generate a visibility stream | |
CN106575228B (zh) | 图形处理中的渲染目标命令重新排序 | |
CN106233326B (zh) | 图形处理中基于显现目标的灵活显现 | |
CN110084875B (zh) | 使用计算着色器作为顶点着色器的前端 | |
CN105518742B (zh) | 用于图形处理的任意控制点处的容错抢占机制 | |
JP5866457B2 (ja) | オーバドロー・トラッカを用いたグラフィック処理におけるダイレクト・レンダリングとビニングとの切替 | |
CN103946895B (zh) | 基于平铺块的呈现中的镶嵌方法和设备 | |
EP2946364B1 (en) | Rendering graphics data using visibility information | |
CN110097625B (zh) | 片段着色器执行顶点着色器计算 | |
US7394464B2 (en) | Preshaders: optimization of GPU programs | |
US20100188404A1 (en) | Single-pass bounding box calculation | |
JP5864474B2 (ja) | 空間を分割してグラフィックスを処理する画像処理装置及び画像処理方法 | |
US10062140B2 (en) | Graphics processing systems | |
CN114902274A (zh) | 混合分箱 | |
Es et al. | Accelerated regular grid traversals using extended anisotropic chessboard distance fields on a parallel stream processor | |
JP6205200B2 (ja) | ソート機能を持つ画像処理装置及び画像処理方法 | |
JP2007272389A (ja) | プログラム、情報記録媒体および画像生成システム | |
KR20230028373A (ko) | 비닝 하드웨어에서 세분화 재생 제어 | |
JP2014229217A (ja) | 2次元グラフィックス処理の高速化を図る画像処理装置及び画像処理方法 | |
ARCH | for the degree of Master of Science in the Department of Game Technologies | |
Bateman et al. | Optimizing Tips and Tricks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20141127 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150918 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20151006 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20151029 |
|
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: 20151215 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20151224 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5864474 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |