JP2015219351A - Image processor - Google Patents

Image processor Download PDF

Info

Publication number
JP2015219351A
JP2015219351A JP2014102337A JP2014102337A JP2015219351A JP 2015219351 A JP2015219351 A JP 2015219351A JP 2014102337 A JP2014102337 A JP 2014102337A JP 2014102337 A JP2014102337 A JP 2014102337A JP 2015219351 A JP2015219351 A JP 2015219351A
Authority
JP
Japan
Prior art keywords
sprite
data
image
area
relative
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
JP2014102337A
Other languages
Japanese (ja)
Other versions
JP6507491B2 (en
JP2015219351A5 (en
Inventor
吉田 佳司
Yoshiji Yoshida
佳司 吉田
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.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP2014102337A priority Critical patent/JP6507491B2/en
Publication of JP2015219351A publication Critical patent/JP2015219351A/en
Publication of JP2015219351A5 publication Critical patent/JP2015219351A5/ja
Application granted granted Critical
Publication of JP6507491B2 publication Critical patent/JP6507491B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Controls And Circuits For Display Device (AREA)

Abstract

PROBLEM TO BE SOLVED: To achieve image processing, such as a blur without providing a work memory in an image processor of a sprite system.SOLUTION: Pre-linking is performed with a vertically long image of the double image size of a sprite of a display object as an absolute sprite, with only α data of the sprite as a first relative sprite, and with only the same color data as a second relative sprite. A storage area for arranging the absolute sprite is secured in a sprite buffer to arrange the absolute sprite, the first relative sprite is arranged in the first half of the storage area, and then, the second relative sprite is arranged in the latter half. Then, filter processing is performed to an area where writing is recently performed, write processing is repeated in the other area as many as the predetermined number of times, and image data of an area where writing is performed last is drawn in a frame buffer, thereby achieving a blur.

Description

この発明は、画像表示技術に関し、特にスプライト方式の画像表示技術に関する。   The present invention relates to an image display technique, and more particularly, to a sprite type image display technique.

図9は、スプライト方式の画像表示システムの構成を示すブロック図である。スプライト方式とは、予め用意されたスプライト(小画像)の重ね合わせにより、1フレーム分の画像を表現する方式である。図9に示すように、この画像表示システムには、例えば画像処理LSI(Large Scale Integration)などの画像処理装置2と、パターンROM3と、表示装置4と、ホストCPU(Central Processing Unit)5とが含まれている。パターンROM3には、スプライトの画像データに圧縮符号化を施して得られる圧縮符号化データが記憶されている。画像処理装置2は上位装置(図9に示す例では、ホストCPU5)から与えられる指示に応じてスプライトの圧縮符号化データをパターンROM3から読み出し、読み出した圧縮符号化データをデコード(伸張)して圧縮前の画像データに戻し、画像処理装置2内部のスプライトバッファに展開する。次いで、画像処理装置2は、スプライトバッファからスプライトの画像データを読み出し、拡大、縮小、回転、変形等のレンダリング処理を施して当該画像処理装置2内部のフレームバッファに描画する。画像処理装置2は、フレームバッファに描画した画像データを、液晶ディスプレイ等の表示装置4へ出力する水平/垂直走査タイミングに合わせて読み出し、表示装置4へ出力する。これにより表示装置4に各フレームの画像が表示される。スプライト方式の画像表示システムに関する先行技術文献としては、特許文献1〜3が挙げられる。   FIG. 9 is a block diagram illustrating a configuration of a sprite image display system. The sprite method is a method of expressing an image for one frame by superimposing sprites (small images) prepared in advance. As shown in FIG. 9, the image display system includes an image processing device 2 such as an image processing LSI (Large Scale Integration), a pattern ROM 3, a display device 4, and a host CPU (Central Processing Unit) 5. include. The pattern ROM 3 stores compressed encoded data obtained by compressing and encoding sprite image data. The image processing apparatus 2 reads the compressed encoded data of the sprite from the pattern ROM 3 in accordance with an instruction given from the host apparatus (in the example shown in FIG. 9, the host CPU 5), and decodes (decompresses) the read compressed encoded data. The image data is restored to the image data before compression and is developed in a sprite buffer inside the image processing apparatus 2. Next, the image processing device 2 reads the image data of the sprite from the sprite buffer, performs rendering processing such as enlargement, reduction, rotation, and deformation, and draws it in the frame buffer inside the image processing device 2. The image processing device 2 reads out the image data drawn in the frame buffer in accordance with the horizontal / vertical scanning timing to be output to the display device 4 such as a liquid crystal display, and outputs it to the display device 4. As a result, an image of each frame is displayed on the display device 4. Patent Documents 1 to 3 are cited as prior art documents related to a sprite image display system.

特許3861820号Japanese Patent No. 3861820 特許3941702号Patent 39471702 特開2001−013952号公報JP 2001-013952 A

スプライト方式の画像表示システムは、ポリゴン等を用いた他の方式の画像表示システムに比較して、低い性能のCPUでも画像の表示が容易であるため、パチンコなどの遊技機やテレビゲーム等に採用されることが多かった。また、少ないリソースで画像の表示が可能という利点に着目し、冷蔵庫や洗濯機などの白物家電や車載表示装置のユーザインタフェース部にスプライト方式の画像表示システムを採用することも検討されている。   The sprite type image display system is easy to display even with a low-performance CPU compared to other types of image display systems using polygons, etc., so it is adopted for pachinko and other gaming machines and video games. It was often done. In addition, paying attention to the advantage that images can be displayed with a small number of resources, it has been studied to adopt a sprite type image display system for the user interface of white goods such as refrigerators and washing machines and in-vehicle display devices.

車載表示装置や白物家電のユーザインタフェース部にスプライト方式の画像表示システムを採用する場合、ポリゴン等を用いた他の画像表示システムに比較して表示画像の見劣りが発生しないように、ブラーやグロー、ドロップ・シャドウなど画像の奥行感や動きを演出する画像処理を行えることが好ましい。なお、ブラーとは、表示対象のスプライトの輪郭をぼやけさせる処理である。グローとは、表示対象のスプライトに白くぼんやりした縁取りを付ける処理である。そして、ドロップ・シャドウとは、表示対象のスプライトに影を付ける処理である。   When a sprite type image display system is used in the user interface unit of an in-vehicle display device or white goods, blurring or glowing is prevented so that the display image is not inferior to other image display systems using polygons. It is preferable that image processing that produces a sense of depth and movement of the image, such as drop and shadow, can be performed. Note that blur is a process of blurring the outline of a sprite to be displayed. Glow is a process for adding a white and blurred border to a sprite to be displayed. The drop shadow is a process for adding a shadow to a display-target sprite.

スプライト方式の画像表示システムにおいてブラーやグロー、ドロップ・シャドウなどの各種画像処理を実現する具体的な方法としては、表示対象のスプライトを一旦ワークメモリに格納し、ガウスフィルタ処理などの各種フィルタ処理を施すことで、上記各種画像処理を実現する方法が考えられる。しかし、大容量のメモリと性能の高いCPUにより各種画像処理を実現することは可能であるが、限られたメモリと性能の低いCPUでも負荷をかけずに実現することが望まれている。   As a specific method for realizing various image processing such as blur, glow, drop and shadow in the sprite image display system, the sprite to be displayed is temporarily stored in the work memory, and various filter processing such as Gaussian filter processing is performed. By applying this method, a method for realizing the above-described various image processing is conceivable. However, although it is possible to realize various types of image processing with a large-capacity memory and a high-performance CPU, it is desired to realize it with a limited memory and a low-performance CPU without applying a load.

本発明は上記説明した課題に鑑みて為されたものであり、スプライト方式の画像処理装置において、画像処理用に別途ワークメモリを設けることなく、スプライトの動きや奥行き感を演出する各種画像処理を実現することを目的とする。   The present invention has been made in view of the above-described problems. In a sprite type image processing apparatus, various image processings for producing sprite movement and depth can be performed without providing a separate work memory for image processing. It aims to be realized.

上記課題を解決するために本発明は、各々スプライトの属性データを記憶するスプライト属性テーブルと、描画対象とするスプライトの画像データを前記スプライト属性テーブルの属性データに従って第1の記憶手段に書き込む第1の書き込み手段と、1フレームの画像を表す画像データを記憶する第2の記憶手段と、前記第1の記憶手段に記憶された画像データを前記第2の記憶手段へ書き込む第2の書き込み手段と、を備え、少なくとも一のスプライトの位置情報が当該スプライトの属性データに格納されており、他の少なくとも一のスプライトの位置情報は当該スプライト以外の他のスプライトからの相対位置として、当該スプライトの属性データに格納されており、前記第1の書き込み手段は、フィルタ処理の対象となるスプライトのイメージサイズの2倍の記憶領域を前記第1の記憶手段に確保し、前記少なくとも一のスプライトの属性データに従って、当該スプライトを前記記憶領域に書き込み、前記記憶領域を前半と後半に等分した一方に、前記他の少なくとも一のスプライトの属性データに従って、前記他の少なくとも一のスプライトを書き込み、前記前半の領域と前記後半の領域のうちの直近に書き込みの行われた領域にフィルタ処理を施して他方の領域に書き込む処理を予め定められた回数だけ繰り返し、前記第2の書き込み手段は、前記前半と後半の領域のうち直近に書き込みの行われた領域の画像データを前記第1の記憶手段から読み出して前記第2の記憶手段に書き込むことを特徴とする画像処理装置、を提供する。   In order to solve the above-described problems, the present invention provides a sprite attribute table for storing sprite attribute data and a first storage unit for writing image data of a sprite to be rendered in accordance with the attribute data of the sprite attribute table. Writing means, second storage means for storing image data representing an image of one frame, and second writing means for writing image data stored in the first storage means to the second storage means The position information of at least one sprite is stored in the attribute data of the sprite, and the position information of at least one other sprite is the relative position from other sprites other than the sprite. Stored in the data, and the first writing means is a sprite to be filtered. A storage area twice as large as the image size is secured in the first storage means, the sprite is written into the storage area according to the attribute data of the at least one sprite, and the storage area is equally divided into the first half and the second half In accordance with the attribute data of the other at least one sprite, the at least one other sprite is written, and a filtering process is performed on the most recently written area of the first half area and the second half area. The process of writing to the other area is repeated a predetermined number of times, and the second writing means stores the image data of the most recently written area out of the first and second half areas from the first storage means. There is provided an image processing apparatus characterized by reading and writing to the second storage means.

上記少なくとも一のスプライトは、本願の発明の詳細な説明に記載の「絶対スプライト」に対応し、上記他の少なくとも一のスプライトは「相対スプライト」に対応する。本発明によれば、スプライト方式の画像処理装置において、画像処理用に別途ワークメモリを設けることなく、絶対スプライトに相対スプライトを重ね合わせて得られる画像に予め定められた回数のフィルタ処理を施して当該画像の動きや奥行感を演出することが可能になる。   The at least one sprite corresponds to the “absolute sprite” described in the detailed description of the present invention, and the at least one other sprite corresponds to the “relative sprite”. According to the present invention, in a sprite image processing apparatus, a predetermined number of times of filtering processing are performed on an image obtained by overlaying relative sprites on absolute sprites without providing a separate work memory for image processing. It is possible to produce the movement and depth of the image.

例えば、スプライトの画像データがスプライトを構成する各画素の色を表すカラーデータと各画素の透過処理係数とから構成されている場合には、相対スプライトのカラーデータのみにフィルタ処理を施すようにすれば、ブラーを実現することが可能になる。なお、この場合のフィルタ処理の具体例としてはガウスフィルタ処理が挙げられる。   For example, if the image data of a sprite is composed of color data representing the color of each pixel constituting the sprite and the transmission processing coefficient of each pixel, only the relative sprite color data is filtered. Then, it becomes possible to realize blur. A specific example of the filter processing in this case is Gaussian filter processing.

また、相対スプライトの画像データでのうち透過処理係数のみにフィルタ処理を施すことも考えられる。この場合、相対スプライトの画像データの表す画像と同じイメージサイズの所定色の画像に前半の領域と後半の領域のうち直近に書き込みの行われた領域に記憶されている透過処理係数による透過処理を行って得られる画像を第2の記憶手段に書き込むとともに、相対スプライトのカラーデータの表す画像を縮小または拡大して重ね書きする処理を第2の書き込み手段に実行させればグローが実現され、カラーデータの表す画像を中心をずらして重ね書きする処理を第2の書き込み手段に実行させればドロップ・シャドウが実現される。これらの場合も上記フィルタ処理としてガウスフィルタ処理を採用すれば良い。   It is also conceivable to perform filter processing only on the transmission processing coefficient in the image data of relative sprites. In this case, the transmission processing by the transmission processing coefficient stored in the most recently written area of the first half area and the second half area of the image of the same color as the image represented by the image data of the relative sprite is performed. When the image obtained by writing is written in the second storage means and the second writing means executes the process of overwriting by reducing or enlarging the image represented by the color data of the relative sprite, the glow is realized. Drop shadows are realized by causing the second writing means to execute the process of overwriting the image represented by the data while shifting the center. In these cases, a Gaussian filter process may be employed as the filter process.

本発明の一実施形態の画像処理装置11を含む画像表示システムの構成例および画像処理装置11の構成例を示すブロック図である。1 is a block diagram illustrating a configuration example of an image display system including an image processing apparatus 11 according to an embodiment of the present invention and a configuration example of an image processing apparatus 11. FIG. スプライトバッファ上のプリリンクおよびフレームバッファ上のポストリンクを説明するための図である。It is a figure for demonstrating the prelink on a sprite buffer, and the postlink on a frame buffer. スプライト属性テーブルの格納例を示す図である。It is a figure which shows the example of storage of a sprite attribute table. 画像処理装置11が実行するデコード・展開シーケンスの流れを示すフローチャートである。3 is a flowchart showing a flow of a decoding / development sequence executed by the image processing apparatus 11; 画像処理装置11が実行する描画シーケンスの流れを示すフローチャートである。3 is a flowchart showing a flow of a drawing sequence executed by the image processing apparatus 11. 画像処理装置11の動作例を説明するための図である。6 is a diagram for explaining an operation example of the image processing apparatus 11. FIG. ガウスフィルタ処理におけるフィルタ係数の一例を示す図である。It is a figure which shows an example of the filter coefficient in a Gaussian filter process. 画像処理装置11の動作例を説明するための図である。6 is a diagram for explaining an operation example of the image processing apparatus 11. FIG. 従来のスプライト方式の画像処理装置2の一例を示す図である。It is a figure which shows an example of the conventional image processing apparatus 2 of a sprite system.

以下図面を参照しつつ本発明の実施形態を説明する。
(A:構成)
図1は、本発明の一実施形態の画像処理装置11を含む画像表示システムの構成例および画像処理装置11の構成例を示すブロック図である。図1では、図9におけるものと同一のものには同一の符号が付されている。図1と図9とを対比すれば明らかなように本実施形態の画像表示システムは、画像処理装置2に代えて画像処理装置11を設けた点が図9に示す画像表示システムと異なる。画像処理装置11は、画像処理装置2と同様に画像処理LSIである。ただし、画像処理装置11は、以下の2つの機能を有する点が画像処理装置2と異なる。第1に、複数のスプライトをスプライトバッファ18或いはフレームバッファ23上で互いに関連付け(以下、「リンク」と呼ぶ)、1つのオブジェクトとして取り扱う機能である。第2に、表示装置4に表示される画像に動きや奥行感を与える画像処理(前述した、ブラーやグロー、ドロップ・シャドウを実現する画像処理)を上記第1の機能を利用して実行する機能である。
以下、本実施形態の特徴を顕著に示す画像処理装置11を中心に説明する。
Embodiments of the present invention will be described below with reference to the drawings.
(A: Configuration)
FIG. 1 is a block diagram illustrating a configuration example of an image display system including an image processing device 11 according to an embodiment of the present invention and a configuration example of the image processing device 11. In FIG. 1, the same components as those in FIG. 9 are denoted by the same reference numerals. As is apparent from a comparison between FIG. 1 and FIG. 9, the image display system of this embodiment is different from the image display system shown in FIG. 9 in that an image processing device 11 is provided instead of the image processing device 2. The image processing apparatus 11 is an image processing LSI as with the image processing apparatus 2. However, the image processing apparatus 11 is different from the image processing apparatus 2 in that it has the following two functions. A first function is to associate a plurality of sprites with each other on the sprite buffer 18 or the frame buffer 23 (hereinafter referred to as “link”) and handle them as one object. Second, image processing that gives motion and depth to the image displayed on the display device 4 (the above-described image processing for realizing blur, glow, and drop / shadow) is executed using the first function. It is a function.
Hereinafter, the image processing apparatus 11 that remarkably shows the features of the present embodiment will be mainly described.

図1に示すように、画像処理装置11は、スプライト属性テーブル13、デコード制御回路14、ROMインタフェース15、デコーダ16、スプライトバッファインタフェース17、スプライトバッファ18、レンダリング制御回路20、レンダリングエンジン21、フレームバッファインタフェース22、フレームバッファ23、表示制御回路25、およびホストインタフェース26を有している。   As shown in FIG. 1, the image processing apparatus 11 includes a sprite attribute table 13, a decode control circuit 14, a ROM interface 15, a decoder 16, a sprite buffer interface 17, a sprite buffer 18, a rendering control circuit 20, a rendering engine 21, and a frame buffer. It has an interface 22, a frame buffer 23, a display control circuit 25, and a host interface 26.

ホストインタフェース26にはホストCPU5が接続されている。このホストインタフェース26を介して、スプライト属性テーブル13へのスプライト属性データの登録がホストCPU5によって行われる。スプライト属性データには、表示装置4に表示させるスプライトに関する各種情報(スプライトの圧縮符号化データのパターンROM3における格納場所を示す格納先アドレス、スプライトの拡大、縮小、回転、変形等を決めるパラメータ、配置位置を指示する配置位置データ等)が含まれている。   A host CPU 5 is connected to the host interface 26. The host CPU 5 registers the sprite attribute data in the sprite attribute table 13 via the host interface 26. The sprite attribute data includes various information related to sprites to be displayed on the display device 4 (storage destination address indicating the storage location of the sprite compression-encoded data in the pattern ROM 3, parameters for determining enlargement, reduction, rotation, deformation, etc. of the sprite) Arrangement position data indicating the position).

デコード制御回路14は、ホストCPU5によってスプライト属性テーブル13に書き込まれたスプライト属性データを読み出す。そして、デコード制御回路14は、スプライト属性テーブル13から読み出したスプライト属性データに含まれている格納先アドレスの示す圧縮符号化データをパターンROM3から読み出す処理の制御、および当該圧縮符号化データのデコード処理の制御を行う。   The decode control circuit 14 reads the sprite attribute data written in the sprite attribute table 13 by the host CPU 5. Then, the decode control circuit 14 controls the process of reading out the compressed encoded data indicated by the storage destination address included in the sprite attribute data read from the sprite attribute table 13 from the pattern ROM 3, and the decoding process of the compressed encoded data Control.

より詳細に説明すると、デコード制御回路14は、スプライト属性テーブル13から読み出したスプライト属性データに含まれている格納アドレスをROMインタフェース15に与える。ROMインタフェース15は、デコード制御回路14から与えられた格納アドレスを読出アドレスとしてパターンROM3へ出力し、パターンROM3から読み出された圧縮符号化データをデコーダ16へ出力する。デコーダ16は、ROMインタフェース15を介してパターンROM3から読み出された圧縮符号化データのデコード(伸張処理)を行って圧縮符号化前の画像データ(以下、スプライトパターンデータ)を復元する。デコーダ16は、復元したスプライトパターンデータをスプライトバッファインタフェース17へ出力する。スプライトバッファインタフェース17は、デコーダ16から出力されるスプライトパターンデータをスプライトバッファ18に書き込む書き込み手段である。また、スプライトバッファインタフェース17は、レンダリングエンジン21からの指示を受けてスプライトバッファ18内のスプライトパターンデータを読み出し、レンダリングエンジン21へ出力する。   More specifically, the decode control circuit 14 gives the ROM interface 15 the storage address included in the sprite attribute data read from the sprite attribute table 13. The ROM interface 15 outputs the storage address given from the decode control circuit 14 to the pattern ROM 3 as a read address, and outputs the compressed encoded data read from the pattern ROM 3 to the decoder 16. The decoder 16 decodes (decompresses) the compressed encoded data read from the pattern ROM 3 via the ROM interface 15 to restore the image data before compression encoding (hereinafter referred to as sprite pattern data). The decoder 16 outputs the restored sprite pattern data to the sprite buffer interface 17. The sprite buffer interface 17 is writing means for writing the sprite pattern data output from the decoder 16 to the sprite buffer 18. Further, the sprite buffer interface 17 receives the instruction from the rendering engine 21, reads the sprite pattern data in the sprite buffer 18, and outputs it to the rendering engine 21.

スプライトバッファ18はFIFO(ファーストイン・ファーストアウトメモリ)として機能する記憶手段である。スプライトバッファ18は、複数のスプライトパターンデータを格納可能な記憶容量を有する。本実施形態では、圧縮符号化前の画像データとして、ARGB32ビット形式の画像データが採用されており、スプライトバッファ18にはこの形式の画像データが格納される。ARGB32ビット形式の画像データとは、スプライトを構成する各画素の画素値が、透過係数α(8ビット)、R成分の強度(8ビット)、G成分の強度(8ビット)、B成分の強度(8ビット)で表現された画像データである。以下では、R成分、G成分およびB成分の各強度を表すデータのことを「カラーデータ」と呼ぶ場合がある。   The sprite buffer 18 is storage means that functions as a FIFO (first-in / first-out memory). The sprite buffer 18 has a storage capacity capable of storing a plurality of sprite pattern data. In this embodiment, ARGB 32-bit image data is used as image data before compression encoding, and the sprite buffer 18 stores this image data. ARGB 32-bit image data means that the pixel value of each pixel constituting a sprite is a transmission coefficient α (8 bits), an R component intensity (8 bits), a G component intensity (8 bits), and a B component intensity. This is image data expressed in (8 bits). Hereinafter, data representing the intensities of the R component, the G component, and the B component may be referred to as “color data”.

レンダリング制御回路20は、スプライト属性テーブル13内のスプライト属性データを読み出し、読み出したスプライト属性データをレンダリングエンジン21へ出力する。レンダリングエンジン21は、スプライトバッファインタフェース17から与えられたスプライトパターンデータのレンダリング処理(拡大、縮小、回転、変形等する処理)を、レンダリング制御回路20から与えられる指示に従って行う。レンダリングエンジン21は、レンダリング処理を完了したスプライトパターンデータをフレームバッファインタフェース22へ出力する。フレームバッファインタフェース22はレンダリングエンジン21から出力されるスプライトパターンデータをフレームバッファ23に書き込む書き込み手段である。また、フレームバッファインタフェース22は、表示制御回路25からの指示を受けてフレームバッファ23からスプライトパターンデータを読み出し、表示制御回路25へ出力する。   The rendering control circuit 20 reads the sprite attribute data in the sprite attribute table 13 and outputs the read sprite attribute data to the rendering engine 21. The rendering engine 21 performs the rendering process (enlargement, reduction, rotation, deformation, etc.) of the sprite pattern data given from the sprite buffer interface 17 in accordance with an instruction given from the rendering control circuit 20. The rendering engine 21 outputs the sprite pattern data for which the rendering process has been completed to the frame buffer interface 22. The frame buffer interface 22 is writing means for writing the sprite pattern data output from the rendering engine 21 into the frame buffer 23. Further, the frame buffer interface 22 receives the instruction from the display control circuit 25, reads the sprite pattern data from the frame buffer 23, and outputs it to the display control circuit 25.

フレームバッファ23は、1フレーム分の画像データを記憶する記憶手段である。フレームバッファ23は、書き込み用と読み出し用とが交互に切り替えられるダブルバッファ構成となっている。表示制御回路25は画像表示のための各種のタイミング信号を生成して表示装置4へ出力する。また、表示制御回路25は、フレームバッファインタフェース22を介してフレームバッファ23から読み出されたスプライトパターンデータをそのタイミング信号に同期させて表示装置4へ出力する。   The frame buffer 23 is a storage unit that stores image data for one frame. The frame buffer 23 has a double buffer configuration in which writing and reading can be switched alternately. The display control circuit 25 generates various timing signals for image display and outputs them to the display device 4. The display control circuit 25 outputs the sprite pattern data read from the frame buffer 23 via the frame buffer interface 22 to the display device 4 in synchronization with the timing signal.

本実施形態では、複数のスプライトをスプライトバッファ18或いはフレームバッファ23上でリンクして1つのオブジェクトとして取り扱えるようにするための情報として、PREビットおよびNORELビットがスプライト属性データに含まれている。以下では、スプライトバッファ18上で複数のスプライトをリンクすることを「プリリンク」と呼び、フレームバッファ23上で複数のスプライトをリンクすることを「ポストリンク」と呼ぶ。スプライト属性データに含まれるNORELビットの値が“0”であれば、当該スプライト属性データに対応するスプライトにリンクされる他のスプライトがあることを意味し、NORELビットが“1”であればリンクされる他のスプライトがないことを意味する。また、リンクされる他のスプライトのスプライト属性データに含まれるPREビットの値が“0”であれば他のスプライトはポストリンクされることを意味し、PREビットが“1”であれば他のスプライトはプリリンクされることを意味する。また、スプライト属性データには、ENDビットが含まれる。通常このENDビットは“0”である。リンクされるスプライトがある場合、ENDビットが“1”のスプライト属性データがあれば、それに続くリンクされるスプライトは存在しないことを意味する。   In the present embodiment, the PRE bit and NOREL bit are included in the sprite attribute data as information for linking a plurality of sprites on the sprite buffer 18 or the frame buffer 23 so as to be handled as one object. Hereinafter, linking a plurality of sprites on the sprite buffer 18 is referred to as “pre-link”, and linking a plurality of sprites on the frame buffer 23 is referred to as “post-link”. If the value of the NOREL bit included in the sprite attribute data is “0”, it means that there is another sprite linked to the sprite corresponding to the sprite attribute data, and if the NOREL bit is “1”, the link is established. Means there are no other sprites to be played. If the value of the PRE bit included in the sprite attribute data of another sprite to be linked is “0”, it means that the other sprite is post-linked, and if the PRE bit is “1” Sprite means to be prelinked. The sprite attribute data includes an END bit. Normally, the END bit is “0”. When there is a sprite to be linked, if there is sprite attribute data whose END bit is “1”, it means that there is no subsequent linked sprite.

図2(a)は、プリリンクを説明するための図である。プリリンクとは、スプライトバッファ18に格納されているスプライトパターンデータにリンクされる他のスプライトのスプライトパターンデータをスプライトバッファ18上で重ね書きすることで、リンクの関係がある複数のスプライトを1つのオブジェクトとして扱えるようにすることをいう。以下では、重ね書きされる方のスプライト(すなわち、最背面側のスプライト)を絶対スプライト(或いは親スプライト)と呼び、重ね書きする方のスプライトを相対スプライト(或いは子スプライト)と呼ぶ。なお、絶対スプライトのイメージサイズを超える領域に相対スプライトが配置される場合、当該領域に属する部分の展開は行われず、マスクされる(図2(a)におけるスプライト4の点線部分)。図2(a)には、スプライト0に対してスプライト1〜4の4つのスプライトをプリリンクする場合について例示されている。図2(a)に示すプリリンクが完了すると、以降は、スプライト0のスプライトパターンデータ(プリリンクによりスプライト1〜スプライト4のスプライトデータが部分的に上書きされたデータ)をスプライトバッファ18から読み出すことで、スプライト0〜スプライト4を1つのオブジェクトとして扱うことができる。   FIG. 2A is a diagram for explaining prelink. Pre-linking is a method of overwriting sprite pattern data of other sprites linked to sprite pattern data stored in the sprite buffer 18 on the sprite buffer 18 so that a plurality of sprites having a link relationship can be combined into one. It means that it can be handled as an object. In the following, the overwritten sprite (that is, the backmost sprite) is called an absolute sprite (or parent sprite), and the overwritten sprite is called a relative sprite (or child sprite). When a relative sprite is arranged in a region exceeding the absolute sprite image size, the portion belonging to the region is not developed but masked (dotted line portion of the sprite 4 in FIG. 2A). FIG. 2A illustrates a case where four sprites of sprites 1 to 4 are pre-linked to the sprite 0. When the prelink shown in FIG. 2A is completed, the sprite pattern data of sprite 0 (data in which the sprite data of sprite 1 to sprite 4 is partially overwritten by the prelink) is read from the sprite buffer 18 thereafter. Thus, sprite 0 to sprite 4 can be handled as one object.

図2(b)は、ポストリンクを説明するための図である。ポストリンクとは、フレームバッファ23に格納されている絶対スプライトのスプライトパターンデータに、当該絶対スプライトにリンクされる相対スプライトのスプライトパターンデータをフレームバッファ23上で重ね書きすることをいう。プリリンク或いはポストリンクにおける絶対スプライトとしては、通常のスプライト或いは透明色で塗りつぶされた矩形の画像等を用いることができる。   FIG. 2B is a diagram for explaining the post link. Post-linking refers to overwriting sprite pattern data of relative sprites linked to the absolute sprite on the frame buffer 23 with sprite pattern data of absolute sprites stored in the frame buffer 23. As the absolute sprite in the prelink or the postlink, a normal sprite or a rectangular image painted with a transparent color can be used.

図3には、図2(a)に示す絶対スプライトと相対スプライトについてのスプライト属性データのスプライト属性テーブル13への格納例が示されている。スプライト属性テーブル13には、各フレームを構成する絶対スプライトのスプライト属性データが連続して格納され、相対スプライトのスプライト属性データは、絶対スプライトのスプライト属性データの格納領域から離れた記憶領域に、同じ絶対スプライトにリンクされる相対スプライトのものが連続するように格納される。1または複数の相対スプライトがリンクされる絶対スプライトのスプライト属性データには、先頭の相対スプライトの属性テーブルの格納先アドレスが含まれている。1つのスプライトのスプライト属性データのデータサイズは一定のため、先頭の相対スプライトのスプライト属性データの格納先アドレスから、次の相対スプライトのスプライト属性データの格納先アドレスを算出することができる。前述したように、スプライト属性データのENDビットの値が“1”である相対スプライトは絶対スプライトにリンクされる最後の相対スプライトである。従って、絶対スプライトのスプライト属性データに含まれる先頭の相対スプライトの属性テーブルの格納先アドレスからENDビットが“1”である相対スプライトまで、スプライト属性データの格納先アドレスを算出し、その格納先アドレスの示すスプライト属性データを読み出すことで、絶対スプライトにリンクする全ての相対スプライトのスプライト属性データにアクセスすることができる。なお、絶対スプライトと相対スプライトとのリンクがプリリンクである場合、相対スプライトのスプライト属性データに含まれる配置位置データは直近にスプライトバッファ18に展開されたスプライト(当該相対スプライトが最初の相対スプライトであれば、絶対スプライト)に対する相対位置(直近に展開されたスプライトの左上隅を原点とした場合の当該相対スプライトの左上隅の位置)を表す。すなわち、プリリンクされる相対スプライトが単独でスプライトバッファ18およびフレームバッファ23に描画されることはないのである。   FIG. 3 shows an example of storing sprite attribute data for the absolute sprite and relative sprite shown in FIG. The sprite attribute table 13 continuously stores sprite attribute data of absolute sprites constituting each frame, and the sprite attribute data of relative sprites is the same in a storage area separated from the storage area of the sprite attribute data of absolute sprites. Relative sprites linked to absolute sprites are stored so that they are continuous. The sprite attribute data of the absolute sprite to which one or a plurality of relative sprites are linked includes the storage destination address of the attribute table of the head relative sprite. Since the data size of the sprite attribute data of one sprite is constant, the storage address of the sprite attribute data of the next relative sprite can be calculated from the storage address of the sprite attribute data of the first relative sprite. As described above, the relative sprite whose END bit value of the sprite attribute data is “1” is the last relative sprite linked to the absolute sprite. Therefore, the storage address of the sprite attribute data is calculated from the storage address of the attribute table of the first relative sprite included in the sprite attribute data of the absolute sprite to the relative sprite whose END bit is “1”, and the storage address thereof By reading the sprite attribute data indicated by (2), it is possible to access the sprite attribute data of all relative sprites linked to the absolute sprite. When the link between the absolute sprite and the relative sprite is a prelink, the arrangement position data included in the sprite attribute data of the relative sprite is the sprite most recently developed in the sprite buffer 18 (the relative sprite is the first relative sprite. If present, it represents a relative position to the absolute sprite (the position of the upper left corner of the relative sprite when the upper left corner of the most recently developed sprite is used as the origin). That is, the prelinked relative sprite is not drawn alone in the sprite buffer 18 and the frame buffer 23.

本実施形態では、プリリンク、ポストリンクを用いてブラー、グローおよびドロップ・シャドウの各々を実現できるようにするため、ブラー、グローおよびドロップ・シャドウを施すスプライトについて以下の要領でスプライトパターンデータがパターンROM3に予め登録されている。   In this embodiment, in order to realize each of blur, glow, and drop shadow using pre-link and post-link, the sprite pattern data is a pattern in the following manner for the sprite to which blur, glow, and drop shadow is applied. Registered in the ROM 3 in advance.

ブラーの対象となるスプライトについては、当該スプライトの2倍のイメージサイズの透明色を表す縦長の画像データが絶対スプライトのスプライトパターンデータとしてパターンROM3に圧縮符号化されて登録されている。これにより、スプライトバッファ18にはイメージサイズの2倍の大きさの縦長の領域を確保する。そして、当該ブラーの対象となるスプライトの輪郭部のαデータのみからなる画像データが第1の相対スプライトのスプライトパターンデータとしてパターンROM3に圧縮符号化されて登録されており、当該スプライトのカラーデータのみからなる画像データが第2の相対スプライトのスプライトパターンデータとしてパターンROM3に圧縮符号化されて登録されている。上記第1および第2の相対スプライトのスプライト属性データのPREビットには“1”がセットされている。つまり、上記絶対スプライトに対して上記第1および第2の相対スプライトはプリリンクされる。上記第1の相対スプライトのスプライト属性データには、絶対スプライトを横方向に二等分割した前半の領域(以下、odd領域)に当該第1の相対スプライトを配置することを示す配置位置データが含まれている。一方、上記第2の相対スプライトのスプライト属性データには、絶対スプライトを横方向に二等分割した後半の領域(以下、even領域)に当該第2の相対スプライトを配置することを示す配置位置データが含まれている。   For sprites to be blurred, vertically long image data representing a transparent color having an image size twice that of the sprite is compressed and encoded in the pattern ROM 3 as sprite pattern data of absolute sprites. As a result, a vertically long area that is twice the image size is secured in the sprite buffer 18. Then, image data consisting only of the α data of the contour portion of the sprite to be blurred is compressed and registered in the pattern ROM 3 as sprite pattern data of the first relative sprite, and only the color data of the sprite is registered. Is registered in the pattern ROM 3 as the sprite pattern data of the second relative sprite in the pattern ROM 3. “1” is set in the PRE bit of the sprite attribute data of the first and second relative sprites. That is, the first and second relative sprites are prelinked with respect to the absolute sprite. The sprite attribute data of the first relative sprite includes arrangement position data indicating that the first relative sprite is arranged in the first half area (hereinafter referred to as odd area) obtained by dividing the absolute sprite into two equal parts in the horizontal direction. It is. On the other hand, in the sprite attribute data of the second relative sprite, arrangement position data indicating that the second relative sprite is arranged in the latter half area (hereinafter, even area) obtained by dividing the absolute sprite into two equal parts in the horizontal direction. It is included.

グローまたはドロップ・シャドウの対象となるスプライトについては、当該スプライトの2倍のイメージサイズの透明色を表す縦長の画像データが絶対スプライトのスプライトパターンデータとしてパターンROM3に圧縮符号化されて登録されている。これにより、スプライトバッファ18にはイメージサイズの2倍の大きさの縦長の領域を確保する。そして、グローまたはドロップ・シャドウの対象となるスプライトの輪郭部のαデータのみからなる画像データが第1の相対スプライトのスプライトパターンデータとしてパターンROM3に圧縮符号化されて登録されている。さらに、グローまたはドロップ・シャドウの対象となるスプライトのカラーデータのみからなる画像データが第2の相対スプライトのスプライトパターンデータとしてパターンROM3に圧縮符号化されて登録されている。   For sprites that are the subject of glow or drop / shadow, vertically long image data representing a transparent color having an image size twice that of the sprite is compressed and registered in the pattern ROM 3 as sprite pattern data of the absolute sprite. . As a result, a vertically long area that is twice the image size is secured in the sprite buffer 18. Then, image data consisting only of α data of the outline portion of the sprite that is the target of glow or drop / shadow is compressed and encoded and registered in the pattern ROM 3 as sprite pattern data of the first relative sprite. Furthermore, image data consisting only of the color data of the sprite that is the target of glow or drop / shadow is compressed and registered in the pattern ROM 3 as the sprite pattern data of the second relative sprite.

上記第1の相対スプライトのスプライト属性データのPREビットには“1”がセットされている。つまり、上記絶対スプライトに対して上記第1の相対スプライトはプリリンクされる。第1の相対スプライトのスプライト属性データには、前述したeven領域に当該第1の相対スプライトを配置することを示す配置位置データが含まれている。これに対して、第2の相対スプライトのスプライト属性データのPREビットには“0”がセットされている。つまり、第2の相対スプライトは、上記絶対スプライトに第1の相対スプライトをプリリンクして得られる新たなスプライトに対してポストリンクされる。そして、グローの対象となるスプライトについての上記第2の相対スプライトのスプライト属性データには、当該第2の相対スプライトに縮小(または拡大)を施すことを示すパラメータと上記新たなスプライトに対して中心が一致するように配置することを示す配置位置データが含まれている。一方、ドロップ・シャドウの対象となるスプライトについての上記第2の相対スプライトのスプライト属性データには、当該第2の相対スプライトに縮小を施すことを示すパラメータと当該第2の相対スプライトを上記新たなスプライトに対して中心をずらして配置することを示す配置位置データが含まれている。
以上が画像処理装置11の構成である。
“1” is set in the PRE bit of the sprite attribute data of the first relative sprite. That is, the first relative sprite is pre-linked to the absolute sprite. The sprite attribute data of the first relative sprite includes arrangement position data indicating that the first relative sprite is arranged in the even area. On the other hand, “0” is set in the PRE bit of the sprite attribute data of the second relative sprite. That is, the second relative sprite is post-linked to a new sprite obtained by pre-linking the first relative sprite to the absolute sprite. The sprite attribute data of the second relative sprite with respect to the sprite to be glowed is centered with respect to the parameter indicating that the second relative sprite is to be reduced (or enlarged) and the new sprite. Arrangement position data indicating that the elements are arranged so as to coincide with each other. On the other hand, in the sprite attribute data of the second relative sprite for the sprite that is the target of drop / shadow, a parameter indicating that the second relative sprite is to be reduced and the second relative sprite are added to the new relative sprite. Arrangement position data indicating that the center is shifted with respect to the sprite is included.
The above is the configuration of the image processing apparatus 11.

(B:動作)
次に、画像処理装置11の動作を図4および図5に示すフローチャートを参照して説明する。
(B−1:デコード・展開シーケンスの流れ)
図4は、画像処理装置11が実行するデコード・展開シーケンスの流れを示すフローチャートである。デコード・展開シーケンスとは、パターンROM3に格納されている圧縮符号化データを読み出してデコードし、デコード結果のスプライトパターンデータをスプライトバッファ18に書き込む処理のことを言う。デコード・展開シーケンスでは、デコード制御回路14は、まず、スプライト属性テーブル13にアクセスし、スプライト属性データを取得する(ステップSa1)。次に、デコード制御回路14は、ステップSa1にて取得したスプライト属性データに含まれている圧縮符号化データの格納先アドレスをROMインタフェース15へ出力し、1ブロックの読み出しを指示する。ここで、1ブロックとは、例えば16×16ドットのデータであり、スプライトパターンデータは通常n(n:1より大きい整数)ブロックのデータによって構成されている。上記の指示を受けたROMインタフェース15は、パターンROM3から1ブロックの圧縮符号化データを読み出し、デコーダ16へ出力する。デコーダ16はその圧縮符号化データのデコードを行う(ステップSa2)。
(B: Operation)
Next, the operation of the image processing apparatus 11 will be described with reference to the flowcharts shown in FIGS.
(B-1: Flow of decoding / development sequence)
FIG. 4 is a flowchart showing the flow of the decoding / decompression sequence executed by the image processing apparatus 11. The decoding / decompression sequence refers to a process of reading and decoding the compression-encoded data stored in the pattern ROM 3 and writing the sprite pattern data as a decoding result in the sprite buffer 18. In the decoding / development sequence, the decoding control circuit 14 first accesses the sprite attribute table 13 and acquires sprite attribute data (step Sa1). Next, the decode control circuit 14 outputs the storage address of the compressed encoded data included in the sprite attribute data acquired in step Sa1 to the ROM interface 15 and instructs to read one block. Here, one block is, for example, 16 × 16 dot data, and the sprite pattern data is usually composed of n (n is an integer larger than 1) block data. Receiving the above instruction, the ROM interface 15 reads one block of compressed encoded data from the pattern ROM 3 and outputs it to the decoder 16. The decoder 16 decodes the compressed encoded data (step Sa2).

次いで、デコード制御回路14は、ステップSa2にてデコードされたブロックのスプライトバッファ18への展開が必要か否かを判定する(ステップSa3)。例えば、ステップSa2にてデコードされたブロックが、絶対スプライトにプリリンクされる相対スプライトのブロックであり、かつ当該ブロックのスプライトパターンデータの全てが絶対スプライトのイメージサイズを超える領域に属するものである場合には、デコード制御回路14は当該ブロックの展開不要と判定し、その他の場合は展開が必要と判定する。ステップSa3の判定結果が“No”であれば(すなわち、展開不要と判定された場合)、ステップSa4の処理が実行され、逆にステップSa3の判定結果が“Yes”であれば、ステップSa5の処理が実行される。   Next, the decode control circuit 14 determines whether or not it is necessary to develop the block decoded in step Sa2 into the sprite buffer 18 (step Sa3). For example, when the block decoded in step Sa2 is a relative sprite block prelinked to an absolute sprite, and all of the sprite pattern data of the block belongs to an area exceeding the image size of the absolute sprite. On the other hand, the decode control circuit 14 determines that the expansion of the block is not necessary, and determines that the expansion is necessary in other cases. If the determination result of step Sa3 is “No” (that is, if it is determined that expansion is not required), the process of step Sa4 is executed. Conversely, if the determination result of step Sa3 is “Yes”, the process of step Sa5 is performed. Processing is executed.

ステップSa3の判定結果が“No”である場合に実行されるステップSa4では、デコード制御回路14は、ステップSa1にて取得したスプライト属性データに対応するスプライトを構成する全ブロックのデコードが終了したか否かをチェックする。ステップSa4のチェック結果が“No”の場合(すなわち、全ブロックのデコードが終了していない場合)は、デコード制御回路14はROMインタフェース15に次のブロックの読み出しを指示する。ROMインタフェース15によって読み出された圧縮符号化データはデコーダ16によってデコードされる(ステップSa2)。以降、上述した動作が繰り返えされ、直近にデコードしたスプライトパターンデータを展開せずにスプライトを構成する全ブロックのデコードが終了すると(ステップSa4:Yes)、デコード制御回路14は、再びステップSa1の処理を実行し、次のスプライト(1または複数の相対スプライトがリンクされる絶対スプライトであれば最初の相対スプライト)のスプライト属性データをスプライト属性テーブル13から読み出す。以後、上記と同様にして次のスプライトについてのデコード処理が行われる。   In step Sa4, which is executed when the determination result in step Sa3 is “No”, has the decoding control circuit 14 completed decoding of all the blocks constituting the sprite corresponding to the sprite attribute data acquired in step Sa1? Check whether or not. When the check result in step Sa4 is “No” (that is, when decoding of all the blocks is not completed), the decode control circuit 14 instructs the ROM interface 15 to read the next block. The compression encoded data read by the ROM interface 15 is decoded by the decoder 16 (step Sa2). Thereafter, the above-described operation is repeated, and when the decoding of all the blocks constituting the sprite is completed without expanding the most recently decoded sprite pattern data (step Sa4: Yes), the decode control circuit 14 again performs step Sa1. The sprite attribute data of the next sprite (or the first relative sprite if it is an absolute sprite to which one or more relative sprites are linked) is read from the sprite attribute table 13. Thereafter, the decoding process for the next sprite is performed in the same manner as described above.

ステップSa3の判定結果が“Yes”である場合に実行されるステップSa5では、ステップSa2にてデコードされたブロックがデコーダ16からスプライトバッファインタフェース17に出力され、スプライトバッファ18へのアクセスシーケンスが開始される。前述したようにスプライトバッファ18はFIFO(ファーストイン・ファーストアウトメモリ)であり、スプライトバッファ18へのアクセスシーケンスとは、スプライトバッファ18にブロック単位でスプライトパターンデータを順次展開する処理である。   In step Sa5, which is executed when the determination result in step Sa3 is “Yes”, the block decoded in step Sa2 is output from the decoder 16 to the sprite buffer interface 17, and an access sequence to the sprite buffer 18 is started. The As described above, the sprite buffer 18 is a FIFO (first-in / first-out memory), and the access sequence to the sprite buffer 18 is a process of sequentially developing sprite pattern data in the sprite buffer 18 in units of blocks.

スプライトバッファ18へのアクセスシーケンスでは、まず、展開対象のブロックについて、絶対スプライトにプリリンクされる相対スプライトのブロックであるか否かの判定(ステップSa6)がスプライトバッファインタフェース17によって行われる。ステップSa6の判定結果が“No”の場合、スプライトバッファインタフェース17は、スプライトバッファ18がFULLの状態にあるか否かをチェックし(ステップSa7)、否であった場合に展開を実行する(ステップSa8)。また、スプライトバッファインタフェース17は、スプライトバッファ18がFULL状態であれば(ステップSa7:Yes)、ステップSa7の判定結果が“No”になるまでステップSa7の処理を繰り返し実行し、スプライトバッファ18に空きができるのを待つ。   In the access sequence to the sprite buffer 18, first, the sprite buffer interface 17 determines whether the development target block is a relative sprite block prelinked to the absolute sprite (step Sa6). If the determination result in step Sa6 is “No”, the sprite buffer interface 17 checks whether or not the sprite buffer 18 is in the FULL state (step Sa7), and if not, executes the expansion (step Sa8). If the sprite buffer 18 is in the FULL state (step Sa7: Yes), the sprite buffer interface 17 repeatedly executes the process of step Sa7 until the determination result of step Sa7 becomes “No”, and the sprite buffer 18 is free. Wait for you to do.

ステップSa6の判定結果が“Yes”である場合には、スプライトバッファインタフェース17は、ステップSa7のチェックを行うことなく、ステップSa8の処理を実行する。ステップSa6の判定結果が“Yes”である場合にステップSa7のチェックを行わないのは、絶対スプライトの展開の際に当該相対スプライトのスプライトパターンデータを格納する領域が確保されているからである。   If the determination result of step Sa6 is “Yes”, the sprite buffer interface 17 executes the process of step Sa8 without performing the check of step Sa7. The reason why the check of step Sa7 is not performed when the determination result of step Sa6 is “Yes” is that an area for storing the sprite pattern data of the relative sprite is secured when the absolute sprite is expanded.

1ブロックの展開が終了すると、全ブロックの展開が終了したか否かのチェック(ステップSa9)がデコード制御回路14によって行われる。全ブロックの展開が終了していない場合(ステップSa9:No)には、ステップSa5へ戻り、次のブロックのデコードが終了するのを待って、そのブロックについてステップSa6以降の処理が実行される。また、全ブロックの展開が終了した場合は(ステップSa9:Yes)、ステップSa1以降の処理が再度実行される。ただし、以上の処理によりスプライトバッファ18への展開を完了したスプライトパターンデータが、絶対スプライトにプリリンクされている最後の相対スプライトのスプライトパターンであり、かつ、絶対スプライトおよび相対スプライトをリンクしてなるオブジェクトに対してブラー、グローまたはドロップ・シャドウの何れかを施すことが指示されていた場合には、これらを実現する画像処理がスプライトバッファインタフェース17によって実行される。この画像処理の詳細については後に明らかにする。
以上が画像処理装置11において実行されるデコード・展開シーケンスの流れである。
When the development of one block is finished, the decode control circuit 14 checks whether or not the development of all the blocks is finished (step Sa9). If the development of all the blocks has not been completed (step Sa9: No), the process returns to step Sa5, waits for the decoding of the next block to be completed, and the processes after step Sa6 are executed for that block. Further, when the development of all the blocks has been completed (step Sa9: Yes), the processing after step Sa1 is executed again. However, the sprite pattern data that has been expanded into the sprite buffer 18 by the above processing is the sprite pattern of the last relative sprite prelinked to the absolute sprite, and is formed by linking the absolute sprite and the relative sprite. When it is instructed to apply blur, glow or drop shadow to the object, the sprite buffer interface 17 executes image processing for realizing these. Details of this image processing will be made clear later.
The above is the flow of the decoding / decompression sequence executed in the image processing apparatus 11.

(B−2:描画シーケンスの流れ)
次に、フレームバッファ23へスプライトパターンデータを書き込む描画シーケンスについて説明する。この描画シーケンスは、前述したデコード・展開シーケンスとは非同期に実行される。図5は、画像処理装置11が実行する描画シーケンスの流れを示すフローチャートである。この描画シーケンスでは、まず、フレームバッファ23へ書き込むスプライトパターンの拡大、縮小、回転、変形等を決めるパラメータ、表示位置を指示するデータ等のスプライト属性データがレンダリング制御回路20によってスプライト属性テーブル13から読み出される(ステップSb1)。このとき、絶対スプライトにプリリンクされる相対スプライトについてのスプライト属性データは読み出し対象から除外される。前述したように、絶対スプライトにプリリンクされる相対スプライトをフレームバッファ23に描画する必要はないからである。ただし、ポストリンクされる相対スプライトの属性データの読み出しは行われ、絶対スプライトの描画の後に描画が行われる。
(B-2: Flow of drawing sequence)
Next, a drawing sequence for writing sprite pattern data to the frame buffer 23 will be described. This drawing sequence is executed asynchronously with the decoding / decompression sequence described above. FIG. 5 is a flowchart showing a flow of a drawing sequence executed by the image processing apparatus 11. In this drawing sequence, first, sprite attribute data such as parameters for determining enlargement, reduction, rotation, deformation, etc. of the sprite pattern to be written to the frame buffer 23 and data indicating the display position are read from the sprite attribute table 13 by the rendering control circuit 20. (Step Sb1). At this time, the sprite attribute data for the relative sprite prelinked to the absolute sprite is excluded from the read target. This is because it is not necessary to draw the relative sprite prelinked to the absolute sprite in the frame buffer 23 as described above. However, the attribute data of the relative sprite to be post-linked is read, and the drawing is performed after the drawing of the absolute sprite.

レンダリング制御回路20は、スプライト属性テーブル13から読み出したスプライト属性データをレンダリングエンジン21に与える。レンダリングエンジン21は、レンダリング制御回路20から入力されたスプライト属性データに基づいて初期パラメータの計算を行う(ステップSb2)。次に、レンダリング制御回路20は、描画するスプライトのイメージが既にスプライトバッファ18上に展開されているかをスプライトバッファのステータス(EMPTY)を参照して判定する(ステップSb3)。レンダリング制御回路20は、ステップSb3の判定結果が“No”であれば(すなわち、EMPTYでない場合)は描画処理を行い(ステップSb4)、ステップSb3の判定結果がYesであれば、該当スプライトの展開が完了するまでステップSb3を繰り返す。   The rendering control circuit 20 gives the sprite attribute data read from the sprite attribute table 13 to the rendering engine 21. The rendering engine 21 calculates initial parameters based on the sprite attribute data input from the rendering control circuit 20 (step Sb2). Next, the rendering control circuit 20 determines whether the image of the sprite to be drawn has already been developed on the sprite buffer 18 with reference to the status (EMPTY) of the sprite buffer (step Sb3). The rendering control circuit 20 performs a drawing process if the determination result in step Sb3 is “No” (that is, not EMPTY) (step Sb4), and if the determination result in step Sb3 is Yes, the corresponding sprite is developed. Step Sb3 is repeated until is completed.

ステップSb4の描画処理では、レンダリング制御回路20は、まず、スプライトバッファインタフェース17へスプライトパターンデータの読み出しを指示する。スプライトバッファインタフェース17は、その指示を受け、スプライト属性データに基づいてレンダリングエンジン21によって計算された座標(アドレス)に該当するデータをスプライトバッファ18から読み出し、レンダリングエンジン21へ出力する。レンダリングエンジン21は、そのデータと表示位置を示す表示位置データとをフレームバッファインタフェース22へ出力する。フレームバッファインタフェース22は、レンダリングエンジン21から受け取ったスプライトパターンデータを、そのスプライトパターンデータとともにレンダリングエンジン21から受け取った表示位置データに対応するアドレスに描画する(ステップSb4、Sb5)。   In the rendering process of step Sb4, the rendering control circuit 20 first instructs the sprite buffer interface 17 to read sprite pattern data. In response to the instruction, the sprite buffer interface 17 reads out data corresponding to the coordinates (address) calculated by the rendering engine 21 based on the sprite attribute data from the sprite buffer 18 and outputs the data to the rendering engine 21. The rendering engine 21 outputs the data and display position data indicating the display position to the frame buffer interface 22. The frame buffer interface 22 draws the sprite pattern data received from the rendering engine 21 at the address corresponding to the display position data received from the rendering engine 21 together with the sprite pattern data (steps Sb4 and Sb5).

フレームバッファ23への描画処理は、回転、変形等の処理があるため、スプライトバッファ18のEMPTYの確認はスプライト単位で判断される。スプライト1個の全体のイメージがスプライトバッファ18に展開されていないと、描画処理を開始できない。そして、スプライトの全描画が終了すると(ステップSb6:YES)、ステップSb1へ戻り、レンダリング制御回路20が次のスプライト属性データをスプライト属性テーブル13から読み出す。そして、読み出したスプライト属性データに基づいて次のスプライトの描画処理が行われる。
以上が描画シーケンスの流れである。
Since drawing processing to the frame buffer 23 includes processing such as rotation and deformation, confirmation of EMPTY of the sprite buffer 18 is determined in units of sprites. If the entire image of one sprite is not developed in the sprite buffer 18, the drawing process cannot be started. When all drawing of the sprite is completed (step Sb6: YES), the process returns to step Sb1, and the rendering control circuit 20 reads the next sprite attribute data from the sprite attribute table 13. Then, the next sprite rendering process is performed based on the read sprite attribute data.
The above is the flow of the drawing sequence.

このように、スプライトバッファ18からのスプライトパターンデータの読み出しは、スプライトバッファ18へのスプライトパターンデータの書き込みとは非同期に実行される。すなわち、スプライトバッファ18は、前述したように複数のスプライトパターンを展開可能な記憶容量をもつFIFOであり、FIFOがFULLにならない限りフレームバッファ23の描画終了を待たずに次のスプライトのパターンデータをデコードしてスプライトバッファ18に展開することができる。また、レンダリング制御回路20はFIFOがEMPTYでなければフレームバッファ23へ描画を継続することができる。これにより、パターンROM3内のパターンデータのデコード処理とフレームバッファ23の描画処理の時間の違いを考慮することなくそれぞれの処理を行うことができ、この結果、描画処理能力を向上させることができる。   As described above, the reading of the sprite pattern data from the sprite buffer 18 is executed asynchronously with the writing of the sprite pattern data to the sprite buffer 18. That is, the sprite buffer 18 is a FIFO having a storage capacity capable of developing a plurality of sprite patterns as described above. The pattern data of the next sprite is not waited until the drawing of the frame buffer 23 is finished unless the FIFO becomes FULL. It can be decoded and expanded in the sprite buffer 18. The rendering control circuit 20 can continue drawing in the frame buffer 23 if the FIFO is not EMPTY. As a result, each process can be performed without considering the time difference between the decoding process of the pattern data in the pattern ROM 3 and the drawing process of the frame buffer 23. As a result, the drawing processing capability can be improved.

次いで、ブラー、グロー、ドロップ・シャドウの各々を実現する画像処理について説明する。前述したように、本実施形態では、ブラー、グローおよびドロップ・シャドウの何れかの対象となるスプライトについては、絶対スプライトと複数の相対スプライトに分割してスプライトパターンデータがパターンROM3に登録されている。このため、ブラーの対象となるスプライトについては、絶対スプライト、第1の相対スプライト、第2の相対スプライトの順に、デコード・展開シーケンスの処理が実行される。同様に、グローまたはドロップ・シャドウの対象となるスプライトについては、絶対スプライト、第1の相対スプライト、第2の相対スプライトの順に、デコード・展開シーケンスの処理が実行される。   Next, image processing for realizing each of blur, glow, and drop / shadow will be described. As described above, in the present embodiment, sprite pattern data is registered in the pattern ROM 3 by dividing the sprite that is subject to any one of blur, glow, and drop / shadow into an absolute sprite and a plurality of relative sprites. . For this reason, the decoding / decompression sequence processing is executed in the order of the absolute sprite, the first relative sprite, and the second relative sprite for the sprite to be blurred. Similarly, with respect to sprites to be glowed or dropped / shadowed, decoding / development sequence processing is executed in the order of absolute sprite, first relative sprite, and second relative sprite.

処理対象のスプライトに施す処理がブラーの場合は第1および第2の相対スプライトが、グロー、ドロップ・シャドウの場合は第1の相対スプライトが、絶対スプライトに対してプリリンクされる相対スプライトである。ブラーの場合、第1の相対スプライトのスプライトパターンデータは、当該第1の相対スプライトについてのスプライト属性データに含まれる配置位置情報にしたがって、スプライトバッファ18上で絶対スプライトのodd領域に展開される。一方、第2の相対スプライトのスプライトパターンデータは、当該第2の相対スプライトについてのスプライト属性データに含まれる配置位置情報にしたがって、スプライトバッファ18上で絶対スプライトのeven領域に展開される。また、グロー、ドロップ・シャドウの場合、第1の相対スプライトのスプライトパターンデータは、当該第1の相対スプライトについてのスプライト属性データに含まれる配置位置情報にしたがって、スプライトバッファ18上で絶対スプライトのeven領域に展開される。   The first and second relative sprites are relative sprites that are pre-linked to absolute sprites when the processing to be performed on the sprites to be processed is blur, and the first relative sprites are glow and drop / shadows. . In the case of the blur, the sprite pattern data of the first relative sprite is developed in the odd area of the absolute sprite on the sprite buffer 18 in accordance with the arrangement position information included in the sprite attribute data for the first relative sprite. On the other hand, the sprite pattern data of the second relative sprite is expanded in the even area of the absolute sprite on the sprite buffer 18 in accordance with the arrangement position information included in the sprite attribute data for the second relative sprite. In the case of glow, drop, and shadow, the sprite pattern data of the first relative sprite is the absolute sprite even on the sprite buffer 18 in accordance with the arrangement position information included in the sprite attribute data for the first relative sprite. Expands to an area.

処理対象のスプライトに施す処理がブラーの場合、絶対スプライトに対してプリリンクされる最後の相対スプライトは第2の相対スプライトであるため、当該第2の相対スプライトのスプライトパターンデータの展開の完了後、スプライトバッファインタフェース17は、図6に示す処理を実行する。これに対して、処理対象のスプライトに施す処理がグローまたはドロップ・シャドウである場合、絶対スプライトに対してプリリンクされる最後の相対スプライトは第1の相対スプライトであるため、当該第1の相対スプライトのスプライトパターンデータの展開の完了後、スプライトバッファインタフェース17は、図6に示す処理を実行する。すなわち、スプライトバッファインタフェース17は、even領域に展開された相対スプライトのスプライトパターンデータを読み出しながらガウスフィルタ処理を施してodd領域に書き込む(図6:ステップst1、なお、図6にて○印で囲んだFはフィルタ処理を表す)。ガウスフィルタ処理とは、処理対象の画素とその周辺の画素の各画素の画素値と各画素に対応する係数を乗算した値を加算して当該処理対象の画素の画素値を算出する処理である。例えば、5×5のマトリクスを単位としてガウスフィルタ処理を行う場合(図7における画素u33が処理対象である場合)は、5×5領域内の各画素の画素値に図7に示す各画素の係数を画素毎に乗算して得られる値を加算した結果が画素U33のガウスフィルタ処理結果となる。   When the processing to be performed on the sprite to be processed is blur, the last relative sprite to be prelinked to the absolute sprite is the second relative sprite, and therefore, after the expansion of the sprite pattern data of the second relative sprite is completed The sprite buffer interface 17 executes the processing shown in FIG. On the other hand, when the processing to be performed on the sprite to be processed is glow or drop shadow, the last relative sprite to be prelinked with respect to the absolute sprite is the first relative sprite. After completing the development of the sprite pattern data of the sprite, the sprite buffer interface 17 executes the processing shown in FIG. That is, the sprite buffer interface 17 performs Gaussian filter processing while reading the sprite pattern data of the relative sprite expanded in the even area and writes it in the odd area (FIG. 6: step st1, which is surrounded by a circle in FIG. 6). F represents filtering. The Gaussian filter process is a process of calculating a pixel value of a pixel to be processed by adding a value obtained by multiplying a pixel value of each pixel of a pixel to be processed and its surrounding pixels and a coefficient corresponding to each pixel. . For example, when Gaussian filter processing is performed in units of 5 × 5 matrix (when pixel u33 in FIG. 7 is a processing target), the pixel value of each pixel in the 5 × 5 region is set to the pixel value of each pixel shown in FIG. The result of adding the values obtained by multiplying the coefficients for each pixel is the Gaussian filter processing result of the pixel U33.

even領域に展開された相対スプライトがカラーデータのみの画像データであれば、スプライトバッファインタフェース17はカラーデータのみにガウスフィルタ処理を施してodd領域に格納されている画像データのカラーデータを上書きし、even領域に展開された相対スプライトがαデータのみの画像データであれば、スプライトバッファインタフェース17はαデータのみにガウスフィルタ処理を施してodd領域に格納されている画像データのαデータを上書きする。スプライトバッファインタフェース17はステップst1の後、odd領域に書き込まれたデータを読み出しながらガウスフィルタ処理を施してeven領域に書き込む(ステップst2)。以降、スプライトバッファインタフェース17は、even/oddを切り替えてガウスフィルタのカスケード処理を予め定められた回数だけ繰り返す(図6:ステップst3〜ステップst7)。ガウスフィルタのカスケード処理の繰り返し回数については絶対スプライトのスプライト属性データに含めて画像処理装置11に与えても良く、また、予め定められた固定値としても良い。図6には、ガウスフィルタのカスケード処理を7回行う場合について例示されている。   If the relative sprite developed in the even area is image data of only color data, the sprite buffer interface 17 performs Gaussian filter processing only on the color data and overwrites the color data of the image data stored in the odd area. If the relative sprite developed in the even area is image data of only α data, the sprite buffer interface 17 performs Gaussian filter processing only on the α data and overwrites the α data of the image data stored in the odd area. After step st1, the sprite buffer interface 17 performs Gaussian filter processing while reading the data written in the odd area and writes it in the even area (step st2). Thereafter, the sprite buffer interface 17 switches even / odd and repeats the gauss filter cascade processing a predetermined number of times (FIG. 6: step st3 to step st7). The number of repetitions of the Gaussian filter cascade processing may be included in the sprite attribute data of the absolute sprite and given to the image processing apparatus 11, or may be a fixed value determined in advance. FIG. 6 illustrates the case where the cascade processing of the Gaussian filter is performed seven times.

処理対象のスプライトに施す処理がブラーである場合、第1の相対スプライトのスプライトパターンデータは当該処理対象のスプライトの輪郭部分のαデータであり、第2の相対スプライトのスプライトパターンデータは当該処理対象のスプライトのカラーデータである。上記カスケード処理の回数が奇数回である場合には、最終結果(すなわち、ガウスフィルタ処理のカスケード処理が施されたカラーデータと当該カスケード処理を施されていないαデータとからなる画像データ)はodd領域に展開される。odd領域の格納内容を処理対象として前述の描画シーケンスを実行すれば、ガウスフィルタ処理のカスケードによりぼやけたスプライトの画像データがフレームバッファ23に描画され、ブラーが実現される。   When the processing to be performed on the sprite to be processed is a blur, the sprite pattern data of the first relative sprite is α data of the contour portion of the sprite to be processed, and the sprite pattern data of the second relative sprite is the processing target This is the color data of the sprite. When the number of times of the cascade processing is an odd number, the final result (that is, image data composed of color data subjected to the Gaussian filter cascade processing and α data not subjected to the cascade processing) is odd. Expands to an area. If the above-described drawing sequence is executed with the stored contents of the odd area as a processing target, the blurred sprite image data is drawn in the frame buffer 23 by the cascade of Gaussian filter processing, and blurring is realized.

処理対象のスプライトに施す処理がグローまたはドロップ・シャドウである場合、第1の相対スプライトのスプライトパターンデータは当該処理対象のスプライトの輪郭部分のαデータのみからなる画像データである。したがって、ガウスフィルタのカスケード処理を奇数回行うと、odd領域に格納されている各画素のαデータはガウスフィルタ処理を繰り返し施したものに更新される。グローおよびドロップ・シャドウは、図6に示す処理に加えて、描画シーケンスにおいて図8に示す処理をフレームバッファインタフェース22に実行させることで実現される。すなわち、フレームバッファインタフェース22は、odd領域に格納されているガウスフィルタ処理済のαデータを用いて固定色(例えば、グローの場合は白、ドロップ・シャドウの場合はグレイ)の画像と透過処理を行って新たなスプライトとしてフレームバッファ23に描画する。そして、フレームバッファインタフェース22は、上記第2の相対スプライト(図8に示す例では、文字“A”の画像)を当該新たなスプライトにポストリンクする。なお、図8において点描のハッチングは透明色を表し、斜線のハッチングは上記固定色を表し、横線のハッチングは背景色を表す。   When the processing to be performed on the sprite to be processed is glow or drop shadow, the sprite pattern data of the first relative sprite is image data including only α data of the contour portion of the sprite to be processed. Therefore, when the Gaussian filter cascade processing is performed an odd number of times, the α data of each pixel stored in the odd area is updated to a result of repeated Gaussian filter processing. Glow and drop shadow are realized by causing the frame buffer interface 22 to execute the processing shown in FIG. 8 in the drawing sequence in addition to the processing shown in FIG. In other words, the frame buffer interface 22 uses the Gaussian filtered α data stored in the odd area to perform a fixed color (for example, white for glow and gray for drop / shadow) and transparency processing. Then, it draws in the frame buffer 23 as a new sprite. Then, the frame buffer interface 22 post-links the second relative sprite (in the example shown in FIG. 8, an image of the character “A”) to the new sprite. In FIG. 8, stippled hatching represents a transparent color, hatched hatching represents the fixed color, and horizontal hatching represents a background color.

上記処理対象のスプライトに対して施す処理がグローであれば、第2の相対スプライトは縮小(または拡大)を施された後にフレームバッファ23上で上記新たなスプライトに対して中心を一致させて重ね書きされる。その結果、第2の相対スプライトの輪郭部分には上記固定色のぼやけた縁取りが付与され、グローが実現される。これに対して、上記処理対象のスプライトに対して施す処理がドロップ・シャドウであれば、第2の相対スプライトは縮小を施された後にフレームバッファ23上で上記新たなスプライトに対して中心をずらして重ね書きされる。その結果、上記新たなスプライトのうち第2の相対スプライトとは重ならない部分があたかも影のように見え、ドロップ・シャドウが実現される。   If the process to be performed on the sprite to be processed is glow, the second relative sprite is reduced (or enlarged) and then overlapped on the frame buffer 23 with the center aligned with the new sprite. Written. As a result, the outline of the second relative sprite is given the blurred border of the fixed color, and a glow is realized. On the other hand, if the process to be performed on the sprite to be processed is a drop shadow, the second relative sprite is reduced and then the center is shifted with respect to the new sprite on the frame buffer 23. Are overwritten. As a result, a portion of the new sprite that does not overlap with the second relative sprite appears as a shadow, and a drop shadow is realized.

以上説明したように本実施形態によれば、パターンROM3から読み出してリアルタイムにデコードしたスプライトパターンをブロック単位でスプライトバッファ18に展開しながらフレームバッファ23に重ね合わせて描画する際に、スプライトパターンの奥行き感を演出するブラー、グロー、ドロップ・シャドウを実現することが可能になる。   As described above, according to the present embodiment, when the sprite pattern read from the pattern ROM 3 and decoded in real time is drawn on the frame buffer 23 while being developed in the sprite buffer 18 in units of blocks, the depth of the sprite pattern is drawn. It is possible to realize blur, glow, drop shadows that produce a feeling.

(C:変形)
以上本発明の一実施形態について説明したが、この実施形態を以下のように変形しても勿論良い。
(1)上記実施形態では、絶対スプライトを、処理対象となるスプライトの2倍のイメージサイズとしたが、当該処理対象となるスプライトと同じイメージサイズとしても良い。この場合、スプライトバッファ18に当該処理対象のスプライトの2倍のイメージサイズ分の記憶領域を確保した後、odd領域に絶対スプライト(透明色の画像)を配置し、even領域に相対スプライトを配置するように相対スプライトの配置情報を規定しておく。この場合、絶対スプライトの領域外に相対スプライトを展開することになるが、イレギュラーとして対応すれば良い。このような態様によれば、最終的な描画対象であるodd領域の画像が絶対スプライトと一致し、描画シーケンスが単純化される。
(C: deformation)
Although one embodiment of the present invention has been described above, this embodiment may of course be modified as follows.
(1) In the above embodiment, the absolute sprite has an image size twice that of the sprite to be processed, but may be the same image size as the sprite to be processed. In this case, after securing a storage area for the image size twice as large as the processing target sprite in the sprite buffer 18, an absolute sprite (transparent color image) is arranged in the odd area, and a relative sprite is arranged in the even area. The relative sprite arrangement information is defined as follows. In this case, the relative sprite is expanded outside the area of the absolute sprite, but it may be handled as irregular. According to such an aspect, the image of the odd area that is the final drawing target matches the absolute sprite, and the drawing sequence is simplified.

(2)上記実施形態では、スプライトバッファ18に確保したodd領域およびeven領域を交互に使用しながらブラー、グロー、ドロップ・シャドウなどスプライトの動きや奥行感を演出する画像処理を実現する場合について説明した。しかし、スプライトバッファ18或いはフレームバッファ23上で複数のスプライトをリンクするプリリンク、ポストリンクを利用しつつ文字列全体を拡大縮小、回転、変形することで、複雑な構成規則をもつアラビア語のフォントレイアウトや多言語の混在、等幅でないフォントの文字列の描画を行うようにしても良い。 (2) In the above-described embodiment, a description will be given of a case where image processing that produces sprite movement and depth feeling such as blur, glow, drop / shadow, etc. is realized while alternately using odd and even areas secured in the sprite buffer 18. did. However, an Arabic font with complex composition rules can be created by scaling, rotating, and transforming the entire character string while using pre-link and post-link to link multiple sprites on the sprite buffer 18 or the frame buffer 23. It is also possible to draw a character string of a font having a non-uniform width, such as a layout, mixed languages, and the like.

(3)上記実施形態では、ブラー、グロー、ドロップ・シャドウなどスプライトの動きや奥行感を演出する画像処理を実現する場合について説明した。しかし、本発明の適用対象はこれら画像処理に限定されるものではなく、スプライトパターンデータに対してフィルタ処理を繰り返し施すことを要する画像処理であれば適用可能であり、上記フィルタ処理はガウスフィルタ処理に限定されるものでもない。 (3) In the above-described embodiment, a case has been described in which image processing that produces sprite movement and depth feeling such as blur, glow, and drop / shadow is realized. However, the application target of the present invention is not limited to these image processing, and can be applied to any image processing that requires repeated filtering processing on sprite pattern data. The filtering processing is Gaussian filtering processing. It is not limited to.

(4)上記実施形態ではブラーを実現する際にカラーデータに対してのみガウスフィルタ処理を施したが透過処理係数に対してもガウスフィルタ処理を施しても良い。要は、各々スプライトの属性データを記憶するスプライト属性テーブルと、描画対象とするスプライトの画像データを前記スプライト属性テーブルの属性データに従って第1の記憶手段に書き込む第1の書き込み手段と、1フレームの画像を表す画像データを記憶する第2の記憶手段と、前記第1の記憶手段に記憶された画像データを前記第2の記憶手段へ書き込む第2の書き込み手段と、を備え、少なくとも一のスプライトの位置情報が当該スプライトの属性データに格納されており、他の少なくとも一のスプライトの位置情報は当該スプライト以外の他のスプライトからの相対位置として、当該スプライトの属性データに格納されており、前記第1の書き込み手段は、フィルタ処理の対象となるスプライトのイメージサイズの2倍の記憶領域を前記第1の記憶手段に確保し、前記少なくとも一のスプライトの属性データに従って、当該スプライトを前記記憶領域に書き込み、前記記憶領域を前半と後半に等分した一方に、前記他の少なくとも一のスプライトの属性データに従って、前記他の少なくとも一のスプライトを書き込み、前記前半の領域と前記後半の領域のうちの直近に書き込みの行われた領域にフィルタ処理を施して他方の領域に書き込む処理を予め定められた回数だけ繰り返し、前記第2の書き込み手段は、前記前半と後半の領域のうち直近に書き込みの行われた領域の画像データを前記第1の記憶手段から読み出して前記第2の記憶手段に書き込むことを特徴とする画像処理装置であれば良い。この場合、カラーデータと透過処理係数とで異なる種類のフィルタ処理を施しても良い。このようにすることで、ブラー、グロー、ドロップ・シャドウの何れとも異なる効果を付与することができると考えられるからである。 (4) In the above embodiment, the Gaussian filter process is performed only on the color data when realizing the blur. However, the Gaussian filter process may also be performed on the transmission processing coefficient. In short, a sprite attribute table that stores attribute data of each sprite, a first writing unit that writes image data of a sprite to be drawn into the first storage unit according to the attribute data of the sprite attribute table, and one frame Second storage means for storing image data representing an image, and second writing means for writing the image data stored in the first storage means to the second storage means, and at least one sprite Is stored in the attribute data of the sprite, and the position information of at least one other sprite is stored in the attribute data of the sprite as a relative position from other sprites other than the sprite. The first writing means stores twice the image size of the sprite to be filtered. An area is secured in the first storage means, the sprite is written into the storage area according to the attribute data of the at least one sprite, and the storage area is equally divided into the first half and the second half, and the other at least one other Writing the at least one other sprite in accordance with the attribute data of the sprite, performing a filtering process on the most recently written area of the first half area and the second half area, and writing to the other area. The second writing means reads the image data of the most recently written area from the first storage means and repeats the predetermined number of times, and the second storage means Any image processing apparatus that is characterized by writing to the means may be used. In this case, different types of filter processing may be applied to the color data and the transmission processing coefficient. By doing so, it is considered that an effect different from any of blur, glow, and drop shadow can be imparted.

3…パターンROM、4…表示装置、11…画像処理装置、13…スプライト属性テーブル、14…デコード制御回路、15…ROMインタフェース、16…デコーダ、17…スプライトバッファインタフェース、18…スプライトバッファ、20…レンダリング制御回路、21…レンダリングエンジン、22…フレームバッファインタフェース、23…フレームバッファ、25…表示制御回路、26…ホストインタフェース。
DESCRIPTION OF SYMBOLS 3 ... Pattern ROM, 4 ... Display apparatus, 11 ... Image processing apparatus, 13 ... Sprite attribute table, 14 ... Decoding control circuit, 15 ... ROM interface, 16 ... Decoder, 17 ... Sprite buffer interface, 18 ... Sprite buffer, 20 ... Rendering control circuit, 21 ... rendering engine, 22 ... frame buffer interface, 23 ... frame buffer, 25 ... display control circuit, 26 ... host interface.

Claims (6)

各々スプライトの属性データを記憶するスプライト属性テーブルと、
描画対象とするスプライトの画像データを前記スプライト属性テーブルの属性データに従って第1の記憶手段に書き込む第1の書き込み手段と、
1フレームの画像を表す画像データを記憶する第2の記憶手段と、
前記第1の記憶手段に記憶された画像データを前記第2の記憶手段へ書き込む第2の書き込み手段と、を備え、
少なくとも一のスプライトの位置情報が当該スプライトの属性データに格納されており、他の少なくとも一のスプライトの位置情報は当該スプライト以外の他のスプライトからの相対位置として、当該スプライトの属性データに格納されており、
前記第1の書き込み手段は、フィルタ処理の対象となるスプライトのイメージサイズの2倍の記憶領域を前記第1の記憶手段に確保し、前記少なくとも一のスプライトの属性データに従って、当該スプライトを前記記憶領域に書き込み、前記記憶領域を前半と後半に等分した一方に、前記他の少なくとも一のスプライトの属性データに従って、前記他の少なくとも一のスプライトを書き込み、前記前半の領域と前記後半の領域のうちの直近に書き込みの行われた領域にフィルタ処理を施して他方の領域に書き込む処理を予め定められた回数だけ繰り返し、
前記第2の書き込み手段は、前記前半と後半の領域のうち直近に書き込みの行われた領域の画像データを前記第1の記憶手段から読み出して前記第2の記憶手段に書き込む
ことを特徴とする画像処理装置。
A sprite attribute table for storing attribute data of each sprite;
First writing means for writing image data of a sprite to be drawn into a first storage means in accordance with attribute data in the sprite attribute table;
Second storage means for storing image data representing an image of one frame;
Second writing means for writing image data stored in the first storage means to the second storage means,
Position information of at least one sprite is stored in the attribute data of the sprite, and position information of at least one other sprite is stored in the attribute data of the sprite as a relative position from other sprites other than the sprite. And
The first writing means secures a storage area twice as large as the image size of the sprite to be filtered in the first storage means, and stores the sprite according to the attribute data of the at least one sprite. Write to the area and write the at least one other sprite in accordance with the attribute data of the at least one other sprite to the storage area equally divided into the first half and the second half. Apply the filter process to the area that was most recently written and repeat the process of writing to the other area a predetermined number of times,
The second writing means reads the image data of the most recently written area from the first and second half areas from the first storage means and writes the image data to the second storage means. Image processing device.
前記スプライトの画像データは、スプライトを構成する各画素の色を表すカラーデータと各画素の透過処理係数とから構成されており、
前記第1の書き込み手段は、カラーデータを対象に前記フィルタ処理を施す
ことを特徴とする請求項1に記載の画像処理装置。
The image data of the sprite is composed of color data representing the color of each pixel constituting the sprite and a transmission processing coefficient of each pixel.
The image processing apparatus according to claim 1, wherein the first writing unit performs the filtering process on color data.
前記スプライトの画像データは、スプライトを構成する各画素の色を表すカラーデータと各画素の透過処理係数とから構成されており、
前記第1の書き込み手段は、透過処理係数を対象に前記フィルタ処理を施すことを特徴とする請求項1に記載の画像処理装置。
The image data of the sprite is composed of color data representing the color of each pixel constituting the sprite and a transmission processing coefficient of each pixel.
The image processing apparatus according to claim 1, wherein the first writing unit performs the filtering process on a transmission processing coefficient.
前記第2の書き込み手段は、
前記等分した一方の領域と同じイメージサイズの所定色の画像に、前記前半の領域と前記後半の領域のうち直近に書き込みの行われた領域に記憶されている透過処理係数による透過処理を行って得られる画像を、前記第2の記憶手段に書き込むとともに、前記他の少なくとも一のスプライトの画像データのカラーデータの表す画像を縮小または拡大して重ね書きする
ことを特徴とする請求項3に記載の画像処理装置。
The second writing means includes
The image of a predetermined color having the same image size as the one of the equally divided areas is subjected to a transmission process using a transmission coefficient stored in the most recently written area of the first half area and the second half area. The image obtained in this way is written in the second storage means, and the image represented by the color data of the image data of the at least one other sprite is overwritten by reducing or enlarging it. The image processing apparatus described.
前記第1の記憶手段はファーストイン・ファーストアウトメモリとして機能することを特徴とする請求項1〜4の何れか1項に記載の画像処理装置。   The image processing apparatus according to claim 1, wherein the first storage unit functions as a first-in / first-out memory. スプライトの画像データに圧縮符号化を施して得られる圧縮符号化データを前記スプライト属性テーブルの属性データにしたがってパターンROMから読み出し、圧縮符号化前の画像データを復元し前記第1の書き込み手段に与えるデコーダを有する
ことを特徴とする請求項1〜5の何れか1項に記載の画像処理装置。
Compression encoded data obtained by performing compression encoding on the sprite image data is read from the pattern ROM in accordance with the attribute data in the sprite attribute table, and the image data before compression encoding is restored and supplied to the first writing means. The image processing apparatus according to claim 1, further comprising a decoder.
JP2014102337A 2014-05-16 2014-05-16 Image processing device Active JP6507491B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014102337A JP6507491B2 (en) 2014-05-16 2014-05-16 Image processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014102337A JP6507491B2 (en) 2014-05-16 2014-05-16 Image processing device

Publications (3)

Publication Number Publication Date
JP2015219351A true JP2015219351A (en) 2015-12-07
JP2015219351A5 JP2015219351A5 (en) 2017-06-08
JP6507491B2 JP6507491B2 (en) 2019-05-08

Family

ID=54778779

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014102337A Active JP6507491B2 (en) 2014-05-16 2014-05-16 Image processing device

Country Status (1)

Country Link
JP (1) JP6507491B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108369794A (en) * 2015-12-18 2018-08-03 三菱电机株式会社 Data processing equipment, data processing method and data processor

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002311943A (en) * 2001-04-10 2002-10-25 Yamaha Corp Image display device
JP2004062787A (en) * 2002-07-31 2004-02-26 Yamaha Corp Image display device
JP2005215252A (en) * 2004-01-29 2005-08-11 Yamaha Corp Image processing method and device
JP2007188338A (en) * 2006-01-13 2007-07-26 Yamaha Corp Image processor
US20080273041A1 (en) * 2007-05-04 2008-11-06 Sunplus Mmobile Inc. Interactive image and graphic system and method capable of detecting collision
US20100128059A1 (en) * 2008-11-26 2010-05-27 Sunplus Mmedia Inc. Decompression system and method for DCT-base compressed graphic data with transparent attribute

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002311943A (en) * 2001-04-10 2002-10-25 Yamaha Corp Image display device
JP2004062787A (en) * 2002-07-31 2004-02-26 Yamaha Corp Image display device
JP2005215252A (en) * 2004-01-29 2005-08-11 Yamaha Corp Image processing method and device
JP2007188338A (en) * 2006-01-13 2007-07-26 Yamaha Corp Image processor
US20080273041A1 (en) * 2007-05-04 2008-11-06 Sunplus Mmobile Inc. Interactive image and graphic system and method capable of detecting collision
US20100128059A1 (en) * 2008-11-26 2010-05-27 Sunplus Mmedia Inc. Decompression system and method for DCT-base compressed graphic data with transparent attribute

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108369794A (en) * 2015-12-18 2018-08-03 三菱电机株式会社 Data processing equipment, data processing method and data processor

Also Published As

Publication number Publication date
JP6507491B2 (en) 2019-05-08

Similar Documents

Publication Publication Date Title
JP4704348B2 (en) Image generating apparatus and image generating method
US9280956B2 (en) Graphics memory load mask for graphics processing
WO2017222633A1 (en) Image rotation method and apparatus
JP5515487B2 (en) Image processing device
JP2005077522A (en) Image processor and image processing method
JP2005135415A (en) Graphic decoder including command based graphic output accelerating function, graphic output accelerating method therefor, and image reproducing apparatus
JP2015219351A (en) Image processor
WO2010134292A1 (en) Drawing device and drawing method
JP2012032456A (en) Image processing apparatus
JP2004317878A (en) Graphics processor, graphics card and graphics processing system
JP2005346605A (en) Antialias drawing method and drawing apparatus using the same
JP3104643B2 (en) Image processing apparatus and image processing method
JP4760390B2 (en) Image processing device
JP3910259B2 (en) Image processing apparatus and method, and rendering apparatus and method
JP2005128689A (en) Image drawing device
WO2021245875A1 (en) Image compositing device and image compositing method
JP2003150975A (en) Image generation device
JP6036072B2 (en) Image processing device
JP4194605B2 (en) Image processing apparatus and method, and rendering apparatus and method
JP2004241901A (en) Image processor
JP3778068B2 (en) Image data expansion method and image display control apparatus
JP2014035453A (en) Image processor
JP2002352263A (en) Method and device for 3d display
JP5172523B2 (en) Image data processing method, image data processing apparatus, and compression circuit
JP2005099313A (en) Image drawing method and image drawing system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170324

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170421

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180227

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180424

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180904

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181030

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190318

R151 Written notification of patent or utility model registration

Ref document number: 6507491

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151