JP2015219351A - Image processor - Google Patents
Image processor Download PDFInfo
- 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
Links
Images
Landscapes
- Controls And Circuits For Display Device (AREA)
Abstract
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
スプライト方式の画像表示システムは、ポリゴン等を用いた他の方式の画像表示システムに比較して、低い性能の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.
以下図面を参照しつつ本発明の実施形態を説明する。
(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
Hereinafter, the
図1に示すように、画像処理装置11は、スプライト属性テーブル13、デコード制御回路14、ROMインタフェース15、デコーダ16、スプライトバッファインタフェース17、スプライトバッファ18、レンダリング制御回路20、レンダリングエンジン21、フレームバッファインタフェース22、フレームバッファ23、表示制御回路25、およびホストインタフェース26を有している。
As shown in FIG. 1, the
ホストインタフェース26にはホストCPU5が接続されている。このホストインタフェース26を介して、スプライト属性テーブル13へのスプライト属性データの登録がホストCPU5によって行われる。スプライト属性データには、表示装置4に表示させるスプライトに関する各種情報(スプライトの圧縮符号化データのパターンROM3における格納場所を示す格納先アドレス、スプライトの拡大、縮小、回転、変形等を決めるパラメータ、配置位置を指示する配置位置データ等)が含まれている。
A
デコード制御回路14は、ホストCPU5によってスプライト属性テーブル13に書き込まれたスプライト属性データを読み出す。そして、デコード制御回路14は、スプライト属性テーブル13から読み出したスプライト属性データに含まれている格納先アドレスの示す圧縮符号化データをパターンROM3から読み出す処理の制御、および当該圧縮符号化データのデコード処理の制御を行う。
The
より詳細に説明すると、デコード制御回路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
スプライトバッファ18はFIFO(ファーストイン・ファーストアウトメモリ)として機能する記憶手段である。スプライトバッファ18は、複数のスプライトパターンデータを格納可能な記憶容量を有する。本実施形態では、圧縮符号化前の画像データとして、ARGB32ビット形式の画像データが採用されており、スプライトバッファ18にはこの形式の画像データが格納される。ARGB32ビット形式の画像データとは、スプライトを構成する各画素の画素値が、透過係数α(8ビット)、R成分の強度(8ビット)、G成分の強度(8ビット)、B成分の強度(8ビット)で表現された画像データである。以下では、R成分、G成分およびB成分の各強度を表すデータのことを「カラーデータ」と呼ぶ場合がある。
The
レンダリング制御回路20は、スプライト属性テーブル13内のスプライト属性データを読み出し、読み出したスプライト属性データをレンダリングエンジン21へ出力する。レンダリングエンジン21は、スプライトバッファインタフェース17から与えられたスプライトパターンデータのレンダリング処理(拡大、縮小、回転、変形等する処理)を、レンダリング制御回路20から与えられる指示に従って行う。レンダリングエンジン21は、レンダリング処理を完了したスプライトパターンデータをフレームバッファインタフェース22へ出力する。フレームバッファインタフェース22はレンダリングエンジン21から出力されるスプライトパターンデータをフレームバッファ23に書き込む書き込み手段である。また、フレームバッファインタフェース22は、表示制御回路25からの指示を受けてフレームバッファ23からスプライトパターンデータを読み出し、表示制御回路25へ出力する。
The
フレームバッファ23は、1フレーム分の画像データを記憶する記憶手段である。フレームバッファ23は、書き込み用と読み出し用とが交互に切り替えられるダブルバッファ構成となっている。表示制御回路25は画像表示のための各種のタイミング信号を生成して表示装置4へ出力する。また、表示制御回路25は、フレームバッファインタフェース22を介してフレームバッファ23から読み出されたスプライトパターンデータをそのタイミング信号に同期させて表示装置4へ出力する。
The
本実施形態では、複数のスプライトをスプライトバッファ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
図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
図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
図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
本実施形態では、プリリンク、ポストリンクを用いてブラー、グローおよびドロップ・シャドウの各々を実現できるようにするため、ブラー、グローおよびドロップ・シャドウを施すスプライトについて以下の要領でスプライトパターンデータがパターン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
ブラーの対象となるスプライトについては、当該スプライトの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
グローまたはドロップ・シャドウの対象となるスプライトについては、当該スプライトの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
上記第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
(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
(B-1: Flow of decoding / development sequence)
FIG. 4 is a flowchart showing the flow of the decoding / decompression sequence executed by the
次いで、デコード制御回路14は、ステップSa2にてデコードされたブロックのスプライトバッファ18への展開が必要か否かを判定する(ステップSa3)。例えば、ステップSa2にてデコードされたブロックが、絶対スプライトにプリリンクされる相対スプライトのブロックであり、かつ当該ブロックのスプライトパターンデータの全てが絶対スプライトのイメージサイズを超える領域に属するものである場合には、デコード制御回路14は当該ブロックの展開不要と判定し、その他の場合は展開が必要と判定する。ステップSa3の判定結果が“No”であれば(すなわち、展開不要と判定された場合)、ステップSa4の処理が実行され、逆にステップSa3の判定結果が“Yes”であれば、ステップSa5の処理が実行される。
Next, the
ステップ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
ステップ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
スプライトバッファ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
ステップSa6の判定結果が“Yes”である場合には、スプライトバッファインタフェース17は、ステップSa7のチェックを行うことなく、ステップSa8の処理を実行する。ステップSa6の判定結果が“Yes”である場合にステップSa7のチェックを行わないのは、絶対スプライトの展開の際に当該相対スプライトのスプライトパターンデータを格納する領域が確保されているからである。
If the determination result of step Sa6 is “Yes”, the
1ブロックの展開が終了すると、全ブロックの展開が終了したか否かのチェック(ステップSa9)がデコード制御回路14によって行われる。全ブロックの展開が終了していない場合(ステップSa9:No)には、ステップSa5へ戻り、次のブロックのデコードが終了するのを待って、そのブロックについてステップSa6以降の処理が実行される。また、全ブロックの展開が終了した場合は(ステップSa9:Yes)、ステップSa1以降の処理が再度実行される。ただし、以上の処理によりスプライトバッファ18への展開を完了したスプライトパターンデータが、絶対スプライトにプリリンクされている最後の相対スプライトのスプライトパターンであり、かつ、絶対スプライトおよび相対スプライトをリンクしてなるオブジェクトに対してブラー、グローまたはドロップ・シャドウの何れかを施すことが指示されていた場合には、これらを実現する画像処理がスプライトバッファインタフェース17によって実行される。この画像処理の詳細については後に明らかにする。
以上が画像処理装置11において実行されるデコード・展開シーケンスの流れである。
When the development of one block is finished, the
The above is the flow of the decoding / decompression sequence executed in the
(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
レンダリング制御回路20は、スプライト属性テーブル13から読み出したスプライト属性データをレンダリングエンジン21に与える。レンダリングエンジン21は、レンダリング制御回路20から入力されたスプライト属性データに基づいて初期パラメータの計算を行う(ステップSb2)。次に、レンダリング制御回路20は、描画するスプライトのイメージが既にスプライトバッファ18上に展開されているかをスプライトバッファのステータス(EMPTY)を参照して判定する(ステップSb3)。レンダリング制御回路20は、ステップSb3の判定結果が“No”であれば(すなわち、EMPTYでない場合)は描画処理を行い(ステップSb4)、ステップSb3の判定結果がYesであれば、該当スプライトの展開が完了するまでステップSb3を繰り返す。
The
ステップSb4の描画処理では、レンダリング制御回路20は、まず、スプライトバッファインタフェース17へスプライトパターンデータの読み出しを指示する。スプライトバッファインタフェース17は、その指示を受け、スプライト属性データに基づいてレンダリングエンジン21によって計算された座標(アドレス)に該当するデータをスプライトバッファ18から読み出し、レンダリングエンジン21へ出力する。レンダリングエンジン21は、そのデータと表示位置を示す表示位置データとをフレームバッファインタフェース22へ出力する。フレームバッファインタフェース22は、レンダリングエンジン21から受け取ったスプライトパターンデータを、そのスプライトパターンデータとともにレンダリングエンジン21から受け取った表示位置データに対応するアドレスに描画する(ステップSb4、Sb5)。
In the rendering process of step Sb4, the
フレームバッファ23への描画処理は、回転、変形等の処理があるため、スプライトバッファ18のEMPTYの確認はスプライト単位で判断される。スプライト1個の全体のイメージがスプライトバッファ18に展開されていないと、描画処理を開始できない。そして、スプライトの全描画が終了すると(ステップSb6:YES)、ステップSb1へ戻り、レンダリング制御回路20が次のスプライト属性データをスプライト属性テーブル13から読み出す。そして、読み出したスプライト属性データに基づいて次のスプライトの描画処理が行われる。
以上が描画シーケンスの流れである。
Since drawing processing to the
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
次いで、ブラー、グロー、ドロップ・シャドウの各々を実現する画像処理について説明する。前述したように、本実施形態では、ブラー、グローおよびドロップ・シャドウの何れかの対象となるスプライトについては、絶対スプライトと複数の相対スプライトに分割してスプライトパターンデータがパターン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
処理対象のスプライトに施す処理がブラーの場合は第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
処理対象のスプライトに施す処理がブラーの場合、絶対スプライトに対してプリリンクされる最後の相対スプライトは第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
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
処理対象のスプライトに施す処理がブラーである場合、第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
処理対象のスプライトに施す処理がグローまたはドロップ・シャドウである場合、第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
上記処理対象のスプライトに対して施す処理がグローであれば、第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
以上説明したように本実施形態によれば、パターンROM3から読み出してリアルタイムにデコードしたスプライトパターンをブロック単位でスプライトバッファ18に展開しながらフレームバッファ23に重ね合わせて描画する際に、スプライトパターンの奥行き感を演出するブラー、グロー、ドロップ・シャドウを実現することが可能になる。
As described above, according to the present embodiment, when the sprite pattern read from the
(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
(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
(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
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の記憶手段に書き込むとともに、前記他の少なくとも一のスプライトの画像データのカラーデータの表す画像を縮小または拡大して重ね書きする
ことを特徴とする請求項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〜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.
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)
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)
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 |
-
2014
- 2014-05-16 JP JP2014102337A patent/JP6507491B2/en active Active
Patent Citations (6)
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)
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 |