JP2011090664A - タイルベースのレンダリング装置および方法 - Google Patents

タイルベースのレンダリング装置および方法 Download PDF

Info

Publication number
JP2011090664A
JP2011090664A JP2010088638A JP2010088638A JP2011090664A JP 2011090664 A JP2011090664 A JP 2011090664A JP 2010088638 A JP2010088638 A JP 2010088638A JP 2010088638 A JP2010088638 A JP 2010088638A JP 2011090664 A JP2011090664 A JP 2011090664A
Authority
JP
Japan
Prior art keywords
binning
tile
tiles
unit
rendering
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.)
Granted
Application number
JP2010088638A
Other languages
English (en)
Other versions
JP5634104B2 (ja
Inventor
Sang-Oak Woo
相 玉 禹
Seok-Yun Jeong
錫 潤 鄭
Kwon Taek Kwon
勸 宅 權
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2011090664A publication Critical patent/JP2011090664A/ja
Application granted granted Critical
Publication of JP5634104B2 publication Critical patent/JP5634104B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/12Bounding box

Landscapes

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

Abstract

【課題】 タイルベースのレンダリング装置および方法を提供する。
【解決手段】 レンダリング方法は、3次元モデルを2次元の表示画面によりリアルに表現するために用いることができる。さらに、レンダリング方法は、フレームに含まれたオブジェクトを対象としてプレビニングを実行することにより、すべての幾何学処理結果を外部メモリに記録しないため、外部メモリの使用量を減少させることができる。
【選択図】 図1

Description

下記の実施形態は、多数のグラフィックス演算を用いてフレームに含まれたオブジェクトをレンダリングする技術に関する。
3次元グラフィックスを用いれば、2次元で表示される表示装置でもよりリアルに3次元モデルを表現できるという効果があるため、3次元グラフィックスを用いて情報を提供する研究が進められている。
特に、3次元グラフィックスで3次元モデルを表現する場合にも、ユーザが確認することができる表示装置は2次元画面であるため、3次元モデルをユーザの視点から見た2次元画面に変換する過程が必要となる。このように、3次元モデルを2次元画面に変換する過程中に、多数のグラフィックス演算が用いられる。
このとき、画面をタイルという小さな基本単位に分けてレンダリングするタイルベースレンダリング方法は、幾何学処理(Geometry Processing)に必要なメモリ空間を予測することが困難である。さらに、幾何学処理に対する結果の量が多く、内部メモリだけではなく外部メモリにも格納せざるを得ない。さらに、タイルの大きさが小さい場合には格納すべき幾何学処理結果量が増加し、外部メモリの使用量が増加するようになる。
これにより、レンダリング実行のために要求される内部および外部メモリ空間の使用量を減少させるための研究が活発に進められている。
本発明は、上述した従来技術の問題点を解決するために案出されたものであって、幾何学処理を実行する前にプレビニング(Pre−Binning)を実行することにより、メモリ使用量を減少させることを目的とする。
また、本発明は、ビニングフラグ(Binning Flag)を用いて既に幾何学処理が完了したオブジェクトに対しては幾何学処理を実行しないことにより、プレビニングによって発生することがある重複演算を防ぎ、性能低下を最小化することを他の目的とする。
本発明の一実施形態に係るレンダリング装置は、複数のタイルで構成されたフレームに含まれた少なくとも1つのオブジェクト(Object)を対象とし、複数のタイルそれぞれをプレビニングするプレビニング部と、プレビニングされたオブジェクトを対象とし、タイルごとに頂点シェーディングを実行する頂点シェーディング部と、頂点シェーディングされたオブジェクトを対象とし、タイル内のすべての頂点(Vertex)ごとにビューポートマッピングを実行するビューポートマッピング部と、ビューポートマッピングされたオブジェクトを対象とし、タイル内の頂点をプリミティブ(Primitive)で構成するプリミティブ処理部と、プリミティブを対象としてタイルビニングを実行するタイルビニング部とを含むことができる。
このとき、複数のタイルで構成されたフレームに含まれた少なくとも1つのオブジェクトに対応するバウンディングボリューム(Bounding Volume)を生成し、生成されたバウンディングボリュームを用いて複数のタイルのそれぞれをプレビニングすることができる。ここで、プレビニング部は、少なくとも1つのオブジェクトが含まれるようにバウンディングボリュームを生成することができる。
また、タイルビニング部は、タイルビニングが実行されたオブジェクトにビニングフラグを設定することができる。このとき、ビニングフラグが設定されたオブジェクトには、幾何学処理が実行されなくてもよい。さらに、ビニングフラグが設定されたオブジェクトには、頂点シェーディング、ビューポートマッピング、プリミティブ構成、およびタイルビニングが実行されなくてもよい。
また、タイルビニングを実行したオブジェクトに対して、プリミティブからフラグメントを生成するフラグメント処理部と、生成されたフラグメントを対象としてピクセルシェーディングを実行するピクセルシェーディング部と、シェーディングされたフラグメントを対象としてラスター演算を実行するラスター演算部とをさらに含むことができる。
本発明の一実施形態に係るレンダリング方法は、複数のタイルで構成されたフレームに含まれた少なくとも1つのオブジェクトを対象として、前記複数のタイルそれぞれをプレビニングするステップと、プレビニングの実行後、前記複数のタイルのうちから選択された少なくとも1つのタイルに含まれた少なくとも1つのオブジェクトを対象として幾何学処理を実行するステップとを含むことができる。
本発明の実施形態に係るレンダリング装置および方法は、幾何学処理を実行する前にプレビニングを実行することにより、メモリ使用量を減少させることができる。
また、本発明の実施形態に係るレンダリング装置および方法は、ビニングフラグを用いて予め幾何学処理が完了したオブジェクトに対しては幾何学処理を実行しないことにより、プレビニングによって発生することがある重複演算を防ぎ、性能低下を最小化することができる。
プレビニングを実行するレンダリング装置を示す構成図である。 プレビニングを説明するために示す図である。 タイルビニングを説明するために示す図である。 プレビニングの動作を説明するために示すフローチャートである。
以下、本発明に係る実施形態について、添付の図面を参照しながら詳細に説明する。ただし、本発明の説明において、関連する公知技術あるいは構成に対する具体的な説明が本発明の要旨を不必要に不明瞭にすると判断される場合には、それに対する詳細な説明を縮約したり省略する。
図1は、プレビニングを実行するレンダリング装置を示す構成図である。以下では、説明の便宜のために、1つのフレームに複数のオブジェクトが含まれた場合を例示して説明する。
図1を参照すれば、レンダリング装置100は、プレビニング部110と、頂点シェーディング部120と、ビューポートマッピング部130と、プリミティブ処理部140と、タイルビニング部150と、ラスター処理部160と、格納部170とを含むことができる。
まず、プレビニング部110は、フレームを複数のタイルに分割し、フレームに含まれたオブジェクトの一部または全体とオーバラップ(overlap)するタイルを判別するために、分割したタイルそれぞれをプレビニングすることができる。すなわち、プレビニング部110は、フレームを構成する複数のタイルそれぞれに対してプレビニングを実行することができる。
このとき、プレビニング部110は、フレームに含まれた複数のオブジェクトそれぞれに対応するバウンディングボリュームを生成することができる。これにより、プレビニング部110は、生成されたバウンディングボリュームの一部または全体を含むタイルを判別するために、分割したタイルそれぞれに対してプレビニングを実行することができる。
すなわち、図2によれば、プレビニング部110は、第1〜7バウンディングボリューム210〜270を生成することができる。ここで、プレビニング部110は、各バウンディングボリュームに該当するオブジェクトが含まれるように、オブジェクトよりもバウンディングボリュームを大きく生成することができる。
一例として、図2のように、1つのフレームが24個のタイルで構成された場合、プレビニング部110は、24個のタイルのうちから選択されたタイルに7個のバウンディングボリュームの一部または全体がオーバラップするか否かをそれぞれプレビニングすることができる。
このようなプレビニング過程を24個のタイル全体に実行することにより、プレビニング部110は24個のタイルそれぞれのオブジェクトビニング情報(Object Binning Information)を取得し、取得されたオブジェクトビニング情報を格納部170に格納することができる。ここで、オブジェクトビニング情報は、タイル番号、タイルに含まれるオブジェクトの種類、およびオブジェクトそれぞれに該当する文脈情報(Rendering Context)を含むことができる。
すなわち、図2を参照すれば、タイル8が選択された場合を例示すれば、プレビニング部110は、タイル8に含まれる第1および第2オブジェクト210、220と、第1および第2オブジェク210、220それぞれの文脈情報(Context A、Context B)をタイル8のオブジェクトビニング情報として格納部170に格納することができる。このとき、プレビニング部110は、フレームを構成する24個のタイルをZ方向、上、下、左、右、対角線方向、無作為方向、および予め設定された方向で選択することができる。
同じ方法により、プレビニング部110は、タイル0〜7およびタイル9〜23それぞれに対応するオブジェクトビニング情報を取得して格納部170に格納することができる。
頂点シェーディング部120は、プレビニングされたオブジェクトを対象とし、タイルごとに頂点シェーディングを実行することができる。
ビューポートマッピング部130は、頂点シェーディングされたオブジェクトが表示(図示せず)上のビューポート(図示せず)にマッピングするように頂点シェーディングされたオブジェクトを対象とし、タイル内のすべての頂点ごとにビューポートマッピングを実行することができる。ここで、頂点シェーディングおよびビューポートマッピングは周知の技術であるため、詳しい説明は省略する。
このとき、頂点シェーディング部120およびビューポートマッピング部130は、タイル内のすべての頂点ごとに実行された幾何学処理結果を格納部170に格納することができる。すなわち、頂点シェーディングおよびビューポートマッピングされたオブジェクトに該当する幾何学処理結果を格納部170に格納することができる。
プリミティブ処理部(Primitive Assembly Unit)140は、ビューポートマッピングされたオブジェクトを対象とし、タイル内の頂点をプリミティブで構成することができる。一例として、プリミティブは、三角形を含むことができる。
タイルビニング部(Tile binning)150は、頂点ごとにビューポートマッピングされたオブジェクト内のプリミティブを対象とし、タイルビニングを実行することができる。
このとき、タイルビニング部150は、プリミティブ処理によって選択されたタイルそれぞれに対してプリミティブ単位でタイルビニングを実行することができる。ここで、タイルビニング部150は、フレームを構成するタイルをZ方向、上、下、左、右、対角線方向、無作為方向、および予め設定された方向で選択してタイルビニングを実行することができる。
また、タイルビニング部150は、プリミティブを用いて幾何学処理されたオブジェクトの一部または全体を含むタイルを判別してタイルビニング情報を取得し、取得したタイルビニング情報を格納部170に格納することができる。ここで、タイルビニング情報は、タイル番号、タイルに含まれるプリミティブそれぞれに対応するオブジェクトの種類、およびオブジェクトそれぞれに対応する文脈情報を含むことができる。一例として、プリミティブは、三角形(Triangle)、四角形(quad)、または多角形(Polygon)を含むことができる。ここで、三角形は、triangle type、triangle strip type、およびtriangle fan typeを含むことができる。
このとき、図3を参照すれば、タイルビニング部150は、タイル8に含まれる第1〜4プリミティブ(Tri0〜Tri3)、第1〜4プリミティブそれぞれが含む第1および第2オブジェクト210、220、または第1および第2オブジェクト210、220それぞれの文脈情報(Context A、Context B)をタイル8のタイルビニング情報として格納部170に格納することができる。同じ方法により、タイルビニング部150は、タイル0〜7およびタイル9〜23それぞれに対応するタイルビニング情報を格納部170に格納することができる。
また、タイルビニング部150は、タイルビニングが実行されたオブジェクトに対してビニングフラグを設定することができる。ここで、ビニングフラグは、フレームに含まれたオブジェクトのうち幾何学処理(Geometry Processing)が既に実行されたオブジェクトに設定することができる。このとき、幾何学処理は、頂点シェーディング、ビューポートマッピング、プリミティブ構成、およびタイルビニングを含むことができる。
これにより、プレビニングされたオブジェクトにビニングフラグが設定されている場合、ビニングフラグが設定されたオブジェクトに対して幾何学処理が実行されなくてもよい。同様に、プレビニングされたオブジェクトにビニングフラグが設定されていない場合、プレビニングされたオブジェクトに対して幾何学処理を実行してもよい。
一例として、図2を参照すれば、タイル8およびタイル9はそれぞれ同じ第1および第2オブジェクト210、220を含むことができる。このとき、タイル8に含まれた第1および第2オブジェクト210、220は、頂点シェーディング、ビューポートマッピング、プリミティブ処理、およびタイルビニングのような幾何学処理が実行されたため、タイルビニング部150は、第1および第2オブジェクト210、220にビニングフラグを設定することができる。
この後、プレビニング部110でタイル9が選択されてプレビニングが完了すれば、タイル9に含まれた第1および第2オブジェクト210、220にビニングフラグが設定されているため、第1および第2オブジェクト210、220に対して幾何学処理が実行されなくてもよい。すなわち、プレビニングされた第1および第2オブジェクト210、220に対して、頂点シェーディング、ビューポートマッピング、プリミティブ処理、およびタイルビニングが実行されなくてもよい。これにより、既に幾何学処理されたオブジェクトの幾何学処理結果は、格納部170に格納されなくてもよい。
ラスター処理部(Rasterization Unit)160は、フラグメント処理部161と、ピクセルシェーディング部163と、ラスター演算部165とを含むことができる。
フラグメント処理部(Fragment Generator)161は、プリミティブから画面上のフラグメントあるいはピクセルを生成することができる。
ピクセルシェーディング部163は、生成されたフラグメントを対象としてピクセルシェーディング(Pixel Shading)を実行することができる。
ラスター演算部(Raster Operation Processor:ROP)165は、シェーディングされたフラグメントを対象としてラスター演算を実行し、ラスター演算の実行結果を格納部170に格納することができる。
また、ラスター演算部165は、複数のタイルで構成されたフレームに含まれたオブジェクトのラスター処理(Rasterization)が完了すれば、タイルビニング情報および幾何学処理結果を格納部170から削除することができる。
このとき、画面上の一点をピクセル(pixel)とすれば、フラグメントは、ピクセルの色を決定するためにレンダリング装置内で管理する単位とすることができる。ここで、フラグメント、ピクセルシェーディング、およびラスター演算は周知の技術であるため、詳しい説明は省略する。
図4は、プレビニングの動作を説明するために示すフローチャートである。
まず、プレビニング部110は、フレームに含まれたオブジェクトそれぞれに該当するバウンディングボリュームを生成することができる(S410)。ここで、バウンディングボリュームは、該当するオブジェクトが含まれるようにオブジェクトよりも大きく生成することができる。
次に、プレビニング部110は、生成されたバウンディングボリュームを用いて複数のタイルで構成されたフレームに含まれたオブジェクトを対象としてプレビニングを実行することができる(S420)。
具体的に、プレビニング部110は、複数のタイルのうちから選択されたタイルに生成されたバウンディングボリュームの一部あるいは全体がオーバラップするか否かを判別するプレビニングを実行することができる。このとき、プレビニング部110は、フレームを構成する複数のタイル全体に対してプレビニングを実行することにより、取得したオブジェクトビニング情報を格納部170に格納することができる。
ここで、オブジェクトビニング情報は、タイル番号、タイルに含まれるオブジェクトの種類、およびオブジェクトそれぞれに該当する文脈情報を含むことができる。このとき、プレビニング部110は、Z方向、上、下、左、右、対角線方向、無作為方向、予め設定された方向でタイルを選択することができる。
そして、プレビニング実行後、タイルビニング部150は、幾何学処理を実行したオブジェクトに対してビニングフラグを設定することができる(S430)。ここで、幾何学処理は、頂点シェーディング、ビューポートマッピング、プリミティブ構成、およびタイルビニングを含むことができる。
これにより、プレビニングされたオブジェクトにビニングフラグが設定された場合、幾何学処理が実行されなくてもよい(S440)。すなわち、プレビニングされたオブジェクトを対象として、頂点シェーディング、ビューポートマッピング、プリミティブ構成、およびタイルビニングが実行されなくてもよい。
同様に、プレビニングされたオブジェクトにビニングフラグが設定されていない場合、ビニングフラグが設定されていないオブジェクトを対象として幾何学処理を実行してもよい。すなわち、プレビニングされたオブジェクトを対象として、頂点シェーディング、ビューポートマッピング、プリミティブ構成、およびタイルビニングを実行してもよい。このとき、頂点シェーディングおよびビューポートマッピングは頂点単位で実行することができ、プリミティブおよびタイルビニングはプリミティブ単位で実行することができる。
これにより、ラスター処理部160は、タイルビニングが実行されたオブジェクトに対してラスター処理を実行することができる(S450)。ここで、ラスター処理は、フラグメント処理、ピクセルシェーディング、およびラスター演算を含むことができる。このとき、フラグメント処理はプリミティブ単位で実行することができ、ピクセルシェーディングおよびラスター演算はフラグメント単位で実行することができる。
これにより、ラスター演算部165は、複数のタイルで構成されたフレームに含まれたオブジェクトに対してラスター処理が完了すれば、タイルビニング情報および幾何学処理結果を格納部170から削除することができる(S460)。
以上では、1つのフレームに複数のオブジェクトが含まれた場合を例示して説明したが、これは実施形態に過ぎず、1つのフレームが1つのオブジェクトのみを含んでもよい。
また、フレームを構成するタイルのうちから選択されたタイルそれぞれとオーバラップするバウンディングボリュームを判別するプレビニングを説明したが、これは実施形態に過ぎず、タイルを選択せずにフレーム全体を対象として入力されるバウンディングボリュームそれぞれとオーバラップするタイルを判別してプレビニングを実行してもよい。
また、以上では、選択されたタイルにビニングフラグが設定されたオブジェクトとビニングフラグが設定されないオブジェクトが共に含まれた場合、ビニングフラグが設定されないオブジェクトを頂点単位として幾何学処理およびプリミティブ処理を実行し、プリミティブ単位でタイルビニングを実行することができる。
また、ビニングフラグが設定された場合、幾何学処理、プリミティブ処理、およびタイルビニングを実行しないものと説明したが、これは実施形態に過ぎず、選択されたタイルに含まれた複数のオブジェクトのうちでビニングフラグが設定されていないオブジェクトが存在する場合には、タイルに含まれたオブジェクト全体を対象として幾何学処理、プリミティブ処理、およびタイルビニングを実行することができる。
また、上述したオブジェクトは、APIのdraw call、またはグラフィックAPI(Application Programming Interface)のdraw primitive callに対応することができる。一例として、グラフィックAPIは、OpenGL、またはOpenGL|ES、またはDirect3Dを含むことができる。
また、上述したレンダリング装置において、幾何学処理は頂点単位、タイルビニングおよびフラグメントはプリミティブ単位、ピクセルシェーディングおよびラスター演算はフラグメント単位で実行することができる。
なお、本発明の実施形態に係る方法は、コンピュータにより実現される多様な動作を実行するためのプログラム命令を含むコンピュータ読取可能な記録媒体を含む。当該記録媒体は、プログラム命令、データファイル、データ構造などを単独または組み合わせて含むこともでき、記録媒体およびプログラム命令は、本発明の目的のために特別に設計されて構成されたものでもよく、コンピュータソフトウェア分野の技術を有する当業者にとって公知であり使用可能なものであってもよい。コンピュータ読取可能な記録媒体の例としては、ハードディスク、フロッピー(登録商標)ディスク及び磁気テープのような磁気媒体、CD−ROM、DVDのような光記録媒体、フロプティカルディスクのような磁気−光媒体、およびROM、RAM、フラッシュメモリなどのようなプログラム命令を保存して実行するように特別に構成されたハードウェア装置が含まれる。また、記録媒体は、プログラム命令、データ構造などを保存する信号を送信する搬送波を含む光または金属線、導波管などの送信媒体でもある。プログラム命令の例としては、コンパイラによって生成されるような機械語コードだけでなく、インタプリタなどを用いてコンピュータによって実行され得る高級言語コードを含む。前記したハードウェア要素は、本発明の動作を実行するために一以上のソフトウェアモジュールとして作動するように構成することができ、その逆もできる。
これにより、以上のような実施形態に係るレンダリング装置および方法は、幾何学処理を実行する前にプレビニングを実行することにより、メモリ使用量を減少させることができる。
また、ビニングフラグを用いて既に幾何学処理が完了したオブジェクトに対しては幾何学処理を実行しないことにより、プレビニングによって発生することがある重複演算を防ぐことができ、性能低下を最小化することができる。
上述したように、本発明の好ましい実施形態を参照して説明したが、該当の技術分野において熟練した当業者にとっては、特許請求の範囲に記載された本発明の思想および領域から逸脱しない範囲内で、本発明を多様に修正および変更させることができることを理解することができるであろう。すなわち、本発明の技術的範囲は、特許請求の範囲に基づいて定められ、発明を実施するための最良の形態により制限されるものではない。
100:レンダリング装置
110:プリビニング部
120:頂点シェーディング部
130:ビューポートマッピング部
140:プリミティブ処理部
150:タイルビニング部
160:ラスター処理部
161:フラグメント処理部
163:ピクセルシェーディング部
165:ラスター演算部
170:格納部

Claims (20)

  1. 複数のタイルで構成されたフレームに含まれた少なくとも1つのオブジェクトを対象とし、前記複数のタイルそれぞれをプレビニングするプレビニング部と、
    前記プレビニングされたオブジェクトを対象とし、タイルごとに頂点シェーディングを実行する頂点シェーディング部と、
    前記頂点シェーディングされたオブジェクトを対象として、タイル内のすべての頂点ごとにビューポートマッピングを実行するビューポートマッピング部と、
    前記ビューポートマッピングされたオブジェクトを対象として、タイル内の頂点をプリミティブで構成するプリミティブ処理部と、
    前記プリミティブを対象としてタイルビニングを実行するタイルビニング部と、
    を含むレンダリング装置。
  2. 前記プレビニング部は、
    前記複数のタイルで構成されたフレームに含まれた少なくとも1つのオブジェクトに対応するバウンディングボリュームを生成し、前記生成されたバウンディングボリュームを用いて前記複数のタイルそれぞれをプレビニングする請求項1に記載のレンダリング装置。
  3. 前記プレビニング部は、
    前記少なくとも1つのオブジェクトが含まれるように前記バウンディングボリュームを生成する請求項2に記載のレンダリング装置。
  4. 前記プレビニング部は、
    前記複数のタイルのうちから選択された少なくとも1つのタイルに前記生成されたバウンディングボリュームの一部または全体がオーバラップするか否かを判別して前記プレビニングを実行する請求項2に記載のレンダリング装置。
  5. 前記タイルビニング部は、
    前記タイルビニングが実行されたオブジェクトにビニングフラグを設定することを特徴とする請求項1に記載のレンダリング装置。
  6. 前記ビニングフラグが設定されたオブジェクトには、幾何学処理が実行されないことを特徴とする請求項5に記載のレンダリング装置。
  7. 前記ビニングフラグが設定されたオブジェクトには、前記頂点シェーディング、前記ビューポートマッピング、前記プリミティブ構成、および前記タイルビニングが実行されないことを特徴とする請求項6に記載のレンダリング装置。
  8. 前記タイルビニングを実行したオブジェクトに対して、プリミティブからフラグメントを生成するフラグメント生成部と、
    前記生成されたフラグメントを対象としてピクセルシェーディングを実行するピクセルシェーディング部と、
    前記シェーディングされたフラグメントを対象としてラスター演算を実行するラスター演算部と、
    をさらに含む請求項1に記載のレンダリング装置。
  9. 前記ラスター演算部は、
    前記オブジェクトに対してラスター演算が実行されれば、前記オブジェクトのタイルビニング情報および幾何学処理結果を削除することを特徴とする請求項8に記載のレンダリング装置。
  10. 複数のタイルで構成されたフレームに含まれた少なくとも1つのオブジェクトを対象とし、前記複数のタイルそれぞれをプレビニングするステップと、
    前記プレビニングされたオブジェクトを対象として、タイルごとに頂点シェーディングを実行するステップと、
    前記頂点シェーディングされたオブジェクトを対象として、タイル内のすべての頂点ごとにビューポートマッピングを実行するステップと、
    前記ビューポートマッピングされたオブジェクトを対象として、タイル内の頂点をプリミティブで構成するステップと、
    前記プリミティブを対象としてタイルビニングを実行するステップと、
    を含むレンダリング方法。
  11. 前記プレビニングするステップは、
    前記複数のタイルで構成されたフレームに含まれた少なくとも1つのオブジェクトに対応するバウンディングボリュームを生成し、前記生成されたバウンディングボリュームを用いて前記複数のタイルそれぞれをプレビニングする請求項10に記載のレンダリング方法。
  12. 前記プレビニングするステップは、
    前記少なくとも1つのオブジェクトが含まれるように前記バウンディングボリュームを生成する請求項11に記載のレンダリング方法。
  13. 前記プレビニングするステップは、
    前記複数のタイルのうちから選択された少なくとも1つのタイルに前記生成されたバウンディングボリュームの一部または全体がオーバラップするか否かを判別して前記プレビニングを実行する請求項11に記載のレンダリング方法。
  14. 前記タイルビニングを実行するステップは、
    前記タイルビニングが実行されたオブジェクトにビニングフラグを設定することを特徴とする請求項10に記載のレンダリング方法。
  15. 前記ビニングフラグが設定されたオブジェクトには、幾何学処理が実行されないことを特徴とする請求項14に記載のレンダリング方法。
  16. 前記ビニングフラグが設定されたオブジェクトには、前記頂点シェーディング、前記ビューポートマッピング、前記プリミティブ構成、および前記タイルビニングが実行されないことを特徴とする請求項15に記載のレンダリング方法。
  17. 前記タイルビニングを実行したオブジェクトに対して、プリミティブからフラグメントを生成するステップと、
    前記生成されたフラグメントを対象としてピクセルシェーディングを実行するステップと、
    前記シェーディングされたフラグメントを対象としてラスター演算を実行するステップと、
    をさらに含む請求項10に記載のレンダリング方法。
  18. 前記ラスター演算が実行されれば、前記オブジェクトのタイルビニング情報および幾何学処理結果を削除することを特徴とする請求項17に記載のレンダリング方法。
  19. 前記プリミティブは、三角形、四角形、または多角形を含む請求項18に記載のレンダリング方法。
  20. 請求項11〜19のうちのいずれか一項の方法を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2010088638A 2009-10-20 2010-04-07 タイルベースのレンダリング装置および方法 Expired - Fee Related JP5634104B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020090099733A KR101609266B1 (ko) 2009-10-20 2009-10-20 타일 기반의 랜더링 장치 및 방법
KR10-2009-0099733 2009-10-20

Publications (2)

Publication Number Publication Date
JP2011090664A true JP2011090664A (ja) 2011-05-06
JP5634104B2 JP5634104B2 (ja) 2014-12-03

Family

ID=42985534

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010088638A Expired - Fee Related JP5634104B2 (ja) 2009-10-20 2010-04-07 タイルベースのレンダリング装置および方法

Country Status (4)

Country Link
US (1) US8587592B2 (ja)
EP (1) EP2315180A3 (ja)
JP (1) JP5634104B2 (ja)
KR (1) KR101609266B1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017523499A (ja) * 2014-06-30 2017-08-17 インテル・コーポレーション タイルベースのレンダリングgpuアーキテクチャのための任意のタイル形状を有する適応可能なパーティションメカニズム

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9342322B2 (en) * 2011-09-12 2016-05-17 Microsoft Technology Licensing, Llc System and method for layering using tile-based renderers
KR101136737B1 (ko) * 2011-10-07 2012-04-19 (주)넥셀 그래픽 처리방법 및 그 장치
US8819296B2 (en) 2011-11-17 2014-08-26 Nokia Corporation Apparatus, a method and a computer program
KR101953133B1 (ko) 2012-02-27 2019-05-22 삼성전자주식회사 렌더링 장치 및 그 방법
GB2500284B (en) * 2012-09-12 2014-04-30 Imagination Tech Ltd Tile based computer graphics
KR102109130B1 (ko) 2013-08-12 2020-05-08 삼성전자주식회사 그래픽스 프로세싱 유닛, 이의 동작 방법, 및 이를 포함하는 장치들
US10198856B2 (en) * 2013-11-11 2019-02-05 Oxide Interactive, LLC Method and system of anti-aliasing shading decoupled from rasterization
US9940686B2 (en) * 2014-05-14 2018-04-10 Intel Corporation Exploiting frame to frame coherency in a sort-middle architecture
EP2985735B1 (en) 2014-08-11 2019-12-04 Samsung Electronics Co., Ltd Method and apparatus for performing tile-based path rendering
KR102354989B1 (ko) * 2015-04-14 2022-01-24 삼성전자주식회사 경로 렌더링을 위한 타일 비닝을 수행하는 방법 및 장치.
US11436783B2 (en) 2019-10-16 2022-09-06 Oxide Interactive, Inc. Method and system of decoupled object space shading

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004510270A (ja) * 2000-09-28 2004-04-02 インテル・コーポレーション フルシーン・アンチエイリアシング・スーパーサンプリング実施のための方法および装置
JP2006521612A (ja) * 2003-03-27 2006-09-21 イマジネイション テクノロジーズ リミテッド 3dリンダリングされたグラフィックスのためのタイリングシステムの改良
US20070091088A1 (en) * 2005-10-14 2007-04-26 Via Technologies, Inc. System and method for managing the computation of graphics shading operations
WO2007144622A1 (en) * 2006-06-12 2007-12-21 Imagination Technologies Limited Parameter compaction in tile based rendering device
JP2008165760A (ja) * 2006-12-04 2008-07-17 Arm Norway As グラフィックスを処理する方法および装置
US20090046098A1 (en) * 2007-08-14 2009-02-19 Stmicroelectronics S.R.L. Primitive binning method for tile-based rendering

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997006512A2 (en) * 1995-08-04 1997-02-20 Microsoft Corporation Method and system for rendering graphical objects to image chunks and combining image layers into a display image
US6924801B1 (en) * 1999-02-09 2005-08-02 Microsoft Corporation Method and apparatus for early culling of occluded objects
US6344852B1 (en) * 1999-03-17 2002-02-05 Nvidia Corporation Optimized system and method for binning of graphics data
US6525726B1 (en) * 1999-11-02 2003-02-25 Intel Corporation Method and apparatus for adaptive hierarchical visibility in a tiled three-dimensional graphics architecture
JP2003529860A (ja) 2000-03-31 2003-10-07 インテル・コーポレーション タイル型グラフィックス・アーキテクチャ
GB2387094B (en) 2002-03-26 2005-12-07 Imagination Tech Ltd 3-D Computer graphics rendering system
JP4364706B2 (ja) 2004-04-05 2009-11-18 富士通株式会社 陰線処理方法
US7167171B2 (en) * 2004-06-29 2007-01-23 Intel Corporation Methods and apparatuses for a polygon binning process for rendering
US7505036B1 (en) * 2004-07-30 2009-03-17 3Dlabs Inc. Ltd. Order-independent 3D graphics binning architecture
GB0524804D0 (en) 2005-12-05 2006-01-11 Falanx Microsystems As Method of and apparatus for processing graphics
KR100793990B1 (ko) 2006-09-18 2008-01-16 삼성전자주식회사 타일 기반 3차원 렌더링에서의 조기 z 테스트 방법 및시스템
ITMI20070038A1 (it) * 2007-01-12 2008-07-13 St Microelectronics Srl Dispositivo di renderizzazione per grafica a tre dimensioni con architettura di tipo sort-middle.
US8059119B2 (en) * 2007-12-05 2011-11-15 Stmicroelectronics S.R.L. Method for detecting border tiles or border pixels of a primitive for tile-based rendering

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004510270A (ja) * 2000-09-28 2004-04-02 インテル・コーポレーション フルシーン・アンチエイリアシング・スーパーサンプリング実施のための方法および装置
JP2006521612A (ja) * 2003-03-27 2006-09-21 イマジネイション テクノロジーズ リミテッド 3dリンダリングされたグラフィックスのためのタイリングシステムの改良
US20070091088A1 (en) * 2005-10-14 2007-04-26 Via Technologies, Inc. System and method for managing the computation of graphics shading operations
WO2007144622A1 (en) * 2006-06-12 2007-12-21 Imagination Technologies Limited Parameter compaction in tile based rendering device
JP2008165760A (ja) * 2006-12-04 2008-07-17 Arm Norway As グラフィックスを処理する方法および装置
US20090046098A1 (en) * 2007-08-14 2009-02-19 Stmicroelectronics S.R.L. Primitive binning method for tile-based rendering

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017523499A (ja) * 2014-06-30 2017-08-17 インテル・コーポレーション タイルベースのレンダリングgpuアーキテクチャのための任意のタイル形状を有する適応可能なパーティションメカニズム

Also Published As

Publication number Publication date
KR20110042872A (ko) 2011-04-27
EP2315180A2 (en) 2011-04-27
KR101609266B1 (ko) 2016-04-21
JP5634104B2 (ja) 2014-12-03
US20110090224A1 (en) 2011-04-21
EP2315180A3 (en) 2017-04-05
US8587592B2 (en) 2013-11-19

Similar Documents

Publication Publication Date Title
JP5634104B2 (ja) タイルベースのレンダリング装置および方法
CN106296565B (zh) 图形管线方法和设备
JP6709038B2 (ja) グラフィックス・パイプラインを遂行する方法及びコンピューティング装置
US8952962B2 (en) Graphics processing method and apparatus using post fragment shader
US9569811B2 (en) Rendering graphics to overlapping bins
US8970580B2 (en) Method, apparatus and computer-readable medium rendering three-dimensional (3D) graphics
EP3087553B1 (en) Optimized multi-pass rendering on tiled base architectures
JP4938850B2 (ja) 拡張型頂点キャッシュを備えたグラフィック処理装置
JP7266021B2 (ja) 可変レートシェーディング
KR102651126B1 (ko) 그래픽 프로세싱 장치 및 그래픽스 파이프라인에서 텍스처를 처리하는 방법
US10169839B2 (en) Method and apparatus for executing graphics pipeline
US20160163087A1 (en) Apparatus and method for rendering
US9013479B2 (en) Apparatus and method for tile-based rendering
KR20150039495A (ko) 이전 타일의 이미지를 이용하여 현재 프레임을 렌더링하는 방법 및 장치
KR102381945B1 (ko) 그래픽 프로세싱 장치 및 그래픽 프로세싱 장치에서 그래픽스 파이프라인을 수행하는 방법
JP2008165760A (ja) グラフィックスを処理する方法および装置
US20160148426A1 (en) Rendering method and apparatus
EP2992510A1 (en) Tessellation of two-dimensional curves using a graphics pipeline
KR20200067222A (ko) 그래픽스 파이프라인에서의 인덱스들의 압축 및 압축 해제
KR102644276B1 (ko) 그래픽 처리 장치 및 방법
KR20180037838A (ko) 텍스쳐를 처리하는 방법 및 장치
US9858709B2 (en) Apparatus and method for processing primitive in three-dimensional (3D) graphics rendering system
US11030791B2 (en) Centroid selection for variable rate shading
KR20160068204A (ko) 메시 지오메트리를 위한 데이터 처리 방법 및 이를 기록한 컴퓨터 판독 가능 저장 매체
KR102147357B1 (ko) 커맨드들을 관리하는 장치 및 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130404

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140212

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140428

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140930

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141014

LAPS Cancellation because of no payment of annual fees