JP2006195938A - Glare rendering circuit - Google Patents

Glare rendering circuit Download PDF

Info

Publication number
JP2006195938A
JP2006195938A JP2005033611A JP2005033611A JP2006195938A JP 2006195938 A JP2006195938 A JP 2006195938A JP 2005033611 A JP2005033611 A JP 2005033611A JP 2005033611 A JP2005033611 A JP 2005033611A JP 2006195938 A JP2006195938 A JP 2006195938A
Authority
JP
Japan
Prior art keywords
glare
value
rendering
flare
point
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.)
Pending
Application number
JP2005033611A
Other languages
Japanese (ja)
Inventor
Tsuneo Ikedo
恒雄 池戸
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.)
KAADEIKKU CORP KK
Original Assignee
KAADEIKKU CORP KK
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 KAADEIKKU CORP KK filed Critical KAADEIKKU CORP KK
Priority to JP2005033611A priority Critical patent/JP2006195938A/en
Publication of JP2006195938A publication Critical patent/JP2006195938A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Image Generation (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To make an algorithm into a circuit, by which both problems are solved, i.e., the appropriate display of glare in drawing a dynamic image and a display arithmetic load. <P>SOLUTION: A glare rendering circuit renders a glare phenomenon respectively through the use of: a means for storing the ratio value of a point (glare light emitting source) to environmental light in a register file when a rendering point comes to have not less than a prescribed intensity relative to the environmental light during a process for rendering an object in a view point coordinate system; a means for storing the maximum and minimum values of the distributed x and y coordinate values and a value most close to the view point of a z coordinate value in the register file when the glare generating source exists on the object having the same identifier, through the use of the identifier and detecting existence of light shielding by using hidden surface erasure after rendering the whole objects concerning the values; a means for giving polygons and flare vectors to generate bloom and flare with the coordinate point as a center to the glare light emitting source; and a means for determining glare luminance with the use of a function table, based on a distance from the glare light emitting source and a distance from a flare vector. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

この発明はコンピュ−タグラフィックス映像技術に関し、強い輝度をもつ反射光あるいは発光源によって眼球内で生じるグレア現象を描画するためのレンダリング論理回路技術分野に属する。  The present invention relates to a computer graphics video technology, and belongs to a rendering logic circuit technical field for drawing a glare phenomenon generated in an eyeball by reflected light or light emission source having strong luminance.

グレア現象として光源周辺に発生するブル−ムやフレア様態は眼球細胞の不均一性やレンズの細胞配列構造によって発生する。これらのグレア現象をコンピュ−タグラフィックスにより描画する手段として、従来の多くは予めブル−ムあるいはフレアを2次元パタ−ンとして描画しておき、このパタ−ンを発光源にマッピングするテキスチャ−マッピング技術が用いられてきた。グレア映像にテキスチャ−パタ−ンを用いる手法では、グレア発光源と視点の間には遮光物体がないことを前提とする。しかし実時間描画では視点の移動に伴って発光物体とその他の物体の位置関係は常に変化し、発光源が他の物体の背後に位置づけられることは頻繁に生じる。この視野変換は通常、アプリケ−ションプロセッサから切り離されたレンダリング(画素描画)段階で行われるため、アプリケ−ション側において発光源が遮光されているか否かをレンダリング過程で高速に判断することはできない。アプリケ−ション側が、この位置関係を無視し、無条件に発光源にブル−ムやフレア映像を付加すると共に、これら映像に一般画像がもつデプス値との隠面消去を併用すると、発光源が遮光されても、ブル−ムやフレアの一部は遮光されない場合や、グレアの一部が遮光される映像が生じる。グレアは眼球内で発生するものであることから、現実世界ではグレアの一部の光線が障害物によって遮光される現象は発生しない。この結果、映像は不自然なものとなる。一方、特願2003−107094では上記の問題を解決する手段として、画像メモリに対応する2次元配列のフラグメモリを画像メモリとは別途に設け、レンダリング時において、コントラスト比が所定の範囲を超えた場合、この2次元フラグメモリにフラグを隠面消去も併用して立てると同時に、すべてのレンダリングが終了した時点で、この2次元フラグメモリを走査し、検出位置にブル−ムやフレアを描画する。この方式は前記テキスチャ−マッピング方式の持つ問題点は解決するものの、第1パスの終了後、2次元フラグメモリを走査しながら2次元平面状に分布したフラグの集合を算出し、集合領域ごとにフラグ数の積算量を求めてブル−ムやフレアの強さを表現するため、計算負荷が重くなり実時間描画には好ましくない。  Bloom and flare patterns that occur around the light source as a glare phenomenon are caused by the non-uniformity of eyeball cells and the lens arrangement of lenses. As a means for drawing these glare phenomena by computer graphics, many conventional techniques draw a blue or flare pattern in advance as a two-dimensional pattern and map this pattern to a light source. Mapping techniques have been used. In the technique using the texture pattern for the glare image, it is assumed that there is no light blocking object between the glare light source and the viewpoint. However, in real-time drawing, the positional relationship between the light-emitting object and the other object always changes with the movement of the viewpoint, and the light-emitting source is frequently located behind the other object. Since this field-of-view conversion is normally performed at the rendering (pixel drawing) stage separated from the application processor, it is impossible to determine at high speed in the rendering process whether or not the light source is shielded from light on the application side. . If the application side ignores this positional relationship, unconditionally adds a bloom or flare image to the light source, and uses these images together with hidden surface removal from the depth value of the general image, the light source Even if the light is shielded, a part of the bloom or flare is not shielded, or an image in which a part of the glare is shielded is generated. Since glare is generated in the eyeball, in the real world, a phenomenon in which some rays of glare are blocked by an obstacle does not occur. As a result, the image becomes unnatural. On the other hand, in Japanese Patent Application No. 2003-107094, as a means for solving the above problem, a two-dimensional array flag memory corresponding to the image memory is provided separately from the image memory, and the contrast ratio exceeds a predetermined range during rendering. In this case, the flag is set in the two-dimensional flag memory together with hidden surface erasure, and at the same time, when all the renderings are completed, the two-dimensional flag memory is scanned and a bloom or flare is drawn at the detection position. . Although this method solves the problems of the texture-mapping method, a set of flags distributed in a two-dimensional plane is calculated while scanning the two-dimensional flag memory after the first pass, and for each set region. Since the intensity of the bloom and flare is expressed by obtaining the integrated amount of the number of flags, the calculation load becomes heavy, which is not preferable for real-time drawing.

本発明は、前記手法がもつ動的な映像描画時のグレアの適切な表示と表示演算負荷の両問題点を共に解決するアルゴリズムの回路化を課題とする。課題の詳細として本発明では2次元フラグメモリを用いることなく、特願2003−107094に比較して計算負荷を2桁以上改善する手段と、グレア発光源が面光源で、その面光源に遮光物体が一部を覆う場合のグレア生成手段、またブル−ムおよびフレアの定義変数(形状を決定する情報)を簡易化し、回路規模を1/4程度とするものである。以下に前記のそれぞれの課題を解決するための本発明の手段を説明する。  An object of the present invention is to make an algorithm circuit that solves both the problems of proper display of glare and display calculation load at the time of dynamic video rendering of the above technique. As details of the problem, the present invention does not use a two-dimensional flag memory, and means for improving the calculation load by two digits or more as compared with Japanese Patent Application No. 2003-107094; In this case, the glare generating means for covering a part, and the definition variables (information for determining the shape) of the bloom and flare are simplified, and the circuit scale is reduced to about 1/4. The means of the present invention for solving each of the above problems will be described below.

本発明ではグレアを発生する発光源は一つの映像シ−ンのなかではそれほど多くはないことに注目し、特願2003−107094技術で用いられた2次元のフラグメモリではなく、1次元のレジスタファイルを設ける。ここで本発明のレジスタファイルは、グレア発生源毎にグレア発生源領域の(Xmin,Ymin)と(Xmax,Ymax),Zmax、ID(物体識別子)および光源の輝度を記憶する。zmaxはそれぞれの発生源毎にレジスタファイル内に記憶されたz値の、視点に最も近い座標値である。IDは発光源物体を識別するためのものでレンダリング過程において所定の輝度以上の輝度が検出された場合、発光源物体に定義されたIDとレジスタファイルに登録された(すでに同一座標点に登録されている場合)IDとの比較を行い、IDが一致すればレジスタファイル内の同一IDがもつ輝度との加算を行い、不一致ならば前記座標値、ID、輝度を新らたにレジスタファイルに記憶する。レンダリングする物体にはIDが通常定義されるが、本発明ではレンダリング点の輝度が一定値を越えた場合に、物体のIDとレジスタファイルに記憶されたIDとを比較する。またレジスタファイルに記憶されたグレア発生点の座標値に関して、前記従来技術と異なりレンダリング段階においては画像メモリのzバッファとの隠面消去を行わず、レジスタファイルにすでに記憶されている同一IDのz値のみとの比較を行い、視点に近い場合は、これに置き換える。以上からレジスタファイルにはグレア発生輝度をもつものだけが記憶されることから、記憶されるデ−タは2次元フラグメモリに比較して数百分の1以下となる。  In the present invention, it is noted that there are not so many light emitting sources that generate glare in one video scene, and it is not a two-dimensional flag memory used in Japanese Patent Application No. 2003-107094 but a one-dimensional register. Create a file. Here, the register file of the present invention stores (Xmin, Ymin), (Xmax, Ymax), Zmax, ID (object identifier) of the glare source region and the luminance of the light source for each glare source. zmax is the coordinate value closest to the viewpoint of the z value stored in the register file for each source. The ID is used to identify the light source object. When a luminance higher than a predetermined luminance is detected in the rendering process, the ID is registered in the register file and the ID defined for the light source object (already registered at the same coordinate point). If the IDs match, add the brightness with the same ID in the register file, and if the IDs do not match, newly store the coordinate value, ID, and brightness in the register file. To do. An ID is normally defined for an object to be rendered. In the present invention, when the luminance of a rendering point exceeds a certain value, the ID of the object is compared with the ID stored in the register file. Also, regarding the coordinate value of the glare occurrence point stored in the register file, unlike the prior art, the hidden surface is not erased from the z buffer of the image memory in the rendering stage, and z of the same ID already stored in the register file. Compare with the value only, and replace it if it is close to the viewpoint. As described above, since only the register file having the glare generation brightness is stored in the register file, the stored data is less than one hundredth compared with the two-dimensional flag memory.

前記のレンダリング段階が終了した時点で、レジスタファイルにはグレア発生領域を示す前記(Xmin,Ymin)、(Xmax,Ymax),Zmax、IDと、その領域内の積算輝度が記憶されている。本発明ではレンダリング後に、それぞれの発光領域が遮光物体の前方あるいは後方に位置しているか否かのテストを行う。本発明ではレジスタファイル内の前記XおよびYの最大・最小座標値から、その発光中心点となる(Xmax−Xmin)/2,(Ymax−Ymin)/2を計算し、この各軸の中心点に対し画像メモリのzバッファに記憶されたz値とレジスタファイル内のZmaxとを比較する。グレア発生領域が大きな場合は(Xmin,Ymin)と(Xmax,Ymax)の領域内に複数のサンプリング点を設定し、サンプリング点毎に隠面消去テストを行う。サンプリング点の中で遮光物体の前後に位置するものが混在する場合には、前方、後方となるサンプリング点の数をそれぞれ計数し、その割合に前記積算輝度を乗算したものを、その発光領域の輝度とする。この結果、従来の2次元フラグメモリでは例えば500×500の解像度とすると、250,000点の隠面消去テストがレンダリング段階で必要とされたが、本発明では、例えば32個のグレア発生点がある場合、32点の隠面消去テストでよい。このように隠面消去処理で3桁以上の処理が削減できる。  When the rendering step is completed, the register file stores the (Xmin, Ymin), (Xmax, Ymax), Zmax, ID indicating the glare occurrence area, and the accumulated luminance in the area. In the present invention, after rendering, a test is performed to determine whether each light emitting area is located in front of or behind the light-shielding object. In the present invention, (Xmax−Xmin) / 2 and (Ymax−Ymin) / 2, which are the emission center points, are calculated from the maximum and minimum coordinate values of X and Y in the register file, and the center point of each axis is calculated. In contrast, the z value stored in the z buffer of the image memory is compared with Zmax in the register file. When the glare generation area is large, a plurality of sampling points are set in the (Xmin, Ymin) and (Xmax, Ymax) areas, and a hidden surface removal test is performed for each sampling point. When sampling points located before and after the light-shielding object are mixed, count the number of sampling points that are front and rear, respectively, and multiply the ratio by the integrated luminance to obtain the light emitting area. Let it be luminance. As a result, in the conventional two-dimensional flag memory, if the resolution is 500 × 500, for example, 250,000 hidden surface removal tests are required in the rendering stage. In the present invention, for example, 32 glare occurrence points are required. In some cases, a 32-point hidden surface removal test is sufficient. In this way, the processing of 3 digits or more can be reduced by the hidden surface removal processing.

隠面消去テストが終了すると、本発明では前記輝度の積算値から、ブル−ム描画は前記発光中心点を中心とする所定の領域を、またフレア描画はフレアベクトルと共に前記発光中心点とフレアベクトルを囲む所定の領域をポリゴンとして定義し、このポリゴンを塗りつぶしながらグレアの輝度を決定してゆく。ブル−ム描画のためのポリゴン面は通常4角形領域で与える。一方、フレアベクトルとポリゴン面はグラフィックスエンジンと一般に言われるプロセッサ内で、乱数を用いて定義する。乱数の分布(フレアの長さ)および周期(フレアの数)はレジスタファイルから読み出した発光領域の輝度に依存する。輝度が高ければ一般に長くて太いフレアとなる。  When the hidden surface erasure test is completed, according to the present invention, based on the integrated value of brightness, the blue drawing is performed in a predetermined area centered on the light emission center point, and the flare drawing is performed together with the flare vector and the light emission center point and the flare vector. A predetermined area surrounding the image is defined as a polygon, and the glare brightness is determined while filling the polygon. The polygon surface for bloom drawing is usually given as a quadrangular area. On the other hand, flare vectors and polygon planes are defined using random numbers in a processor generally called a graphics engine. The distribution of random numbers (flare length) and period (number of flares) depend on the luminance of the light emitting area read from the register file. Higher brightness generally results in longer and thicker flares.

グレア発生点の物体が例えばレンズやカットガラスを通過する場合は、前記積算輝度だけでなく物質の属性条件も考慮したフレアの長さや数を決定する必要がある。あらかじめ物体の属性を前記グラフィックスエンジンが管理し、レジスタファイルの座標値や輝度を読み出すと共に、グレア発生領域のIDを参照することでグレア発生の環境条件(発光源の形状、フィルタの有無など)が認識できる。グレアレンダリング回路ではグラフィックスエシジンから発光中心点とポリゴンが与えられると、ポリゴン座標を内挿補間し、前記内挿補間点(レンダリング点)と発光中心点間の距離をレンダリング点毎に求める。  When an object at the glare generation point passes through, for example, a lens or a cut glass, it is necessary to determine the length and number of flares in consideration of not only the integrated luminance but also the material attribute conditions. The graphics engine manages the attributes of the object in advance, reads the coordinate values and brightness of the register file, and refers to the ID of the glare generation area to refer to the glare generation environment conditions (light source shape, filter presence, etc.) Can be recognized. In the glare rendering circuit, when the emission center point and the polygon are given from the graphics ethidine, the polygon coordinates are interpolated and the distance between the interpolation point (rendering point) and the emission center point is obtained for each rendering point.

本発明では、グレア生成変数として前記ポリゴン、グレア発光点座標値およびフレアベクトルの3つを定義する。発光点から描画点(ポリゴン内挿補間点あるいはレンダリング点)までの距離を用いてブル−ムやハロ−を、また前記2変数間を結ぶ直線方向とフレアベクトルとがなす方向余弦からフレアを決定する。この関係を(A)式に示す。

Figure 2006195938
(A)式において、レンダリング点とグレア発光中心点間の距離をr、発光点からレンダリング点とを結ぶ直線方向とフレアベクトルとがなす方向余弦をcosθとする。ここで本発明では、距離rと方向余弦cosθのそれぞれを入力アドレスとするRAMを設け、RAMには距離rを変数とする(1)式のG(r)と、また方向余弦cosθを変数とする(2)式のS(cosθ)の関数値をテ−ブル化してそれぞれを記憶する。この結果得られた(2)式のS(cosθ)から(3)式に示す距離rと前記sinθを乗算器で乗算した後、再び、(3)式のdをRAMのアドレスとして与えることにより(4)式を得る。さらに(1)式と(4)式を乗算して(5)式を得る。(5)式のIpはレンダリング点のグレア輝度となる。ここでRAMテ−ブルは物理的に1つのRAMのアドレスをシェア−して用いることができる。また乗算器も同様である。またk〜kはそれぞれ係数を示す。
本発明では(1)、(2)および(4)式の関数値をRAMに記憶する一方、(3)および(5)式はこのRAMで得られた出力値を乗算器により演算したものである。式(A)はレンダリング点と発生点からの距離rが大きくなればなるほど減衰する関数G(r)と、レンダリング点とフレアラインまでの距離dが大きくなればなるほど減衰するF(d)との積で表す。(1)式はブル−ムを、また(5)式はフレアラインを描画する場合に用いる。それぞれの係数は輝度のグラデ−ションを調整する。(1)式の指数部−krの距離rをR−r、G−rおよびB−rに置き換えると、それぞれ3原色に対応したG(r)を描画が可能となる。これはハロ−映像を示す。ここでR、GおよびBは発光中心点からの任意の距離となる。(1)式から明らかなように、グラフィックスエンジンが与えるポリゴンが4角形であっても、円形の輝度分布となる。またフレアはフレアベクトルラインに沿って線形の輝度分布となる。
一方、(A)式のG(r)およびF(d)はテ−ブルで生成されているため非線形な任意関数を記憶することができる。例としてF(d)を一定値として、G(r)のみを使用すれば円形のブル−ムを表現することができる。またG(r)およびF(d)を適当な曲線でテ−ブル化することにより、楕円形状のブル−ム描画が可能となる。以上から本発明では少ないレンダリング情報から多様な形状を表現可能とする。
(A)式における2点間の距離計算や2点が結ぶ直線方向とフレアベクトルとの内積cosθはグレア回路内に実装することもできるが、通常、光反射計算回路に含まれており、2点間の距離や内積計算は乗算器、加減算器および平方根回路で構成されるが詳細は本発明の範囲ではない。In the present invention, three of the polygon, the glare emission point coordinate value, and the flare vector are defined as glare generation variables. The distance from the light emitting point to the drawing point (polygon interpolation point or rendering point) is used to determine the bloom or halo, and the flare is determined from the direction cosine formed by the linear direction connecting the two variables and the flare vector. To do. This relationship is shown in equation (A).
Figure 2006195938
In equation (A), the distance between the rendering point and the glare emission center point is r, and the direction cosine formed by the linear direction connecting the light emission point to the rendering point and the flare vector is cos θ. Here, in the present invention, a RAM having the distance r and the direction cosine cos θ as input addresses is provided, and the RAM has G (r) in the equation (1) with the distance r as a variable, and the direction cosine cos θ as a variable. The function value of S (cos θ) in the equation (2) is converted into a table and stored. By multiplying the distance r shown in equation (3) by the sin θ obtained from S (cos θ) in equation (2) and the sin θ obtained as a result of this, and again giving d in equation (3) as the RAM address. (4) Equation is obtained. Further, equation (1) and equation (4) are multiplied to obtain equation (5). Ip in equation (5) is the glare luminance at the rendering point. Here, the RAM table can be used by physically sharing the address of one RAM. The same applies to the multiplier. K 0 to k 2 represent coefficients.
In the present invention, the function values of the expressions (1), (2) and (4) are stored in the RAM, while the expressions (3) and (5) are obtained by calculating the output value obtained by the RAM by a multiplier. is there. Equation (A) is a function G (r) that attenuates as the distance r from the rendering point to the generation point increases, and F (d) that decreases as the distance d from the rendering point to the flare line increases. Expressed as a product. Equation (1) is used for drawing a bloom, and equation (5) is used for drawing a flare line. Each coefficient adjusts the gradient of brightness. If the distance r of the exponent part -k 1 r in the equation (1) is replaced with Rr, Gr, and Br, G (r) corresponding to the three primary colors can be drawn. This shows a halo-picture. Here, R, G, and B are arbitrary distances from the light emission center point. As is clear from the equation (1), even if the polygon provided by the graphics engine is a quadrangle, a circular luminance distribution is obtained. The flare has a linear luminance distribution along the flare vector line.
On the other hand, since G (r) and F (d) in the formula (A) are generated as a table, a nonlinear arbitrary function can be stored. For example, if F (d) is a constant value and only G (r) is used, a circular bloom can be expressed. Further, by rendering G (r) and F (d) with a suitable curve, it is possible to draw an elliptical bloom. As described above, in the present invention, various shapes can be expressed from a small amount of rendering information.
The distance calculation between the two points in equation (A) and the inner product cos θ between the straight line connecting the two points and the flare vector can be mounted in the glare circuit, but are usually included in the light reflection calculation circuit. The distance between points and the inner product calculation are constituted by a multiplier, an adder / subtracter and a square root circuit, but the details are not within the scope of the present invention.

以上から本発明では、視点座標系でのレンダリングにおいて、物体の輝度が一定の明るさを超える場合、レンダリング点の座標値、輝度および識別子のそれぞれの情報をレジスタファイルを設けて、これに記憶する手段と、レジスタファイルに前記情報を記憶する際、すでに記憶されているレジスタファイル内の識別子を比較し、識別子が一致する場合には、前記情報とレジスタファイル内の輝度とを積算する手段と、前記レジスタファイルにはxおよびy座標の最大および最小値を、またz座標値は視点に最も近い値を記憶する記憶域を設け、前記レジスタファイル内のz値と前記レンダリング点のz値を比較し、前記レンダリング点のz値が視点に近い場合には前記レジスタファイルのz値を前記レンダリング点のz値に置き換えると共に、前記レンダリング点のxおよびy座標の最大・最小値と前記レジスタファイル内の座標値との比較を行って、前記レンダリング点の座標値が最大あるいは最小値となる場合には該当する前記レジスタファイル記憶域の座標値を更新する手段と、前記識別子が不一致の場合には、レンダリング点の座標値、輝度および識別子を、前記レジスタファイルの新たな記憶域にそれぞれ書き込む手段と、レンダリング終了後、前記レジスタファイルの輝度、xおよびy座標の最大・最小値を順次読み出すと共に、前記レジスタファイルのz値とzバッファのz値との比較を行い、前記レジスタファイルのz値がより視点に近い場合は、前記最大・最小値で囲まれる面積の中心点を原点として、前記読み出した輝度強度に比例したグレアを発生する手段と、前記zバッファのz値より遠方にある場合には、グレアを描画しないそれぞれの手段と、前記レジスタファイルから読み出したxおよびy座標の最大・最小値から面積を求める手段と、前記面積が所定の大きさを超え、且つ、前記zバッファのz値との比較の結果、zバッファのz値よりも遠方にある場合、前記最大・最小座標値の領域内に複数のサンプリング点を設ける手段と、前記それぞれのサンプリング点毎に前記zバッファのz値との比較を行い、前方あるいは後方のそれぞれのサンプリング点数の比率からグレア強度を決定する手段と、前記レジスタファイルから読み出した輝度の強度に比例した大きさのフレアを描画する手段として、フレア原点、フレアベクトルおよびフレアベクトルを囲むポリゴンを定義し、前記ポリゴンに定義された頂点座標値からポリゴンを内挿補間し内挿補間点を得る手段と、前記内挿補間点と前記フレア原点間の距離、およびフレア原点とポリゴン内挿補間点を結ぶ方向ベクトルと前記フレアベクトルとがなす方向余弦をそれぞれ求める手段と、RAMを設け、前記RAMには前記距離と方向余弦を変数とする減衰関数値と、前記内挿補間点とフレアベクトルとの距離を求める関数値を記憶して、前記距離と方向余弦を入力アドレスとして前記それぞれの関数値を読み出した後、乗算器および加減算器を用いてフレアおよびフレア周辺の輝度を決定するそれぞれの手段をもつことを特徴とする。  As described above, in the present invention, when the luminance of the object exceeds a certain level in the rendering in the viewpoint coordinate system, each of the coordinate value, luminance, and identifier information of the rendering point is provided and stored in the register file. Means and, when storing the information in the register file, compares the identifiers in the register file already stored, and if the identifiers match, means for integrating the information and the luminance in the register file; The register file is provided with a storage area for storing the maximum and minimum values of the x and y coordinates and the z coordinate value closest to the viewpoint, and the z value in the register file is compared with the z value of the rendering point. If the z value of the rendering point is close to the viewpoint, the z value of the register file is replaced with the z value of the rendering point. If the maximum and minimum values of the x and y coordinates of the rendering point are compared with the coordinate values in the register file, and the coordinate value of the rendering point is the maximum or minimum value, the corresponding register file Means for updating the coordinate value of the storage area, means for writing the coordinate value, luminance and identifier of the rendering point in a new storage area of the register file if the identifiers do not match; When the luminance of the register file, the maximum and minimum values of the x and y coordinates are sequentially read out, the z value of the register file is compared with the z value of the z buffer, and the z value of the register file is closer to the viewpoint A method of generating glare proportional to the read luminance intensity with the center point of the area surrounded by the maximum and minimum values as the origin. And each means that does not draw glare if it is far from the z value of the z buffer, means for obtaining an area from the maximum and minimum values of x and y coordinates read from the register file, and the area Means for providing a plurality of sampling points in the region of the maximum / minimum coordinate values when a predetermined size is exceeded and the result of comparison with the z value of the z buffer is far from the z value of the z buffer And a means for comparing the z value of the z buffer for each sampling point and determining the glare intensity from the ratio of the number of sampling points in the front or rear, and the intensity of the luminance read from the register file. As a means for drawing a flare having a proportional size, a flare origin, a flare vector, and a polygon surrounding the flare vector are defined, and the polygon Means for interpolating a polygon from the vertex coordinate values defined in the process to obtain an interpolation point, a distance between the interpolation point and the flare origin, and a direction vector connecting the flare origin and the polygon interpolation point And a RAM for obtaining a direction cosine formed by the flare vector and the flare vector, and a RAM for obtaining a damping function value having the distance and the direction cosine as variables, and a distance between the interpolation point and the flare vector. The function value is stored, the distance and the direction cosine are used as input addresses, the respective function values are read out, and then the flare and the brightness around the flare are determined using a multiplier and an adder / subtractor. Features.

本発明の回路によって、夜景や車のヘッドライトのようなグレア現象を、実時間で表示出きると共に、光源の強度や環境条件に応じてグレアの表現を変化させることが可能となる。  With the circuit of the present invention, a glare phenomenon such as a night view or a car headlight can be displayed in real time, and the expression of glare can be changed according to the intensity of the light source and environmental conditions.

本発明の技術はLSI、プログラマブル論理回路等への実装あるいはIP(Intelligent Property)の形態で実施され、コンピュ−タグラフィックス映像生成プロセッサとして応用される。  The technology of the present invention is implemented in an LSI, a programmable logic circuit or the like or implemented in the form of IP (Intelligent Property), and is applied as a computer graphics video generation processor.

本発明の実施例を以下に説明する。図1は本発明のグレア発生領域記憶回路で、グレア発生点座標値および輝度を記憶するための回路を示す。図1においてシェ−ダ−10はポリゴン頂点に定義された3次元座標値、テキスチャ−座標値、法線、光源入射角、視野角などを内挿補間して得た情報から内挿補間点の輝度を決定する回路である。内挿補間点の輝度Ipは、環境光Ieと輝度比較器11で大小比較する。前記輝度Ipは反射光の場合は拡散および鏡面反射の和であり、光源の場合は光源輝度となる。これら輝度と環境光との差分絶対値Icが所定の大きさを超えた場合、識別子一致検出回路12において内挿補間点のIDsとレジスタファイル14に記憶されたIDdと一致検出を行う。IDが一致した場合、最大最小計算回路13ではレジスタファイル14から、すでに記憶されたXおよびY軸の最大・最小値とZ軸の最大値(視点に最も近い値)を受け、これら座標値とシェ−ダ−側から入力する(X,Y,Z)値とからそれぞれ大小を比較する。シェ−ダ−から入力する新座標値(X,Y,Z)がレジスタファイルの最大・最小値と比較して最大あるいは最小のいずれかとなる場合は、該当する値を入れ替えてレジスタファイルを更新する。Z座標値は最大となる方をレジスタファイルに記憶する。すなわち最大最小計算回路13には、レジスタファイルからのXおよびY座標の最大・最小値およびZ座標最大値と、シェ−ダ−入力からの座標値とを比較し、値を置き換えるための4つの減算器とマルチプレクサを実装している。一方、IDが一致しない場合は、新たにX、Y、Z、IDおよび輝度差分値Icをレジスタファイル14に記憶する。この場合最大最小値の両ビットフィ−ルドには初期値としてX、Y値をそれぞれに記憶する。レジスタファイル容量は、例えば32ワ−ドとすれば、32座標点のグレア発生領域を記憶できる。1ワ−ドにはX,Y座標の最大・最小値、Z最大座標値、識別子および輝度のビットフィ−ルドで構成し、X,Y座標値の範囲を11ビット、Z座標値を32ビット、識別子を8ビット、輝度の範囲を10ビットとすれば、1ワ−ドは94ビットとなる。  Examples of the present invention will be described below. FIG. 1 shows a glare generation area storage circuit of the present invention, which is a circuit for storing the glare generation point coordinate value and the luminance. In FIG. 1, a shader 10 indicates the interpolation interpolation point from the information obtained by interpolating the three-dimensional coordinate value, texture coordinate value, normal line, light source incident angle, viewing angle, etc., defined at the polygon vertex. This is a circuit for determining luminance. The luminance Ip at the interpolation point is compared with the ambient light Ie by the luminance comparator 11. The luminance Ip is the sum of diffusion and specular reflection in the case of reflected light, and the light source luminance in the case of a light source. When the difference absolute value Ic between the luminance and the ambient light exceeds a predetermined magnitude, the identifier coincidence detection circuit 12 performs coincidence detection with the IDs of the interpolation point and the IDd stored in the register file 14. When the IDs match, the maximum / minimum calculation circuit 13 receives the already stored maximum / minimum values of the X and Y axes and the maximum value of the Z axis (value closest to the viewpoint) from the register file 14, The magnitudes are compared from the (X, Y, Z) values input from the shader side. If the new coordinate value (X, Y, Z) input from the shader is either maximum or minimum compared to the maximum / minimum value of the register file, the corresponding value is replaced and the register file is updated. . The register with the maximum Z coordinate value is stored in the register file. That is, the maximum / minimum calculation circuit 13 compares the maximum and minimum values of the X and Y coordinates and the maximum value of the Z coordinate from the register file with the coordinate values from the shader input, and replaces the values. A subtractor and multiplexer are implemented. On the other hand, if the IDs do not match, X, Y, Z, ID, and the luminance difference value Ic are newly stored in the register file 14. In this case, the X and Y values are stored as initial values in both the maximum and minimum bit fields. If the register file capacity is 32 words, for example, a glare occurrence area of 32 coordinate points can be stored. One word is composed of the maximum and minimum values of the X and Y coordinates, the maximum Z coordinate value, the identifier and the bit field of the luminance, the range of the X and Y coordinate values is 11 bits, the Z coordinate value is 32 bits, If the identifier is 8 bits and the luminance range is 10 bits, 1 word is 94 bits.

本発明ではグレア発生点が同一の識別子をもつポリゴン上にある場合には、それが面積的に広がっていても一つの発生源として扱う。よって発生点が複数分布し、面状となる場合に対応してX,Yの最大・最小値を記憶している。この最大・最小値からグレア面の大きさが判断できる。前記Icが所定の値を超えた場合、シェ−ダ−から与えられるIDsが、レジスタファイル14に登録済みか否かを比較する。すでに同一のIDが登録されていれば、一致したIDレジスタがもつレジスタファイルの物理アドレスを読み出し、これをレジスタファイル14に与えて、記憶された輝度Irを読み出し、前記IpとIeとの差分値Icとを加算器15で加算し、加算値Σ(Ic+Ir)をレジスタファイル14に記憶する。一方、シェ−ダ−からのIDsがレジスタファイル14に存在しない場合には、レジスタファイルのIDビットフィ−ルドに新規に登録すると同時にレジスタファイル用アドレスを割り振り、グレア発生点座標値と輝度Ic(Ir=0とする)を、割り振られたアドレスのレジスタファイル14に記憶する。  In the present invention, when the glare generation point is on a polygon having the same identifier, it is handled as one generation source even if it is spread over the area. Therefore, the maximum and minimum values of X and Y are stored in correspondence with a case where a plurality of generation points are distributed and become planar. The size of the glare surface can be determined from the maximum and minimum values. When Ic exceeds a predetermined value, it is compared whether or not IDs given from the shader have been registered in the register file 14. If the same ID has already been registered, the physical address of the register file of the matched ID register is read, this is given to the register file 14, the stored luminance Ir is read, and the difference value between Ip and Ie Ic is added by the adder 15 and the addition value Σ (Ic + Ir) is stored in the register file 14. On the other hand, if the IDs from the shader do not exist in the register file 14, they are newly registered in the ID bit field of the register file, and at the same time, an address for the register file is allocated, and the glare occurrence point coordinate value and the luminance Ic (Ir = 0) is stored in the register file 14 of the allocated address.

すべてのレンダリングが終了した時点で、レジスタファイル14に記憶したXおよびYの最大・最小座標値、Z最大値および輝度の合計値をそれぞれ読み出す。通常この読み出しは視野変換を担っているグラフィックスエンジンと呼ばれるプロセッサが1ワ−ド毎に行う。読み出された座標値から、XおよびY領域の大きさを最大・最小値から調べる。所定の範囲以内の場合は、描画プロセスで通常記憶されている画像デ−タとそのZ値を記憶したzバッファから、前記レジスタファイルから読み出したXおよびYの中心座標点でアクセスし、このz値とレジスタファイルのz最大値とを比較する(この処理はグラフィックスエンジンのソフトウエアで行うため回路は図示していない)。前記zバッファのz値の方が大きい場合には、そのグレア発生点を無視し、次のレジスタファイルの情報の読み出しを行う。一方、レジスタファイルのz最大値がzバッファのz値より大きければ、前記XおよびY座標中心点をグレア発生点とする。グレアの形状は前記輝度の合計値から決定した4角形からなるポリゴンを定義し、これを内挿補間する。すなわち輝度合計値が大きければ、ポリゴンサイズを大きくする。さらに輝度が所定の大きさを超えた場合は、フレアベクトルをグレア関数演算回路(図2)に与える。ポリゴンの生成とフレアベクトルは前記グラフィックスエンジンで決定する。グラフィックスエンジンには輝度の大きさに対応したポリゴンサイズテ−ブルを、またフレアベクトルは輝度の大きさに対応した乱数の分布値と周期値テ−ブルをあらかじめ作成しておき、これらテ−ブルを参照する。フレアベクトルは前記分布と周期値からグレア発生点を原点とする乱数を発生し、原点と乱数点を結ぶ直線をフレアラインとして、フレアベクトルを生成する。前記グラフィックスエンジンではフレアベクトルの大きさ(原点と乱数点を結ぶ直線距離)を取り巻くポリゴンも生成し、これをレンダラ−に出力する。レジスタファイル14からの読み出しはすべての登録したIDを終了した時点で終了する。  When all the renderings are completed, the maximum and minimum coordinate values of X and Y, the Z maximum value, and the total luminance value stored in the register file 14 are read out. Normally, this reading is performed for each word by a processor called a graphics engine which is responsible for visual field conversion. From the read coordinate values, the sizes of the X and Y regions are checked from the maximum and minimum values. If it is within the predetermined range, access is made at the X and Y center coordinate points read from the register file from the z buffer storing the image data and its Z value normally stored in the drawing process. The value is compared with the maximum z value of the register file (this processing is performed by the graphics engine software, so the circuit is not shown). If the z value of the z buffer is larger, the glare occurrence point is ignored and the next register file information is read. On the other hand, if the z maximum value of the register file is larger than the z value of the z buffer, the X and Y coordinate center points are set as glare occurrence points. For the shape of glare, a polygon consisting of a quadrangle determined from the total value of the luminance is defined, and this is interpolated. That is, if the total luminance value is large, the polygon size is increased. Further, when the luminance exceeds a predetermined magnitude, the flare vector is given to the glare function calculation circuit (FIG. 2). Polygon generation and flare vectors are determined by the graphics engine. The graphics engine creates a polygon size table corresponding to the luminance level, and the flare vector creates a random number distribution value and a periodic value table corresponding to the luminance level in advance. Refer to the bull. The flare vector generates a random number having a glare generation point as an origin from the distribution and the periodic value, and generates a flare vector using a straight line connecting the origin and the random point as a flare line. The graphics engine also generates a polygon surrounding the size of the flare vector (a linear distance connecting the origin and the random number point), and outputs this to the renderer. Reading from the register file 14 ends when all registered IDs are completed.

図2は本発明のグレアレンダリング回路の関数演算回路を示す。前記グラフィックスエンジンはグレア発生点とポリゴンサイズを決定すると、発生点座標値とポリゴン座標値、およびフレアベクトルをレンダラ−に送る。レンダリング回路ではポリゴン頂点座標値からポリゴン内部を内挿補間して全てのポリゴン内部の座標値を求める(内挿補間回路は一般的な回路であるため図2には示していない)。図2において距離計算回路20はフレアベクトルF、グレア発生点座標(X0,Y0,Z0)と内挿補間点(Xr,Yr,Zr)を受ける。距離計算回路20は、それぞれの座標成分毎に差分してそれを2乗加算した後、平方根をとり2点間の距離と、またグレア発生点と内挿補間点を結ぶ方向RとフレアベクトルFとが成す方向余弦を求める演算回路からなる。この処理は式(B)による。

Figure 2006195938
よって、距離計算回路20には加減算器、乗算器および平方根回路を実装する。距離rおよびcosθがマルチプレクサ21で選択された後、これらの値を関数テ−ブル22のアドレスとして与える。関数テ−ブルはRAMで構成され、前記(A)式による関数値を記憶する。関数テ−ブルから出力する情報は、1例としてFIG. 2 shows a function operation circuit of the glare rendering circuit of the present invention. When the graphics engine determines the glare generation point and the polygon size, it sends the generation point coordinate value, the polygon coordinate value, and the flare vector to the renderer. The rendering circuit interpolates the inside of the polygon from the polygon vertex coordinate values to obtain coordinate values inside all the polygons (the interpolation circuit is a general circuit and is not shown in FIG. 2). In FIG. 2, the distance calculation circuit 20 receives the flare vector F, the glare occurrence point coordinates (X0, Y0, Z0), and the interpolation point (Xr, Yr, Zr). The distance calculation circuit 20 calculates the difference for each coordinate component, adds the squares thereof, and then calculates the distance between the two points, the direction R connecting the glare occurrence point and the interpolation point, and the flare vector F. And an arithmetic circuit for obtaining a direction cosine. This processing is based on equation (B).
Figure 2006195938
Therefore, an adder / subtracter, a multiplier, and a square root circuit are mounted on the distance calculation circuit 20. After the distance r and cos θ are selected by the multiplexer 21, these values are given as the addresses of the function table 22. The function table is composed of a RAM and stores a function value according to the equation (A). The information output from the function table is an example

項の式(A)にあるG(r)およびS(cosθ)である。すなわち関数テ−ブルにはrおよびcosθを入力として(A)式の(1)および(2)式が記憶されている。入力cosθによって関数テ−ブルから出力されたS(cosθ)は、距離計算回路20で求めた距離rとマルチプレクサ25を通して乗算器23で乗算され、(A)式内での(3)式を実行する。この乗算結果dは、さらにマルチプレクサ21に戻されて再び関数テ−ブルに与えられ(A)式のF(d)を出力する。このF(d)はレジスタ24に一時的に記憶される。次に関数テ−ブル入力には再びrが与えられ(A)式の(1)式を出力し、レジスタ24に記憶されたF(d)とマルチプレクサ25を通して関数テ−ブル出力のG(r)とが、乗算器23で乗算され(A)式内の(5)式Ipを得る。以上のように関数テ−ブル、レジスタ、マルチプレクサおよび乗算器のそれぞれを用いて漸化式的な計算を行うことによって、わずかな回路で多様な情報を処理することができる。G (r) and S (cos θ) in the term formula (A). That is, the function table stores equations (1) and (2) of equation (A) with r and cos θ as inputs. S (cos θ) output from the function table by the input cos θ is multiplied by the distance r obtained by the distance calculation circuit 20 and the multiplier 23 through the multiplexer 25, and the expression (3) in the expression (A) is executed. To do. The multiplication result d is further returned to the multiplexer 21 and again given to the function table to output F (d) in the equation (A). This F (d) is temporarily stored in the register 24. Next, r is given to the function table input again to output the expression (1) of the expression (A), and F (d) stored in the register 24 and the function table output G (r) through the multiplexer 25. ) Is multiplied by the multiplier 23 to obtain the expression (5) in the expression (A). As described above, by performing the recursive calculation using each of the function table, register, multiplexer, and multiplier, various information can be processed with a few circuits.

本発明の回路をIP(Intelligent Property)として、あるいはグラフィックスプロセッサLSIチップに実装することによって映像製作、CGゲ−ム等のシステムにおいて実時間描画を可能とする。  By mounting the circuit of the present invention as an IP (Intelligent Property) or on a graphics processor LSI chip, real-time drawing can be performed in a system such as video production or CG game.

図1「本発明のグレア発生領域記憶回路を示す。」
図2「本発明の関数演算回路を示す。」
FIG. 1 “Shows the glare generation area storage circuit of the present invention.”
FIG. 2 "shows a function operation circuit of the present invention."

符号の説明Explanation of symbols

図1
10 シェ−ダ−
11 輝度比較器
12 識別子一致検出回路
13 最大最小値計算回路
14 レジスタファイル
15 加算回路
図2
20 距離計算回路
21 マルチプレクサ
22 関数テ−ブル
23 乗算器
24 レジスタ
25 マルチプレクサ
FIG.
10 Shader
11 luminance comparator 12 identifier coincidence detection circuit 13 maximum / minimum value calculation circuit 14 register file 15 addition circuit diagram 2
20 Distance Calculation Circuit 21 Multiplexer 22 Function Table 23 Multiplier 24 Register 25 Multiplexer

Claims (4)

コンピュ−タグラフィックスによるグレア映像描画回路に関し、レンダリング点と環境光とのコントラスト比が所定の大きさを超えた場合、レンダリング点の座標値を記憶し、レンダリング終了後、前記記憶したレンダリング点を発生源としてグレアを生成する手段において、レンダリング点の座標値、輝度およびレンダリング物体の識別子のそれぞれの情報を記憶するレジスタファイルを設け、前記情報を前記レジスタファイルに記憶する際、前記識別子と前記レジスタファイルにすでに記憶されている識別子とを比較し、識別子が一致する場合にはレンダリング点の輝度とレジスタファイルの輝度とを加算した値を前記レジスタファイルに記憶する手段と、前記レジスタファイルにはxy座標の最大および最小値を、またz座標値は視点に最も近い値を記憶する記憶域を設け、レンダリング点のxy座標値とレジスタファイル内の前記最大・最小座標値との比較を行って、レンダリング点の座標値が最大あるいは最小値となる場合には該当するレジスタファイル記憶域を更新する手段と、レンダリング点とレジスタファイル内のz値とを比較し、レンダリング点のz値が視点に近い場合には、レジスタファイルのz値をレンダリング点のz値に置き換える手段と、前記識別子が不一致の場合には、レンダリング点の座標値、輝度および識別子を、前記レジスタファイルの新たな記憶域にそれぞれ書き込む手段と、レンダリング終了後、前記レジスタファイルのxy座標の最大・最小値と輝度を順次読み出すと共に、最大・最小値で囲まれる面領域の中心点に対してレジスタファイルのz値とzバッファのz値との比較を行い、レジスタファイルのz値がより視点に近い場合は、前記読み出した輝度強度に比例したグレアを発生する手段と、zバッファのz値より遠方にある場合には、グレアの描画を行わないそれぞれの手段をもってグレア映像を描画するグレアレンダリング回路。  When the contrast ratio between the rendering point and the ambient light exceeds a predetermined size, the coordinate value of the rendering point is stored in the glare video rendering circuit by computer graphics. In the means for generating glare as a generation source, a register file is provided for storing information of each of the coordinate value of the rendering point, the luminance, and the identifier of the rendering object, and when storing the information in the register file, the identifier and the register Means for comparing the identifiers already stored in the file, and if the identifiers match, means for storing in the register file a value obtained by adding the luminance of the rendering point and the luminance of the register file; The maximum and minimum coordinate values, and the z coordinate value is the viewpoint When a storage area for storing the closest value is provided, and the xy coordinate value of the rendering point is compared with the maximum / minimum coordinate value in the register file, the coordinate value of the rendering point becomes the maximum or minimum value. The means for updating the corresponding register file storage area is compared with the rendering point and the z value in the register file, and if the z value of the rendering point is close to the viewpoint, the z value of the register file is used as the z value of the rendering point. When the identifier does not match, the means for writing the coordinate value, the luminance and the identifier of the rendering point respectively in a new storage area of the register file, and after the rendering, the xy coordinate of the register file The maximum / minimum values and luminance are read sequentially, and the register area is set to the center point of the surface area surrounded by the maximum / minimum values If the z value of the register file is closer to the viewpoint, the means for generating the glare proportional to the read luminance intensity and the z value of the z buffer are compared. A glare rendering circuit that draws a glare video by each means that does not draw glare when it is far away. 請求項1の回路において、前記レジスタファイルに記憶したxy座標の最大・最小値からグレア発光源の面領域を求める手段と、前記面領域が所定の大きさを超え、且つ、レジスタファイルのz値が前記zバッファのz値との比較の結果、zバッファのz値よりも遠方にある場合、前記面領域内に複数のサンプリング点を設け、それぞれのサンプリング点毎に前記zバッファのz値との比較を行い、前方および後方に位置するそれぞれのサンプリング点数の割合からグレア強度を決定する手段からなるグレアレンダリング回路。  2. The circuit according to claim 1, wherein means for determining a surface area of a glare light source from the maximum and minimum values of xy coordinates stored in the register file, the surface area exceeds a predetermined size, and the z value of the register file As a result of the comparison with the z value of the z buffer, a plurality of sampling points are provided in the surface region, and the z value of the z buffer is set for each sampling point. And a glare rendering circuit comprising means for determining the glare intensity from the ratio of the number of sampling points located at the front and rear. 請求項1の回路において、前記レジスタファイルから読み出した輝度の強度に対応した大きさのフレアを描画する手段として、フレア原点、フレアベクトルおよびフレアベクトルを囲むポリゴンを定義してグレアレンダリング回路に与え、前記グレアレンダリング回路においては、ポリゴンの頂点座標値から内挿補間点を得る手段と、前記内挿補間点と前記フレア原点間の距離、およびフレア原点とポリゴン内挿補間点に向かう方向ベクトルと、前記与えられたフレアベクトルとがなす方向余弦をそれぞれ求める手段と、RAMテ−ブルを設け、前記距離と方向余弦を変数とする減衰関数値と、前記内挿補間点とフレアベクトル間の距離を求めるための関数値をそれぞれ記憶して、前記距離および方向余弦を入力アドレスとして前記それぞれの関数値を読み出した後、乗算器および加減算器を用いてフレアおよびフレア周辺の輝度を決定するそれぞれの手段をもつグレアレンダリング回路。  The circuit according to claim 1, wherein the flare origin, the flare vector, and a polygon surrounding the flare vector are defined and applied to the glare rendering circuit as means for drawing a flare having a size corresponding to the intensity of the luminance read from the register file. In the glare rendering circuit, means for obtaining an interpolation point from the vertex coordinate value of a polygon, a distance between the interpolation point and the flare origin, and a direction vector toward the flare origin and the polygon interpolation point, Means for obtaining each direction cosine formed by the given flare vector, a RAM table, a damping function value having the distance and direction cosine as variables, and a distance between the interpolation point and the flare vector are provided. Each of the function values for obtaining is stored, and the distance and the direction cosine are input addresses, respectively. After reading the function value, glare rendering circuit having respective means for determining the brightness of the surrounding flare and the flare using multiplier and adder-subtracter. 請求項1および2の回路において、前記フレア原点を前記xy座標の最大・最小値が示す領域の中心点とする手段と、前記領域の中心点がzバッファのz値よりも遠方にある場合には、前記領域内で複数定義したそれぞれのサンプリング点のうち、前方に位置するサンプリング点をフレア原点とする手段と、前記フレアベクトルは前記輝度の大きさに対応した分布域および周期をもつ乱数により決定する手段と、前記輝度の大きさに加え、グレア発生源の物体属性に応じてフレアベクトルの長さや数を決定するために、前記レジスタファイルの識別子を参照するそれぞれの手段からなるグレアレンダリング回路。  3. The circuit according to claim 1, wherein the flare origin is a center point of a region indicated by the maximum / minimum values of the xy coordinates, and the center point of the region is farther from the z value of the z buffer. Means that a sampling point located in front of a plurality of sampling points defined in the region is set as a flare origin, and the flare vector is a random number having a distribution region and a period corresponding to the magnitude of the luminance. A glare rendering circuit comprising means for determining and a means for referring to the identifier of the register file to determine the length and number of flare vectors according to the object attribute of the glare source in addition to the magnitude of the luminance .
JP2005033611A 2005-01-13 2005-01-13 Glare rendering circuit Pending JP2006195938A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005033611A JP2006195938A (en) 2005-01-13 2005-01-13 Glare rendering circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005033611A JP2006195938A (en) 2005-01-13 2005-01-13 Glare rendering circuit

Publications (1)

Publication Number Publication Date
JP2006195938A true JP2006195938A (en) 2006-07-27

Family

ID=36801961

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005033611A Pending JP2006195938A (en) 2005-01-13 2005-01-13 Glare rendering circuit

Country Status (1)

Country Link
JP (1) JP2006195938A (en)

Similar Documents

Publication Publication Date Title
AU2014363213B2 (en) Image rendering of laser scan data
US8648856B2 (en) Omnidirectional shadow texture mapping
US8896602B2 (en) Apparatus and method for finding visible points in a point cloud
US6690372B2 (en) System, method and article of manufacture for shadow mapping
JP7344267B2 (en) Importance sampling to determine light map
US8115783B2 (en) Methods of and apparatus for processing computer graphics
GB2571656B (en) Graphics rendering using directional representations of lighting at probe positions within a scene
US8207968B1 (en) Method and apparatus for irradiance caching in computing indirect lighting in 3-D computer graphics
US10593096B2 (en) Graphics processing employing cube map texturing
US7400325B1 (en) Culling before setup in viewport and culling unit
US6791544B1 (en) Shadow rendering system and method
US8698799B2 (en) Method and apparatus for rendering graphics using soft occlusion
US7292239B1 (en) Cull before attribute read
CN116091684B (en) WebGL-based image rendering method, device, equipment and storage medium
CN109658494B (en) Shadow rendering method in three-dimensional visual graph
KR20100075351A (en) Method and system for rendering mobile computer graphic
JP2006195938A (en) Glare rendering circuit
JP2007141196A (en) Polygon/silhouette line/anti-aliasing circuit
JP2009163469A (en) Global illumination circuit
JP2952585B1 (en) Image generation method
JP2006113909A (en) Image processor, image processing method and image processing program
JP2010157170A (en) Omnidirectional shadow projection renderer
JP2008152742A (en) Determination circuit for polygon brightness reference point
WO2008065661A2 (en) Apparatus and method for finding visible points in a point cloud
JP2007052758A (en) Ambient light mapping circuit