JPWO2007034822A1 - Image generation device - Google Patents

Image generation device Download PDF

Info

Publication number
JPWO2007034822A1
JPWO2007034822A1 JP2007536518A JP2007536518A JPWO2007034822A1 JP WO2007034822 A1 JPWO2007034822 A1 JP WO2007034822A1 JP 2007536518 A JP2007536518 A JP 2007536518A JP 2007536518 A JP2007536518 A JP 2007536518A JP WO2007034822 A1 JPWO2007034822 A1 JP WO2007034822A1
Authority
JP
Japan
Prior art keywords
image
pixel
information
edge
unit
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
JP2007536518A
Other languages
Japanese (ja)
Other versions
JP4794565B2 (en
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.)
Digital Media Professionals Inc
Original Assignee
Digital Media Professionals Inc
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 Digital Media Professionals Inc filed Critical Digital Media Professionals Inc
Priority to JP2007536518A priority Critical patent/JP4794565B2/en
Publication of JPWO2007034822A1 publication Critical patent/JPWO2007034822A1/en
Application granted granted Critical
Publication of JP4794565B2 publication Critical patent/JP4794565B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation

Landscapes

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

Abstract

本発明は,ベクタ画像及び複数画像レイヤーを含む最終画像を生成に当たり,画像生成処理を一元に行うことができる画像生成装置を提供することを目的とする。本発明の画像生成装置(1)は,エッジ情報格納メモリ(2)と,ベクタデータ格納メモリ(3)と,エッジ情報生成部(4)と,レイヤ画像格納メモリ(5)と,前記エッジ情報格納メモリに格納されたエッジ情報を用いて,ベクタ形式で定義された画像の内部を塗りつぶす際に,前記レイヤ画像格納メモリに格納された背景に関する画像情報及びレイヤごとの画像情報を読み出して,ベクタ形式の画像及びレイヤごとの画像情報を重ね合わせ,ピクセル単位の画像処理演算を行うことによりピクセル単位の画像合成を行う画像合成部(6)と,結果画像格納メモリ(7)とを具備する。An object of the present invention is to provide an image generation apparatus capable of performing image generation processing in a unified manner when generating a final image including a vector image and a plurality of image layers. The image generation apparatus (1) of the present invention includes an edge information storage memory (2), a vector data storage memory (3), an edge information generation unit (4), a layer image storage memory (5), and the edge information. When painting the inside of the image defined in the vector format using the edge information stored in the storage memory, the image information on the background and the image information for each layer stored in the layer image storage memory are read out, An image composition unit (6) that performs image composition in units of pixels by superimposing the format image and image information for each layer and performing image processing operations in units of pixels, and a result image storage memory (7) are provided.

Description

本発明は,コンピュータグラフィックスを生成する画像生成装置などに関する。より詳しく説明すると,本発明は,レンダリングを行った後の塗りつぶしの際に,同時に画像合成をも行うことができる画像生成装置や,そのような画像生成装置を用いたコンピュータなどに関する。   The present invention relates to an image generation apparatus that generates computer graphics. More specifically, the present invention relates to an image generation apparatus that can simultaneously perform image composition at the time of painting after rendering, a computer using such an image generation apparatus, and the like.

近年,コンピュータグラフィックスシステム(画像生成装置)は,アーケード版ゲーム機やデスクトップ型コンピュータのような据え置き型の装置のみならず,携帯電話,携帯可能なゲーム機などにも搭載され,使用されている。   In recent years, computer graphics systems (image generation devices) have been installed and used not only in stationary devices such as arcade game machines and desktop computers, but also in mobile phones and portable game machines. .

特に,携帯式のデバイスに搭載される画像生成装置は,従来の据え置き型の装置に用いられたものに比べ,物理的なサイズが小さいことや,消費電力が小さいことなどが要求される。さらも,そのような制約のもとで効果的な画像を生成することが期待される。   In particular, an image generation apparatus mounted on a portable device is required to have a smaller physical size and lower power consumption than those used in a conventional stationary apparatus. Furthermore, it is expected to generate an effective image under such restrictions.

従来のコンピュータグラフィックスにおける画像生成方法は,まずエッジ部分をレンダラーによりレンダリングする。図19(a)は,レンダリング後の画像例である。すなわち,レンダラーが,図19(a)に示すようなレンダリング画像を得た後に,たとえば画面上部からラインごとにスキャンして画像内部の所定の領域を塗りつぶす。図19(b)は,塗りつぶし後の画像の例を示す図である。図19(b)のように,図19(a)に示されたレンダリング画像のうち所定の領域には塗りつぶしが行われる。その後,画面に表示される画像は,背景画像,背景より前に来る画像など様々なレイヤの画像が含まれているので,それぞれのレイヤの画像に対し,幾何演算や色補正などの処理を行った後,陰面消去処理などの処理を行い,表示画像を合成する。   In a conventional image generation method in computer graphics, an edge portion is first rendered by a renderer. FIG. 19A shows an example of an image after rendering. That is, after the renderer obtains a rendering image as shown in FIG. 19 (a), the renderer scans line by line from the upper part of the screen, for example, and fills a predetermined area inside the image. FIG. 19 (b) is a diagram showing an example of an image after painting. As shown in FIG. 19 (b), a predetermined area of the rendered image shown in FIG. 19 (a) is filled. After that, the images displayed on the screen include images of various layers such as background images and images that come before the background. Therefore, processing such as geometric calculation and color correction is performed on each layer image. After that, processing such as hidden surface removal processing is performed to synthesize the display image.

図20は,ある携帯電話に表示される画像の各レイヤ画像の例を示す図である。図20に示されるように,携帯電話などに表示される画像は,背景画像(レイヤ0),ヘッダー画像(レイヤ1),フッター画像(レイヤ2),ビデオ画像(レイヤ3,4),及びゲーム等のコンピュータグラフィックス画像(レイヤ5)などが組み合わさって形成されている。そして,従来は,レンダリングを行った後に,塗りつぶしを行い,その後に画像合成を行っていた。   FIG. 20 is a diagram illustrating an example of each layer image of an image displayed on a certain mobile phone. As shown in FIG. 20, images displayed on a mobile phone or the like include a background image (layer 0), a header image (layer 1), a footer image (layer 2), a video image (layers 3 and 4), and a game. Are formed by combining computer graphics images (layer 5). Conventionally, after rendering, painting is performed, and then image composition is performed.

近年,コンピュータにおけるユーザーインターフェイス表示にも画像生成装置は用いられており,やはり消費電力を小さくする要請のもとで,迅速かつ高度に画像を生成することが要求されている。   In recent years, image generation apparatuses have also been used for user interface display in computers, and it is required to generate images quickly and highly under the demand for reducing power consumption.

このような要求のもと,特開2003−143419号公報(下記特許文献1)には,高速かつ正確な色補正・色変換を行うため,複数の図形データに応じて描画すべき描画データを中間データとして保存するデータ保存部と,保存された中間データから各図形データを取り出して,図形データ毎に,所定のスキャンライン幅づつエッジを取得するエッジ生成手段,生成された各図形データ間のエッジの重なりを排除する図形重なり排除処理手段,重なりを排除したエッジ列に対し,ソート処理を行うエッジソート処理手段,を有するレンダリング部と,ソート処理されたエッジ列の各エッジにおける描画色に対して色補正・色変換を行う色補正・色変換部とを備える画像処理装置が開示されている。   Under such a requirement, Japanese Patent Laid-Open No. 2003-143419 (Patent Document 1) discloses drawing data to be drawn in accordance with a plurality of graphic data in order to perform high-speed and accurate color correction / color conversion. A data storage unit that stores intermediate data, an edge generation unit that extracts each graphic data from the stored intermediate data, and obtains an edge with a predetermined scan line width for each graphic data, and between each generated graphic data For the drawing color at each edge of the sorted edge sequence and the rendering unit having the graphic overlap elimination processing means for eliminating the overlap of edges, the edge sort processing means for performing the sort processing on the edge sequence from which the overlap has been eliminated, An image processing apparatus including a color correction / color conversion unit that performs color correction / color conversion is disclosed.

特開2003−143419号公報に記載される発明は,ベクタ情報を用いて,ラスタライズされたデータについて色補正・色変換を最小部分について適合するものである。ベクタ画像生成処理とともに色補正・色変換処理を同時に行うものであるが,ベクタ画像生成及び画像合成処理を一元的に行うものではない。   The invention described in Japanese Patent Application Laid-Open No. 2003-143419 is adapted to perform color correction / color conversion on rasterized data with respect to a minimum portion using vector information. Although color correction / color conversion processing is performed simultaneously with vector image generation processing, vector image generation and image synthesis processing are not performed in a centralized manner.

また,特開2000−172870号公報には,ポリゴンエッジをライン描画によらず,三角形描画アルゴリズムのみにより指定幅でかすれなく描画するため,「三次元物体をポリゴンモデルにしたがって描画する画像処理装置において,ホストPCからジオメトリ処理した三角形単位の頂点座標値や色値とともに,エッジ幅及びエッジモードを,描画コントローラのレジスタに格納する。プロセッサはPCから三角形描画起動フラグを書き込まれると起動し,描画命令をバスコントローラ経由で受け取り,レジスタのデータを読みだして三角形描画演算(ピクセル展開)を行い,結果をフレームバッファ,Zバッファに書き込む。このとき,三角形単位にエッジモードレジスタを参照し,0であれば三角形の水平スパン毎に始点と終点を求めて通常の三角形内全体の塗りつぶしを行う。一方,モードが1であれば,エッジ幅分の終点を求めて,上記始点からエッジ幅終点までの塗りつぶしを行う。」といった技術が開示されている。   Further, Japanese Patent Laid-Open No. 2000-172870 discloses that an image processing apparatus that draws a three-dimensional object according to a polygon model in order to draw a polygon edge with a specified width without using line drawing but only with a triangle drawing algorithm. The edge width and edge mode are stored in the register of the drawing controller along with the vertex coordinate value and color value of the triangle unit geometrically processed from the host PC.The processor starts when the triangle drawing start flag is written from the PC, and draw command Is read via the bus controller, the data in the register is read, the triangle drawing operation (pixel expansion) is performed, and the result is written to the frame buffer and Z buffer. Normal triangle for each horizontal span of the triangle It performs overall fill. Meanwhile, if the mode is 1, seeking the end of the edge width of, performs filling from the start point to the edge width end point. "Such techniques have been disclosed.

この特開2000−172870号公報に開示された発明は,三角形アルゴリズムによって,ベクタ情報を用いてラインを描画することを実現するものであり,ベクタ画像生成処理時に画像合成を行うものではない。   The invention disclosed in Japanese Patent Laid-Open No. 2000-172870 implements drawing a line using vector information by a triangle algorithm, and does not perform image composition during vector image generation processing.

また,特開2000−69275号公報には,マーカー処理等で編集領域を指定して,境界線で囲われた領域を塗りつぶす処理を行う際,予め境界を決める黒線画像に対してエッジ強調を行い,境界付近の黒画像濃度を高めることで,境界部における黒線画像と塗りつぶし画像との隙間を狭くし,境界線付近の白抜けを分かり難くする技術が開示されている。しかし,この技術は,ベクタ形式画像を生成する際のアンチエイリアス技術についてのものであり,ベクタ画像生成処理時に画像合成を行うものではない。   Japanese Patent Laid-Open No. 2000-69275 discloses edge enhancement for a black line image that predetermines a boundary when specifying an editing area by marker processing or the like and performing a process of filling the area surrounded by the boundary line. A technique is disclosed in which the black image density near the boundary is increased to narrow the gap between the black line image and the filled image at the boundary and make it difficult to recognize the white spots near the boundary. However, this technique relates to an anti-aliasing technique for generating a vector format image, and does not perform image composition during vector image generation processing.

また,特許公開平6−68271号公報には,ベクトル画像のエッジで囲まれた領域を塗りつぶす時に,アンチ・エイリアシング処理の効果を低下させることなく,その処理時間を短縮させるための技術が開示されているが,ベクタ画像生成処理時に画像合成を行うものではない。   Japanese Patent Application Laid-Open No. 6-68271 discloses a technique for shortening the processing time without reducing the effect of the anti-aliasing processing when the region surrounded by the edge of the vector image is filled. However, image synthesis is not performed during vector image generation processing.

また,特開2000−172858号公報には,ベクタデータをエッジデータに変換するにあたり,システムに負荷をかけず,複雑な図形にも対応できるようにするため,描画の対象となる図形の輪郭を表すベクタデータとスキャンラインとの交点となる座標を認識する描画部2と,描画部2により認識される座標を示す座標データを記憶する描画座標格納部L1と,描画部2により認識される座標数を1スキャンライン毎に算出するベクタ数判定手段3と,この算出された座標数が,予め描画座標格納部L1に割り当てられた1スキャンラインの座標データ数を越えるか否かを判断し,越えると判断された数の座標データを記憶可能な描画座標格納部L2を確保する制御部5と,確保された記憶領域に座標データを記憶させるエッジリスト領域切り替え手段6とを備える画像生成装置が開示されている。   In addition, Japanese Patent Laid-Open No. 2000-172858 discloses a contour of a graphic to be drawn in order to be able to deal with complex graphics without imposing a load on the system when converting vector data into edge data. A drawing unit 2 for recognizing coordinates that are intersections of vector data to be represented and a scan line, a drawing coordinate storage unit L1 for storing coordinate data indicating coordinates recognized by the drawing unit 2, and coordinates recognized by the drawing unit 2 A vector number determining means 3 for calculating the number for each scan line, and determining whether or not the calculated coordinate number exceeds the number of coordinate data of one scan line previously assigned to the drawing coordinate storage unit L1, A control unit 5 that secures a drawing coordinate storage unit L2 capable of storing the number of coordinate data determined to exceed, and an edge list region switching unit that stores coordinate data in the secured storage region An image generation device comprising stage 6 is disclosed.

この技術では,ベクタグラフィックス画像を生成する際の,エッジ部分を生成する技術に関するもので,ベクタ形式の画像を形成する際に,画像合成を行うものではない。   This technique relates to a technique for generating an edge portion when generating a vector graphics image, and does not perform image composition when forming a vector format image.

これまで説明した従来の画像生成装置は,ベクタ画像生成部と画像合成部とが分かれ,これらの処理をハードウェアか,又はハードウェアとソフトウェアとの組み合わせにより実現していた。しかし,このようにベクタ画像生成部と画像合成部とが分割された画像生成装置では,最終的な画像を生成するに当たり,ベクタ画像を生成した後,生成されたばかりの画像と背景等その他画像の合成が必要となり,無駄なメモリアクセスが発生することで,性能・消費電力面で無駄が生じるとともに,これらの同期制御が必要となり,システムが複雑化する。   In the conventional image generation apparatus described so far, the vector image generation unit and the image synthesis unit are separated, and these processes are realized by hardware or a combination of hardware and software. However, in the image generation apparatus in which the vector image generation unit and the image composition unit are divided in this way, when generating the final image, after generating the vector image, the image just generated and the background and other images Combining is required, and unnecessary memory access occurs, resulting in waste in terms of performance and power consumption. In addition, these synchronous controls are required, which complicates the system.

特開2003−143419号公報Japanese Patent Laid-Open No. 2003-143419

本発明は,上述のような課題に鑑みてなされたものであり,ベクタ画像及び複数画像レイヤーを含む最終画像を生成に当たり,画像生成処理を一元に行うことができる画像生成装置を提供することを目的とする。   The present invention has been made in view of the above-described problems, and provides an image generation apparatus capable of performing image generation processing in an integrated manner when generating a final image including a vector image and a plurality of image layers. Objective.

本発明は,ベクタ画像及び複数画像レイヤーを含む最終画像を生成に当たり,画像生成処理を一元に行うことができるので性能が高く消費電力が低く,さらにシステムの複雑度を抑えた画像生成装置を提供することを上記とは別の目的とする。   The present invention provides an image generation apparatus that can perform a single image generation process when generating a final image including a vector image and a plurality of image layers, so that performance is high, power consumption is low, and system complexity is reduced. This is a different purpose from the above.

本発明は,基本的には,エッジ情報を用いて画像の内部を塗りつぶす際に,前記レイヤ画像格納メモリに格納されたレイヤごとの画像情報を読み出して,ベクタ形式の画像及びレイヤごとの画像情報を重ね合わせ,ピクセル単位の画像処理演算を別々ではなく同時に行うことにより,性能が高く,消費電力が低くかつ,システムの複雑度を最小限に抑えた画像生成システムを提供することができるという知見に基づくものである。   The present invention basically reads out image information for each layer stored in the layer image storage memory when the inside of the image is painted using edge information, and obtains a vector format image and image information for each layer. The knowledge that it is possible to provide an image generation system with high performance, low power consumption, and minimal system complexity by performing image processing operations in units of pixels simultaneously instead of separately. It is based on.

すなわち,本発明の第1の側面に係る画像生成装置(1)は,あるピクセルにおけるポリゴンのエッジ情報を格納するためのエッジ情報格納メモリ(2)と,ベクトル形式のラスタライズ結果を格納するためのベクタデータ格納メモリ(3)と,前記ベクタデータ格納メモリに格納されたベクトル形式のラスタライズ結果に基づいて,前記ラスタライズ結果である画像のエッジ情報を前記エッジ情報格納メモリに書き出す処理を行うためのエッジ情報生成部(4)と,少なくとも背景に関する画像情報及び複数のレイヤごとの画像情報を格納するレイヤ画像格納メモリ(5)と,前記エッジ情報格納メモリに格納されたエッジ情報を用いて,ベクタ形式で定義された画像の内部を塗りつぶす際に,前記レイヤ画像格納メモリに格納された背景に関する画像情報及びレイヤごとの画像情報を読み出して,ベクタ形式の画像及びレイヤごとの画像情報を重ね合わせ,ピクセル単位の画像処理演算を行うことによりピクセル単位の画像合成を行う画像合成部(6)と,前記画像合成部が合成した画像を記憶するための結果画像格納メモリ(7)とを具備する画像生成装置に関する。   That is, the image generation device (1) according to the first aspect of the present invention includes an edge information storage memory (2) for storing polygon edge information in a certain pixel, and a vector format rasterization result. Based on the vector data storage memory (3) and the rasterization result in the vector format stored in the vector data storage memory, an edge for performing processing for writing the edge information of the image as the rasterization result to the edge information storage memory An information generation unit (4), a layer image storage memory (5) for storing at least background-related image information and image information for each of a plurality of layers, and edge information stored in the edge information storage memory, When painting the inside of the image defined in (3), the image information and record related to the background stored in the layer image storage memory. An image composition unit (6) that reads out image information for each ear, superimposes image information in a vector format and image information for each layer, and performs image processing operation in units of pixels to perform image synthesis in units of pixels; and The present invention relates to an image generation apparatus including a result image storage memory (7) for storing an image synthesized by a synthesis unit.

本発明の第1の側面に係る画像生成装置は,ベクタ形式の画像処理とレイヤごとの画像情報を重ねる処理とを同時に行う画像合成部(6)を具備するので,上記の画像生成装置によれば,ベクタ形式の画像を形成する際に,画像合成を行うことができる。   The image generation apparatus according to the first aspect of the present invention includes an image composition unit (6) that simultaneously performs image processing in vector format and processing for superimposing image information for each layer. For example, when a vector image is formed, image composition can be performed.

上記のように,ベクタ形式の画像処理とレイヤごとの画像情報を重ねる処理とは,基本的には異なる処理であり,従来技術のように,別々に処理を行うのが技術常識であるが,本発明の画像生成装置のように,あえてそれらの処理を画像合成部(6)で同時に行うことで,メモリアクセス量が削減され,その結果消費電力も削減できることとなる。   As described above, vector-format image processing and layer-by-layer image information overlap are basically different processes, and it is common knowledge to perform separate processing as in the prior art. Like the image generation apparatus of the present invention, the processing is simultaneously performed by the image composition unit (6), so that the memory access amount is reduced, and as a result, the power consumption can be reduced.

また,それらの処理をひとつの画像合成部(6)で行うことで,システムが複雑になる事態を防止できる。特に,画像合成部(6)をハードウェアで実装した場合,回路素子を共有することで,ハードウェア規模が大きくなる事態を効果的に防止できることとなる。また,ソフトウェア制御を複雑なものとすれば,システムが複雑になる事態を効果的に防止できるとともに,迅速な処理を達成できることとなる。   In addition, by performing these processes with a single image composition unit (6), it is possible to prevent the system from becoming complicated. In particular, when the image composition unit (6) is implemented by hardware, sharing the circuit elements can effectively prevent a situation where the hardware scale increases. In addition, if software control is complicated, it is possible to effectively prevent a situation where the system is complicated and to achieve quick processing.

本発明によれば,ベクタ画像及び複数画像レイヤーを含む最終画像を生成に当たり,画像生成処理を一元に行うことができる画像生成装置を提供することができる。   According to the present invention, it is possible to provide an image generation apparatus capable of performing image generation processing in a unified manner when generating a final image including a vector image and a plurality of image layers.

本発明によれば,ベクタ画像及び複数画像レイヤーを含む最終画像を生成に当たり,画像生成処理を一元に行うことができるので性能が高く消費電力が低く,さらにシステムの複雑度を抑えた画像生成装置を提供することができる。   According to the present invention, when generating a final image including a vector image and a plurality of image layers, it is possible to perform image generation processing in a unified manner, so that an image generating apparatus that has high performance, low power consumption, and reduced system complexity. Can be provided.

本発明の好ましい態様では,特定のピクセルに関する単一光源又は複数光源のシェーディング結果に表層色を合成するためのブレンド係数を組み合わせ,少なくとも2層分のブレンド後の表層色を生成し,単一色に合成する。これにより,本発明によれば,特定のピクセル以外のピクセルへの入射光を考慮しなくとも,輝度計算などを行うことができるので,高速に陰影などを演算することができるコンピュータグラフィックス用の多層反射シェーディング画像生成方法及びコンピュータなどを提供できる。   In a preferred embodiment of the present invention, a blending factor for synthesizing the surface color is combined with the shading result of a single light source or a plurality of light sources for a specific pixel to generate a surface color after blending for at least two layers, Synthesize. As a result, according to the present invention, luminance calculation can be performed without considering incident light to pixels other than a specific pixel, and therefore, for computer graphics that can calculate shadows and the like at high speed. A multilayer reflection shading image generation method and a computer can be provided.

図1は,本発明の第1の側面に係る画像生成装置の基本構成を示す概略図である。FIG. 1 is a schematic diagram showing a basic configuration of an image generation apparatus according to the first aspect of the present invention. 図2は,本発明の第1の側面に係る画像生成装置により得られる画像の流れを説明するための図である。図2(a)は,ベクタデータ格納メモリに格納されるベクトル形式で定義されたポリゴンの形状データの例を示す図である。図2(b)は,エッジ情報格納メモリに書き込まれた,ラスタライズ結果である画像のエッジ情報を含むデータの例を示す図である。図2(c)は,画像合成部で合成され,結果画像格納メモリ(7)に格納された合成画像の例を示す図である。FIG. 2 is a diagram for explaining the flow of an image obtained by the image generation apparatus according to the first aspect of the present invention. FIG. 2 (a) is a diagram showing an example of polygon shape data defined in the vector format stored in the vector data storage memory. FIG. 2B is a diagram showing an example of data including edge information of an image as a rasterization result written in the edge information storage memory. FIG. 2 (c) is a diagram showing an example of a synthesized image synthesized by the image synthesis unit and stored in the result image storage memory (7). 図3は,エッジ情報生成部の構成例を示すブロック図である。FIG. 3 is a block diagram illustrating a configuration example of the edge information generation unit. 図4は,画像合成部の構成例を示すブロック図である。FIG. 4 is a block diagram illustrating a configuration example of the image composition unit. 図5は,画像合成部において行われる画像合成の過程を説明するための図である。FIG. 5 is a diagram for explaining the process of image composition performed in the image composition unit. 図6は,本発明の第1の実施形態に係るアンチエイリアス回路のブロック図である。FIG. 6 is a block diagram of the anti-aliasing circuit according to the first embodiment of the present invention. 図7は,あるピクセルにおけるポリゴンのエッジ,及びサンプリングポイントの例を示す図である。FIG. 7 is a diagram illustrating an example of polygon edges and sampling points in a certain pixel. 図8は,あるピクセルにおけるポリゴンのエッジ,及びサンプリングポイントの別の例を示す図である。FIG. 8 is a diagram showing another example of polygon edges and sampling points in a certain pixel. 図9は,あるピクセルにおけるポリゴンのエッジ,及びサンプリングポイントの別の例を示す図である。FIG. 9 is a diagram showing another example of polygon edges and sampling points in a certain pixel. 図10は,あるピクセルにおけるポリゴンのエッジ,及びサンプリングポイントの別の例を示す図である。FIG. 10 is a diagram showing another example of polygon edges and sampling points in a certain pixel. 図11は,本発明の第2の実施形態に係るアンチエイリアス回路のブロック図である。FIG. 11 is a block diagram of an anti-aliasing circuit according to the second embodiment of the present invention. 図12は,本発明における塗りつぶし処理例を説明するためのフローチャートである。FIG. 12 is a flowchart for explaining an example of the painting process in the present invention. 図13は,本発明のある実施態様(コンピュータ)を示すブロック図である。FIG. 13 is a block diagram showing an embodiment (computer) of the present invention. 図14は,本発明のある実施形態(ゲーム機)のブロック図である。FIG. 14 is a block diagram of an embodiment (game machine) according to the present invention. 図15は,本発明のある実施形態(コンピュータグラフィック機能つき携帯電話機)のブロック図である。FIG. 15 is a block diagram of an embodiment of the present invention (a mobile phone with a computer graphic function). 図16は,本発明のある実施形態(ナビゲーションシステム)のブロック図である。FIG. 16 is a block diagram of an embodiment (navigation system) of the present invention. 図17は,パチスロ機の主制御回路361を示すブロック図である。FIG. 17 is a block diagram showing the main control circuit 361 of the pachislot machine. 図18は,パチスロ機の副制御回路を示すブロック図である。FIG. 18 is a block diagram showing a sub control circuit of the pachislot machine. 図19は,レンダリングと塗りつぶしを説明するための図である。図19(a)は,レンダリング後の画像例である。図19(b)は,塗りつぶし後の画像の例を示す図である。FIG. 19 is a diagram for explaining rendering and filling. FIG. 19A shows an example of an image after rendering. FIG. 19 (b) is a diagram showing an example of an image after painting. 図20は,ある携帯電話に表示される画像の各レイヤー画像の例を示す図である。FIG. 20 is a diagram illustrating an example of each layer image of an image displayed on a certain mobile phone.

符号の説明Explanation of symbols

1 画像生成装置
2 エッジ情報格納メモリ
3 ベクタデータ格納メモリ
4 エッジ情報生成部
5 レイヤ画像格納メモリ
6 画像合成部
7 結果画像格納メモリ
DESCRIPTION OF SYMBOLS 1 Image generation apparatus 2 Edge information storage memory 3 Vector data storage memory 4 Edge information generation part 5 Layer image storage memory 6 Image composition part 7 Result image storage memory

[画像生成装置の基本構成と基本動作]
図1は,本発明の第1の側面に係る画像生成装置の基本構成を示す概略図である。図1に示されるように,本発明の第1の側面に係る画像生成装置(1)は,あるピクセルにおけるポリゴンのエッジ情報を格納するためのエッジ情報格納メモリ(2)と,ベクトル形式のラスタライズ結果を格納するためのベクタデータ格納メモリ(3)と,前記ベクタデータ格納メモリに格納されたベクトル形式のラスタライズ結果に基づいて,前記ラスタライズ結果である画像のエッジ情報を前記エッジ情報格納メモリに書き出す処理を行うためのエッジ情報生成部(4)と,少なくとも背景に関する画像情報及び複数のレイヤごとの画像情報を格納するレイヤ画像格納メモリ(5)と,前記エッジ情報格納メモリに格納されたエッジ情報を用いて,ベクタ形式で定義された画像の内部を塗りつぶす際に,前記レイヤ画像格納メモリに格納された背景に関する画像情報及びレイヤごとの画像情報を読み出して,ベクタ形式の画像及びレイヤごとの画像情報を重ね合わせ,ピクセル単位の画像処理演算を行うことによりピクセル単位の画像合成を行う画像合成部(6)と,前記画像合成部が合成した画像を記憶するための結果画像格納メモリ(7)とを具備する。
[Basic configuration and basic operation of image generator]
FIG. 1 is a schematic diagram showing a basic configuration of an image generation apparatus according to the first aspect of the present invention. As shown in FIG. 1, an image generation apparatus (1) according to a first aspect of the present invention includes an edge information storage memory (2) for storing polygon edge information in a certain pixel, and vector format rasterization. Based on the vector data storage memory (3) for storing the result and the rasterization result in the vector format stored in the vector data storage memory, the edge information of the image as the rasterization result is written to the edge information storage memory An edge information generator (4) for performing processing, a layer image storage memory (5) for storing at least image information relating to the background and image information for each of a plurality of layers, and edge information stored in the edge information storage memory When painting the inside of an image defined in vector format, the background image stored in the layer image storage memory is used. An image composition unit (6) that reads out the information and image information for each layer, superimposes the image in vector format and the image information for each layer, and performs image processing for each pixel to perform image composition for each pixel; And a result image storage memory (7) for storing the image synthesized by the image synthesis unit.

図面に従って,上記画像生成装置の基本動作を説明する。図2は,本発明の第1の側面に係る画像生成装置により得られる画像の流れを説明するための図である。図2(a)は,ベクタデータ格納メモリに格納されるベクトル形式で定義されたポリゴンの形状データの例を示す図である。図2(b)は,エッジ情報格納メモリに書き込まれた,ラスタライズ結果である画像のエッジ情報を含むデータの例を示す図である。図2(c)は,画像合成部で合成され,結果画像格納メモリ(7)に格納された合成画像の例を示す図である。   The basic operation of the image generating apparatus will be described with reference to the drawings. FIG. 2 is a diagram for explaining the flow of an image obtained by the image generation apparatus according to the first aspect of the present invention. FIG. 2 (a) is a diagram showing an example of polygon shape data defined in the vector format stored in the vector data storage memory. FIG. 2B is a diagram showing an example of data including edge information of an image as a rasterization result written in the edge information storage memory. FIG. 2 (c) is a diagram showing an example of a synthesized image synthesized by the image synthesis unit and stored in the result image storage memory (7).

エッジ情報格納メモリ(2)が,あるピクセルにおけるポリゴンのエッジ情報を格納する。たとえば,ユーザからの入力により定義されたポリゴンのエッジ情報や,所定の演算に基づいて算出されたポリゴンのエッジ情報が書き込み可能に記憶される。ベクタデータ格納メモリ(3)が,たとえばベクトル形式で定義されたポリゴンの形状データなどを格納する。すなわち,図2(a)に示されるように,ベクタデータ格納メモリ(3)にベクトル形式で定義されたポリゴンの形状データが格納される。なお,図2(a)中,11は,ベクタデータ格納メモリの2次元メモリ空間の例である。ベクタデータ格納メモリ(3)には,ピクセル単位ではなく,ポリゴンの形状に関する座標位置情報及びベジエ自由曲線のような関数で定義されたベクタ形状データ(12)が格納される。   The edge information storage memory (2) stores polygon edge information at a certain pixel. For example, polygon edge information defined by user input and polygon edge information calculated based on a predetermined calculation are stored in a writable manner. A vector data storage memory (3) stores polygon shape data defined in a vector format, for example. That is, as shown in FIG. 2 (a), polygon data defined in vector format is stored in the vector data storage memory (3). In FIG. 2A, 11 is an example of a two-dimensional memory space of the vector data storage memory. The vector data storage memory (3) stores vector shape data (12) defined by functions such as coordinate position information about polygon shapes and Bezier free curves, not in units of pixels.

エッジ情報生成部(4)は,ベクタデータ格納メモリに格納されたベクトル形式の形状データに基づいてラスタライズ処理を行い,前記エッジ情報格納メモリに前記ラスタライズ結果である画像のエッジ情報を書き出す。具体的には,ラスタライズ処理により,ベクトル形状を有するエッジ部分の位置情報や,傾き情報,方向情報などのピクセル情報を求めて,前記エッジ情報格納メモリに記憶される情報を更新する。図2(b)は,エッジ情報格納メモリに書き込まれた,ラスタライズ結果である画像のエッジ情報を含むデータの例を示す図である。なお,図2(b)中,14は,エッジ情報格納メモリの2次元メモリ空間(ピクセルごと)の例である。この例では,ポリゴンのベクタ形状データ(12)をピクセル単位のエッジピクセル(13)に変換し,この情報をエッジ情報格納メモリ(2)に伝える。すると,エッジ情報格納メモリ(2)に格納されるエッジ情報が更新される。   The edge information generation unit (4) performs rasterization processing based on the shape data in the vector format stored in the vector data storage memory, and writes the edge information of the image as the rasterization result in the edge information storage memory. Specifically, pixel information such as position information, inclination information, and direction information of an edge portion having a vector shape is obtained by rasterization processing, and information stored in the edge information storage memory is updated. FIG. 2B is a diagram showing an example of data including edge information of an image as a rasterization result written in the edge information storage memory. In FIG. 2B, 14 is an example of a two-dimensional memory space (for each pixel) of the edge information storage memory. In this example, polygon vector shape data (12) is converted into edge pixels (13) in pixel units, and this information is transmitted to the edge information storage memory (2). Then, the edge information stored in the edge information storage memory (2) is updated.

レイヤ画像格納メモリ(5)は,少なくとも背景に関する画像情報及び複数のレイヤごとの画像情報を格納する。画像合成部(6)が,エッジ情報格納メモリ(2)に格納されたエッジ情報を用いて,ベクタ形式で定義された画像の内部を塗りつぶす際に,前記レイヤ画像格納メモリに格納された背景に関する画像情報及びレイヤごとの画像情報のうちいずれか又は2つ以上の情報を読み出して,ベクタ形式の画像(又は,エッジピクセル(13)などのエッジ情報)及びレイヤごとの画像情報を重ね合わせ,ピクセル単位の画像処理演算を行うことによりピクセル単位の画像合成を行う。結果画像格納メモリ(7)が,画像合成部(6)により合成された画像情報を記憶する。図2(c)は,画像合成部で合成され,結果画像格納メモリ(7)に格納された合成画像の例を示す図である。具体的には,図2(c)に示されるように,画像合成部は,エッジ情報,レイヤ画像格納メモリ(5)に格納されたレイヤ画像情報などを参照し,ベクタ領域の領域塗りつぶしピクセル(15),ベクタ領域のエッジ部分ピクセル(好ましくはアンチエイリアスエッジピクセル)(16),及びレイヤ画像ピクセル(17)を求める。そして,求めた合成画像情報を結果画像格納メモリ(7)へ伝え,結果画像格納メモリ(7)はその情報に基づき格納情報を更新する。その結果,結果画像格納メモリ(7)のメモリ空間(18)には,ピクセルごとにベクタ領域の領域塗りつぶしピクセル(15),アンチエイリアスエッジピクセル(16),及びレイヤ画像ピクセル(17)に分類された合成画像情報が格納されることとなる。以下,各要素について説明する。   The layer image storage memory (5) stores at least image information relating to the background and image information for each of a plurality of layers. When the image composition unit (6) uses the edge information stored in the edge information storage memory (2) to paint the inside of the image defined in the vector format, the image composition unit (6) relates to the background stored in the layer image storage memory. Read out one or more of the image information and image information for each layer, superimpose the vector image (or edge information such as edge pixel (13)) and the image information for each layer, Image synthesis is performed in units of pixels by performing image processing operations in units. The result image storage memory (7) stores the image information synthesized by the image synthesis unit (6). FIG. 2 (c) is a diagram showing an example of a synthesized image synthesized by the image synthesis unit and stored in the result image storage memory (7). Specifically, as shown in FIG. 2 (c), the image composition unit refers to the edge information, the layer image information stored in the layer image storage memory (5), etc. 15), an edge portion pixel (preferably an antialiased edge pixel) (16) of the vector area, and a layer image pixel (17) are obtained. Then, the obtained composite image information is transmitted to the result image storage memory (7), and the result image storage memory (7) updates the storage information based on the information. As a result, the memory space (18) of the result image storage memory (7) was classified into pixel area fill pixels (15), antialiased edge pixels (16), and layer image pixels (17) for each pixel. The composite image information is stored. Each element will be described below.

[画像生成装置]
画像生成装置(1)は,3次元コンピュータグラフィックスなどに用いられるコンピュータシステムや,そのような3次元コンピュータ画像を生成するための回路,チップなどとして実現されるものである。なお,本発明の画像生成装置(1)を構成する各要素は,バスなどで接続され,情報の授受ができるようにされている。
[Image generation device]
The image generation apparatus (1) is realized as a computer system used for three-dimensional computer graphics or the like, a circuit, a chip, or the like for generating such a three-dimensional computer image. Each element constituting the image generating apparatus (1) of the present invention is connected by a bus or the like so that information can be exchanged.

[エッジ情報格納メモリ]
エッジ情報格納メモリ(2)は,あるピクセルにおけるポリゴンのエッジ情報を格納するためのメモリである。このエッジ情報格納メモリは,たとえば,ハードディスク,バッファ,RAMなどの記録装置によって実現される。そして,エッジ情報格納メモリには,たとえば,ユーザからの入力により定義されたポリゴンのエッジ情報や,所定の演算に基づいて算出されたポリゴンのエッジ情報が書き込み可能に記憶される。
[Edge information storage memory]
The edge information storage memory (2) is a memory for storing polygon edge information in a certain pixel. The edge information storage memory is realized by a recording device such as a hard disk, a buffer, or a RAM. In the edge information storage memory, for example, polygon edge information defined by input from the user and polygon edge information calculated based on a predetermined calculation are stored so as to be writable.

[ベクタデータ格納メモリ]
ベクタデータ格納メモリ(3)は,ベクトル形式のポリゴンの形状データを格納するためのメモリである。このベクタデータ格納メモリは,たとえば,ハードディスク,バッファ,RAMなどの記録装置によって実現される。なおベクトル形式のラスタライズ結果は,公知のラスタライズ回路によって求められる情報であり,3次元空間上の点とされるポリゴンの頂点のスクリーン座標系における位置情報によって,対応するフレームバッファアドレスを算出し,又頂点のテクスチャ座標情報から対応するテクスチャテクセル(ピクセル)を取り出すことにより得ることができる。ベクタデータ格納メモリ(3)に記憶される,情報は,たとえばベクトル形式で定義されたポリゴンの形状データがあげられる。好ましくは,エッジ情報格納メモリ(2)には,ピクセルとしてではなく,座標位置情報及び,ベジエ自由曲線のような所定の関数で定義されたベクタ形状データが記憶される。
[Vector data storage memory]
The vector data storage memory (3) is a memory for storing polygonal shape data in vector format. The vector data storage memory is realized by a recording device such as a hard disk, a buffer, or a RAM. The rasterization result in vector format is information obtained by a known rasterization circuit, and the corresponding frame buffer address is calculated from the position information in the screen coordinate system of the vertex of the polygon, which is a point in the three-dimensional space. It can be obtained by extracting the corresponding texture texel (pixel) from the texture coordinate information of the vertex. The information stored in the vector data storage memory (3) is, for example, polygon shape data defined in a vector format. Preferably, the edge information storage memory (2) stores coordinate position information and vector shape data defined by a predetermined function such as a Bezier free curve, not as pixels.

ベクタデータ格納メモリは,好ましくは,情報をストリーム形式データとして格納するものがあげられる。このようなストリーム形式で格納するために,ベクタデータ格納メモリに情報が格納される前にストリームデータ生成回路により,ストリーム形式のデータへと返還されてもよい。情報がストリーム形式で格納されるので,効果的に情報を読み出すことができる。   The vector data storage memory is preferably one that stores information as stream format data. In order to store in such a stream format, the data may be returned to stream format data by the stream data generation circuit before the information is stored in the vector data storage memory. Since the information is stored in a stream format, the information can be read out effectively.

[エッジ情報生成部]
エッジ情報生成部(4)は,ベクタデータ格納メモリに格納されたベクトル形式の形状データに基づいてラスタライズ処理を行い,前記ラスタライズ結果である画像のエッジ情報を前記エッジ情報格納メモリに書き出すための装置である。
[Edge information generator]
An edge information generation unit (4) is a device for performing rasterization processing based on vector shape data stored in a vector data storage memory, and writing out the edge information of the image as the rasterization result to the edge information storage memory It is.

図3は,エッジ情報生成部の構成例を示すブロック図である。図3に示されるように,エッジ情報生成部(4)として,ベクタデータ格納メモリ(3)から読み出されたベクタ形状データ(12)のコマンド解析するとともに,エッジ情報生成部(4)全体の処理を制御するためのコマンド制御部(21)と,前記コマンド制御部(21)の制御信号に従って,ベクタデータ格納メモリに格納されたベクトル形式の形状データを用いてラスタライズ処理を行うためのラスタライズ部(22)と,前記コマンド制御部(21)の制御信号に従って,ベクタデータ格納メモリに格納されたベクトル形式の形状データを用いてエッジ情報を求めるためのエッジ情報演算部(23)と,エッジ情報格納メモリ(2)に情報を伝え,エッジ情報格納メモリに格納されるエッジ情報を更新するためのエッジメモリ制御部(24),とを具備するものがあげられる。   FIG. 3 is a block diagram illustrating a configuration example of the edge information generation unit. As shown in FIG. 3, the edge information generation unit (4) performs command analysis of the vector shape data (12) read from the vector data storage memory (3), and the entire edge information generation unit (4). A command control unit (21) for controlling processing, and a rasterization unit for performing rasterization processing using shape data in vector format stored in a vector data storage memory in accordance with a control signal of the command control unit (21) (22), an edge information calculation unit (23) for obtaining edge information using shape data in the vector format stored in the vector data storage memory according to the control signal of the command control unit (21), and edge information And an edge memory control unit (24) for transmitting information to the storage memory (2) and updating the edge information stored in the edge information storage memory.

そして,コマンド制御部(21)は,ベクタデータ格納メモリ(3)から読み出されたベクタ形状データ(12)のコマンド解析するとともに,エッジ情報生成部(4)全体の処理を制御する。この処理はハードウェアによって行われてもよい。また,ソフトウェアとハードウェアとが協働して処理を行ってもよい。具体的には,コマンド制御部(21)として機能するCPUなどが,入力情報に基づいてコマンドを解析し,必要に応じメインメモリなどに格納された制御プログラムを読み出し,読み出した制御プログラムの制御アルゴリズムに従って,入力された情報を用いて所定の処理を行うようにすればよい。なお,各情報は,適宜バッファなどのメモリに格納され,適宜更新されるようにすればよい。もちろん,コマンド制御部(21)のみならず,エッジ情報生成部(4)全体として,上記したようなハードウェアとソフトウェアとの協働による処理がなされてもよいし,ハードウェアのみによる処理がなされてもよい。   The command control unit (21) analyzes the command of the vector shape data (12) read from the vector data storage memory (3) and controls the entire processing of the edge information generation unit (4). This process may be performed by hardware. In addition, software and hardware may cooperate to perform processing. Specifically, a CPU or the like functioning as a command control unit (21) analyzes a command based on input information, reads a control program stored in a main memory or the like as necessary, and a control algorithm for the read control program Thus, the predetermined information may be performed using the input information. Each information may be appropriately stored in a memory such as a buffer and updated as appropriate. Of course, not only the command control unit (21) but also the edge information generation unit (4) as a whole may be processed by the cooperation of hardware and software as described above, or only by the hardware. May be.

ラスタライズ部(22)は,コマンド制御部(21)の制御信号に従って,ベクタデータ格納メモリに格納されたベクトル形式の形状データを用いてラスタライズ処理を行う。より具体的には,ラスタライズ部(22)は,解析されたコマンドのうち座標及び関数のデータを用い,エッジ情報を生成する。   The rasterizing unit (22) performs rasterizing processing using the vector format shape data stored in the vector data storage memory in accordance with the control signal of the command control unit (21). More specifically, the rasterizing unit (22) generates edge information using coordinate and function data in the analyzed command.

エッジ情報演算部(23)は,前記コマンド制御部(21)の制御信号に従って,ベクタデータ格納メモリに格納されたベクトル形式の形状データを用いてエッジ情報を求める。より具体的には,エッジ情報演算部(23)は,前記ラスタライズ部(22)で求められたラスタライズされたエッジ情報を受取り,そのエッジ情報に,後の塗りつぶし処理にて必要な位置,傾き,方向,アンチエイリアス情報のうちいずれか又は2つ以上に関する情報を付加したエッジ情報とする。   The edge information calculation unit (23) obtains edge information using the shape data in the vector format stored in the vector data storage memory in accordance with the control signal of the command control unit (21). More specifically, the edge information calculation unit (23) receives the rasterized edge information obtained by the rasterization unit (22), and the edge information includes the position, inclination, Edge information to which information related to one or more of direction and anti-aliasing information is added.

エッジメモリ制御部(24)は,エッジ情報演算部(23)からエッジ情報を受取り,エッジ情報格納メモリ(2)にエッジ情報を伝え,エッジ情報格納メモリに格納されるエッジ情報を更新する。このようにして,図2(b)に示されるようなエッジ情報を含むデータがエッジ情報格納メモリに格納されることとなる。   The edge memory control unit (24) receives the edge information from the edge information calculation unit (23), transmits the edge information to the edge information storage memory (2), and updates the edge information stored in the edge information storage memory. In this way, data including edge information as shown in FIG. 2 (b) is stored in the edge information storage memory.

なお,エッジ情報生成部が,ベクタデータ格納メモリに格納されたベクトル形式のラスタライズ結果に基づいて,エッジ情報格納メモリにラスタライズ結果である画像のエッジ情報,ピクセルごとの透過度,ピクセルのエッジ部分における水平方向及び垂直方向に関するラスタライズ進行符号,及びラスタライズ時のエッジ部分の重なり回数のいずれか又は2つ以上を求め,その求めた結果をエッジ情報格納メモリに書き出するものは本発明の好ましい実施態様である。   Note that the edge information generation unit uses the vector format rasterization result stored in the vector data storage memory, and the edge information storage memory stores the edge information of the image as the rasterization result, the transparency for each pixel, and the edge portion of the pixel. In the preferred embodiment of the present invention, one or two or more of the rasterization progress codes in the horizontal direction and the vertical direction and the number of overlapping edge portions at the time of rasterization are obtained and the obtained results are written to the edge information storage memory. is there.

ピクセルごとの透過度を用いれば,画像合成の際に,画像合成部(6)の制御に基づいて,半透明処理などを効果的に行うことができる。ピクセルのエッジ部分における水平方向及び垂直方向に関するラスタライズ進行符号があれば,後の画像合成の際に,画像合成部(6)が,ライン単位の情報やブロック単位の情報を,ライン単位ごと又はブロック単位ごとに容易に読み出すことができることとなる。さらに,ラスタライズ時のエッジ部分の重なり回数を用いれば,後の画像合成の際に,画像合成部(6)が塗りつぶしを行うかどうかの判定を容易に行うことができることとなる。   By using the transparency for each pixel, it is possible to effectively perform translucent processing or the like based on the control of the image composition unit (6) during image composition. If there is a rasterization progression code for the horizontal and vertical directions at the edge of the pixel, the image composition unit (6) will send the line unit information or block unit information for each line unit or block during the subsequent image composition. It can be easily read out for each unit. Furthermore, if the number of overlapping edge portions at the time of rasterization is used, it is possible to easily determine whether or not the image composition unit (6) will perform painting in the subsequent image composition.

[レイヤ画像格納メモリ]
レイヤ画像格納メモリ(5)は,少なくとも背景に関する画像情報及び複数のレイヤごとの画像情報を格納するための装置である。レイヤ画像格納メモリ(5)は,たとえば,ハードディスク,バッファ,RAMなどの記録装置によって実現される。なお,レイヤ画像格納メモリ(5)に格納される画像が,z座標や,各レイヤに対する奥行き方向の位置を示すインデックスと共に格納されるものは,視点から見た位置が明確となるので,画像を合成する際にカリング処理などを容易に行うことができるため,好ましい。
[Layer image storage memory]
The layer image storage memory (5) is a device for storing at least image information relating to the background and image information for each of a plurality of layers. The layer image storage memory (5) is realized by a recording device such as a hard disk, a buffer, or a RAM. Note that if the image stored in the layer image storage memory (5) is stored together with the z-coordinate and the index indicating the position in the depth direction for each layer, the position viewed from the viewpoint becomes clear. This is preferable because a culling process can be easily performed at the time of synthesis.

[画像合成部]
画像合成部(6)は,エッジ情報格納メモリ(2)に格納されたエッジ情報を用いて,ベクタ形式で定義された画像の内部を塗りつぶす際に,前記レイヤ画像格納メモリに格納された背景に関する画像情報及びレイヤごとの画像情報のうちいずれか又は2つ以上の情報を読み出して,ベクタ形式の画像(又は,エッジピクセル(13)などのエッジ情報)及びレイヤごとの画像情報を重ね合わせ,ピクセル単位の画像処理演算を行うことによりピクセル単位の画像合成を行うための装置である。ピクセル単位の画像処理演算とは,たとえば,画像を合成するための演算処理を意味し,たとえば,ピクセル単位での塗りつぶし演算などがあげられる。
[Image composition part]
The image composition unit (6) uses the edge information stored in the edge information storage memory (2) to fill the interior of the image defined in the vector format and relates to the background stored in the layer image storage memory. Read out one or more of the image information and image information for each layer, superimpose the vector image (or edge information such as edge pixel (13)) and the image information for each layer, It is an apparatus for performing image synthesis in units of pixels by performing unit image processing operations. The pixel-based image processing calculation means, for example, calculation processing for synthesizing an image, and includes, for example, a pixel-based filling calculation.

図4は,画像合成部の構成例を示すブロック図である。図4に示されるように,画像合成部(6)として,重ねあわせ処理,ピクセル単位のピクセル演算,又は半透明処理その他のラスタオペレーションのうち少なくともひとつ以上を行い,ピクセル単位での塗りつぶし処理を行うための塗りつぶし処理部(31)と,前記塗りつぶし処理部(31)が求めた演算結果をブロックごと又はラインごとに格納するラインメモリ(32)と,結果画像格納メモリ(7)に情報を伝え,結果画像格納メモリ(7)に格納される結果画像情報を更新するための結果メモリ制御部(33)と,画像合成部(6)における演算を制御する図示しない画像合成制御部と,を具備するものがあげられる。   FIG. 4 is a block diagram illustrating a configuration example of the image composition unit. As shown in FIG. 4, the image composition unit (6) performs at least one of overlay processing, pixel-by-pixel calculation, translucent processing, and other raster operations, and performs pixel-by-pixel filling processing. Information to the fill processing unit (31), the line memory (32) for storing the calculation result obtained by the fill processing unit (31) for each block or line, and the result image storage memory (7), A result memory control unit (33) for updating the result image information stored in the result image storage memory (7), and an image synthesis control unit (not shown) for controlling operations in the image synthesis unit (6) Things can be raised.

画像合成制御部は,画像合成部(6)における演算を制御する。この処理はハードウェアによって行われてもよい。ハードウェアにより実現した場合は,処理が高速になり,消費電力が軽減するので好ましい。また,ソフトウェアとハードウェアとが協働して処理を行ってもよい。具体的には,画像合成制御部として機能するCPUなどが,入力情報に基づいてコマンドを解析し,必要に応じメインメモリなどに格納された制御プログラムを読み出し,読み出した制御プログラムの制御アルゴリズムに従って,入力された情報を用いて所定の処理を行うようにすればよい。なお,各情報は,適宜バッファなどのメモリに格納され,適宜更新されるようにすればよい。   The image composition control unit controls the calculation in the image composition unit (6). This process may be performed by hardware. Realization by hardware is preferable because the processing becomes faster and power consumption is reduced. In addition, software and hardware may cooperate to perform processing. Specifically, a CPU or the like that functions as an image composition control unit analyzes a command based on input information, reads a control program stored in a main memory or the like as necessary, and according to a control algorithm of the read control program, A predetermined process may be performed using the input information. Each information may be appropriately stored in a memory such as a buffer and updated as appropriate.

図5は,画像合成部において行われる画像合成の過程を説明するための図である。画像合成制御部に,エッジ情報格納メモリ(2)に格納されたエッジ情報,及びレイヤ画像格納メモリに格納された背景に関する画像情報及びレイヤごとの画像情報のうちいずれか又は2つ以上の情報が入力される。画像合成制御部は,好ましくは,それらの情報を1ライン単位,又はブロック単位で読み出すよう指令を出し,そのようにして読み出された単位ごとに下記の処理を行う。画像合成制御部は,それら入力された情報をもとに必要な情報を分析して,各種演算処理を行うよう制御指令を出す。   FIG. 5 is a diagram for explaining the process of image composition performed in the image composition unit. In the image composition control unit, one or more of the edge information stored in the edge information storage memory (2), the image information related to the background stored in the layer image storage memory, and the image information for each layer is stored. Entered. The image composition control unit preferably issues a command to read out the information in units of one line or block, and performs the following processing for each unit thus read out. The image composition control unit analyzes necessary information based on the input information and issues a control command to perform various arithmetic processes.

塗りつぶし処理部(31)は,たとえば,上記制御指令に基づいて,エッジ情報格納メモリ(2)に格納されたエッジ情報,及びレイヤ画像格納メモリに格納された背景に関する画像情報及びレイヤごとの画像情報のうちいずれか又は2つ以上の情報を用いて,それらの情報の重ねあわせ処理,ピクセル単位のピクセル演算,又は半透明処理その他のラスタオペレーションのうち少なくともひとつ以上を行うことにより,ピクセル単位での塗りつぶし処理を行う。図5に示されるように,塗りつぶし処理部(31)には,たとえば,エッジ情報格納メモリ(2)に格納されたエッジ情報,及びレイヤ画像格納メモリに格納された背景に関する画像情報及びレイヤごとの画像情報のうちいずれか又は2つ以上の情報が,それぞれライン単位又はブロック単位で入力される。塗りつぶし処理部(31)は,ピクセル単位のピクセル演算などを行う。得られた情報は,ラインメモリ(32)に伝えられ,格納される。なお,レイヤ画像格納メモリから,各画像情報のz座標又は各レイヤに対する奥行き方向の位置を示すインデックスを読み出して,それらを分析することにより,ピクセル単位での画像の上下関係を把握して,ピクセル単位での塗りつぶし画像(色)を決定することは本発明の好ましい実施態様である。   The fill processing unit (31), for example, based on the control command, the edge information stored in the edge information storage memory (2), the background-related image information stored in the layer image storage memory, and the image information for each layer By using at least one of the two or more pieces of information and performing at least one of the overlapping processing, pixel-by-pixel calculation, translucent processing, and other raster operations, Perform fill processing. As shown in FIG. 5, the fill processing unit (31) includes, for example, the edge information stored in the edge information storage memory (2), the background image information stored in the layer image storage memory, and the layer information for each layer. One or two or more pieces of image information are input in units of lines or blocks, respectively. The fill processing unit (31) performs pixel calculation in units of pixels. The obtained information is transmitted to the line memory (32) and stored. It should be noted that by reading out the z-coordinate of each image information or an index indicating the position in the depth direction with respect to each layer from the layer image storage memory, and analyzing them, the top-to-bottom relationship of the image in pixel units is grasped, and the pixel It is a preferred embodiment of the present invention to determine the fill image (color) in units.

ラインメモリ(32)は,たとえば,上記制御指令に基づいて,塗りつぶし処理部(31)が求めた演算結果を格納する。ラインメモリ(32)は,好ましくは,ブロックごと又はラインごとに格納する。また,たとえば,上記制御指令に基づいて,1ライン単位,またはブロック単位分の処理が終わった場合,ラインメモリ(32)に格納された情報に基づいて,結果メモリ制御部(33)に対して結果画像書き出しの要請を行い,ラインメモリ(32)に格納された情報を単位ごとに読み出して,結果メモリ制御部(33)へ伝える。この際にラインメモリには,ピクセル単位で,ベクタ領域の領域塗りつぶしピクセル(15),ベクタ領域のエッジ部分ピクセル(好ましくはアンチエイリアスエッジピクセル)(16),及びレイヤ画像ピクセル(17)に分類され,格納される。   For example, the line memory (32) stores the calculation result obtained by the paint processing unit (31) based on the control command. The line memory (32) is preferably stored for each block or line. Also, for example, when processing for one line unit or block unit is completed based on the control command, the result memory control unit (33) is controlled based on the information stored in the line memory (32). A result image writing request is made, the information stored in the line memory (32) is read for each unit, and transmitted to the result memory control unit (33). At this time, the line memory is classified into the pixel area area fill pixel (15), vector area edge part pixel (preferably antialiased edge pixel) (16), and layer image pixel (17). Stored.

結果メモリ制御部(33)は,たとえば,上記制御指令に基づいて,格納される結果画像情報を順次更新する。この更新は,たとえば,図5に示されるように,ライン単位又はブロック単位で行われる。全てのラインについて書き込み処理が終わると,図2(c)に示したようなメモリ状態が得られる。   For example, the result memory control unit (33) sequentially updates the stored result image information based on the control command. This update is performed in units of lines or blocks as shown in FIG. 5, for example. When the writing process is completed for all the lines, the memory state as shown in FIG. 2 (c) is obtained.

[結果画像格納メモリ]
結果画像格納メモリ(7)は,画像合成部(6)が合成した画像を記憶するための記憶装置である。結果画像格納メモリ(7)として,フレームバッファがあげられる。結果画像格納メモリ(7)に格納された情報は,読み出された後,表示装置の特性などに応じてγ補正などの処理が適宜施され,表示装置へと伝えられ,画像として表示されることとなる。なお,結果画像格納メモリは,好ましくは,情報をストリーム形式データとして格納するものがあげられる。このようなストリーム形式で格納するために,結果画像格納メモリに情報が格納される前にストリームデータ生成回路により,ストリーム形式のデータへと返還されてもよい。情報がストリーム形式で格納されるので,効果的に情報を読み出すことができる。
[Result image storage memory]
The result image storage memory (7) is a storage device for storing the image synthesized by the image synthesis unit (6). The result image storage memory (7) is a frame buffer. After the information stored in the result image storage memory (7) is read out, it is appropriately subjected to processing such as γ correction according to the characteristics of the display device, etc., transmitted to the display device, and displayed as an image It will be. The result image storage memory preferably stores information as stream format data. In order to store in such a stream format, the stream data generation circuit may return the data to the stream format before the information is stored in the result image storage memory. Since the information is stored in a stream format, the information can be read out effectively.

画像合成部の好ましい実施態様として,前記エッジ情報格納メモリに格納されたエッジ情報を用いて,ベクタ形式で定義された画像の内部を塗りつぶす際に,前記レイヤ画像格納メモリに格納された背景に関する画像情報及び複数のレイヤごとの画像情報を読み出して,ベクタ形式の画像及び複数のレイヤごとの画像情報を重ね合わせ,前記エッジ情報格納メモリに格納されたピクセルごとの透過度を用いてピクセルごとのブレンディング計算を行い,前記エッジ情報格納メモリに格納された水平方向及び垂直方向に関するラスタライズ信号符号に基づいて,ライン単位又はブロック単位で画像合成処理を行い,前記エッジ情報格納メモリに格納されたエッジ部分の重なり回数を用いて塗りつぶしを行うかどうかの判定を行い,ピクセル単位の画像処理演算を行うことによりピクセル単位の画像合成を行うものがあげられる。   As a preferred embodiment of the image composition unit, when the inside of the image defined in the vector format is painted using the edge information stored in the edge information storage memory, an image relating to the background stored in the layer image storage memory Information and image information for each layer are read out, vector images and image information for each layer are superimposed, and pixel-by-pixel blending is performed using the transparency for each pixel stored in the edge information storage memory. Based on the rasterized signal codes in the horizontal direction and the vertical direction stored in the edge information storage memory, image synthesis processing is performed in line units or block units, and the edge portion stored in the edge information storage memory Judge whether to fill using the number of overlaps, in pixels Include those to perform the image synthesis in pixels by performing an image processing operation.

エッジ情報生成部又は画像合成部として,アンチエイリアス処理を行うアンチエイリアス回路などのアンチエイリアス処理部を具備するものがあげられる。前記アンチエイリアス処理部は,前記あるピクセルにおけるエッジ情報と,前記ピクセルにおける複数のサンプリングポイントを用いて,前記ピクセルのうち前記エッジにより分断される部分の面積Sを決定する面積算出回路と,前記ピクセルにおける複数のサンプリングポイントから色合成に用いる1又は複数のサンプリングポイント又は当該サンプリングポイントにおける色を選択する色選択回路と,前記面積算出回路が算出した面積Sと,前記色選択回路が選択した色を用いて,前記ピクセルのカラーを決定する色合成回路とを具備するアンチエイリアス回路があげられる。   Examples of the edge information generation unit or the image synthesis unit include an anti-aliasing processing unit such as an anti-aliasing circuit that performs anti-aliasing processing. The anti-aliasing processing unit uses an edge information in the pixel and a plurality of sampling points in the pixel to determine an area S of a portion of the pixel that is divided by the edge; Using one or more sampling points used for color synthesis from a plurality of sampling points or a color selection circuit for selecting a color at the sampling points, an area S calculated by the area calculation circuit, and a color selected by the color selection circuit An antialiasing circuit including a color synthesis circuit for determining the color of the pixel can be given.

前記画像合成部は,色空間変換処理部及び色補正処理部のいずれか又は両方を具備し,ピクセル単位で色空間変換処理又は色補正処理を施した画像合成を行うものであってもよい。さらに,前記画像合成部は,画像回転処理及び画像サイズ調整処理のいずれか又は両方を含む幾何演算処理部を具備し,レイヤ画像に対し,回転処理又は画像サイズ調整処理を施した画像合成を行うものであってもよい。   The image synthesizing unit may include one or both of a color space conversion processing unit and a color correction processing unit, and may perform image synthesis by performing color space conversion processing or color correction processing in units of pixels. Further, the image composition unit includes a geometric operation processing unit including one or both of image rotation processing and image size adjustment processing, and performs image composition by performing rotation processing or image size adjustment processing on the layer image. It may be a thing.

前記画像合成部は,画像回転処理及び画像サイズ調整処理のいずれか又は両方を含む幾何演算処理部を具備し,前記幾何演算処理部は,頂点データを出力する頂点データ出力装置と,前記頂点データ出力装置と接続され,頂点に関する固定された演算を行う頂点演算装置と,前記頂点演算装置と接続され,ポリゴンに関する固定された演算を行うポリゴン演算装置と,入力元に前記頂点データ出力装置,前記頂点演算装置及び前記ポリゴン演算装置のうち1つ又は2つ以上と接続され,出力先に前記頂点演算装置及び前記ポリゴン演算装置のうち1つ又は2つと接続される1又は複数の汎用演算装置とを具備する幾何演算処理部であるものがあげられる。   The image synthesis unit includes a geometric calculation processing unit including one or both of image rotation processing and image size adjustment processing, the geometric calculation processing unit including a vertex data output device that outputs vertex data, and the vertex data A vertex computing device connected to an output device for performing a fixed computation on a vertex; a polygon computing device connected to the vertex computing device for performing a fixed computation on a polygon; the vertex data output device as an input source; One or more general-purpose computing devices connected to one or more of the vertex computing device and the polygon computing device, and connected to one or two of the vertex computing device and the polygon computing device at the output destination; What is a geometric calculation processing unit comprising

[アンチエイリアス回路]
たとえば,特に携帯電話など表示画面が小さな表示装置では,3次元CGなどを表示することはそれほど意図されていなかったし,ましてやアンチエイリアス処理を施したCGなどを表示することは意図されていなかった。本発明の好ましい態様では,携帯型の表示装置においても,上記のような画像処理をすることとあわせ,さらにアンチエイリアス処理を行うアンチエイリアス回路を具備するものである。以下,この態様に係るアンチエイリアス回路について説明する。このアンチエイリアス回路を具備することで,レンダリングのための計算量を大きく増加させずに,レンダラとメモリ間の通信帯域幅を大きく増加させず,又は高画質,のアンチエイリアシング技術を提供することができる。また,このアンチエイリアス回路を具備することで,アンチエイリアスをかけるためのメモリアクセスの要求帯域幅が狭く,レンダリングにおける処理量も小さいので,低消費電力,小面積のLSIで高画質のCG画像が提供できる。
[Anti-aliasing circuit]
For example, a display device with a small display screen, such as a mobile phone, is not intended to display 3D CG or the like, and moreover, it is not intended to display CG subjected to anti-aliasing processing. In a preferred embodiment of the present invention, the portable display device includes an anti-aliasing circuit that performs anti-aliasing in addition to the above-described image processing. The antialiasing circuit according to this aspect will be described below. By providing this anti-aliasing circuit, it is possible to provide an anti-aliasing technique that does not greatly increase the amount of calculation for rendering, does not significantly increase the communication bandwidth between the renderer and the memory, or provides high image quality. . Also, by providing this anti-aliasing circuit, the required bandwidth for memory access for anti-aliasing is narrow and the amount of processing in rendering is small, so it is possible to provide high-quality CG images with low power consumption and small area LSI. .

[アンチエイリアス回路の例]
以下,図面を用いて本発明のアンチエイリアス回路について説明する。図6は,本発明の第1の実施形態に係るアンチエイリアス回路のブロック図である。図6に示されるように,この態様に係るアンチエイリアス回路(41)は,ピクセルにおけるエッジ情報と,前記ピクセルにおける複数のサンプリングポイントを用いて,前記ピクセルのうち前記エッジにより分断される部分の面積Sを決定する面積算出回路(42)と,前記ピクセルにおける複数のサンプリングポイントから色合成に用いる1又は複数のサンプリングポイント又は当該サンプリングポイントにおける色を選択する色選択回路(43)と,前記面積算出回路が算出した面積Sと,前記色選択回路が選択した色を用いて,前記ピクセルのカラーを決定する色合成回路(44)とを具備するアンチエイリアス回路(41)である。図中46は,エッジメモリ(又はエッジZメモリ)を示し,47は,色メモリを示す。また,各メモリ及び回路はバスにより連結されている。
[Example of anti-aliasing circuit]
The antialiasing circuit of the present invention will be described below with reference to the drawings. FIG. 6 is a block diagram of the anti-aliasing circuit according to the first embodiment of the present invention. As shown in FIG. 6, the anti-aliasing circuit (41) according to this aspect uses the edge information in the pixel and a plurality of sampling points in the pixel, and the area S of the portion divided by the edge in the pixel. An area calculation circuit (42) for determining color, one or a plurality of sampling points used for color synthesis from a plurality of sampling points in the pixel, or a color selection circuit (43) for selecting a color at the sampling points, and the area calculation circuit Is an anti-aliasing circuit (41) including a color composition circuit (44) for determining the color of the pixel using the area S calculated by the above and the color selected by the color selection circuit. In the figure, 46 indicates an edge memory (or edge Z memory), and 47 indicates a color memory. Each memory and circuit are connected by a bus.

このようなアンチエイリアス回路であれば,ピクセルにおけるエッジ情報と,前記ピクセルにおける複数のサンプリングポイントを用いて,前記ピクセルのうち前記エッジにより分断される部分の面積Sを決定できるので,前記ピクセルにおける複数のサンプリングポイントから色合成に用いる1又は複数のサンプリングポイント又は当該サンプリングポイントにおける色を選択し,面積Sと選択した色とを用いて,前記ピクセルのカラーを決定する,コンピュータグラフィックスにおけるアンチエイリアス方法を提供できる。   With such an anti-aliasing circuit, the area S of the portion of the pixel that is divided by the edge can be determined using edge information in the pixel and a plurality of sampling points in the pixel. Provided is an antialiasing method in computer graphics that selects one or a plurality of sampling points used for color synthesis from a sampling point or a color at the sampling point, and determines the color of the pixel using an area S and the selected color. it can.

エッジ情報は,通常,エッジの傾き及び切片に関する情報を含む情報であり,ピクセル内の,エッジの傾き,切片,始点及び終点,並びにポリゴンの法線のいずれかを含むものであってもよい。エッジ情報は通常エッジメモリ(46)に記憶され,CPUなどの制御装置による制御などによりエッジ情報が読み出され,バスを通じて面積算出回路(42)又は色選択回路へ入力される。   The edge information is usually information including information on the slope and intercept of the edge, and may include any of the slope of the edge, the intercept, the start and end points, and the polygon normal in the pixel. The edge information is usually stored in the edge memory (46), and the edge information is read out by control by a control device such as a CPU, and is input to the area calculation circuit (42) or the color selection circuit through the bus.

エッジメモリ(46)は,エッジ情報のみならず,Z値をも記憶するエッジZメモリのものを含んでもよい。このようなエッジZメモリを用いれば,複数のポリゴンの部分があるピクセル上に存在する場合であっても,効果的に最前面にあるポリゴンを判別できる。   The edge memory (46) may include an edge Z memory that stores not only edge information but also Z values. By using such an edge Z memory, even when a plurality of polygon portions exist on a certain pixel, it is possible to effectively determine the foremost polygon.

図7は,あるピクセルにおけるポリゴンのエッジ,及びサンプリングポイントの例を示す図である。図7は,あくまで例示であって,図7に示すもの以外のサンプリングポイントを採用しても構わない。符号60は,サンプリングポイントであるピクセルの中心点Cを示す。符号61〜64は,サンプリングポイントであるピクセルにおける各頂点C〜Cを示す。なお,各頂点C〜Cは隣接するピクセルと共有される頂点である。符号66は,エッジを示す。エッジは,あるポリゴンの一部があるピクセルを占める場合に生ずる。符号67及び68は,エッジとピクセルの辺との交点を示す。符号69は,エッジで区切られるピクセルの2つの領域のうち,ピクセルの中心点を含む領域を示す。符号70は,エッジで区切られるピクセルの2つの領域のうち,ピクセルの中心点を含まない領域を示す。FIG. 7 is a diagram illustrating an example of polygon edges and sampling points in a certain pixel. FIG. 7 is merely an example, and sampling points other than those shown in FIG. 7 may be adopted. Reference numeral 60 denotes a center point C 0 of a pixel that is a sampling point. Reference numerals 61 to 64 indicate the vertices C 1 to C 4 in the pixels which are sampling points. Each vertex C 1 -C 4 is a vertex shared with adjacent pixels. Reference numeral 66 represents an edge. An edge occurs when a part of a polygon occupies a certain pixel. Reference numerals 67 and 68 indicate intersections between the edge and the side of the pixel. Reference numeral 69 denotes an area including the center point of the pixel, out of the two areas of the pixel separated by the edge. Reference numeral 70 denotes an area that does not include the center point of the pixel, out of the two areas of the pixel separated by the edge.

図8は,あるピクセルにおけるポリゴンのエッジ,及びサンプリングポイントの別の例を示す図である。図9は,あるピクセルにおけるポリゴンのエッジ,及びサンプリングポイントの別の例を示す図である。図10は,あるピクセルにおけるポリゴンのエッジ,及びサンプリングポイントの別の例を示す図である。   FIG. 8 is a diagram showing another example of polygon edges and sampling points in a certain pixel. FIG. 9 is a diagram showing another example of polygon edges and sampling points in a certain pixel. FIG. 10 is a diagram illustrating another example of polygon edges and sampling points in a certain pixel.

図9に示されるように,あるピクセルに含まれるエッジの数は複数の場合もある。あるピクセルに含まれるエッジの数はエッジとピクセルの辺との交点の数を算出する回路を用いれば簡単に求めることができる。すなわち,交点の数の半分がエッジの数となる。このようなエッジ本数計算回路を有することは本発明の好ましい実施態様である。たとえば,あるピクセルに含まれるエッジの数が2本以上あるかどうか判断し,1本の場合は以下に示す各回路を用いてピクセルの色を決定し,0本又は2本以上の場合は,各サンプリングポイントのいずれか又は全ての色の平均を求めることでピクセルの色を決定するようにしてもよい。このような色の平均を求める回路は,加算回路と除算回路,加算回路とテーブルなどを適宜用いる事により容易に設計できる。また,図10に示されるようにあるピクセルに存在するポリゴンが2つ以上存在する場合もある。   As shown in FIG. 9, there may be a plurality of edges included in a certain pixel. The number of edges included in a pixel can be easily obtained by using a circuit that calculates the number of intersections between the edge and the side of the pixel. That is, half of the number of intersections is the number of edges. Having such an edge number calculation circuit is a preferred embodiment of the present invention. For example, it is determined whether or not the number of edges included in a pixel is 2 or more, and if it is 1, the color of the pixel is determined using each circuit shown below, and if 0 or 2 or more, You may make it determine the color of a pixel by calculating | requiring the average of one or all the colors of each sampling point. Such a circuit for obtaining an average of colors can be easily designed by appropriately using an addition circuit and a division circuit, an addition circuit and a table, or the like. Further, as shown in FIG. 10, there may be two or more polygons existing in a certain pixel.

[面積算出回路]
面積算出回路(42)は,ピクセルにおけるエッジ情報と,前記ピクセルにおける複数のサンプリングポイントを用いて,前記ピクセルのうち前記エッジにより分断される部分の面積Sを決定するための回路である。
[Area calculation circuit]
The area calculation circuit (42) is a circuit for determining an area S of a portion of the pixel divided by the edge, using edge information of the pixel and a plurality of sampling points in the pixel.

面積算出回路が求める面積Sは,たとえば,前記エッジで区切られるピクセルの2つの領域のうち,前記ピクセルの中心点を含む領域の面積である。また,あるピクセルに含まれるエッジの数が2本以上ある場合は,あるポリゴンの部分のうちそのピクセルに占める領域の面積であってもよいし,あるポリゴンの部分のうちそのピクセルに占める領域であって他のポリゴンよりもZ値が小さい(前面方向の)領域の面積であってもよい。また,あるピクセルにポリゴンが2つ以上含まれる場合は,それぞれのポリゴンの部分のうちそのピクセルに占める領域であって他のポリゴンよりもZ値が小さい(前面方向の)領域の面積を求めてもよいし,あるピクセルに占める面積が最も大きいポリゴンの部分のうちそのピクセルに占める領域であって他のポリゴンよりもZ値が小さい(前面方向の)領域の面積を求めてもよい。また,ポリゴンの中心点を含むポリゴンの部分のうちそのピクセルに占める領域であって他のポリゴンよりもZ値が小さい(前面方向の)領域の面積を求めてもよい。   The area S required by the area calculation circuit is, for example, the area of a region including the center point of the pixel among the two regions of the pixel divided by the edge. In addition, when there are two or more edges included in a pixel, it may be the area occupied by the pixel in a part of a polygon, or may be the area occupied by the pixel in a part of a polygon. It may be the area of a region (in the front direction) having a smaller Z value than other polygons. Also, if a pixel contains two or more polygons, the area of each polygon part that occupies that pixel and has a smaller Z value than the other polygons (in the front direction) is calculated. Alternatively, the area of the polygon that has the largest area in a certain pixel, that is, the area that occupies that pixel and that has a smaller Z value than other polygons (in the front direction) may be obtained. Alternatively, the area of a region that occupies the pixel in the portion of the polygon including the center point of the polygon and that has a smaller Z value than the other polygons (in the front direction) may be obtained.

前記面積算出回路の例として,前記エッジと面積Sとの関係を記憶した面積テーブルを参照することにより,前記ピクセルのうち前記エッジにより分断される部分の面積Sを算出するものがあげられる。より具体的には,エッジとピクセルの辺との2つの交点と面積Sとの関係を格納した面積テーブルがあげられる。このような面積テーブルを用いることで,2つの交点から迅速に面積Sを得ることができる。あるピクセルに含まれるエッジの数が2本以上ある場合においても,各交点と面積Sとの関係を格納した面積テーブルを用意してもよい。しかし,交点が多くなると,記憶しなければならないパターンが多くなり多大なメモリを必要とするようになるので,面積テーブルは,ある2つの交点(ひとつのエッジ)についての面積Sを格納するテーブルを用いるものが好ましい。図10に示されるように,あるポリゴンがあるピクセルに2つのエッジを有する場合は,面積テーブルを2回参照し減算回路などで減算することで容易にあるピクセルに占めるあるポリゴンの面積Sを求めることができる。図9の4つの交点をP〜Pとすると,まずは交点PとPとを用い,面積テーブルから台形Pの面積を求め,その値をメモリに記憶する。そして,交点PとPとを用いて,台形Pの面積を求め,その値をメモリに記憶し,減算回路及び/又は加算回路を用いてPの面積を求めればよい。S=台形P−(1−台形P)より,減算回路のみでも面積Sを求めることができるし,また2つの台形の面積の和から1を引いた値となるので,減算回路及び加算回路を用いても面積Sを求めることができる。An example of the area calculation circuit is one that calculates an area S of a portion divided by the edge in the pixel by referring to an area table that stores the relationship between the edge and the area S. More specifically, there is an area table that stores the relationship between the area S and the two intersections between the edge and the pixel side. By using such an area table, the area S can be quickly obtained from two intersections. Even when there are two or more edges included in a pixel, an area table storing the relationship between each intersection and the area S may be prepared. However, as the number of intersections increases, the number of patterns that must be stored increases and a large amount of memory is required. Therefore, the area table is a table that stores the areas S for two intersections (one edge). What is used is preferred. As shown in FIG. 10, when a certain pixel has two edges in a certain pixel, the area S of a certain polygon occupying a certain pixel is easily obtained by referring to the area table twice and subtracting with a subtraction circuit or the like. be able to. Assuming that the four intersections in FIG. 9 are P 1 to P 4 , first, the intersections P 3 and P 4 are used, the area of the trapezoid P 3 C 1 C 2 C 4 P 4 is obtained from the area table, and the value is stored in the memory. Remember. Then, using the intersection points P 1 and P 2 , the area of the trapezoid P 1 C 1 C 3 C 4 P 2 is obtained, the value is stored in the memory, and the subtraction circuit and / or the addition circuit is used to obtain the P 1 C 1 P 3 C 4 may be calculated the area of the C 4 P 2. S = trapezoid P 1 C 1 C 3 C 4 P 2 − (1-trapezoid P 1 C 1 C 3 C 4 P 2 ), the area S can be obtained with only the subtractor circuit, and the area of the two trapezoids Therefore, the area S can be obtained using a subtracting circuit and an adding circuit.

[色選択回路]
色選択回路は,ピクセルにおける複数のサンプリングポイントから色合成に用いる1又は複数のサンプリングポイントを選択するか,又は当該サンプリングポイントにおける色を選択するための回路である。なお,簡単のために色選択回路が選択した2つ色のうち前記ピクセルの中心点を含む領域において選択された色をCaとし,色選択回路が選択した2つ色のうち前記ピクセルの中心点を含まない領域において選択された色をCbとする。
[Color selection circuit]
The color selection circuit is a circuit for selecting one or a plurality of sampling points used for color synthesis from a plurality of sampling points in a pixel, or selecting a color at the sampling points. For simplicity, the color selected in the region including the center point of the pixel out of the two colors selected by the color selection circuit is Ca, and the center point of the pixel out of the two colors selected by the color selection circuit Let Cb be the color selected in the region that does not contain.

色選択回路の例として,以下のものがあげられる。すなわち,ピクセルにおける複数のサンプリングポイントは,ピクセルの4頂点及びピクセルの中心点からなり,前記ピクセルの中心点をサンプリングポイントとして選択し,その中心点における色をCaとして選択する。一方,エッジで区切られるピクセルの2つの領域のうち,ピクセルの中心点を含まない領域に含まれるサンプリングポイントにおける色の平均を求めて選択する。たとえば図10の60で示される領域において,ピクセルの中心点を含まない領域に含まれるサンプリングポイントはCとCの2つであるから色を求めるサンプリングポイントとしてCとCを選択し,Cbとして,CとCの平均を求めればよい。サンプリングポイントを選択するには,エッジ情報(交点情報)を用いれば容易に決定できる。たとえば,エッジがひとつの場合は,どの辺上に交点があるか,また交点の位置情報を用いる事で容易にサンプリングポイントを決定できる。そして,加算回路と除算回路,加算回路と1/2テーブル,又は加算回路と1/3テーブルを用いることで容易にCbを求めることができる。Examples of the color selection circuit include the following. That is, the plurality of sampling points in the pixel are composed of the four vertexes of the pixel and the center point of the pixel, the center point of the pixel is selected as the sampling point, and the color at the center point is selected as Ca. On the other hand, the average of the colors at the sampling points included in the area not including the center point of the pixel is obtained and selected from the two areas separated by the edge. For example, in the area indicated by 60 in FIG. 10, there are two sampling points C 1 and C 3 included in the area not including the center point of the pixel, so C 1 and C 3 are selected as sampling points for obtaining the color. , Cb, the average of C 1 and C 3 may be obtained. To select a sampling point, it can be easily determined by using edge information (intersection information). For example, when there is one edge, it is possible to easily determine the sampling point by using which side the intersection is located and by using the position information of the intersection. Then, Cb can be easily obtained by using an addition circuit and a division circuit, an addition circuit and a 1/2 table, or an addition circuit and a 1/3 table.

色選択回路の別の例として,以下のものがあげられる。すなわち,ピクセルにおける複数のサンプリングポイントは,ピクセルの4頂点及びピクセルの中心点からなり,前記ピクセルの中心点における色をCaとして選択する。一方,エッジで区切られるピクセルの2つの領域のうち,前記ピクセルの中心点を含まない領域に含まれる任意のサンプリングポイントにおける色とを選択するものである。たとえば,図7のようなケースでは,CとCが,サンプリングポイントとして選択され,いずれかの色がCbとして選択される。Another example of the color selection circuit is as follows. That is, the plurality of sampling points in the pixel are composed of the four vertexes of the pixel and the center point of the pixel, and the color at the center point of the pixel is selected as Ca. On the other hand, a color at an arbitrary sampling point included in an area not including the center point of the pixel is selected from two areas of the pixel separated by the edge. For example, in the case shown in FIG. 7, the C 1 and C 3, are selected as a sampling point, any color is selected as Cb.

色選択回路の別の例として,以下のものがあげられる。すなわち,ピクセルにおける複数のサンプリングポイントは,ピクセルの4頂点及びピクセルの中心点からなり,エッジで区切られるピクセルの2つの領域のうち,前記ピクセルの中心点を含む領域に含まれる任意のサンプリングポイントにおける色と,前記エッジで区切られるピクセルの2つの領域のうち,前記ピクセルの中心点を含まない領域に含まれる任意のサンプリングポイントにおける色とを選択するものである。図7のようなケースでは,CとCとCが,サンプリングポイントとして選択され,いずれかの色がCaとして選択される。CとCが,サンプリングポイントとして選択され,いずれかの色がCbとして選択される。Another example of the color selection circuit is as follows. That is, a plurality of sampling points in a pixel are composed of four vertices of the pixel and the center point of the pixel, and at any sampling point included in the region including the center point of the pixel among the two regions of the pixel separated by the edge. A color and a color at an arbitrary sampling point included in an area that does not include the center point of the pixel among the two areas of the pixel separated by the edge are selected. In the case shown in FIG 7, C 0 and C 2 and C 4 is selected as a sampling point, any color is chosen as Ca. C 1 and C 3 is selected as a sampling point, any color is selected as Cb.

色選択回路の別の例として,以下のものがあげられる。すなわち,前記ピクセルにおける複数のサンプリングポイントは,ピクセルの4頂点及びピクセルの中心点からなり,エッジで区切られるピクセルの2つの領域のうち,前記ピクセルの中心点を含む領域に含まれるサンプリングポイントにおける色の平均を求めたものと,エッジで区切られるピクセルの2つの領域のうち,前記ピクセルの中心点を含まない領域に含まれるサンプリングポイントにおける色の平均を求めたものとを選択するものである。   Another example of the color selection circuit is as follows. That is, the plurality of sampling points in the pixel are composed of the four vertexes of the pixel and the center point of the pixel, and the color at the sampling point included in the region including the center point of the pixel among the two regions of the pixel separated by the edge. And an average of colors obtained at sampling points included in an area not including the center point of the pixel out of two areas divided by edges.

色選択回路の別の例として,以下のものがあげられる。すなわち,エッジ情報から,前記ピクセル中のポリゴンが占める任意の点と,サンプリングポイントのうちポリゴンが占めない任意の点とを選択することにより,ピクセルにおける複数のサンプリングポイントから色合成に用いる2つのサンプリングポイントを選択するか,又は前者の点と後者の点における色を選択することにより,当該サンプリングポイントにおける色を選択するものである。   Another example of the color selection circuit is as follows. That is, two samplings used for color synthesis from a plurality of sampling points in a pixel by selecting an arbitrary point occupied by the polygon in the pixel and an arbitrary point not occupied by the polygon among the sampling points from the edge information. The color at the sampling point is selected by selecting a point or by selecting the color at the former point and the latter point.

[色合成回路]
色合成回路は,面積算出回路が算出した面積Sと,前記色選択回路が選択した色を用いて,前記ピクセルのカラーを決定するための回路である。色合成回路の例として,ピクセルの面積を1,前記面積算出回路が算出した前記面積Sを,前記エッジで区切られるピクセルの2つの領域のうち,前記ピクセルの中心点を含む領域の面積とし,前記色選択回路が選択した2つ色のうち前記ピクセルの中心点を含む領域において選択された色をCaとし,前記色選択回路が選択した2つ色のうち前記ピクセルの中心点を含まない領域において選択された色をCbとしたときに,Ca×S+Cb(1−S)を求めることにより,前記ピクセルのカラーを決定するものがあげられる。
[Color composition circuit]
The color composition circuit is a circuit for determining the color of the pixel using the area S calculated by the area calculation circuit and the color selected by the color selection circuit. As an example of a color synthesis circuit, the area of a pixel is 1, and the area S calculated by the area calculation circuit is the area of a region including the center point of the pixel among two regions of the pixel divided by the edge, Of the two colors selected by the color selection circuit, the color selected in the area including the center point of the pixel is Ca, and the area of the two colors selected by the color selection circuit does not include the center point of the pixel In this case, the color of the pixel is determined by obtaining Ca × S + Cb (1−S) where Cb is the color selected in step (b).

より具体的な色合成回路として,ピクセルの面積を1,前記面積算出回路が算出した前記面積Sを,前記エッジで区切られるピクセルの2つの領域のうち,前記ピクセルの中心点を含む領域の面積とし,前記色選択回路が選択した2つ色のうち前記ピクセルの中心点を含む領域において選択された色をCaとし,前記色選択回路が選択した2つ色のうち前記ピクセルの中心点を含まない領域において選択された色をCbとしたときに,乗算回路,加算回路及び除算回路(又は[1−Sテーブル])を用いることにより,乗算回路がSとCaとを乗算しS×Caを求め,除算回路又は[1−Sテーブル]が(1−S)の値を求め,乗算回路が(1−S)×Cbを求め,加算回路がS×Caと(1−S)×Cbとを加算することによりS×Ca+(1−S)×Cbを求め,前記ピクセルのカラーを決定するものがあげられる。   As a more specific color composition circuit, the area of a pixel is 1 and the area S calculated by the area calculation circuit is the area of a region including the center point of the pixel among the two regions of the pixel delimited by the edge The color selected in the region including the center point of the pixel among the two colors selected by the color selection circuit is Ca, and the center point of the pixel is included among the two colors selected by the color selection circuit. When the color selected in the non-region is Cb, the multiplication circuit multiplies S and Ca by using a multiplication circuit, an addition circuit, and a division circuit (or [1-S table]), and S × Ca is obtained. The division circuit or [1-S table] obtains the value of (1-S), the multiplication circuit obtains (1-S) × Cb, and the addition circuit calculates S × Ca and (1-S) × Cb. To obtain S × Ca + (1−S) × Cb. That determine the color of the color.

また,上記とは別の具体的な色合成回路として,S x (Ca-Cb) + Cbを求める回路が上げられる。これは,S x Ca + (1-S) x Cb = S x (Ca-Cb) +
Cbであることに基づくものである。このよう直接S x (Ca-Cb) + Cbを求めると,乗算器の数が減少する(2つからひとつになる)ので好ましい。また,1−Sテーブルなども必要なくなるため好ましい。具体的には,ピクセルの面積を1,前記面積算出回路が算出した前記面積Sを,前記エッジで区切られるピクセルの2つの領域のうち,前記ピクセルの中心点を含む領域の面積とし,前記色選択回路が選択した2つ色のうち前記ピクセルの中心点を含む領域において選択された色をCaとし,前記色選択回路が選択した2つ色のうち前記ピクセルの中心点を含まない領域において選択された色をCbとしたときに,乗算回路,加算回路などを用いて,S x (Ca-Cb) + Cbを求めればよい。たとえば,S ,Ca,Cbの値がバスなどを介して色合成回路へ入力されると,加算器(減算器)が,Ca-Cbの値を求め,乗算器がS
x (Ca-Cb)の値を求め,加算器がS x (Ca-Cb) + Cbを求めればよい。
Further, as a specific color synthesis circuit different from the above, a circuit for obtaining S x (Ca−Cb) + Cb can be mentioned. This is S x Ca + (1-S) x Cb = S x (Ca-Cb) +
It is based on being Cb. Such direct determination of S x (Ca−Cb) + Cb is preferable because the number of multipliers is reduced (from two to one). In addition, a 1-S table or the like is not necessary, which is preferable. Specifically, the area of a pixel is 1, and the area S calculated by the area calculation circuit is an area of a region including a center point of the pixel, out of two regions of the pixel divided by the edge, and the color Of the two colors selected by the selection circuit, the color selected in the area including the center point of the pixel is Ca, and the color selected in the area not including the center point of the pixel is selected from the two colors selected by the color selection circuit. When the color obtained is Cb, S x (Ca−Cb) + Cb may be obtained using a multiplier circuit, an adder circuit, and the like. For example, when the values of S, Ca, and Cb are input to the color synthesis circuit via a bus, an adder (subtracter) calculates the value of Ca-Cb, and the multiplier
The value of x (Ca-Cb) is obtained, and the adder may obtain S x (Ca-Cb) + Cb.

[動作例]
以下,アンチエイリアス回路の動作例を説明する。エッジメモリ46からあるポリゴンのエッジ情報,又はエッジ情報とZ値とを読み出す。読み出された情報はバスを通じて,面積算出回路(42)と,色選択回路(43)とに入力される。面積算出回路(42)は,ピクセルにおけるエッジ情報と,前記ピクセルにおける複数のサンプリングポイントを用いて,前記ピクセルのうち前記エッジにより分断される部分の面積Sを決定する。
[Example of operation]
Hereinafter, an operation example of the anti-aliasing circuit will be described. The edge information of a polygon or edge information and the Z value are read from the edge memory 46. The read information is input to the area calculation circuit (42) and the color selection circuit (43) through the bus. The area calculation circuit (42) determines an area S of a portion of the pixel that is divided by the edge using edge information of the pixel and a plurality of sampling points in the pixel.

面積算出回路が面積Sを求める方法として,エッジ情報に含まれる交点と面積Sとの関係を記憶した面積テーブルを参照することにより,前記ピクセルのうち前記エッジにより分断される部分の面積Sを算出するものがあげられる。このようにして面積Sが求められる。求められた面積Sは,バスを通じて色合成回路(44)に入力される。   As a method for calculating the area S by the area calculation circuit, the area S of the portion divided by the edge in the pixel is calculated by referring to an area table storing the relationship between the intersection point included in the edge information and the area S. What to do. In this way, the area S is obtained. The obtained area S is input to the color synthesis circuit (44) through the bus.

一方,色選択回路が,あるピクセルにおける複数のサンプリングポイントから色合成に用いる1又は複数のサンプリングポイントを選択するか,又は当該サンプリングポイントにおける色を選択する。色を選択する例として,あるピクセルの中心点をサンプリングポイントとして選択し,その中心点における色をCaとして選択する。各サンプリングポイントの色情報は,色メモリ(47)に記憶されており,記憶された色情報を読み出すことで各サンプリングポイントにおける色情報を得ることができる。一方,エッジで区切られるピクセルの2つの領域のうち,ピクセルの中心点を含まない領域に含まれるサンプリングポイントにおける色の平均を求めて選択する。このようにして色合成に用いられる色Ca及びCbが決定される。決定された色Ca及びCbは,バスを通じて色合成回路(44)に入力される。   On the other hand, a color selection circuit selects one or a plurality of sampling points used for color synthesis from a plurality of sampling points in a certain pixel, or selects a color at the sampling points. As an example of selecting a color, a center point of a certain pixel is selected as a sampling point, and a color at the center point is selected as Ca. The color information of each sampling point is stored in the color memory (47), and the color information at each sampling point can be obtained by reading the stored color information. On the other hand, the average of the colors at the sampling points included in the area not including the center point of the pixel is obtained and selected from the two areas separated by the edge. In this way, the colors Ca and Cb used for color synthesis are determined. The determined colors Ca and Cb are input to the color synthesis circuit (44) through the bus.

色合成回路が,面積算出回路が算出した面積Sと,前記色選択回路が選択した色を用いて,前記ピクセルのカラーを決定する。具体的には,ピクセルの面積を1,前記面積算出回路が算出した前記面積Sを,前記エッジで区切られるピクセルの2つの領域のうち,前記ピクセルの中心点を含む領域の面積とし,前記色選択回路が選択した2つ色のうち前記ピクセルの中心点を含む領域において選択された色をCaとし,前記色選択回路が選択した2つ色のうち前記ピクセルの中心点を含まない領域において選択された色をCbとしたときに,Ca×S+Cb(1−S)(又は,S x (Ca-Cb) + Cb)などを求めることにより,前記ピクセルのカラーを決定する。   The color composition circuit determines the color of the pixel using the area S calculated by the area calculation circuit and the color selected by the color selection circuit. Specifically, the area of a pixel is 1, and the area S calculated by the area calculation circuit is an area of a region including a center point of the pixel, out of two regions of the pixel divided by the edge, and the color Of the two colors selected by the selection circuit, the color selected in the area including the center point of the pixel is Ca, and the color selected in the area not including the center point of the pixel is selected from the two colors selected by the color selection circuit. The color of the pixel is determined by obtaining Ca × S + Cb (1−S) (or S x (Ca−Cb) + Cb) or the like, where Cb is the calculated color.

[アンチエイリアス回路の別の例] 図11は,上記とは別のアンチエイリアス回路のブロック図である。図11に示されるように,この態様に係るアンチエイリアス回路(41)は,エッジ情報からピクセルが分断されるエリアタイプを決定するためのエリアタイプ決定回路(45)と,前記エッジ情報,又は前記エッジ情報とエリアタイプ情報とを用いて,前記ピクセルのうち前記エッジにより分断される部分の面積Sを決定する面積算出回路(42)と,前記ピクセルにおける複数のサンプリングポイントから色合成に用いる1又は複数のサンプリングポイント又は当該サンプリングポイントにおける色を選択する色選択回路(43)と,前記面積算出回路が算出した面積Sと,前記色選択回路が選択した色を用いて,前記ピクセルのカラーを決定する色合成回路(44)とを具備するアンチエイリアス回路(41)に関する。図中46は,エッジメモリ(又はエッジZメモリ)を示し,47は,色メモリを示す。また,各メモリ及び回路はバスにより連結されている。   [Another Example of Antialiasing Circuit] FIG. 11 is a block diagram of an antialiasing circuit different from the above. As shown in FIG. 11, the antialiasing circuit (41) according to this aspect includes an area type determination circuit (45) for determining an area type in which a pixel is divided from edge information, and the edge information or the edge. An area calculation circuit (42) for determining an area S of a portion of the pixel divided by the edge using information and area type information, and one or more used for color synthesis from a plurality of sampling points in the pixel A color selection circuit (43) for selecting a sampling point or a color at the sampling point, the area S calculated by the area calculation circuit, and the color selected by the color selection circuit are used to determine the color of the pixel. The present invention relates to an antialiasing circuit (41) including a color synthesis circuit (44). In the figure, 46 indicates an edge memory (or edge Z memory), and 47 indicates a color memory. Each memory and circuit are connected by a bus.

このようなアンチエイリアス回路であれば,エッジ情報からピクセルが分断されるエリアタイプを決定し,前記エッジ情報,又は前記エッジ情報とエリアタイプ情報とを用いて,前記ピクセルのうち前記エッジにより分断される部分の面積Sを決定できるので,前記ピクセルにおける複数のサンプリングポイントから色合成に用いる1又は複数のサンプリングポイント又は当該サンプリングポイントにおける色を選択し,前記面積Sと前記選択された色とを用いて,前記ピクセルのカラーを決定するコンピュータグラフィックスにおけるアンチエイリアス方法を提供できる。   In such an anti-aliasing circuit, an area type in which a pixel is divided is determined from edge information, and the edge of the pixel is divided by the edge using the edge information or the edge information and area type information. Since the area S of the portion can be determined, one or a plurality of sampling points used for color synthesis or a color at the sampling point is selected from a plurality of sampling points in the pixel, and the area S and the selected color are used. , An anti-aliasing method in computer graphics for determining the color of the pixel can be provided.

エッジ情報は,通常,エッジの傾き及び切片に関する情報を含む情報であり,ピクセル内の,エッジの傾き,切片,始点及び終点,並びにポリゴンの法線のいずれかを含むものであってもよい。エッジ情報は通常エッジメモリ(46)に記憶され,CPUなどの制御装置による制御などによりエッジ情報が読み出され,バスを通じて面積算出回路(42)又は色選択回路(43)へ入力される。   The edge information is usually information including information on the slope and intercept of the edge, and may include any of the slope of the edge, the intercept, the start and end points, and the polygon normal in the pixel. The edge information is normally stored in an edge memory (46), read out by control by a control device such as a CPU, and is input to the area calculation circuit (42) or the color selection circuit (43) through the bus.

エッジメモリ(46)は,エッジ情報のみならず,Z値をも記憶するエッジZメモリのものを含む。このようなエッジZメモリを用いれば,複数のポリゴンの部分があるピクセル上に存在する場合であっても,効果的に最前面にあるポリゴンを判別できる。   The edge memory (46) includes an edge Z memory that stores not only edge information but also Z values. By using such an edge Z memory, even when a plurality of polygon portions exist on a certain pixel, it is possible to effectively determine the foremost polygon.

エッジ本数計算回路を有することは本発明の好ましい実施態様である。たとえば,あるピクセルに含まれるエッジの数が2本以上あるかどうか判断し,1本の場合は以下に示す各回路を用いてピクセルの色を決定し,0本又は2本以上の場合は,各サンプリングポイントのいずれか又は全ての色の平均を求めることでピクセルの色を決定するようにしてもよい。このような色の平均を求める回路は,加算回路と除算回路,加算回路とテーブルなどを適宜用いる事により容易に設計できる。   Having an edge number calculation circuit is a preferred embodiment of the present invention. For example, it is determined whether or not the number of edges included in a pixel is 2 or more, and if it is 1, the color of the pixel is determined using each circuit shown below, and if 0 or 2 or more, You may make it determine the color of a pixel by calculating | requiring the average of one or all the colors of each sampling point. Such a circuit for obtaining an average of colors can be easily designed by appropriately using an addition circuit and a division circuit, an addition circuit and a table, or the like.

[エリアタイプ決定回路]
エリアタイプ決定回路(45)は,エッジ情報からピクセルが分断されるエリアタイプを決定するための回路である。具体的なエリアタイプ決定回路(45)として,前記エッジと前記ピクセルの辺との交点情報を用いて,交点情報とエリアタイプとの関係を記憶したエリアタイプメモリ(エリアタイプテーブル)を参照することによりエリアタイプを決定するものがあげられる。
[Area type determination circuit]
The area type determination circuit (45) is a circuit for determining an area type in which pixels are divided from edge information. As a specific area type determination circuit (45), refer to an area type memory (area type table) that stores the relationship between the intersection information and the area type using the intersection information between the edge and the pixel side. To determine the area type.

エリアタイプとして,六角形(例図9),五角形(例図8),四角形及び三角形を含むものがあげられる。また,別のエリアタイプとして,六角形,五角形,四角形及び三角形を含み,前記四角形は,前記ピクセルと前記ポリゴンの4つの交点が前記ピクセルの対向する辺上に存在する四角形と,前記ピクセルと前記ポリゴンの4つの交点が前記ピクセルの隣接する辺上に存在する四角形とを含み,前記三角形は,前記ピクセルと前記ポリゴンの3つの交点が前記ピクセルの対向する辺上に存在する三角形と,前記ピクセルと前記ポリゴンの3つの交点が前記ピクセルの隣接する辺上に存在する三角形とを含むものがあげられる。このようにエリアタイプごとに分類するので容易に面積を求めることができることとなる。   Area types include hexagons (example 9), pentagons (example 8), squares and triangles. Another area type includes a hexagon, a pentagon, a quadrangle, and a triangle. The quadrangle includes a quadrangle in which four intersections of the pixel and the polygon exist on opposite sides of the pixel, the pixel, and the triangle. Four intersections of polygons include a quadrangle that exists on adjacent sides of the pixel, and the triangle includes a triangle in which three intersections of the pixel and the polygon exist on opposite sides of the pixel; And the three intersections of the polygons include a triangle existing on an adjacent side of the pixel. Thus, since it classify | categorizes for every area type, an area can be calculated | required easily.

エリアタイプ決定回路(45)は,交点がどの辺上にあるかという情報とエリアタイプとが関連付けて記憶されたエリアタイプ関連テーブルを参照することによりエリアタイプを決定するものであってもよい。   The area type determination circuit (45) may determine the area type by referring to an area type association table in which the information indicating which side the intersection is on and the area type are stored in association with each other.

[面積算出回路]
面積算出回路(42)は,ピクセルにおけるエッジ情報と,前記ピクセルにおける複数のサンプリングポイントを用いて,前記ピクセルのうち前記エッジにより分断される部分の面積Sを決定するための回路である。
[Area calculation circuit]
The area calculation circuit (42) is a circuit for determining an area S of a portion of the pixel divided by the edge, using edge information of the pixel and a plurality of sampling points in the pixel.

面積算出回路が求める面積Sは,たとえば,前記エッジで区切られるピクセルの2つの領域のうち,前記ピクセルの中心点を含む領域の面積である。また,あるピクセルに含まれるエッジの数が2本以上ある場合は,あるポリゴンの部分のうちそのピクセルに占める領域の面積であってもよいし,あるポリゴンの部分のうちそのピクセルに占める領域であって他のポリゴンよりもZ値が小さい(前面方向の)領域の面積であってもよい。また,あるピクセルにポリゴンが2つ以上含まれる場合は,それぞれのポリゴンの部分のうちそのピクセルに占める領域であって他のポリゴンよりもZ値が小さい(前面方向の)領域の面積を求めてもよいし,あるピクセルに占める面積が最も大きいポリゴンの部分のうちそのピクセルに占める領域であって他のポリゴンよりもZ値が小さい(前面方向の)領域の面積を求めてもよい。また,ポリゴンの中心点を含むポリゴンの部分のうちそのピクセルに占める領域であって他のポリゴンよりもZ値が小さい(前面方向の)領域の面積を求めてもよい。   The area S required by the area calculation circuit is, for example, the area of a region including the center point of the pixel among the two regions of the pixel divided by the edge. In addition, when there are two or more edges included in a pixel, it may be the area occupied by the pixel in a part of a polygon, or may be the area occupied by the pixel in a part of a polygon. It may be the area of a region (in the front direction) having a smaller Z value than other polygons. Also, if a pixel contains two or more polygons, the area of each polygon part that occupies that pixel and has a smaller Z value than the other polygons (in the front direction) is calculated. Alternatively, the area of the polygon that has the largest area in a certain pixel, that is, the area that occupies that pixel and that has a smaller Z value than other polygons (in the front direction) may be obtained. Alternatively, the area of a region that occupies the pixel in the portion of the polygon including the center point of the polygon and that has a smaller Z value than the other polygons (in the front direction) may be obtained.

前記面積算出回路の例として,前記エッジと面積Sとの関係を記憶した面積テーブルを参照することにより,前記ピクセルのうち前記エッジにより分断される部分の面積Sを算出するものがあげられる。より具体的には,エッジとピクセルの辺との2つの交点と面積Sとの関係を格納した面積テーブルがあげられる。このような面積テーブルを用いることで,2つの交点から迅速に面積Sを得ることができる。あるピクセルに含まれるエッジの数が2本以上ある場合においても,各交点と面積Sとの関係を格納した面積テーブルを用意してもよい。しかし,交点が多くなると,記憶しなければならないパターンが多くなり多大なメモリを必要とするようになるので,面積テーブルは,ある2つの交点(ひとつのエッジ)についての面積Sを格納するテーブルを用いるものが好ましい。図9に示されるように,あるポリゴンがあるピクセルに2つのエッジを有する場合は,面積テーブルを2回参照し減算回路などで減算することで容易にあるピクセルに占めるあるポリゴンの面積Sを求めることができる。図9の4つの交点をP〜Pとすると,まずは交点PとPとを用い,面積テーブルから台形Pの面積を求め,その値をメモリに記憶する。そして,交点PとPとを用いて,台形Pの面積を求め,その値をメモリに記憶し,減算回路及び/又は加算回路を用いてPの面積を求めればよい。S=台形P−(1−台形P)より,減算回路のみでも面積Sを求めることができるし,また2つの台形の面積の和から1を引いた値となるので,減算回路及び加算回路を用いても面積Sを求めることができる。An example of the area calculation circuit is one that calculates an area S of a portion divided by the edge in the pixel by referring to an area table that stores the relationship between the edge and the area S. More specifically, there is an area table that stores the relationship between the area S and the two intersections between the edge and the pixel side. By using such an area table, the area S can be quickly obtained from two intersections. Even when there are two or more edges included in a pixel, an area table storing the relationship between each intersection and the area S may be prepared. However, as the number of intersections increases, the number of patterns that must be stored increases and a large amount of memory is required. Therefore, the area table is a table that stores the areas S for two intersections (one edge). What is used is preferred. As shown in FIG. 9, when a certain pixel has two edges in a certain pixel, the area S of a certain polygon occupying a certain pixel can be easily obtained by referring to the area table twice and subtracting with a subtraction circuit or the like. be able to. Assuming that the four intersections in FIG. 9 are P 1 to P 4 , first, the intersections P 3 and P 4 are used, the area of the trapezoid P 3 C 1 C 2 C 4 P 4 is obtained from the area table, and the value is stored in the memory. Remember. Then, using the intersection points P 1 and P 2 , the area of the trapezoid P 1 C 1 C 3 C 4 P 2 is obtained, the value is stored in the memory, and the subtraction circuit and / or the addition circuit is used to obtain the P 1 C 1 P 3 C 4 may be calculated the area of the C 4 P 2. S = trapezoid P 1 C 1 C 3 C 4 P 2 − (1-trapezoid P 1 C 1 C 3 C 4 P 2 ), the area S can be obtained with only the subtractor circuit, and the area of the two trapezoids Therefore, the area S can be obtained using a subtracting circuit and an adding circuit.

面積算出回路の他の例として,エリアタイプ決定回路が決定したエリアタイプに応じて面積算出方法を決定し,前記エッジと面積Sとの関係を記憶した面積テーブルを参照することにより,前記ピクセルのうち前記エッジにより分断される部分の面積Sを算出するものがあげられる。   As another example of the area calculation circuit, an area calculation method is determined according to the area type determined by the area type determination circuit, and an area table storing the relationship between the edge and the area S is referred to, thereby Among them, there is one that calculates the area S of the portion divided by the edge.

より具体的には,前記面積算出回路は,前記エリアタイプ決定回路が決定したエリアタイプと前記エッジ情報とを用い,前記エリアタイプごとに異なる面積算出回路を選択し,前記エッジ情報に含まれる頂点値情報,及び前記ピクセルと前記ポリゴンの交点情報を,選択した前記面積算出回路に入力することにより前記ピクセルのうち前記エッジにより分断される部分の面積Sを決定するものがあげられる。   More specifically, the area calculation circuit uses the area type determined by the area type determination circuit and the edge information, selects a different area calculation circuit for each area type, and includes vertexes included in the edge information. Examples include determining the area S of the portion divided by the edge of the pixel by inputting value information and intersection information of the pixel and the polygon to the selected area calculation circuit.

また別の例としては,前記面積算出回路は,前記エリアタイプ決定回路が決定したエリアタイプと前記エッジ情報とを用い,前記エリアタイプごとに異なる面積テーブルを選択し,前記ピクセルと前記ポリゴンの交点情報を,選択した前記面積テーブルに入力することにより前記ピクセルのうち前記エッジにより分断される部分の面積Sを決定するものがあげられる。   As another example, the area calculation circuit uses the area type determined by the area type determination circuit and the edge information, selects a different area table for each area type, and intersects the pixel and the polygon. Examples include determining the area S of a portion of the pixel divided by the edge by inputting information into the selected area table.

[色選択回路]
色選択回路は,ピクセルにおける複数のサンプリングポイントから色合成に用いる1又は複数のサンプリングポイントを選択するか,又は当該サンプリングポイントにおける色を選択するための回路である。なお,簡単のために色選択回路が選択した2つ色のうち前記ピクセルの中心点を含む領域において選択された色をCaとし,色選択回路が選択した2つ色のうち前記ピクセルの中心点を含まない領域において選択された色をCbとする。
[Color selection circuit]
The color selection circuit is a circuit for selecting one or a plurality of sampling points used for color synthesis from a plurality of sampling points in a pixel, or selecting a color at the sampling points. For simplicity, the color selected in the region including the center point of the pixel out of the two colors selected by the color selection circuit is Ca, and the center point of the pixel out of the two colors selected by the color selection circuit Let Cb be the color selected in the region that does not contain.

色選択回路の例として,以下のものがあげられる。すなわち,ピクセルにおける複数のサンプリングポイントは,ピクセルの4頂点及びピクセルの中心点からなり,前記ピクセルの中心点をサンプリングポイントとして選択し,その中心点における色をCaとして選択する。一方,エッジで区切られるピクセルの2つの領域のうち,ピクセルの中心点を含まない領域に含まれるサンプリングポイントにおける色の平均を求めて選択する。たとえば図10の60で示される領域において,ピクセルの中心点を含まない領域に含まれるサンプリングポイントはCとCの2つであるから色を求めるサンプリングポイントとしてCとCを選択し,Cbとして,CとCの平均を求めればよい。サンプリングポイントを選択するには,エッジ情報(交点情報)を用いれば容易に決定できる。たとえば,エッジがひとつの場合は,どの辺上に交点があるか,また交点の位置情報を用いる事で容易にサンプリングポイントを決定できる。そして,加算回路と除算回路,加算回路と1/2テーブル,又は加算回路と1/3テーブルを用いることで容易にCbを求めることができる。Examples of the color selection circuit include the following. That is, the plurality of sampling points in the pixel are composed of the four vertexes of the pixel and the center point of the pixel, the center point of the pixel is selected as the sampling point, and the color at the center point is selected as Ca. On the other hand, the average of the colors at the sampling points included in the area not including the center point of the pixel is obtained and selected from the two areas separated by the edge. For example, in the area indicated by 60 in FIG. 10, there are two sampling points C 1 and C 3 included in the area not including the center point of the pixel, so C 1 and C 3 are selected as sampling points for obtaining the color. , Cb, the average of C 1 and C 3 may be obtained. To select a sampling point, it can be easily determined by using edge information (intersection information). For example, when there is one edge, it is possible to easily determine the sampling point by using which side the intersection is located and by using the position information of the intersection. Then, Cb can be easily obtained by using an addition circuit and a division circuit, an addition circuit and a 1/2 table, or an addition circuit and a 1/3 table.

色選択回路の別の例として,以下のものがあげられる。すなわち,ピクセルにおける複数のサンプリングポイントは,ピクセルの4頂点及びピクセルの中心点からなり,前記ピクセルの中心点における色をCaとして選択する。一方,エッジで区切られるピクセルの2つの領域のうち,前記ピクセルの中心点を含まない領域に含まれる任意のサンプリングポイントにおける色とを選択するものである。たとえば,図7のようなケースでは,CとCが,サンプリングポイントとして選択され,いずれかの色がCbとして選択される。Another example of the color selection circuit is as follows. That is, the plurality of sampling points in the pixel are composed of the four vertexes of the pixel and the center point of the pixel, and the color at the center point of the pixel is selected as Ca. On the other hand, a color at an arbitrary sampling point included in an area not including the center point of the pixel is selected from two areas of the pixel separated by the edge. For example, in the case shown in FIG. 7, the C 1 and C 3, are selected as a sampling point, any color is selected as Cb.

色選択回路の別の例として,以下のものがあげられる。すなわち,ピクセルにおける複数のサンプリングポイントは,ピクセルの4頂点及びピクセルの中心点からなり,エッジで区切られるピクセルの2つの領域のうち,前記ピクセルの中心点を含む領域に含まれる任意のサンプリングポイントにおける色と,前記エッジで区切られるピクセルの2つの領域のうち,前記ピクセルの中心点を含まない領域に含まれる任意のサンプリングポイントにおける色とを選択するものである。図7のようなケースでは,CとCとCが,サンプリングポイントとして選択され,いずれかの色がCaとして選択される。CとCが,サンプリングポイントとして選択され,いずれかの色がCbとして選択される。Another example of the color selection circuit is as follows. That is, a plurality of sampling points in a pixel are composed of four vertices of the pixel and the center point of the pixel, and at any sampling point included in the region including the center point of the pixel among the two regions of the pixel separated by the edge. A color and a color at an arbitrary sampling point included in an area that does not include the center point of the pixel among the two areas of the pixel separated by the edge are selected. In the case shown in FIG 7, C 0 and C 2 and C 4 is selected as a sampling point, any color is chosen as Ca. C 1 and C 3 is selected as a sampling point, any color is selected as Cb.

色選択回路の別の例として,以下のものがあげられる。すなわち,前記ピクセルにおける複数のサンプリングポイントは,ピクセルの4頂点及びピクセルの中心点からなり,エッジで区切られるピクセルの2つの領域のうち,前記ピクセルの中心点を含む領域に含まれるサンプリングポイントにおける色の平均を求めたものと,エッジで区切られるピクセルの2つの領域のうち,前記ピクセルの中心点を含まない領域に含まれるサンプリングポイントにおける色の平均を求めたものとを選択するものである。   Another example of the color selection circuit is as follows. That is, the plurality of sampling points in the pixel are composed of the four vertexes of the pixel and the center point of the pixel, and the color at the sampling point included in the region including the center point of the pixel among the two regions of the pixel separated by the edge. And an average of colors obtained at sampling points included in an area not including the center point of the pixel out of two areas divided by edges.

色選択回路の別の例として,以下のものがあげられる。すなわち,エッジ情報から,前記ピクセル中のポリゴンが占める任意の点と,サンプリングポイントのうちポリゴンが占めない任意の点とを選択することにより,ピクセルにおける複数のサンプリングポイントから色合成に用いる2つのサンプリングポイントを選択するか,又は前者の点と後者の点における色を選択することにより,当該サンプリングポイントにおける色を選択するものである。   Another example of the color selection circuit is as follows. That is, two samplings used for color synthesis from a plurality of sampling points in a pixel by selecting an arbitrary point occupied by the polygon in the pixel and an arbitrary point not occupied by the polygon among the sampling points from the edge information. The color at the sampling point is selected by selecting a point or by selecting the color at the former point and the latter point.

[色合成回路]
色合成回路は,面積算出回路が算出した面積Sと,前記色選択回路が選択した色を用いて,前記ピクセルのカラーを決定するための回路である。色合成回路の例として,ピクセルの面積を1,前記面積算出回路が算出した前記面積Sを,前記エッジで区切られるピクセルの2つの領域のうち,前記ピクセルの中心点を含む領域の面積とし,前記色選択回路が選択した2つ色のうち前記ピクセルの中心点を含む領域において選択された色をCaとし,前記色選択回路が選択した2つ色のうち前記ピクセルの中心点を含まない領域において選択された色をCbとしたときに,Ca×S+Cb(1−S)を求めることにより,前記ピクセルのカラーを決定するものがあげられる。
[Color composition circuit]
The color composition circuit is a circuit for determining the color of the pixel using the area S calculated by the area calculation circuit and the color selected by the color selection circuit. As an example of a color synthesis circuit, the area of a pixel is 1, and the area S calculated by the area calculation circuit is the area of a region including the center point of the pixel among two regions of the pixel divided by the edge, Of the two colors selected by the color selection circuit, the color selected in the area including the center point of the pixel is Ca, and the area of the two colors selected by the color selection circuit does not include the center point of the pixel In this case, the color of the pixel is determined by obtaining Ca × S + Cb (1−S) where Cb is the color selected in step (b).

より具体的な色合成回路として,ピクセルの面積を1,前記面積算出回路が算出した前記面積Sを,前記エッジで区切られるピクセルの2つの領域のうち,前記ピクセルの中心点を含む領域の面積とし,前記色選択回路が選択した2つ色のうち前記ピクセルの中心点を含む領域において選択された色をCaとし,前記色選択回路が選択した2つ色のうち前記ピクセルの中心点を含まない領域において選択された色をCbとしたときに,乗算回路,加算回路及び除算回路(又は[1−Sテーブル])を用いることにより,乗算回路がSとCaとを乗算しS×Caを求め,除算回路又は[1−Sテーブル]が(1−S)の値を求め,乗算回路が(1−S)×Cbを求め,加算回路がS×Caと(1−S)×Cbとを加算することによりS×Ca+(1−S)×Cbを求め,前記ピクセルのカラーを決定するものがあげられる。   As a more specific color composition circuit, the area of a pixel is 1 and the area S calculated by the area calculation circuit is the area of a region including the center point of the pixel among the two regions of the pixel delimited by the edge The color selected in the region including the center point of the pixel among the two colors selected by the color selection circuit is Ca, and the center point of the pixel is included among the two colors selected by the color selection circuit. When the color selected in the non-region is Cb, the multiplication circuit multiplies S and Ca by using a multiplication circuit, an addition circuit, and a division circuit (or [1-S table]), and S × Ca is obtained. The division circuit or [1-S table] obtains the value of (1-S), the multiplication circuit obtains (1-S) × Cb, and the addition circuit calculates S × Ca and (1-S) × Cb. To obtain S × Ca + (1−S) × Cb. That determine the color of the color.

[動作例]
以下,上記したアンチエイリアス回路の動作例を説明する。エッジメモリ46からあるポリゴンのエッジ情報,又はエッジ情報とZ値とを読み出す。読み出された情報はバスを通じて,エリアタイプ決定回路(45),面積算出回路(42),及び色選択回路(43)とに入力される。
[Example of operation]
Hereinafter, an operation example of the above-described antialiasing circuit will be described. The edge information of a polygon or edge information and the Z value are read from the edge memory 46. The read information is input to the area type determination circuit (45), the area calculation circuit (42), and the color selection circuit (43) through the bus.

エリアタイプ決定回路(45)は,エッジ情報からエリアタイプを決定する。たとえば,前記エッジと前記ピクセルの辺との交点情報を用いて,交点情報とエリアタイプとの関係を記憶したエリアタイプメモリ(エリアタイプテーブル)を参照することによりエリアタイプを決定する。求められたエリアタイプ情報は,バスを通じて面積算出回路へ入力される。また,求められたエリアタイプ情報は,バスを通じて色選択回路へ入力されてもよい。   The area type determination circuit (45) determines the area type from the edge information. For example, the area type is determined by referring to an area type memory (area type table) that stores the relationship between the intersection point information and the area type using the intersection point information between the edge and the pixel side. The obtained area type information is input to the area calculation circuit through the bus. Further, the obtained area type information may be input to the color selection circuit through the bus.

面積算出回路(42)は,ピクセルにおけるエッジ情報と,前記ピクセルにおける複数のサンプリングポイントを用いて,及び/又はエリアタイプ情報を用いて,前記ピクセルのうち前記エッジにより分断される部分の面積Sを決定する。   The area calculation circuit (42) uses the edge information in the pixel and a plurality of sampling points in the pixel and / or uses the area type information to determine the area S of the portion divided by the edge in the pixel. decide.

面積算出回路が面積Sを求める方法として,エッジ情報に含まれる交点と面積Sとの関係を記憶した面積テーブルを参照することにより,前記ピクセルのうち前記エッジにより分断される部分の面積Sを算出するものがあげられる。この面積テーブルは,エリアタイプごとに設けられ,エリアタイプに応じた面積テーブルが選択され,その選択されたテーブルに交点情報を参照して,面積Sが求められてもよい。このようにして面積Sが求められる。求められた面積Sは,バスを通じて色合成回路(44)に入力される。   As a method for calculating the area S by the area calculation circuit, the area S of the portion divided by the edge in the pixel is calculated by referring to an area table storing the relationship between the intersection point included in the edge information and the area S. What to do. This area table may be provided for each area type, an area table corresponding to the area type may be selected, and the area S may be obtained by referring to the intersection information in the selected table. In this way, the area S is obtained. The obtained area S is input to the color synthesis circuit (44) through the bus.

一方,色選択回路が,あるピクセルにおける複数のサンプリングポイントから色合成に用いる1又は複数のサンプリングポイントを選択するか,又は当該サンプリングポイントにおける色を選択する。各サンプリングポイントの色情報は,色メモリ(47)に記憶されており,記憶された色情報を読み出すことで各サンプリングポイントにおける色情報を得ることができる。色を選択する例として,あるピクセルの中心点をサンプリングポイントとして選択し,その中心点における色をCaとして選択する。一方,エッジで区切られるピクセルの2つの領域のうち,ピクセルの中心点を含まない領域に含まれるサンプリングポイントにおける色の平均を求めて選択する。このようにして色合成に用いられる色Ca及びCbが決定される。決定された色色Ca及びCbは,バスを通じて色合成回路(44)に入力される。   On the other hand, a color selection circuit selects one or a plurality of sampling points used for color synthesis from a plurality of sampling points in a certain pixel, or selects a color at the sampling points. The color information of each sampling point is stored in the color memory (47), and the color information at each sampling point can be obtained by reading the stored color information. As an example of selecting a color, a center point of a certain pixel is selected as a sampling point, and a color at the center point is selected as Ca. On the other hand, the average of the colors at the sampling points included in the area not including the center point of the pixel is obtained and selected from the two areas separated by the edge. In this way, the colors Ca and Cb used for color synthesis are determined. The determined color colors Ca and Cb are input to the color synthesis circuit (44) through the bus.

色合成回路が,面積算出回路が算出した面積Sと,前記色選択回路が選択した色を用いて,前記ピクセルのカラーを決定する。具体的には,ピクセルの面積を1,前記面積算出回路が算出した前記面積Sを,前記エッジで区切られるピクセルの2つの領域のうち,前記ピクセルの中心点を含む領域の面積とし,前記色選択回路が選択した2つ色のうち前記ピクセルの中心点を含む領域において選択された色をCaとし,前記色選択回路が選択した2つ色のうち前記ピクセルの中心点を含まない領域において選択された色をCbとしたときに,Ca×S+Cb(1−S)を求めることにより,前記ピクセルのカラーを決定する。   The color composition circuit determines the color of the pixel using the area S calculated by the area calculation circuit and the color selected by the color selection circuit. Specifically, the area of a pixel is 1, and the area S calculated by the area calculation circuit is an area of a region including a center point of the pixel, out of two regions of the pixel divided by the edge, and the color Of the two colors selected by the selection circuit, the color selected in the area including the center point of the pixel is Ca, and the color selected in the area not including the center point of the pixel is selected from the two colors selected by the color selection circuit. When the obtained color is Cb, the color of the pixel is determined by obtaining Ca × S + Cb (1−S).

[プログラム]
これまで回路(ハードウェア)について説明したが,アンチエイリアス回路の概念を用いて,アンチエイリアスを行うプログラムを提供できることはいうまでもない。
[program]
Although the circuit (hardware) has been described so far, it goes without saying that a program for performing anti-aliasing can be provided using the concept of the anti-aliasing circuit.

すなわち,本発明によれば,コンピュータを,ピクセルにおけるエッジ情報と,前記ピクセルにおける複数のサンプリングポイントを用いて,前記ピクセルのうち前記エッジにより分断される部分の面積Sを決定する面積算出手段と,前記ピクセルにおける複数のサンプリングポイントから色合成に用いる1又は複数のサンプリングポイント又は当該サンプリングポイントにおける色を選択する色選択手段と,前記面積算出手段が算出した面積Sと,前記色選択手段が選択した色を用いて,前記ピクセルのカラーを決定する色合成手段とを具備するように機能させるアンチエイリアスプログラムをも提供できる。   That is, according to the present invention, the computer uses an edge information in a pixel and a plurality of sampling points in the pixel to determine an area S of a portion of the pixel that is divided by the edge; One or more sampling points used for color synthesis from a plurality of sampling points in the pixel or a color selection means for selecting a color at the sampling point, an area S calculated by the area calculation means, and the color selection means selected It is also possible to provide an anti-aliasing program that functions to include a color composition unit that determines the color of the pixel using the color.

また,別の態様としては,コンピュータを,エッジ情報からピクセルが分断されるエリアタイプを決定するエリアタイプ決定手段と,前記エッジ情報,又は前記エッジ情報とエリアタイプ情報とを用いて,前記ピクセルのうち前記エッジにより分断される部分の面積Sを決定する面積算出手段と,前記ピクセルにおける複数のサンプリングポイントから色合成に用いる1又は複数のサンプリングポイント又は当該サンプリングポイントにおける色を選択する色選択手段と,前記面積算出手段が算出した面積Sと,前記色選択手段が選択した色を用いて,前記ピクセルのカラーを決定する色合成手段とを具備するものとして機能させるアンチエイリアスプログラムがあげられる。   In another aspect, the computer uses an area type determination means for determining an area type in which a pixel is divided from edge information, and the edge information or the edge information and the area type information. An area calculating means for determining an area S of a portion divided by the edge, and one or a plurality of sampling points used for color synthesis from a plurality of sampling points in the pixel, or a color selection means for selecting a color at the sampling points An anti-aliasing program that functions as comprising an area S calculated by the area calculating means and a color synthesizing means for determining the color of the pixel using the color selected by the color selecting means.

これらのプログラムが用いられるコンピュータは,たとえば,コンピュータを上記の各手段として機能させるプログラムを記憶したメインメモリと,情報を入力するための入力装置と,情報を装置外に出力するための出力装置と,情報を一時的又は半永久的に記憶するデータベースなどの記憶装置と,各種演算処理を行う中央処理装置(CPU)とを具備するものがあげられる。CPUなどが,メインメモリ中の制御プログラム(アンチエイリアスプログラム)の指令を受け,これらの手段を実現する動作をするように指示すればよい。   A computer in which these programs are used includes, for example, a main memory storing a program that causes the computer to function as each of the above means, an input device for inputting information, and an output device for outputting information outside the device. And a storage device such as a database for temporarily or semi-permanently storing information and a central processing unit (CPU) for performing various arithmetic processes. A CPU or the like may be instructed to receive an instruction of a control program (anti-alias program) in the main memory and perform an operation for realizing these means.

[塗りつぶし処理のフロー]
図12は,本発明における塗りつぶし処理例を説明するためのフローチャートである。なお,図中Sはステップ(工程)を示す。以下では,図12に従って,塗りつぶし処理を詳細に説明する。
[Fill process flow]
FIG. 12 is a flowchart for explaining an example of the painting process in the present invention. In the figure, S indicates a step (process). Hereinafter, the filling process will be described in detail with reference to FIG.

画像合成及び,ベクタ画像にあたり,これら合成対象画像のうち最大レイヤ画像幅を変数TotalXにセットを行う(S101)。ステータスを示す変数Stateを初期化する(S102)。前に描かれたベクタ画像のエッジ情報を格納するメモリであるPreEdgeInfo(プレエッジインフォーメイション)を初期化する(S103)。S101〜S103のうち2つ又は全てのステップは,好ましくは同時又は並行して行われる。これにより前処理が完了する。   For image composition and vector images, the maximum layer image width of these compositing target images is set to the variable TotalX (S101). A variable State indicating the status is initialized (S102). PreEdgeInfo (pre-edge information), which is a memory for storing edge information of the previously drawn vector image, is initialized (S103). Two or all of the steps S101 to S103 are preferably performed simultaneously or in parallel. This completes the preprocessing.

その後,ブロックループステップ(S104)が始まる。各レイヤから最小幅の画像を求める(ステップS105)。ステップS105の工程で求められた最小幅の変数であるCurrentWidth(カレントウイズ(現状況での最小幅))によって規定されるブロック単位で処理を行うと同時に,変数TotalXからCurrentWidthを減算し,未処理の水平幅を保持するとともにブロック幅を更新する。S106によって,S104のブロックループステップ内では,ブロック幅の更新以降,y方向ループステップ(S107)により,垂直方向に処理を進めるとともに,レイヤループステップ(S108)以降,描画対象レイヤ判定ステップ(S124)において,レイヤ画像及び,ベクタ画像の判断を行う。一方,それぞれのレイヤ画像のx方向ループステップ(S125),ベクタ画像x方向ループステップ(S109)以降,水平方向の処理を行う。   Thereafter, the block loop step (S104) starts. An image having the minimum width is obtained from each layer (step S105). Processing is performed in units of blocks defined by CurrentWidth (current width (minimum width in the current situation)), which is the minimum width variable obtained in step S105. At the same time, CurrentWidth is subtracted from variable TotalX, and unprocessed Keep the horizontal width of and update the block width. By S106, within the block loop step of S104, after updating the block width, the y-direction loop step (S107) advances the process in the vertical direction, and after the layer loop step (S108), the drawing target layer determination step (S124) The layer image and the vector image are determined in step. On the other hand, horizontal processing is performed after the x direction loop step (S125) and the vector image x direction loop step (S109) of each layer image.

ベクタ画像に対する処理について,ベクタ画像x方向ループステップ(S109)以降,ベクタ画像エッジ情報判定ステップにて,エッジ情報生成部(4)内にて生成されるエッジの有無,対象エッジのy方向の符号を保持する2ビットからなるエッジ情報変数EdgeInfoを用いて,エッジの有無の判定を行う(S110)。もし,対象画素にエッジ情報がある場合は,以前に見つかったエッジ情報情報メモリであるPreEdgeInfoに格納されている値と今回のエッジ情報を比較する(前回エッジとの差分判定ステップ:S111)。S111において,前回エッジ情報と違うかどうかを判定をし,判定の結果,違う場合は,エッジ情報更新ステップ(S112)にてPreEdgeInfoに格納された前回のエッジ情報変数情報を更新すると同時に,ステータス変数Stateの反転演算を行うことで,塗りつぶし領域の有効化・無効化の制御を行う。   Regarding processing for vector images, the presence or absence of edges generated in the edge information generation unit (4) in the vector image edge information determination step after the vector image x-direction loop step (S109), the y-direction code of the target edge The presence / absence of an edge is determined using an edge information variable EdgeInfo consisting of 2 bits for holding (S110). If the target pixel has edge information, the value stored in PreEdgeInfo, which is an edge information information memory previously found, is compared with the current edge information (difference determination step with previous edge: S111). In S111, it is determined whether or not it is different from the previous edge information. If the result is different, the previous edge information variable information stored in PreEdgeInfo is updated at the edge information update step (S112) and at the same time, the status variable Enables / disables the filled area by performing State inversion.

その後,ステータス変数Stateが1の場合は塗りつぶし領域,0の場合は塗りつぶし対象外領域と定義し,ステータス判定ステップ(S113)にて,分岐を行い,もし,塗りつぶし領域である場合は,ベクタ画像塗りつぶし時のラインメモリから背景画像データ読み出す(S115)。そして,画像データ読み出しを行い,ベクタ画像塗りつぶし時のベクタ画像及び背景画像のブレンディングを行う(S116)。S116にて,対象画素の透過度を示すたとえば4ビットからなる変数EdgeAlphaを用いて,ブレンディング演算を行い,ベクタ画像塗りつぶし時のベクタ画像結果のラインメモリへの格納する(S117)。S117にて,ラインメモリへの合成結果画素データの格納を行う。   After that, if the status variable State is 1, it is defined as a filled area, and if it is 0, it is defined as a non-filled area. In the status determination step (S113), branching is performed. The background image data is read from the current line memory (S115). Then, the image data is read out, and the vector image and the background image at the time of painting the vector image are blended (S116). In S116, blending calculation is performed using, for example, a 4-bit variable EdgeAlpha indicating the transparency of the target pixel, and the vector image result at the time of filling the vector image is stored in the line memory (S117). In S117, the resultant pixel data is stored in the line memory.

また,ステータス判定ステップ(S113)にて,分岐を行い,もし,塗りつぶしを行わない領域である場合は,ベクタ画像塗りつぶしを行わないときのエッジ透過度を判定する(S119)。S119にて,対象画素の透過度を示す4ビットからなる変数EdgeAlphaが0xfでない場合つまり,半透過である場合は,ベクタ画像塗りつぶしを行わない時のラインメモリから背景画像データ読み出す(S120)。そして,画像データ読み出しを行い,ベクタ画像塗りつぶしを行わない時のベクタ画像及び背景画像のブレンディングを行う(S121)。S121にて,対象画素の透過度を示す4ビットからなる変数EdgeAlphaを用い,ブレンディング演算を行い,ベクタ画像塗りつぶしを行わない時のベクタ画像結果をラインメモリへの格納する(S122)。S122にて,ラインメモリへの合成結果画素データを格納する。一方,対象画素の透過度を示す4ビットからなる変数EdgeAlphaが0xfである場合つまり,不透過である場合は,ブレンディング演算を行わないで,ベクタ画像塗りつぶしを行わない時のベクタ画像結果のラインメモリへの格納する(S122)。S122にて,ラインメモリへの合成結果画素データを格納する。   In the status determination step (S113), branching is performed. If the region is not to be filled, the edge transparency when the vector image is not filled is determined (S119). If the 4-bit variable EdgeAlpha indicating the transparency of the target pixel is not 0xf in S119, that is, if it is semi-transparent, the background image data is read from the line memory when the vector image is not filled (S120). Then, the image data is read and the vector image and the background image are blended when the vector image is not filled (S121). In S121, a 4-bit variable EdgeAlpha indicating the transparency of the target pixel is used to perform a blending operation, and the vector image result when the vector image is not filled is stored in the line memory (S122). In S122, the combined result pixel data to the line memory is stored. On the other hand, if the 4-bit variable EdgeAlpha indicating the transparency of the target pixel is 0xf, that is, if it is non-transparent, the blending operation is not performed, and the line memory of the vector image result when the vector image is not filled (S122). In S122, the combined result pixel data to the line memory is stored.

また,これから合成を行う対象画像が,レイヤ画像かどうか判断する(S124)。レイヤ画像である場合は,レイヤ画像x方向ループステップ(S125)以降の処理により,水平方向の処理を行う。   Also, it is determined whether the target image to be synthesized is a layer image (S124). In the case of a layer image, horizontal processing is performed by processing after the layer image x-direction loop step (S125).

レイヤ画像x方向ループステップ(S125)以降の水平方向の処理においては,レイヤ画像描画時のエッジ透過度判定ステップ(S126)にて,対象画素位置におけるエッジ画像の透過度を示す4ビットからなる変数EdgeAlphaを判断する。そして,対象画素位置におけるエッジ画像の透過度を示す4ビットからなる変数EdgeAlphaが0xfでない場合つまり,半透過である場合は,レイヤ画像ラインメモリから背景画像データ読み出す(S127)。画像データ読み出しを行い,レイヤ画像のレイヤ画像及び背景画像のブレンディングステップ(S128)にて,対象画素の透過度を示す4ビットからなる変数EdgeAlphaを用いて,ブレンディング演算を行う。その後,レイヤ画像のレイヤ画像結果のラインメモリへ格納する(S129)。   In the horizontal processing after the layer image x-direction loop step (S125), a 4-bit variable indicating the transparency of the edge image at the target pixel position in the edge transparency determination step (S126) when rendering the layer image. Judge EdgeAlpha. If the 4-bit variable EdgeAlpha indicating the transparency of the edge image at the target pixel position is not 0xf, that is, if it is semi-transparent, the background image data is read from the layer image line memory (S127). Image data is read, and blending is performed using a 4-bit variable EdgeAlpha indicating the transparency of the target pixel in the blending step (S128) of the layer image and background image of the layer image. Thereafter, the layer image result of the layer image is stored in the line memory (S129).

対象画素の透過度を示す4ビットからなる変数EdgeAlphaが0xfである場合つまり,不透過である場合は,ブレンディング演算を行わないで,レイヤ画像ブレンディングを行わないときのレイヤ画像結果のラインメモリへの格納ステップ(S130)にて,ラインメモリへの合成結果画素データの格納を行う。   When the 4-bit variable EdgeAlpha indicating the transparency of the target pixel is 0xf, that is, when it is non-transparent, the blending operation is not performed, and the layer image result when the layer image blending is not performed is transferred to the line memory. In the storing step (S130), the combined result pixel data is stored in the line memory.

ベクタ画像及び,レイヤ画像の処理を水平方向に処理をおこなった後(S131,S123),ステータス変数State及び前回のエッジ情報メモリであるPreEdgeInfoの初期化を行い,レイヤごとの画像重ね合わせ処理(S134),及び水平方向の処理(S135)を行う。その後,TotalX終了判定ステップ(S136)においてブロックループに関して終了判定を行い,全画面について処理を完了した場合,ブロックループ終端ステップ(S137)後,塗りつぶし処理終了となる(S138)。   After processing the vector image and the layer image in the horizontal direction (S131, S123), the status variable State and PreEdgeInfo which is the previous edge information memory are initialized, and the image overlay processing for each layer (S134). ) And horizontal processing (S135). After that, in the TotalX end determination step (S136), the end determination is made regarding the block loop, and when the processing is completed for all screens, the paint processing ends after the block loop end step (S137) (S138).

[プログラム]
本発明の画像生成装置は,基本的にはハードウェア,又はハードウェアとソフウェアとの協働により実装される。そのようなソフトウェアとして,コンピュータを,あるピクセルにおけるポリゴンのエッジ情報を格納するためのエッジ情報格納メモリとしての手段と,ベクトル形式のポリゴンの形状データを格納するためのベクタデータ格納メモリとしての手段と,前記ベクタデータ格納メモリに格納されたポリゴンの形状データに基づいてラスタライズ処理を行い,ラスタライズ結果であるポリゴンのエッジ情報を前記エッジ情報格納メモリに書き出すためのエッジ情報生成部としての手段と,少なくとも背景に関する画像情報及び複数のレイヤごとの画像情報を格納するレイヤ画像格納メモリとしての手段,前記エッジ情報格納メモリに格納されたエッジ情報を用いて,ベクタ形式で定義された画像の内部を塗りつぶす際に,前記レイヤ画像格納メモリに格納された背景に関する画像情報及びレイヤごとの画像情報を読み出して,ベクタ形式の画像及びレイヤごとの画像情報を重ね合わせ,ピクセル単位の画像処理演算を行うことによりピクセル単位の画像合成を行う画像合成部としての手段と,前記画像合成部が合成した画像を記憶するための結果画像格納メモリとしての手段として機能させるプログラムがあげられる。それらの各手段は,上記において説明したものと同様に機能するので,ここでは上記の記載を準用することとする。
[program]
The image generation apparatus of the present invention is basically implemented by hardware or cooperation between hardware and software. As such software, a computer can be used as an edge information storage memory for storing polygon edge information at a pixel, and as a vector data storage memory for storing polygonal shape data in vector format. , Means for performing rasterization processing based on polygon shape data stored in the vector data storage memory, and writing out edge information of the polygon as a rasterization result to the edge information storage memory, and at least Means as a layer image storage memory for storing image information relating to the background and image information for each of a plurality of layers, and using the edge information stored in the edge information storage memory to fill the inside of an image defined in vector format In addition, the layer image storage memo The image information for each pixel is synthesized by reading the image information related to the background and the image information for each layer stored in the image, superimposing the vector format image and the image information for each layer, and performing the image processing operation for each pixel. A program that functions as a unit as a synthesis unit and a unit as a result image storage memory for storing the image synthesized by the image synthesis unit can be given. Since each of these functions functions in the same manner as described above, the above description will be applied here.

[記録媒体]
本発明は,上記のプログラムを格納した,コンピュータにより読み取ることができる記録媒体をも提供できる。このような記録媒体としては,CD−ROM,DVD,ハードディスク又はコンピュータ内のメモリなどがあげられる。そして,コンピュータの入力部に所定の情報が入力さると,制御部の指令を受けてプログラムが読み取され,制御部の指令を受けた演算部が,読み出されたプログラムを用いて,入力されたデータや,記憶部に記憶されるデータなどを読み出し,例えば記憶部のメモリを作業領域として利用し,所定の演算を行う。演算結果は,例えばメモリに一時的に記憶された後,出力部から出力される。これらのデータは,例えばバスを通じて,伝達されればよい。このようにして,ハードウェア資源とプログラムとが協働した処理が行われる。
[recoding media]
The present invention can also provide a computer-readable recording medium storing the above program. Examples of such a recording medium include a CD-ROM, a DVD, a hard disk, or a memory in a computer. When predetermined information is input to the input unit of the computer, the program is read in response to a command from the control unit, and the arithmetic unit that receives the command from the control unit is input using the read program. Data, data stored in the storage unit, and the like are read out, and for example, the memory of the storage unit is used as a work area to perform predetermined calculations. The calculation result is temporarily stored in, for example, a memory and then output from the output unit. These data may be transmitted through a bus, for example. In this way, processing in which hardware resources and programs cooperate is performed.

[コンピュータの構成]
図13は,本発明のある実施態様(コンピュータ)を示すブロック図である。この実施態様は,コンピュータグラフィックスによるコンピュータ(グラフィック用コンピュータなど)に関する。図13に示されるとおり,このコンピュータ101は,中央演算装置(CPU)102,ジオメトリ演算回路103などのジオメトリ演算部,レンダラー104などの描画部,テクスチャ生成回路105などのテクスチャ生成部,照光処理回路107などの照光処理部,表示回路108などの表示情報作成部,フレームバッファ109,及びモニター110を具備する。これらの要素は,バスなどにより接続され,相互にデータを伝達できる。そのほか,図示しないメインメモリや,各種テーブル,ワーク領域となるワークメモリ111,テクスチャを格納するテクスチャメモリ112などを具備する記憶部などを有しても良い。各部を構成するハードウェアは,例えばバスなどを介して連結されている。なお,記憶部は,VRAMなどのRAMや,CR−ROM,DVD,ハードディスクなどにより構成されても良い。
[Computer configuration]
FIG. 13 is a block diagram showing an embodiment (computer) of the present invention. This embodiment relates to a computer based on computer graphics (such as a graphic computer). As shown in FIG. 13, the computer 101 includes a central processing unit (CPU) 102, a geometry calculation unit such as a geometry calculation circuit 103, a rendering unit such as a renderer 104, a texture generation unit such as a texture generation circuit 105, and an illumination processing circuit. An illumination processing unit such as 107, a display information creation unit such as a display circuit 108, a frame buffer 109, and a monitor 110 are provided. These elements are connected by a bus or the like and can transmit data to each other. In addition, a storage unit including a main memory (not shown), various tables, a work memory 111 serving as a work area, a texture memory 112 storing textures, and the like may be included. The hardware constituting each unit is connected via a bus, for example. The storage unit may be configured by a RAM such as a VRAM, a CR-ROM, a DVD, a hard disk, or the like.

中央演算装置(CPU)102は,画像を生成するためのプログラムなどを制御するための装置である。ワークメモリ111は,CPU102で使用するデータ及びディスプレイリストなどを記憶してもよい。そして,CPU102は,メインメモリに記憶されたプログラムなどを読み出して,所定の処理を行ってもよい。ただし,ハードウェア処理のみにより所定の処理を行っても良い。CPU102は,たとえばワークメモリ111から,ワールド座標の3次元オブジェクトデータとしてのポリゴンデータを読出し,ポリゴンデータをジオメトリ演算回路103へ出力する。具体的には,メインプロセッサ,コプロセッサ,データ処理プロセッサ,四則演算回路又は汎用演算回路などを適宜有するものがあげられる。これらはバスなどにより連結され,信号の授受が可能とされる。また,圧縮された情報を伸張するためのデータ伸張プロセッサを備えても良い。   A central processing unit (CPU) 102 is a device for controlling a program or the like for generating an image. The work memory 111 may store data used by the CPU 102, a display list, and the like. Then, the CPU 102 may read a program or the like stored in the main memory and perform a predetermined process. However, the predetermined processing may be performed only by hardware processing. For example, the CPU 102 reads polygon data as world coordinate three-dimensional object data from the work memory 111 and outputs the polygon data to the geometry calculation circuit 103. Specifically, a processor having a main processor, a coprocessor, a data processor, four arithmetic operation circuits, a general-purpose operation circuit, or the like as appropriate. These are connected by a bus or the like so that signals can be exchanged. In addition, a data expansion processor for expanding compressed information may be provided.

ジオメトリ演算回路103は,入力されたポリゴンデータに対して,視点を原点とする視点座標系のデータに座標変換などを行うための回路である。ジオメトリ演算回路103は,処理したポリゴンデータを,レンダラー104へ出力する。具体的なジオメトリ演算回路として,前記メインプロセッサとバスなどで連結された,ジオメトリプロセッサ,コプロセッサ,データ処理プロセッサ,四則演算回路又は汎用演算回路などがあげられる。   The geometry calculation circuit 103 is a circuit for performing coordinate conversion or the like on the input polygon data to data in a viewpoint coordinate system with the viewpoint as the origin. The geometry calculation circuit 103 outputs the processed polygon data to the renderer 104. Specific geometry operation circuits include a geometry processor, coprocessor, data processor, four arithmetic operation circuit, or general-purpose operation circuit connected to the main processor through a bus.

レンダラー104は,ポリゴン単位のデータをピクセル単位のデータに変換するための回路又は装置である。レンダラー104は,ピクセル単位のデータをテクスチャ生成回路105へ出力する。具体的なレンダラー104として,前記メインプロセッサとバスなどで連結されたデータ処理プロセッサ,四則演算回路又は汎用演算回路などがあげられる。   The renderer 104 is a circuit or device for converting polygon unit data into pixel unit data. The renderer 104 outputs data in units of pixels to the texture generation circuit 105. Specific examples of the renderer 104 include a data processor, four arithmetic operation circuits, or a general-purpose arithmetic circuit connected to the main processor through a bus.

テクスチャ生成回路105は,テクスチャメモリ112に記憶されるテクスチャデータに基づき,ピクセル単位のテクスチャカラーを生成するための回路である。テクスチャ生成回路105は,テクスチャカラー情報を有するピクセル単位のデータを,照光処理回路107へ出力する。具体的なテクスチャ生成回路105として,前記メインプロセッサとバスなどで連結されたデータ処理プロセッサ,四則演算回路又は汎用演算回路などがあげられる。   The texture generation circuit 105 is a circuit for generating a texture color in units of pixels based on the texture data stored in the texture memory 112. The texture generation circuit 105 outputs pixel unit data having texture color information to the illumination processing circuit 107. Specific examples of the texture generation circuit 105 include a data processor connected to the main processor through a bus, a four arithmetic operation circuit, or a general-purpose operation circuit.

照光処理回路107は,テクスチャカラー情報を有するポリゴンに対し,ピクセル単位で法線ベクトル,重心座標などを利用して陰影付けなどを行うための回路である。照光処理回路107は,陰影付けした画像データを,表示回路108へ出力する。具体的な照光処理回路107として,前記メインプロセッサとバスなどで連結されたデータ処理プロセッサ,四則演算回路又は汎用演算回路などがあげられる。そして,メモリに格納されたテーブルなどから適宜光に関する情報を読み出して陰影付けを行えばよい。   The illumination processing circuit 107 is a circuit for performing shading on a polygon having texture color information using a normal vector, a barycentric coordinate, and the like in pixel units. The illumination processing circuit 107 outputs the shaded image data to the display circuit 108. Specific examples of the illumination processing circuit 107 include a data processor connected to the main processor through a bus, a four arithmetic operation circuit, or a general-purpose operation circuit. Then, information relating to light may be appropriately read out from a table stored in the memory and the like to perform shading.

表示回路108は,照光処理回路107から入力された画像データをフレームバッファ109に書き込み,またフレームバッファ109に書き込まれた画像データを読み出し,制御して表示画像情報を得るための回路である。表示回路108は,表示画像情報をモニター110へ出力する。具体的な表示回路として,前記メインプロセッサとバスなどで連結された描画プロセッサ,データ処理プロセッサ,四則演算回路又は汎用演算回路などがあげられる。   The display circuit 108 is a circuit for writing the image data input from the illumination processing circuit 107 to the frame buffer 109, reading the image data written in the frame buffer 109, and controlling it to obtain display image information. The display circuit 108 outputs the display image information to the monitor 110. Specific examples of the display circuit include a drawing processor, a data processor, four arithmetic operation circuits, and a general-purpose operation circuit connected to the main processor through a bus.

モニター110は,入力された表示画像情報にしたがって,コンピュータグラフィックス画像を表示するための装置である。   The monitor 110 is a device for displaying a computer graphics image in accordance with input display image information.

本発明のコンピュータは,レンダラー,テクスチャ生成回路及び,表示装置として,本発明の画像生成装置を具備するので,これらにおける回路素子を共用することで,ハードウェアの規模を小さくできる。また,ジオメトリ部を2Dベクタ画像に適用することで,2Dベクタ画像に対するジオメトリ変換が可能となり,専用ハードウェアまたは,ソフトウェアによる演算を加えることなく,行列演算による形状変形,拡大縮小をベクタ画像に対して行うことができる。さらに,従来別々の物と扱われてきた,2D及び3Dの表示命令を一元的に扱うことが可能となり,また,これら2D/3D画像の合成についても同時に処理を行うことができることから,システムが複雑になる事態を効果的に防止できる。   Since the computer of the present invention includes the image generation apparatus of the present invention as a renderer, a texture generation circuit, and a display device, the scale of hardware can be reduced by sharing the circuit elements in these. In addition, by applying the geometry part to 2D vector images, it is possible to perform geometry conversion on 2D vector images, and shape transformation and scaling by matrix operations can be performed on vector images without adding dedicated hardware or software operations. Can be done. In addition, 2D and 3D display commands that have been treated as separate objects can be handled in a unified manner, and the composition of these 2D / 3D images can be performed at the same time. The situation which becomes complicated can be prevented effectively.

[コンピュータの動作]
以下,コンピュータを用いて画像を生成する動作例を説明する。CPU102は,ワークメモリ111から,ポリゴンデータを読出し,ポリゴンデータをジオメトリ演算回路103へ出力する。ジオメトリ演算回路103は,入力されたポリゴンデータに対して,視点を原点とする視点座標系のデータに座標変換するなどの処理を行う。ジオメトリ演算回路103は,処理したポリゴンデータを,レンダラー104へ出力する。レンダラー104は,ポリゴン単位のデータをピクセル単位のデータに変換する。レンダラー104とテクスチャ生成回路105は,テクスチャメモリ112に記憶されるテクスチャデータに基づき,ピクセル単位のテクスチャカラーを生成する。テクスチャ生成回路105は,テクスチャカラー情報を有するピクセル単位のデータを,照光処理回路107へ出力する。照光処理回路107は,テクスチャカラー情報を有するポリゴンに対し,ピクセル単位で法線ベクトル,重心座標などを利用して陰影付けを行う。照光処理回路107は,陰影付けした画像データを,表示回路108へ出力する。表示回路108は,照光処理回路107から入力された画像データをフレームバッファ109に書き込み,またフレームバッファ109に書き込まれた画像データを読み出し,表示画像情報を得る。また,このとき同時にエッジバッファ等の情報を用いることで,2D/3Dの合成処理を行うことができる。表示回路108は,表示画像情報をモニター110へ出力する。モニター110は,入力された表示画像情報にしたがって,コンピュータグラフィックス画像を表示する。
[Computer operation]
Hereinafter, an operation example of generating an image using a computer will be described. The CPU 102 reads polygon data from the work memory 111 and outputs the polygon data to the geometry calculation circuit 103. The geometry calculation circuit 103 performs processing such as coordinate conversion of the input polygon data into data of a viewpoint coordinate system with the viewpoint as the origin. The geometry calculation circuit 103 outputs the processed polygon data to the renderer 104. The renderer 104 converts polygon unit data into pixel unit data. The renderer 104 and the texture generation circuit 105 generate a texture color in units of pixels based on the texture data stored in the texture memory 112. The texture generation circuit 105 outputs pixel unit data having texture color information to the illumination processing circuit 107. The illumination processing circuit 107 shades a polygon having texture color information using a normal vector, barycentric coordinates, etc. in pixel units. The illumination processing circuit 107 outputs the shaded image data to the display circuit 108. The display circuit 108 writes the image data input from the illumination processing circuit 107 into the frame buffer 109, reads out the image data written into the frame buffer 109, and obtains display image information. At the same time, 2D / 3D synthesis processing can be performed by using information such as an edge buffer. The display circuit 108 outputs the display image information to the monitor 110. The monitor 110 displays a computer graphics image according to the input display image information.

本発明のコンピュータは,レンダラー,テクスチャ生成回路及び,表示装置として,本発明の画像生成装置を具備するので,これらにおける回路素子を共用することで,ハードウェアの規模を小さくできる。また,ジオメトリ部を2Dベクタ画像に適用することで,2Dベクタ画像に対するジオメトリ変換が可能となり,専用ハードウェアまたは,ソフトウェアによる演算を加えることなく,行列演算による形状変形,拡大縮小をベクタ画像に対して行うことができる。さらに,従来別々の物と扱われてきた,2D・ベクタ及び3Dの表示命令を一元的に扱うことが可能となり,また,これら2D/3D及びベクタ画像の合成についても同時に処理を行うことができることから,システムが複雑になる事態を効果的に防止できる。   Since the computer of the present invention includes the image generation apparatus of the present invention as a renderer, a texture generation circuit, and a display device, the scale of hardware can be reduced by sharing the circuit elements in these. In addition, by applying the geometry part to 2D vector images, it is possible to perform geometry conversion on 2D vector images, and shape transformation and scaling by matrix operations can be performed on vector images without adding dedicated hardware or software operations. Can be done. In addition, 2D / vector and 3D display commands that have been handled as separate objects can be handled in a unified manner, and the 2D / 3D and vector images can be combined simultaneously. Therefore, it is possible to effectively prevent the system from becoming complicated.

[ゲーム機の構成]
図14は,本発明のある実施形態(ゲーム機)のブロック図である。このブロック図で表される実施形態は,特に携帯用,家庭用又は業務用のゲーム機として好適に利用されうる。そこで,以下では,ゲーム機として説明する。なお,同図に示されるゲーム機は,少なくとも処理部200を含めばよく(又は処理部200と記憶部270,又は処理部200と記憶部270と情報記憶媒体280を含んでもよく),それ以外のブロック(例えば操作部260,表示部290,音出力部292,携帯型情報記憶装置294,通信部296)については,任意の構成要素とすることができる。
[Game console configuration]
FIG. 14 is a block diagram of an embodiment (game machine) according to the present invention. The embodiment represented by this block diagram can be suitably used particularly as a portable, home or business game machine. Therefore, in the following, it will be described as a game machine. Note that the game machine shown in the figure may include at least the processing unit 200 (or may include the processing unit 200 and the storage unit 270, or the processing unit 200, the storage unit 270, and the information storage medium 280). These blocks (for example, the operation unit 260, the display unit 290, the sound output unit 292, the portable information storage device 294, and the communication unit 296) can be arbitrary constituent elements.

処理部200は,システム全体の制御,システム内の各ブロックへの命令の指示,ゲーム処理,画像処理,音処理などの各種の処理を行うものである。処理部200の機能は,各種プロセッサ(CPU,DSP等),又はASIC(ゲートアレイ等)などのハードウェアや,所与のプログラム(ゲームプログラム)により実現できる。
The processing unit 200 performs various processes such as control of the entire system, instruction instruction to each block in the system, game processing, image processing, and sound processing. The function of the processing unit 200 can be realized by hardware such as various processors (CPU, DSP, etc.) or ASIC (gate array, etc.) and a given program (game program).

操作部260は,プレーヤが操作データを入力するためのものである。操作部260は,の機能は,例えば,レバー,ボタン,外枠,及びハードウェアを備えたコントローラにより実現できる。なお,特に携帯用ゲーム機の場合は,操作部260は,ゲーム機本体と一体として形成されても良い。コントローラからの処理情報は,シリアルインターフェース(I/F)やバスを介してメインプロセッサなどに伝えられる。   The operation unit 260 is for the player to input operation data. The function of the operation unit 260 can be realized by, for example, a controller including a lever, a button, an outer frame, and hardware. In particular, in the case of a portable game machine, the operation unit 260 may be formed integrally with the game machine body. Processing information from the controller is transmitted to the main processor via a serial interface (I / F) or bus.

記憶部270は,処理部200や通信部296などのワーク領域となるものである。また,プログラムや各種テーブルなどを格納しても良い。記憶部270は,例えば,メインメモリ272,フレームバッファ274,及びテクスチャ記憶部276を含んでもよく,そのほか各種テーブルなどを記憶しても良い。記憶部270の機能は,ROMやRAMなどのハードウェアにより実現できる。
RAMとして,VRAM,DRAM又はSRAMなどがあげられ,用途に応じて適宜選択すればよい。フレームバッファ274を構成するVRAMなどは,各種プロセッサの作業領域として用いられる。
The storage unit 270 is a work area such as the processing unit 200 or the communication unit 296. In addition, programs and various tables may be stored. The storage unit 270 may include, for example, a main memory 272, a frame buffer 274, and a texture storage unit 276, and may also store various tables. The function of the storage unit 270 can be realized by hardware such as ROM and RAM.
Examples of the RAM include VRAM, DRAM, and SRAM, and may be appropriately selected depending on the application. A VRAM or the like constituting the frame buffer 274 is used as a work area for various processors.

情報記憶媒体(コンピュータにより使用可能な記憶媒体)280は,プログラムやデータなどの情報を格納するものである。情報記憶媒体280は,いわゆるゲームカセットなどとして販売されうる。そして,情報記憶媒体280の機能は,光ディスク(CD,DVD),光磁気ディスク(MO),磁気ディスク,ハードディスク,磁気テープ,又はメモリ(ROM)などのハードウェアにより実現できる。処理部200は,この情報記憶媒体280に格納される情報に基づいて種々の処理を行う。情報記憶媒体280には,本発明(本実施形態)の手段(特に処理部200に含まれるブロック)を実行するための情報(プログラム又はプログラム及びデータ)が格納される。なお,上記記憶部にプログラムやデータなどの情報を格納した場合は,情報記憶媒体280は必ずしも必要ない。情報記憶媒体280に格納される情報の一部又は全部は,例えば,システムへの電源投入時等に記憶部270に転送されることになる。また,情報記憶媒体280に記憶される情報として,所定の処理を行うためのプログラムコード,画像データ,音データ,表示物の形状データ,テーブルデータ,リストデータ,本発明の処理を指示するための情報,その指示に従って処理を行うための情報等の少なくとも2つを含むものがあげられる。
An information storage medium (storage medium usable by a computer) 280 stores information such as programs and data. The information storage medium 280 can be sold as a so-called game cassette. The function of the information storage medium 280 can be realized by hardware such as an optical disk (CD, DVD), a magneto-optical disk (MO), a magnetic disk, a hard disk, a magnetic tape, or a memory (ROM). The processing unit 200 performs various processes based on information stored in the information storage medium 280. The information storage medium 280 stores information (program or program and data) for executing the means of the present invention (this embodiment) (particularly, the blocks included in the processing unit 200). Note that the information storage medium 280 is not necessarily required when information such as programs and data is stored in the storage unit. Part or all of the information stored in the information storage medium 280 is transferred to the storage unit 270 when the system is powered on, for example. Further, as information stored in the information storage medium 280, program code for performing a predetermined process, image data, sound data, display object shape data, table data, list data, and instructions for instructing the processing of the present invention. Information including at least two of information, information for processing according to the instruction, and the like.

表示部290は,本実施形態により生成された画像を出力するものであり,その機能は,CRT(ブラウン管),LCD(液晶),OEL(有機電界発光素子),PDP(プラズマディスプレイパネル)又はHMD(ヘッドマウントディスプレイ)などのハードウェアにより実現できる。
The display unit 290 outputs an image generated according to the present embodiment, and functions thereof are CRT (CRT), LCD (Liquid Crystal), OEL (Organic Electroluminescent Device), PDP (Plasma Display Panel), or HMD. It can be realized by hardware such as (head mounted display).

音出力部292は,音を出力するものである。音出力部292の機能は,スピーカなどのハードウェアにより実現できる。音出力は,例えばバスを介してメインプロセッサなどと接続されたサウンドプロセッサにより,音処理が施され,スピーカなどの音出力部から出力される。   The sound output unit 292 outputs sound. The function of the sound output unit 292 can be realized by hardware such as a speaker. The sound output is processed by a sound processor connected to the main processor or the like via a bus, for example, and output from a sound output unit such as a speaker.

携帯型情報記憶装置294は,プレーヤの個人データやセーブデータなどが記憶されるものである。この携帯型情報記憶装置294としては,メモリカードや携帯型ゲーム装置などがあげられる。携帯型情報記憶装置294の機能は,メモリカード,フラッシュメモリ,ハードディスク,USBメモリなど公知の記憶手段により達成できる。   The portable information storage device 294 stores player personal data, save data, and the like. Examples of the portable information storage device 294 include a memory card and a portable game device. The functions of the portable information storage device 294 can be achieved by known storage means such as a memory card, flash memory, hard disk, and USB memory.

通信部296は,外部(例えばホスト装置や他の画像生成システム)との間で通信を行うための各種の制御を行う任意のものである。通信部296の機能は,各種プロセッサ,又は通信用ASICなどのハードウェアや,プログラムなどにより実現できる。
The communication unit 296 is an arbitrary unit that performs various controls for communicating with the outside (for example, a host device or other image generation system). The function of the communication unit 296 can be realized by various processors, hardware such as a communication ASIC, a program, or the like.

ゲーム機を実行するためのプログラム又はデータは,ホスト装置(サーバー)が有する情報記憶媒体からネットワーク及び通信部296を介して情報記憶媒体280に配信するようにしてもよい。   The program or data for executing the game machine may be distributed from the information storage medium included in the host device (server) to the information storage medium 280 via the network and the communication unit 296.

処理部200は,ゲーム処理部220,画像処理部230,及び音処理部250を含むものがあげられる。具体的には,メインプロセッサ,コプロセッサ,ジオメトリプロセッサ,描画プロセッサ,データ処理プロセッサ,四則演算回路又は汎用演算回路などがあげられる。これらは適宜バスなどにより連結され,信号の授受が可能とされる。また,圧縮された情報を伸張するためのデータ伸張プロセッサを備えても良い。   Examples of the processing unit 200 include a game processing unit 220, an image processing unit 230, and a sound processing unit 250. Specific examples include a main processor, a coprocessor, a geometry processor, a drawing processor, a data processor, four arithmetic operation circuits, or a general-purpose operation circuit. These are appropriately connected by a bus or the like so that signals can be exchanged. In addition, a data expansion processor for expanding compressed information may be provided.

ここでゲーム処理部220は,コイン(代価)の受け付け処理,各種モードの設定処理,ゲームの進行処理,選択画面の設定処理,オブジェクトの位置や回転角度(X,Y又はZ軸回り回転角度)を求める処理,オブジェクトを動作させる処理(モーション処理),視点の位置(仮想カメラの位置)や視線角度(仮想カメラの回転角度)を求める処理,マップオブジェクトなどのオブジェクトをオブジェクト空間へ配置する処理,ヒットチェック処理,ゲーム結果(成果,成績)を演算する処理,複数のプレーヤが共通のゲーム空間でプレイするための処理,又はゲームオーバー処理などの種々のゲーム処理を,操作部260からの操作データや,携帯型情報記憶装置294からの個人データ,保存データや,ゲームプログラムなどに基づいて行う。   Here, the game processing unit 220 accepts coins (price), sets various modes, progresses the game, sets a selection screen, and positions and rotation angles of objects (rotation angles around the X, Y, or Z axes). , Processing to move the object (motion processing), processing to determine the position of the viewpoint (virtual camera position) and line-of-sight angle (virtual camera rotation angle), processing to place objects such as map objects in the object space, Operation data from the operation unit 260 includes various game processes such as a hit check process, a process for calculating game results (results, results), a process for a plurality of players to play in a common game space, or a game over process. Or based on personal data, stored data, game programs, etc. from the portable information storage device 294.

画像処理部230は,ゲーム処理部220からの指示等にしたがって,各種の画像処理を行うものである。また,音処理部250は,ゲーム処理部220からの指示等にしたがって,各種の音処理を行う。   The image processing unit 230 performs various types of image processing in accordance with instructions from the game processing unit 220 and the like. The sound processing unit 250 performs various types of sound processing in accordance with instructions from the game processing unit 220.

ゲーム処理部220,画像処理部230,音処理部250の機能は,その全てをハードウェアにより実現してもよいし,その全てをプログラムにより実現してもよい。又は,ハードウェアとプログラムの両方により実現してもよい。画像処理部230は,ジオメトリ演算部232(3次元座標演算部),描画部240(レンダリング部)を含むものがあげられる。
All of the functions of the game processing unit 220, the image processing unit 230, and the sound processing unit 250 may be realized by hardware, or all of them may be realized by a program. Alternatively, it may be realized by both hardware and a program. The image processing unit 230 includes one including a geometry calculation unit 232 (three-dimensional coordinate calculation unit) and a drawing unit 240 (rendering unit).

ジオメトリ演算部232は,座標変換,クリッピング処理,透視変換,又は光源計算などの種々のジオメトリ演算(3次元座標演算)を行う。そして,ジオメトリ処理後(透視変換後)のオブジェクトデータ(オブジェクトの頂点座標,頂点テクスチャ座標,又は輝度データ等)は,例えば,記憶部270のメインメモリ272に格納されて,保存される。   The geometry calculation unit 232 performs various geometry calculations (three-dimensional coordinate calculation) such as coordinate conversion, clipping processing, perspective conversion, or light source calculation. Then, the object data (after the perspective transformation) after the geometry processing (object vertex coordinates, vertex texture coordinates, luminance data, or the like) is stored in the main memory 272 of the storage unit 270 and saved, for example.

描画部240は,ジオメトリ演算後(透視変換後)のオブジェクトデータと,テクスチャ記憶部276に記憶されるテクスチャなどに基づいて,オブジェクトをフレームバッファ274に描画する。   The drawing unit 240 draws the object in the frame buffer 274 based on the object data after the geometry calculation (after perspective transformation) and the texture stored in the texture storage unit 276.

描画部240は,例えば,テクスチャマッピング部242,シェーディング処理部244を含むものがあげられる。具体的には,描画プロセッサにより実装できる。描画プロセッサは,テクスチャ記憶部,各種テーブル,フレームバッファ,VRAMなどとバスなどを介して接続され,更にディスプレイと接続される。   Examples of the drawing unit 240 include a texture mapping unit 242 and a shading processing unit 244. Specifically, it can be implemented by a drawing processor. The drawing processor is connected to a texture storage unit, various tables, a frame buffer, a VRAM, and the like via a bus and further connected to a display.

テクスチャマッピング部242は,環境テクスチャをテクスチャ記憶部276から読み出し,読み出された環境テクスチャを,オブジェクトに対してマッピングする。   The texture mapping unit 242 reads the environment texture from the texture storage unit 276, and maps the read environment texture to the object.

シェーディング処理部244は,オブジェクトに対するシェーディング処理を行う。例えば,ジオメトリ処理部232が光源計算を行い,シェーディング処理用の光源の情報や,照明モデルや,オブジェクトの各頂点の法線ベクトルなどに基づいて,オブジェクトの各頂点の輝度(RGB)を求める。シェーディング処理部244は,この各頂点の輝度に基づいて,プリミティブ面(ポリゴン,曲面)の各ドットの輝度を例えば,ホンシェーディングや,グーローシェーディングなどにより求める。   The shading processing unit 244 performs shading processing on the object. For example, the geometry processing unit 232 performs light source calculation, and obtains the luminance (RGB) of each vertex of the object based on the light source information for shading processing, the illumination model, the normal vector of each vertex of the object, and the like. Based on the luminance of each vertex, the shading processing unit 244 obtains the luminance of each dot on the primitive surface (polygon, curved surface) by, for example, phone shading or Gouraud shading.

ジオメトリ演算部232は,法線ベクトル処理部234を含むものがあげられる。法線ベクトル処理部234は,オブジェクトの各頂点の法線ベクトル(広義にはオブジェクトの面の法線ベクトル)を,ローカル座標系からワールド座標系への回転マトリクスで回転させる処理を行ってもよい。   An example of the geometry calculation unit 232 includes a normal vector processing unit 234. The normal vector processing unit 234 may perform a process of rotating the normal vector of each vertex of the object (in a broad sense, the normal vector of the object surface) with a rotation matrix from the local coordinate system to the world coordinate system. .

本発明のゲーム機は,画像処理部に,本発明の画像生成装置を具備する。これにより,回路素子の共有化を図れるとともに,ゲーム処理部220からの制御先を画像処理に関して一元化することが可能となり,ベクタ・2D・3D画像処理に関する処理部を1つにすることにより,複雑な制御を避け,システムの複雑度を低減することができる。なお,ゲーム機における構成を適宜利用すれば,スロットマシーンやパチンコ遊技機などにおける画像表示装置としても機能しうるものを得ることができる。   The game machine of the present invention includes the image generation device of the present invention in the image processing unit. As a result, the circuit elements can be shared, and the control destination from the game processing unit 220 can be unified with respect to the image processing. By combining the processing unit for vector, 2D, and 3D image processing into one, it is possible to System control can be avoided and the complexity of the system can be reduced. If the configuration of the game machine is used as appropriate, it is possible to obtain a device that can also function as an image display device in a slot machine, a pachinko gaming machine, or the like.

[ゲーム機の基本動作]
システムの電源がONになると,情報記憶媒体280に格納される情報の一部又は全部は,例えば,記憶部270に転送される。そして,ゲーム処理用のプログラムが,例えばメインメモリ272に格納され,様々なデータが,テクスチャ記憶部276や,図示しないテーブルなどに格納される。
[Basic operation of game console]
When the system is turned on, part or all of the information stored in the information storage medium 280 is transferred to the storage unit 270, for example. A game processing program is stored in, for example, the main memory 272, and various data is stored in the texture storage unit 276, a table (not shown), or the like.

操作部260からの操作情報は,例えば,図示しないシリアルインターフェイスやバスを介して,処理部200へ伝えられ,音処理や,様々な画像処理が行われる。音処理部250により処理された音情報は,バスを介して音出力部292へ伝えられ,音として放出される。また,メモリカードなどの携帯型情報記憶装置194に記憶されたセーブ情報なども,図示しないシリアルインターフェイスやバスを介して,処理部200へ伝えられ所定のデータが記憶部170から読み出される。   Operation information from the operation unit 260 is transmitted to the processing unit 200 via, for example, a serial interface or a bus (not shown), and sound processing and various image processing are performed. The sound information processed by the sound processing unit 250 is transmitted to the sound output unit 292 via the bus and released as sound. Also, save information stored in a portable information storage device 194 such as a memory card is transmitted to the processing unit 200 via a serial interface or bus (not shown), and predetermined data is read from the storage unit 170.

画像処理部230が,ゲーム処理部220からの指示等にしたがって,各種の画像処理を行う。具体的には,ジオメトリ演算部232が,座標変換,クリッピング処理,透視変換,又は光源計算などの種々のジオメトリ演算(3次元座標演算)を行う。そして,ジオメトリ処理後(透視変換後)のオブジェクトデータ(オブジェクトの頂点座標,頂点テクスチャ座標,又は輝度データ等)は,例えば,記憶部270のメインメモリ272に格納されて,保存される。次に,描画部240が,ジオメトリ演算後(透視変換後)のオブジェクトデータと,テクスチャ記憶部276に記憶されるテクスチャなどとに基づいて,オブジェクトをフレームバッファ274に描画する。   The image processing unit 230 performs various image processing in accordance with instructions from the game processing unit 220 and the like. Specifically, the geometry calculation unit 232 performs various geometry calculations (three-dimensional coordinate calculation) such as coordinate conversion, clipping processing, perspective conversion, or light source calculation. Then, the object data (after the perspective transformation) after the geometry processing (object vertex coordinates, vertex texture coordinates, luminance data, or the like) is stored in the main memory 272 of the storage unit 270 and saved, for example. Next, the drawing unit 240 draws the object in the frame buffer 274 based on the object data after the geometry calculation (after perspective transformation) and the texture stored in the texture storage unit 276.

フレームバッファ274に格納された情報は,バスを介して表示部290へ伝えられ,描画されることとなる。このようにして,コンピュータグラフィックを有するゲーム機として機能する。   The information stored in the frame buffer 274 is transmitted to the display unit 290 via the bus and drawn. In this way, it functions as a game machine having computer graphics.

本発明のゲーム機は,画像処理部に,本発明の画像生成装置を具備するので,回路素子などを共有することで,ハードウェア規模を縮減でき,ベクタ・2D・3D画像処理部を一元化することにより,システムが複雑になる事態を防止できることで,無駄なハードウェア・制御処理を少なくすることができる。前記により,開発・製造コスト,消費電力を低減することができるため,特に携帯式ゲーム機などに好適に利用される。   Since the game machine of the present invention includes the image generation apparatus of the present invention in the image processing unit, the hardware scale can be reduced by sharing circuit elements and the like, and the vector, 2D, and 3D image processing unit is unified. As a result, it is possible to reduce the wasteful hardware / control processing by preventing the system from becoming complicated. As described above, since development / manufacturing costs and power consumption can be reduced, the present invention is particularly suitable for portable game machines and the like.

[携帯電話機の構成]
図15は,本発明のある実施形態(コンピュータグラフィック機能つき携帯電話機)のブロック図である。このブロック図で表される実施形態は,特に3次元コンピュータグラフィック機能つき携帯電話機,特にゲーム機能付携帯電話や,ナビゲーション機能付形態電話として好適に利用されうる。
[Configuration of mobile phone]
FIG. 15 is a block diagram of an embodiment of the present invention (a mobile phone with a computer graphic function). The embodiment shown in this block diagram can be suitably used particularly as a mobile phone with a three-dimensional computer graphic function, particularly as a mobile phone with a game function or a mobile phone with a navigation function.

図15に示されるように,この携帯電話は,制御部221と,制御部221のためのプログラムや画像データなどが格納され,制御部や通信部などのワーク領域となるメモリ部222と,無線通信を行うための無線通信機能部223と,静止画や動画を撮影してデジタル信号に変換するCCDカメラなどの任意要素である撮像部224と,画像や文字を表示するためのLCDなどの表示部225と,テンキーや各種機能キーなどを含む操作部226と,音声通話のためのマイクなどの音声入力部227と,レシーバやスピーカなど音を出力するための音声出力部228と,当該携帯電話端末を動作させるための電池229と,電池229を安定化し各機能部へ分配する電源部230を含む。   As shown in FIG. 15, this mobile phone includes a control unit 221, a memory unit 222 that stores a program and image data for the control unit 221, and serves as a work area such as a control unit and a communication unit, and a wireless A wireless communication function unit 223 for communication, an imaging unit 224 such as a CCD camera that captures still images and moving images and converts them into digital signals, and an LCD display for displaying images and characters Unit 225, operation unit 226 including numeric keys and various function keys, voice input unit 227 such as a microphone for voice calls, voice output unit 228 for outputting sounds such as a receiver and a speaker, and the mobile phone A battery 229 for operating the terminal and a power supply unit 230 that stabilizes the battery 229 and distributes the battery 229 to each functional unit are included.

制御部201は,携帯電話システム全体の制御,システム内の各ブロックへの命令の指示,ゲーム処理,画像処理,音処理などの各種の処理を行うものである。制御部221の機能は,各種プロセッサ(CPU,DSP等),又はASIC(ゲートアレイ等)などのハードウェアや,所与のプログラム(ゲームプログラム)により実現できる。 The control unit 201 performs various processing such as control of the entire mobile phone system, instruction instruction to each block in the system, game processing, image processing, and sound processing. The function of the control unit 221 can be realized by hardware such as various processors (CPU, DSP, etc.) or ASIC (gate array, etc.), or a given program (game program).

より具体的には,制御部は,図示しない画像処理部を具備し,画像処理部は,ジオメトリ演算回路などのジオメトリ演算部と,描画部(レンダラー)とを具備する。さらに,テクスチャ生成回路,照光処理回路,又は表示回路などを具備してもよい。更には,先に説明したコンピュータやゲーム機における描画処理回路を適宜具備すればよい。   More specifically, the control unit includes an image processing unit (not shown), and the image processing unit includes a geometry calculation unit such as a geometry calculation circuit and a drawing unit (renderer). Furthermore, a texture generation circuit, an illumination processing circuit, or a display circuit may be provided. Furthermore, the drawing processing circuit in the computer or game machine described above may be provided as appropriate.

本発明の携帯電話は,制御部に含まれるジオメトリ演算部や描画部として,本発明の画像生成装置を具備するので,回路素子などを共有することで,ハードウェア規模を縮減でき,ベクタ・2D・3D画像処理部を一元化することにより,システムが複雑になる事態を防止できることで,無駄なハードウェア・制御処理を少なくすることができる。前記により,開発・製造コスト,消費電力を低減することができるため,携帯電話など小規模な電話に好適に利用される。   Since the mobile phone of the present invention includes the image generation apparatus of the present invention as a geometry calculation unit and a drawing unit included in the control unit, the hardware scale can be reduced by sharing circuit elements and the like. By unifying the 3D image processing unit, it is possible to prevent a situation where the system is complicated, thereby reducing wasteful hardware / control processing. As described above, since development / manufacturing costs and power consumption can be reduced, the present invention is suitably used for small-sized telephones such as mobile phones.

[携帯電話機の動作例]
まず,音声による通信動作について説明する。例えば音声入力部227に入力された音声は,インターフェイスによりデジタル情報に変換され,制御部221によって,所定の処理が施され,無線通信機能部223から無線信号として出力される。また,相手の音情報を受信する場合は,無線通信機能部223が無線信号を受信し,所定の変換処理が施された後,制御部221の制御を受けて,音声出力部228から出力される。
[Operation example of mobile phone]
First, the voice communication operation will be described. For example, voice input to the voice input unit 227 is converted into digital information by the interface, subjected to predetermined processing by the control unit 221, and output as a radio signal from the radio communication function unit 223. Also, when receiving the other party's sound information, the wireless communication function unit 223 receives the wireless signal, undergoes a predetermined conversion process, and then is output from the audio output unit 228 under the control of the control unit 221. The

次に,画像を処理するための動作や処理は,基本的には先に説明したコンピュータやゲーム機における動作や処理と同様である。操作部224から,図示しないインターフェイスやバスを介して処理情報が入力されると,例えば,制御部221中の画像処理部の指令に基づき,ジオメトリプロセッサなどが,RAMなどの作業領域,各種テーブルなどを適宜利用し,ジオメトリ演算を行う。さらに,制御部221のレンダラーは,制御部221中の画像処理部の指令に基づき,レンダリング処理を行う。カリング処理やクリッピング処理,アンチエイリアス処理などが適宜施された画像情報は,描画プロセッサにより所定の描画処理を施され,フレームバッファに記憶され,表示部に画像として表示される。このようにして,3次元コンピュータグラフィックスが表示される。   Next, the operation and processing for processing an image are basically the same as the operation and processing in the computer or game machine described above. When processing information is input from the operation unit 224 via an interface or bus (not shown), for example, based on an instruction of the image processing unit in the control unit 221, a geometry processor or the like can change a work area such as a RAM, various tables, or the like. Is used as appropriate to perform geometry calculations. Further, the renderer of the control unit 221 performs a rendering process based on a command from the image processing unit in the control unit 221. Image information appropriately subjected to culling processing, clipping processing, anti-aliasing processing, etc. is subjected to predetermined drawing processing by a drawing processor, stored in a frame buffer, and displayed as an image on a display unit. In this way, 3D computer graphics are displayed.

本発明の携帯電話は,制御部に含まれるジオメトリ演算部や描画部として,本発明の画像生成装置を具備するので,回路素子などを共有することで,ハードウェア規模を縮減でき,システムが複雑になる事態を防止できるので,携帯電話など小規模な電話に好適に利用される。   Since the mobile phone of the present invention includes the image generation device of the present invention as a geometry calculation unit and drawing unit included in the control unit, the hardware scale can be reduced by sharing circuit elements and the system is complicated. Therefore, it is suitable for small phones such as mobile phones.

[カーナビの構成]
図16は,本発明のある実施形態(ナビゲーションシステム)のブロック図である。このブロック図で表される実施形態は,特に3次元コンピュータグラフィック機能つきカーナビゲーションとして好適に利用されうる。図16に示されるように,このナビゲーションシステムは,GPS部241と,任意要素としての自律測位部242と,地図記憶部243と,制御部244と,表示部245と,任意要素としてのマップマッチング部246とを含むものがあげられる。
[Configuration of car navigation system]
FIG. 16 is a block diagram of an embodiment (navigation system) of the present invention. The embodiment represented by this block diagram can be suitably used particularly as a car navigation with a three-dimensional computer graphic function. As shown in FIG. 16, this navigation system includes a GPS unit 241, an autonomous positioning unit 242 as an arbitrary element, a map storage unit 243, a control unit 244, a display unit 245, and a map matching as an arbitrary element. And part 246.

GPS部241は,GPS受信機を備え,複数のGPS衛星からの電波を同時に受信して車両の測位データを得るGPS部である。GPS部241は,GPS受信機において受信したデータから車両の絶対位置を得るものであるが,この測位データには車両の位置情報の他に車両の進行方向情報,仰角情報が含まれている。   The GPS unit 241 includes a GPS receiver, and is a GPS unit that simultaneously receives radio waves from a plurality of GPS satellites and obtains vehicle positioning data. The GPS unit 241 obtains the absolute position of the vehicle from the data received by the GPS receiver. This positioning data includes the vehicle traveling direction information and the elevation angle information in addition to the vehicle position information.

自律測位部242は,自律型センサを備え,自律型センサの出力データから車両の移動距離,移動方位を算出する自律測位部である。自律型センサとしては,車輪の回転数に応じた信号を検出する車輪側センサ,車両の加速度を検出する加速度センサ,車両の角速度を検出するジャイロセンサなどが含まれる。この例では,ジャイロセンサとして,さらに車両のピッチ動作方向における姿勢角度(以下「ピッチ角」と称する)も検出できる3次元ジャイロセンサが使用されており,したがって,自律測位部242から出力される測位データには車両のピッチ角が含まれている。   The autonomous positioning unit 242 includes an autonomous sensor, and is an autonomous positioning unit that calculates the moving distance and moving direction of the vehicle from the output data of the autonomous sensor. Examples of the autonomous sensor include a wheel side sensor that detects a signal corresponding to the number of rotations of the wheel, an acceleration sensor that detects the acceleration of the vehicle, and a gyro sensor that detects the angular velocity of the vehicle. In this example, a three-dimensional gyro sensor that can also detect the attitude angle in the pitch motion direction of the vehicle (hereinafter referred to as “pitch angle”) is used as the gyro sensor. Therefore, the positioning output from the autonomous positioning unit 242 is used. The data includes the vehicle pitch angle.

地図記憶部243は,2次元地図情報,3次元道路情報,及び3次元建物情報を有するデジタル地図データが記憶された地図記憶部である。地図記憶部243を構成する記憶媒体として,CD−ROM,ハードディスクがあげられる。地図データは,データ量が大きいと読み込み時間を要するため,好ましくは複数のブロックに分割されて記憶される。また,道路情報とは,交差点や屈曲点などの主要な地点(ノード)を示す情報を有したものであってもよく,ノード情報はその地点における座標データなどを備え,道路は各ノードを結ぶ直線(リンク)として近似されてもよい。このシステムでの3次元道路情報とは,ノード情報が3次元の座標データを備えていることを意味している。   The map storage unit 243 is a map storage unit that stores digital map data having 2D map information, 3D road information, and 3D building information. As a storage medium constituting the map storage unit 243, a CD-ROM and a hard disk can be cited. The map data is preferably divided and stored in a plurality of blocks because it takes a long time to read the map data. The road information may include information indicating major points (nodes) such as intersections and inflection points. The node information includes coordinate data at the points, and the road connects each node. You may approximate as a straight line (link). The three-dimensional road information in this system means that the node information has three-dimensional coordinate data.

制御部244は,GPS部241または自律測位部242から得られた車両の位置情報に基づいて,地図記憶部243から車両の位置が該当する所定領域の地図データを読み出すなど所定の制御を行うためのものである。   The control unit 244 performs predetermined control such as reading out map data of a predetermined area corresponding to the position of the vehicle from the map storage unit 243 based on the vehicle position information obtained from the GPS unit 241 or the autonomous positioning unit 242. belongs to.

表示部245は,測位制御部244により読み出された地図データを表示するためのものである。
The display unit 245 is for displaying the map data read by the positioning control unit 244.

マップマッチング部246は,車両の測位データおよび地図データの3次元道路情報を基に,車両の位置を道路上に補正するためのものである。   The map matching unit 246 is for correcting the position of the vehicle on the road based on the positioning data of the vehicle and the three-dimensional road information of the map data.

本発明のカーナビは,たとえば,制御部に幾何演算部と描画部とを具備し,それらに本発明の画像生成装置を具備する。これにより,ベクタ・2D・3D画像処理部を一元化することにより,システムが複雑になる事態を防止できることで,制御処理を少なくすることができる。   The car navigation system of the present invention includes, for example, a control unit including a geometric operation unit and a drawing unit, and includes the image generation apparatus of the present invention. As a result, by unifying the vector, 2D, and 3D image processing units, it is possible to prevent a situation where the system is complicated, thereby reducing control processing.

[カーナビの動作例]
GPS部241が,複数のGPS衛星からの電波を同時に受信し車両の測位データを得る。自律測位部242は,自律型センサの出力データから車両の移動距離,移動方位を算出する。制御部244は,GPS部241または自律測位部242から得られたデータに所定の処理を施して車両の位置情報を得る。そして,車両の位置情報に基づいて,地図記憶部243から車両の位置に関連する所定領域の地図データを読み出す。また,図示しない操作部からの操作情報を受けて表示モードを変え,表示モードに応じた地図データを読み出す。また,制御部244は,位置情報に基づいて,所定の描画処理を行い建物の立体画像,地図の立体画像,車の立体画像などを表示する。さらに,Z値に基づいて,カリング処理などを行う。表示部245が,制御部244により読み出された地図データを表示する。
[Operation example of car navigation system]
The GPS unit 241 simultaneously receives radio waves from a plurality of GPS satellites and obtains vehicle positioning data. The autonomous positioning unit 242 calculates the moving distance and moving direction of the vehicle from the output data of the autonomous sensor. The control unit 244 performs predetermined processing on the data obtained from the GPS unit 241 or the autonomous positioning unit 242 to obtain vehicle position information. Based on the vehicle position information, map data of a predetermined area related to the vehicle position is read from the map storage unit 243. In addition, in response to operation information from an operation unit (not shown), the display mode is changed, and map data corresponding to the display mode is read. Further, the control unit 244 performs predetermined drawing processing based on the position information, and displays a 3D building image, 3D map image, 3D car image, and the like. Further, culling processing is performed based on the Z value. The display unit 245 displays the map data read by the control unit 244.

本発明のカーナビは,たとえば,幾何演算部と描画部に,本発明の画像生成装置を具備するので,回路素子などを共有することで,ハードウェア規模を縮減でき,ベクタ・2D・3D画像処理部を一元化することにより,システムが複雑になる事態を防止できる。   The car navigation system of the present invention includes, for example, the image generation apparatus of the present invention in the geometric operation unit and the drawing unit, so that the hardware scale can be reduced by sharing circuit elements and the like, and vector, 2D, and 3D image processing can be performed. By unifying the parts, it is possible to prevent the system from becoming complicated.

図17は,パチスロ機の主制御回路361を示すブロック図である。図17に示されるとおり,主制御回路361はマイクロコンピュータ(以下,「マイコン」という。)363を主な構成要素とし,これに乱数サンブリングのための回路を加えて構成されている。マイコン363は,予め設定されたプログラムに従って制御動作を行うメインCPU(中央演算処理装置)364と,プログラム(画像演出プログラムなどを含む)や各種のテーブルデータなどを格納しているROM365およびバックアップ機能付き制御RAM(以下,単にRAMと称する)366とを含んで構成されている。   FIG. 17 is a block diagram showing the main control circuit 361 of the pachislot machine. As shown in FIG. 17, the main control circuit 361 includes a microcomputer (hereinafter referred to as “microcomputer”) 363 as a main component, and is added to a circuit for random number sampling. The microcomputer 363 has a main CPU (central processing unit) 364 that performs control operations in accordance with a preset program, a ROM 365 that stores programs (including image rendering programs) and various table data, and a backup function. And a control RAM (hereinafter simply referred to as RAM) 366.

メインCPU364には,基準クロックパルスを発生するクロックパルス発生回路367および分周器368と,一定範囲の乱数を発生する乱数発生器369および発生した乱数の1つを特定するサンプリング回路370とが接続されている。さらに,メインCPU364には,後述する周辺装置(アクチュエータ)との間で信号を授受するI/Oポート371が接続されている。   Connected to the main CPU 364 are a clock pulse generation circuit 367 and a frequency divider 368 for generating a reference clock pulse, a random number generator 369 for generating a random number within a certain range, and a sampling circuit 370 for specifying one of the generated random numbers. Has been. Further, the main CPU 364 is connected to an I / O port 371 that exchanges signals with peripheral devices (actuators) described later.

ここで,R0M365は,入賞確率テーブル,図柄テーブル,入賞シンボル組合せテーブル,シーケンスプログラム,告知演出テーブルおよび演出画像プログラムを格納するように記憶部が区分され,さらに,スタートレバー328を操作(スタート操作)する毎に行われる乱数サンプリングの判定に用いられる確率抽選テーブル,停止ボタンの操作に応じてリールの停止態様を決定するための停止テーブル等が格納されている。   Here, the storage unit of R0M365 is divided so as to store a winning probability table, a symbol table, a winning symbol combination table, a sequence program, a notification effect table, and an effect image program, and further, the start lever 328 is operated (start operation). A probability lottery table used for determination of random number sampling performed each time, a stop table for determining a reel stop mode according to the operation of the stop button, and the like are stored.

マイコン363からの制御信号により動作が制御される主要なアクチュエータとしては,各リール305,306,307を回転駆動するステッピングモータ345L,345C,345R,各種ランプ(賭数表示ランプ319〜321,スタートランプ329,WINランプ330,インサートランプ332),各種表示部(クレジット表示ランプ323,遊技状態表示ランプ324〜327,ボーナスカウント表示ランプ318,配当枚数表示ランプ322),およびメダルを収納するホッパー372がある。これらはそれぞれモータ駆動回路373,各ランプ駆動回路374,各表示部駆動回路375およびホッパー駆動回路376によって駆動される。これら駆動回路373〜376は,マイコン363のI/Oポート371を介してメインCPU364に接続されている。   The main actuators whose operation is controlled by a control signal from the microcomputer 363 include stepping motors 345L, 345C, 345R for rotating the reels 305, 306, 307, various lamps (betting number display lamps 319-321, start lamps). 329, WIN lamp 330, insert lamp 332), various display units (credit display lamp 323, gaming state display lamps 324 to 327, bonus count display lamp 318, dividend display lamp 322), and hopper 372 for storing medals. . These are driven by a motor drive circuit 373, lamp drive circuits 374, display drive circuits 375 and hopper drive circuits 376, respectively. These drive circuits 373 to 376 are connected to the main CPU 364 via the I / O port 371 of the microcomputer 363.

また,マイコン363が制御信号を生成するために必要な入力信号を発生する主な入力信号発生手段としては,メダル投入口から投入されたメダルを検出する投入メダルセンサ331S,スタートレバーの操作を検出するスタートスイッチ328S,前述したBETスイッチ33,およびクレジットメダル精算スイッチ334がある。さらに,フォトセンサからの出力パルス信号を受けて各リール305,306,307の回転位置を検出するリール位置検出回路377がある。なお,フォトセンサは各リール305〜307の駆動機構に含まれており,同図では図示されていない。   The main input signal generating means for generating an input signal necessary for the microcomputer 363 to generate a control signal is a inserted medal sensor 331S for detecting a medal inserted from a medal slot, and detecting a start lever operation. There are a start switch 328S, the BET switch 33 described above, and a credit medal settlement switch 334. Further, there is a reel position detection circuit 377 that receives the output pulse signal from the photo sensor and detects the rotational position of each reel 305, 306, 307. Note that the photosensor is included in the drive mechanism of each of the reels 305 to 307 and is not shown in the drawing.

さらに,上記の入力信号発生手段としては,停止ボタン335〜337が押されたときに対応するリールを停止させる信号を発生するリール停止信号回路378と,ホッパー372から払い出されるメダル数を計数するメダル検出部372Sと,図示しない払出完了信号発生回路とがある。   Further, the input signal generating means includes a reel stop signal circuit 378 that generates a signal for stopping the corresponding reel when the stop buttons 335 to 337 are pressed, and a medal that counts the number of medals paid out from the hopper 372. There are a detection unit 372S and a payout completion signal generation circuit (not shown).

また,I/Oポート371には副制御回路381が接続されている。図18は,パチスロ機の副制御回路を示すブロック図である。   A sub control circuit 381 is connected to the I / O port 371. FIG. 18 is a block diagram showing a sub control circuit of the pachislot machine.

副制御回路381は,主制御回路361からの制御指令(コマンド)に基づいて表示装置350の表示制御およびスピーカ382L,382Rからの音の出力制御を実行する。この副制御回路381は,好ましくは,主制御回路361を構成する基板とは別の基板上に構成され,サブマイクロコンピュータ83を主たる構成要素とし,表示装置350の表示制御手段としての画像制御回路391,スピーカ382L,382Rからの出力音を制御する音源IC388,増幅器としてのパワーアンプ389で構成されている。   The sub control circuit 381 executes display control of the display device 350 and sound output control from the speakers 382L and 382R based on a control command (command) from the main control circuit 361. The sub-control circuit 381 is preferably formed on a substrate different from the substrate constituting the main control circuit 361, and the sub-microcomputer 83 is a main component, and an image control circuit as display control means of the display device 350. 391, a sound source IC 388 that controls output sound from the speakers 382L and 382R, and a power amplifier 389 as an amplifier.

サブマイクロコンピュータ383は,主制御回路61から送信された制御指令に従って制御動作を行うサブCPU384と,記憶手段としてのプログラムROM385およびワークRAM386とを含む。この例では,副制御回路381は,クロックパルス発生回路,分周器,乱数発生器及びサンプリング回路を備えていないが,サブCPU384の動作プログラム上で乱数サンプリングを実行するように構成されている。   The sub microcomputer 383 includes a sub CPU 384 that performs a control operation in accordance with a control command transmitted from the main control circuit 61, and a program ROM 385 and a work RAM 386 as storage means. In this example, the sub control circuit 381 does not include a clock pulse generation circuit, a frequency divider, a random number generator, and a sampling circuit, but is configured to execute random number sampling on the operation program of the sub CPU 384.

プログラムROM385は,サブCPU84で実行する制御プログラムを格納する。ワークRAM386は,上記制御プログラムをサブCPU384で実行するときの一時記憶手段として構成される。   The program ROM 385 stores a control program executed by the sub CPU 84. The work RAM 386 is configured as a temporary storage unit when the control program is executed by the sub CPU 384.

画像制御回路391は,画像制御CPU392,画像制御プログラムROM394,画像制御ワークRAM393,画像制御IC398,画像ROM396,ビデオRAM397で構成される。   The image control circuit 391 includes an image control CPU 392, an image control program ROM 394, an image control work RAM 393, an image control IC 398, an image ROM 396, and a video RAM 397.

ここで,画像制御CPU392は,サブマイクロコンピュータ383で設定されたパラメータに基づき,画像制御プログラムROM394内に格納する画像制御プログラムに沿って表示装置350での表示内容を決定する。画像制御プログラムROM394は,表示装置350での表示に関する画像制御プログラムや各種選択テーブルを格納する。画像制御ワークRAM393は,上記画像制御プログラムを画像制御CPU392で実行するときの一時記憶手段として構成される。画像制御IC398は,画像制御CPU392で決定された表示内容に応じた画像を形成し,表示装置350に出力する。画像ROM396は,画像を形成するためのドットデータを格納する。ビデオRAM397は,画像制御IC398で画像を形成するときの一時記憶手段として構成される。   Here, the image control CPU 392 determines the display contents on the display device 350 in accordance with the image control program stored in the image control program ROM 394 based on the parameters set by the sub microcomputer 383. The image control program ROM 394 stores an image control program related to display on the display device 350 and various selection tables. The image control work RAM 393 is configured as a temporary storage unit when the image control CPU 392 executes the image control program. The image control IC 398 forms an image corresponding to the display content determined by the image control CPU 392 and outputs the image to the display device 350. The image ROM 396 stores dot data for forming an image. The video RAM 397 is configured as a temporary storage unit when the image control IC 398 forms an image.

なお,主制御回路361からの出力はINポート387を介してサブCPU384に入力され,サブCPU384からの出力はOUTポート390およびINポート395を介して画像制御CPU392に入力される。   The output from the main control circuit 361 is input to the sub CPU 384 via the IN port 387, and the output from the sub CPU 384 is input to the image control CPU 392 via the OUT port 390 and the IN port 395.

次に,本実施の形態のパチスロ機の動作について説明する。遊技者がメダル投入口にメダルを投入すると,投入メダルセンサ331Sから検知信号がメインCPU364へ送られ,メインCPU364はメダルの投入を検知し,賭数に応じた賭数表示ランプ319〜321が点灯する。遊技者がスタートレバー328を押すと,スタートスイッチ328Sから操作信号がメインCPU364へ伝えられ,メインCPU364はスタートレバー328の操作を検知し,I/Oポート371を介してモータ駆動部373へスタート信号を送り,リール305,306,307を一斉に回転させる。   Next, the operation of the pachislot machine of this embodiment will be described. When the player inserts a medal into the medal slot, a detection signal is sent from the inserted medal sensor 331S to the main CPU 364, and the main CPU 364 detects the insertion of the medal, and bet number display lamps 319 to 321 corresponding to the bet number are turned on. To do. When the player presses the start lever 328, an operation signal is transmitted from the start switch 328S to the main CPU 364, and the main CPU 364 detects the operation of the start lever 328 and sends a start signal to the motor drive unit 373 via the I / O port 371. To rotate the reels 305, 306, and 307 all at once.

また,スタートスイッチ328Sがスタートレバーの操作を検出すると,メインCPU364は乱数発生器369より発生された乱数値をサンプリング回路370により取り込み,取り込んだ乱数値とROM365に格納された判定値とを比較して,当選,落選を決定する内部抽選を行う。その抽選結果はRAM366の所定領域に格納されるが,内部当選すると,当選の種類に応じたフラグがRAM366の所定領域に立てられる。ここで,当該ゲームで立てられたフラグは当該ゲームが終了すると消滅するのが基本であるが,内部当選確率が低いBBやRBに限って,立てられたフラグが対応する図柄が揃って入賞するまで複数ゲームにわたって持ち越される場合がある。   When the start switch 328S detects the operation of the start lever, the main CPU 364 fetches the random number value generated by the random number generator 369 by the sampling circuit 370 and compares the fetched random number value with the determination value stored in the ROM 365. Then, an internal lottery will be performed to determine the winning and losing. The lottery result is stored in a predetermined area of the RAM 366. When an internal winning is made, a flag corresponding to the type of winning is set in the predetermined area of the RAM 366. Here, the flag set in the game is basically extinguished when the game ends, but only the BB or RB with a low internal winning probability wins all the symbols corresponding to the set flag. May be carried over multiple games.

さらに,スタートスイッチ328Sがスタートレバーの操作を検出すると,メインCPU364はROM365から複数ゲームにわたって表示装置350に演出画像を表示するための演出指示コマンドを読み出し,これをI/Oポート371を介して副制御回路381に送出する。なお,メインCPU364は副制御回路381に送出する演出指示コマンドをRAM366の所定領域に保持しておく。   Furthermore, when the start switch 328S detects the operation of the start lever, the main CPU 364 reads out an effect instruction command for displaying an effect image on the display device 350 over a plurality of games from the ROM 365, and this is read via the I / O port 371. The data is sent to the control circuit 381. The main CPU 364 holds an effect instruction command to be sent to the sub control circuit 381 in a predetermined area of the RAM 366.

副制御回路381はメインCPU364から入力された演出指示コマンドに従った演出内容の画像を表示装置350に表示し,内部当選の契機となるスタートレバー328の有効な操作毎に入力される演出指示コマンドに従って画像を表示させる。   The sub-control circuit 381 displays an effect image according to the effect instruction command input from the main CPU 364 on the display device 350, and an effect instruction command input for each effective operation of the start lever 328 that triggers the internal winning. Follow the steps to display the image.

次にメインCPU364は,RAM366上の内部抽選結果をチェックして,内部抽選の判定結果に対応する停止テーブルを選択決定し,それぞれに対応する停止テーブルをROM365からRAM366上に読み出す。   Next, the main CPU 364 checks the internal lottery result on the RAM 366, selects and determines a stop table corresponding to the internal lottery determination result, and reads the corresponding stop table from the ROM 365 onto the RAM 366.

その後,遊技者が,停止ボタン335,336,337のいずれかを操作すると,リール停止信号回路378から操作信号がメインCPU364へ伝えられ,メインCPU364はリール位置検出回路377からの各リール305,306,307の位置とRAM366上の停止テーブルに基づいてリール305,306,307を停止させる制御を行う。   Thereafter, when the player operates one of the stop buttons 335, 336, and 337, an operation signal is transmitted from the reel stop signal circuit 378 to the main CPU 364, and the main CPU 364 receives the reels 305 and 306 from the reel position detection circuit 377. , 307 and the stop table on the RAM 366, the reels 305, 306, 307 are controlled to stop.

これにより,内部抽選で当選していない限り,遊技者はどのようなタイミングで停止ボタン335,336,337を操作しても,当選図柄が揃わないように各リール305,306,307の停止制御が行われる。一方,内部抽選で当選し且つ,内部当選結果に対応する図柄が揃えられる停止テーブルが選択されている場合,遊技者の停止ボタン335,336,337の操作タイミング如何によっては内部当選に対応した図柄が揃う停止制御が存在することになる。   As a result, unless the player has won the internal lottery, the reels 305, 306, and 307 are controlled so that the winning symbols are not aligned even if the player operates the stop buttons 335, 336, and 337 at any timing. Is done. On the other hand, when a winning table is selected in the internal lottery and the symbol corresponding to the internal winning result is selected, the symbol corresponding to the internal winning is determined depending on the operation timing of the stop buttons 335, 336 and 337 of the player. There is a stop control in which

すなわち,内部抽選結果が当選の場合には,メインCPU364は引き込み停止制御に基づくストップ信号をモータ駆動部373へ送り,操作された停止ボタン335,336,337に対応するリール305,306,307を停止させるが,このとき,このリール305,306,307上の入賞に係るシンボルが有効な停止ライン上で停止するようなリール停止制御を行う。   That is, when the internal lottery result is a win, the main CPU 364 sends a stop signal based on the pull-in stop control to the motor drive unit 373, and releases the reels 305, 306, 307 corresponding to the operated stop buttons 335, 336, 337. At this time, the reel stop control is performed such that the winning symbols on the reels 305, 306, and 307 are stopped on an effective stop line.

内部抽選結果が外れの場合,メインCPU364は,停止ボタン335,336,337の操作にて,入賞に係るシンボルが有効な停止ライン上で止まらないように,操作された停止ボタン335,336,337に対応するリール305,306,307を停止させる。   When the internal lottery result is out, the main CPU 364 operates the stop buttons 335, 336, and 337 so that the symbols related to winning are not stopped on the valid stop line by operating the stop buttons 335, 336, and 337. The reels 305, 306, and 307 corresponding to are stopped.

本発明のパチスロ機は,たとえば,副制御回路381に含まれる画像制御プログラムや画像制御CPUとして,本発明の画像生成装置を具備するので,回路素子などを共有することで,ハードウェア規模を縮減でき,ベクタ・2D・3D画像処理部を一元化することにより,システムが複雑になる事態を防止できる。これにより,無駄なハードウェア・制御処理を少なくすることができる。前記したとおり,開発・製造コスト,消費電力を低減することができるため,パチスロ機などにおいても好適に利用される。
The pachislot machine of the present invention includes, for example, the image generation apparatus of the present invention as an image control program or an image control CPU included in the sub-control circuit 381, so that the hardware scale can be reduced by sharing circuit elements and the like. In addition, by unifying the vector, 2D, and 3D image processing units, it is possible to prevent the system from becoming complicated. As a result, useless hardware / control processing can be reduced. As described above, since development / manufacturing costs and power consumption can be reduced, it is also suitably used in pachislot machines and the like.

Claims (14)

あるピクセルにおけるポリゴンのエッジ情報を格納するためのエッジ情報格納メモリ(2)と,
ベクトル形式のポリゴンの形状データを格納するためのベクタデータ格納メモリ(3)と,
前記ベクタデータ格納メモリに格納されたポリゴンの形状データに基づいてラスタライズ処理を行い,ラスタライズ結果であるポリゴンのエッジ情報を前記エッジ情報格納メモリに書き出すためのエッジ情報生成部(4)と,
少なくとも背景に関する画像情報及び複数のレイヤごとの画像情報を格納するレイヤ画像格納メモリ(5)と,
前記エッジ情報格納メモリに格納されたエッジ情報を用いて,ベクタ形式で定義された画像の内部を塗りつぶす際に,前記レイヤ画像格納メモリに格納された背景に関する画像情報及びレイヤごとの画像情報を読み出して,ベクタ形式の画像及びレイヤごとの画像情報を重ね合わせ,ピクセル単位の画像処理演算を行うことによりピクセル単位の画像合成を行う画像合成部(6)と,
前記画像合成部が合成した画像を記憶するための結果画像格納メモリ(7)と,
を具備する画像生成装置(1)。
Edge information storage memory (2) for storing polygon edge information at a pixel;
A vector data storage memory (3) for storing polygonal shape data in vector format;
An edge information generating unit (4) for performing rasterization processing based on polygon shape data stored in the vector data storage memory, and writing out polygon edge information as a rasterization result to the edge information storage memory;
A layer image storage memory (5) for storing at least image information on the background and image information for each of a plurality of layers;
Using the edge information stored in the edge information storage memory, when painting the inside of the image defined in the vector format, the image information on the background and the image information for each layer stored in the layer image storage memory are read out. An image composition unit (6) that performs image composition in units of pixels by superimposing vector format images and image information for each layer and performing image processing operations in units of pixels;
A result image storage memory (7) for storing the image synthesized by the image synthesis unit;
An image generation apparatus (1) comprising:
前記ベクタデータ格納メモリ及び前記結果画像格納メモリは,情報をストリーム形式データとして格納する請求項1に記載の画像生成装置。   2. The image generation device according to claim 1, wherein the vector data storage memory and the result image storage memory store information as stream format data. 前記エッジ情報生成部は,アンチエイリアス処理を行うアンチエイリアス処理部を具備し,アンチエイリアス処理を行ったエッジ情報を前記エッジ情報格納メモリに書き出し,
前記画像合成部は,アンチエイリアス処理を行ったエッジ情報を用いてアンチエイリアス処理が施された画像合成を行う請求項1に記載の画像生成装置。
The edge information generation unit includes an anti-aliasing processing unit that performs anti-aliasing processing, writes the edge information subjected to anti-aliasing processing to the edge information storage memory,
The image generation apparatus according to claim 1, wherein the image composition unit performs image composition subjected to anti-aliasing processing using edge information subjected to anti-aliasing processing.
前記エッジ情報生成部は,前記ベクタデータ格納メモリに格納されたベクトル形式のラスタライズ結果に基づいて,前記エッジ情報格納メモリに前記ラスタライズ結果である画像のエッジ情報,ピクセルごとの透過度,ピクセルのエッジ部分における水平方向及び垂直方向に関するラスタライズ進行符号,及びラスタライズ時のエッジ部分の重なり回数をエッジ情報格納メモリに書き出し,
前記画像合成部は,前記エッジ情報格納メモリに格納されたエッジ情報を用いて,ベクタ形式で定義された画像の内部を塗りつぶす際に,前記レイヤ画像格納メモリに格納された背景に関する画像情報及び複数のレイヤごとの画像情報を読み出して,ベクタ形式の画像及び複数のレイヤごとの画像情報を重ね合わせ,
前記エッジ情報格納メモリに格納されたピクセルごとの透過度を用いてピクセルごとのブレンディング計算を行い,
前記エッジ情報格納メモリに格納された水平方向及び垂直方向に関するラスタライズ信号符号に基づいて,ライン単位又はブロック単位で画像合成処理を行い,
前記エッジ情報格納メモリに格納されたエッジ部分の重なり回数を用いて塗りつぶしを行うかどうかの判定を行い,
ピクセル単位の画像処理演算を行うことによりピクセル単位の画像合成を行う,
請求項1に記載の画像生成装置。
The edge information generation unit is configured to store, in the edge information storage memory, image edge information, transparency for each pixel, pixel edge based on a vector format rasterization result stored in the vector data storage memory. Write the rasterization progress code in the horizontal and vertical directions in the part and the number of overlapping edge parts at the time of rasterization to the edge information storage memory,
The image synthesis unit uses the edge information stored in the edge information storage memory to fill the inside of the image defined in the vector format with the background image information stored in the layer image storage memory and a plurality of pieces of image information. The image information for each layer is read out, and the vector format image and the image information for each layer are superimposed,
Perform blending calculation for each pixel using the transparency for each pixel stored in the edge information storage memory,
Based on the rasterized signal code in the horizontal direction and the vertical direction stored in the edge information storage memory, image synthesis processing is performed in units of lines or blocks,
A determination is made as to whether or not to fill using the number of overlapping edge portions stored in the edge information storage memory;
Perform pixel-by-pixel image composition by performing pixel-by-pixel image processing operations.
The image generation apparatus according to claim 1.
前記エッジ情報生成部は,アンチエイリアス処理を行うアンチエイリアス処理部を具備し,
前記アンチエイリアス処理部は,
前記あるピクセルにおけるエッジ情報と,
前記ピクセルにおける複数のサンプリングポイントを用いて,前記ピクセルのうち前記エッジにより分断される部分の面積Sを決定する面積算出回路と,
前記ピクセルにおける複数のサンプリングポイントから色合成に用いる1又は複数のサンプリングポイント又は当該サンプリングポイントにおける色を選択する色選択回路と,
前記面積算出回路が算出した面積Sと,前記色選択回路が選択した色を用いて,前記ピクセルのカラーを決定する色合成回路とを具備するアンチエイリアス回路である,
請求項1に記載の画像生成装置。
The edge information generation unit includes an anti-aliasing processing unit that performs anti-aliasing processing,
The anti-aliasing processing unit
Edge information at the pixel;
An area calculation circuit for determining an area S of a portion of the pixel divided by the edge using a plurality of sampling points in the pixel;
One or a plurality of sampling points used for color synthesis from a plurality of sampling points in the pixel or a color selection circuit for selecting a color at the sampling points;
An anti-aliasing circuit comprising an area S calculated by the area calculation circuit and a color synthesis circuit that determines a color of the pixel using a color selected by the color selection circuit;
The image generation apparatus according to claim 1.
前記画像合成部は,ライン単位又はブロック単位で画像処理演算を行い,ライン単位又はブロック単位で画像合成を行う請求項1に記載の画像生成装置。   The image generation apparatus according to claim 1, wherein the image composition unit performs image processing calculation in units of lines or blocks, and performs image composition in units of lines or blocks. 前記画像合成部は,色空間変換処理部及び色補正処理部のいずれか又は両方を具備し,ピクセル単位で色空間変換処理又は色補正処理を施した画像合成を行う請求項1に記載の画像生成装置。   2. The image according to claim 1, wherein the image composition unit includes one or both of a color space conversion processing unit and a color correction processing unit, and performs image composition by performing color space conversion processing or color correction processing on a pixel basis. Generator. 前記画像合成部は,画像回転処理及び画像サイズ調整処理のいずれか又は両方を含む幾何演算処理部を具備し,レイヤ画像に対し,回転処理又は画像サイズ調整処理を施した画像合成を行う請求項1に記載の画像生成装置。   The image composition unit includes a geometric operation processing unit including one or both of an image rotation process and an image size adjustment process, and performs image composition by performing a rotation process or an image size adjustment process on a layer image. The image generating apparatus according to 1. 前記画像合成部は,画像回転処理及び画像サイズ調整処理のいずれか又は両方を含む幾何演算処理部を具備し,
前記幾何演算処理部は,
頂点データを出力する頂点データ出力装置と,
前記頂点データ出力装置と接続され,頂点に関する固定された演算を行う頂点演算装置と,
前記頂点演算装置と接続され,ポリゴンに関する固定された演算を行うポリゴン演算装置と,
入力元に前記頂点データ出力装置,前記頂点演算装置及び前記ポリゴン演算装置のうち1つ又は2つ以上と接続され,出力先に前記頂点演算装置及び前記ポリゴン演算装置のうち1つ又は2つと接続される1又は複数の汎用演算装置とを具備する幾何演算処理部である請求項1に記載の画像生成装置。
The image composition unit includes a geometric operation processing unit including one or both of image rotation processing and image size adjustment processing,
The geometric calculation processing unit
A vertex data output device for outputting vertex data;
A vertex computing device connected to the vertex data output device and performing a fixed computation on the vertex;
A polygon computing device connected to the vertex computing device and performing fixed computations on polygons;
Connected to one or more of the vertex data output device, the vertex computing device, and the polygon computing device at the input source, and connected to one or two of the vertex computing device and the polygon computing device at the output destination The image generation apparatus according to claim 1, wherein the image generation apparatus is a geometric calculation processing unit including one or a plurality of general-purpose calculation devices.
請求項1に記載の画像生成装置を具備するコンピュータ。   A computer comprising the image generation apparatus according to claim 1. 請求項1に記載の画像生成装置を具備するゲーム機。   A game machine comprising the image generating apparatus according to claim 1. 請求項1に記載の画像生成装置を具備する携帯電話。   A mobile phone comprising the image generating apparatus according to claim 1. 請求項1に記載の画像生成装置を具備するナビゲーションシステム。   A navigation system comprising the image generation apparatus according to claim 1. 請求項1に記載の画像生成装置を具備するスロットマシーン。   A slot machine comprising the image generating apparatus according to claim 1.
JP2007536518A 2005-09-26 2006-09-20 Image generation device Active JP4794565B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007536518A JP4794565B2 (en) 2005-09-26 2006-09-20 Image generation device

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2005278960 2005-09-26
JP2005278960 2005-09-26
JP2007536518A JP4794565B2 (en) 2005-09-26 2006-09-20 Image generation device
PCT/JP2006/318609 WO2007034822A1 (en) 2005-09-26 2006-09-20 Image generation device

Publications (2)

Publication Number Publication Date
JPWO2007034822A1 true JPWO2007034822A1 (en) 2009-03-26
JP4794565B2 JP4794565B2 (en) 2011-10-19

Family

ID=37888865

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007536518A Active JP4794565B2 (en) 2005-09-26 2006-09-20 Image generation device

Country Status (2)

Country Link
JP (1) JP4794565B2 (en)
WO (1) WO2007034822A1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201114591D0 (en) 2011-08-23 2011-10-05 Tomtom Int Bv Methods of and apparatus for displaying map information
CN110636184B (en) * 2018-06-25 2022-03-29 中国电信股份有限公司 Video processing method, device and computer readable storage medium
CN109509245B (en) * 2018-10-25 2023-02-28 广东智媒云图科技股份有限公司 Method and device for generating style image
JP7026839B1 (en) * 2021-06-18 2022-02-28 株式会社電通 Real-time data processing device

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3321251B2 (en) * 1993-07-06 2002-09-03 株式会社東芝 Graphic display device
JPH10326298A (en) * 1997-05-26 1998-12-08 Mitsubishi Electric Corp Three-dimensional model design review device
JP2000032271A (en) * 1998-07-10 2000-01-28 Sony Corp Image forming device and its method

Also Published As

Publication number Publication date
WO2007034822A1 (en) 2007-03-29
JP4794565B2 (en) 2011-10-19

Similar Documents

Publication Publication Date Title
US8602888B2 (en) Video game device and image processing program
JP4941934B2 (en) Image generating apparatus and image generating program
US7479961B2 (en) Program, information storage medium, and image generation system
JP4794565B2 (en) Image generation device
JP3352982B2 (en) Rendering method and device, game device, and computer-readable recording medium for storing program for rendering three-dimensional model
JP4840800B2 (en) Image processing apparatus, game machine, image processing method, and program
JP4804122B2 (en) Program, texture data structure, information storage medium, and image generation system
JP2007164557A (en) Program, information recording medium and image generation system
JP2011053737A (en) Program, information storage medium and image generation device
US6712700B1 (en) Stereo model displaying method and apparatus in video game, game apparatus, and computer-readable recording medium stored with stereo model displaying program for video game
JP2005032140A (en) Image generation system, program, and information storage medium
JP2009110362A (en) Image generation device and image generation program
JP4761541B2 (en) Image generation device
JP5253118B2 (en) Image generation system, program, and information storage medium
JP2001167291A (en) Image generating system and information storage medium
JP5007991B2 (en) Rendering device for subdivision curved surface drawing
JP4832152B2 (en) System used in a three-dimensional computer graphics device for displaying a gaseous object on a two-dimensional display
JP5535729B2 (en) 3D computer graphics drawing system
JP2010231364A (en) Image generation system, program and information recording medium
JP4669334B2 (en) Edge multi-sampling hybrid anti-aliasing
JP4787662B2 (en) System used in a three-dimensional computer graphics device for displaying a gaseous object on a two-dimensional display
JP4787661B2 (en) System used in a three-dimensional computer graphics device for displaying a gaseous object on a two-dimensional display
JP4785605B2 (en) System used in a three-dimensional computer graphics device for displaying a gaseous object on a two-dimensional display
JP5339309B2 (en) Image processing apparatus, game machine, image processing method, and program
JP4693153B2 (en) Image generation system, program, and information storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090618

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110726

R150 Certificate of patent or registration of utility model

Ref document number: 4794565

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140805

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140805

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

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