JP4200469B2 - 画像処理装置及び画像処理方法 - Google Patents

画像処理装置及び画像処理方法 Download PDF

Info

Publication number
JP4200469B2
JP4200469B2 JP14195998A JP14195998A JP4200469B2 JP 4200469 B2 JP4200469 B2 JP 4200469B2 JP 14195998 A JP14195998 A JP 14195998A JP 14195998 A JP14195998 A JP 14195998A JP 4200469 B2 JP4200469 B2 JP 4200469B2
Authority
JP
Japan
Prior art keywords
image
blend rate
image data
blend
afterimage
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.)
Expired - Fee Related
Application number
JP14195998A
Other languages
English (en)
Other versions
JPH1139473A (ja
Inventor
幹雄 篠原
誠介 森岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sega Corp
Original Assignee
Sega Corp
Sega Games Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sega Corp, Sega Games Co Ltd filed Critical Sega Corp
Priority to JP14195998A priority Critical patent/JP4200469B2/ja
Publication of JPH1139473A publication Critical patent/JPH1139473A/ja
Application granted granted Critical
Publication of JP4200469B2 publication Critical patent/JP4200469B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)
  • Image Generation (AREA)
  • Studio Circuits (AREA)
  • Closed-Circuit Television Systems (AREA)
  • Storing Facsimile Image Data (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、コンピュータグラフィックス用の画像処理装置に関する。
【0002】
【従来の技術】
コンピュータグラフィックスの分野において、画面中でさまざまな表現が行われるが、これら表現のひとつとして、移動物体の背後に過去の映像の一部を残す残像効果を用いることがある。従来、残像処理はソフトウエアで行われていた。残像処理は、表示される移動物体の透明度を、その移動に伴い徐々に変えることにより行われる。したがって、(物体のポリゴン数)×(残像の個数)の数のポリゴンが残像を表現するために必要とされる。
【0003】
【発明が解決しようとする課題】
従来の信号処理装置において、残像部分も普通の物体と同様に計算し、レンダリングしなければならなかったので処理の効率が悪かった。また、多くのポリゴンを使用するときには処理量が多くなり、処理に時間がかかった。
【0004】
さらに、すべてのポリゴンに対して、同一の残像効果を生じるように意図するほか、所望の残像効果が、ポリゴンごとに設定できることや、所望のポリゴンを強調して表示することが好ましい場合がある。この種の強調して表示すべきポリゴンとして、衝突判定が直接ゲームの進行に関連するようなポリゴン、たとえば、格闘ゲームのキャラクタが殴り掛かった際の拳部分、ドライブゲームで他の車両が自分の車両に接触する部分、シューティングゲームのエネミー(敵)の武器の部分等が該当する。このようなポリゴンは元の輝度で鮮明に表示することで、ゲームの状況判断が容易になるからである。もし表示が不明瞭であれば、遊戯者に不利益があった場合、例えば、敵キャラクタに殴られた場合、他の車両によりぶつけられた場合、攻撃された場合等において遊戯者が非常に不愉快になる。このようなことを避ける意味からも、所定の場合、一部あるいは全部のポリゴンについて強調して表示することが望ましい。
【0005】
この発明は係る問題点を解決するためになされたもので、ハードウエアに残像機能を持たせることにより、処理の効率を上げるとともに、処理の高速化を実現した画像処理装置を提供することを目的とする。
【0006】
また、本発明は、所望の残像効果などを、所望のポリゴンに得られる画像処理装置を提供することを目的とする。
【0007】
この発明に係る画像処理装置は、生成された画像データを第1の画像メモリ領域及び第2の画像メモリ領域に書き込む制御部を備える画像処理装置において、前記第1の画像メモリ領域から画像データを読み出し、読み出した画像データを減衰させて、新たに生成された画像データとともに前記第2の画像メモリ領域に書き込むことにより残像効果を生じさせるブレンド回路と、画像メモリのブレンドレートと、外部から入力されるカレントピクセルのブレンドレートとを比較し、大きい方を選択するコンパレータセレクタとを備え、前記第1の画像メモリ領域及び前記第2の画像メモリ領域は、それぞれピクセルごとにブレンドレート及びブレンドレートを減衰させるためのパラメータであるスロープを蓄える残像バッファを有し、前記ブレンド回路は、前記残像バッファから前記ブレンドレート及び前記スロープを読み出して処理を行い、ピクセルごとに残像効果を調整可能としたことを特徴とする。
【0008】
また本発明においては、生成された第1の画像データを第1の画像メモリ領域又は第2の画像領域メモリに書き込む制御部を備える画像処理装置において、前記第1の画像メモリ領域又は前記第2の画像メモリ領域から前記第1の画像データを読み出し、読み出した前記第1の画像データを減衰させ、新たに生成された第2の画像データとブレンドして第3の画像データとして出力するブレンド回路と、前記第2の画像データ及び前記第3の画像データの一方を選択して、選択した前記第2の画像データ又は前記第3の画像データを、前記第1の画像メモリ領域又は前記第2の画像メモリ領域に書き込むセレクタとを備え、前記セレクタが、前記第2の画像データ中に含まれるフラグに基づいて、ピクセル単位で制御されることを特徴とする。
【0009】
さらに本発明においては、画像処理装置において、画素単位で画像データ、ブレンドレート及びブレンドレートを減衰させるためのパラメータであるスロープを格納するフレームバッファと、前段回路から画素単位で画像データ、ブレンドレート及びスロープを受けて前記フレームバッファにデータを書き込む一方、前記フレームバッファからデータを読み出すフレームバッファインタフェースと、前記フレームバッファのブレンドレートに基づき前段回路からの画素データと前記フレームバッファインタフェースからの画素データを混合して前段回路に返すブレンド回路と、ブレンドレートからスロープに対応する値を減算する減算回路と、前記フレームバッファのブレンドレートと前記減算回路からのブレンドレートとを比較する比較回路と、前記比較回路の出力に基づき前記フレームバッファのブレンドレート及びスロープと前段回路からのブレンドレート及びスロープのいずれかを選択して前段回路に出力する選択回路とを備えることを特徴とする。
【0015】
さらに本発明においては、ポリゴン単位に残像効果を適用するための画像処理方法であって、前回の画像データの何%のデータを残像として表示するかを示すブレンドレート、ブレンドレートを減衰させるためのパラメータであるスロープ、および、残像として残す画像データを前回のデータとするか前々回のデータとするかを決める残像の間隔を設定する第1のステップと、画像に含まれるポリゴンをソーティングする第2のステップと、設定されたブレンドレートに基づきカレントピクセルカラーとバッファのピクセルカラーをブレンドしてフレームバッファに書き込む第3のステップと、現在設定されている前記ブレンドレートから前記スロープを引いたものと、カレントピクセルのブレンドレートとを比較し、大きい方を新たなブレンドレートとして設定する一方、カレントピクセルのブレンドレートが大きいときには、当該カレントピクセルのスロープを新たなスロープとして設定する第4のステップと、領域内の全てのピクセルについて処理したかどうか判定し、全てのピクセルについて処理が完了していないときは前記第3ステップ以降の処理を繰り返す第5のステップと、全ての領域を処理したかどうか判定し、全ての領域について処理が完了していないときは前記前記第3ステップ以降の処理を繰り返す第6のステップとを備えることを特徴とする。
【0016】
さらに本発明においては、画像処理方法において、生成された画像データを第1の画像メモリ領域及び第2の画像メモリ領域に書き込む第1のステップと、前記第1の画像メモリ領域から画像データを読み出し、読み出した画像データを減衰させて、新たに生成された画像データとともに前記第2の画像メモリ領域に書き込むことにより残像効果を生じさせる第2のステップと、画像メモリのブレンドレートと、外部から入力されるカレントピクセルのブレンドレートとを比較し、大きい方を選択する第3のステップとを備え、前記第2のステップでは、前記第1の画像メモリ領域及び前記第2の画像メモリ領域にそれぞれ設けられた、ピクセルごとにブレンドレート及びブレンドレートを減衰させるためのパラメータであるスロープを蓄える残像バッファから前記ブレンドレート及びスロープを読み出して処理を行い、ピクセルごとに残像効果を調整可能としたことを特徴とする。
【0017】
さらに本発明においては、画像処理方法において、生成された第1の画像データを第1の画像メモリ領域又は第2の画像領域メモリに書き込む第1のステップと、前記第1の画像メモリ領域又は前記第2の画像メモリ領域から前記第1の画像データを読み出し、読み出した前記第1の画像データを減衰させ、新たに生成された第2の画像データとブレンドして第3の画像データとして出力する第2のステップと、前記第2の画像データ及び前記第3の画像データの一方を選択して、選択した前記第2の画像データ又は前記第3の画像データを、前記第1の画像メモリ領域又は前記第2の画像メモリ領域に書き込む第3のステップとを備え、前記第3のステップでは、前記第2の画像データ中に含まれるフラグに基づいて、ピクセル単位で前記第2の画像データ及び前記第3の画像データの一方を選択することを特徴とする。
【0019】
さらに本発明においては、画像処理方法において、外部から画素単位で画像データ、ブレンドレート及びブレンドレートを減衰させるためのパラメータであるスロープを受けてフレームバッファにデータを書き込む第1のステップと、前記フレームバッファのブレンドレートに基づき外部からの画素データとフレームバッファから読み出した画素データを混合して外部に返す一方、ブレンドレートからスロープに対応する値を減算し、前記フレームバッファのブレンドレートと当該減算により得られたブレンドレートとを比較し、比較結果に基づき前記フレームバッファのブレンドレート及びスロープと外部からのブレンドレート及びスロープのいずれかを選択して外部に出力する第2のステップとを備えることを特徴とする。
【0038】
【発明の実施の形態】
発明の実施の形態1.
以下、この発明の実施の形態1の装置及び方法について説明する。
【0039】
図1はこの発明の実施の形態1に係る画像処理装置の概略機能ブロック図である。この図において、1はCPU(central processing unit)であり、仮想空間中の物体に対して操作を行ったり、その情報を得たり、各種制御を行う。2はジオメトリプロセッサ(geometry processor)であり、3次元コンピュータグラフィックにおけるポリゴンの座標変換、クリッピング、透視変換などの幾何変換(ベクトル演算)や輝度計算を高速に行う。2aはポリゴン/マテリアル/ライトバッファメモリ(polygon/material/light buffer RAM)であり、ジオメトリプロセッサ2が処理を行う際に、1フレーム分の有効なポリゴンデータ、マテリアルデータ、ライトデータを保存するバッファである。ポリゴンとは、仮想空間中の立体を構成する多面体のことである。このバッファメモリ2aに格納されるデータの内訳を示すと次のようになる。
【0040】
ポリゴンのリンク情報、座標情報、その他の属性情報
LINK X, LINK Y, X, Y, iz, Tx, Ty, Nx, Ny, Sign Nz, Alpha, Light ID, Material ID・・・などである。
【0041】
マテリアルの情報
Depth enable, Depth function, Depth density, Texture enable, Fog enable, translucency enable, texture type, texture function, offset x,y, size x,y, repeat x,y, mirror x,y, color id, Shininess, Material specula, Material emission, Polygon color, Texture mode, blend modeなどである。
【0042】
ライトの情報
Light Position, Light Direction, Light Type, Attenuation, Cutoff, Spotexp,Light Color, Light Ambientなどである。
【0043】
3は陰面消去処理を行うフィルプロセッサ(fill processor)である。フィルプロセッサ3は、領域中でポリゴンの塗りつぶしを行い、各ピクセル毎に最も手前にくるポリゴンの各情報を求める。
【0044】
4はテクスチャプロセッサ(texture processor)である。テクスチャプロセッサ4は、領域内の各ピクセルにテクスチャを貼り付ける。テクスチャマッピングとは、形状が定義された物体の表面に、形状とは別に定義された模様(テクスチャ)を貼り付け(マッピング)て画像を作成する処理である。4aはテクスチャメモリ(texture RAM)であり、テクスチャプロセッサ4で処理を行うためのテクスチャマップが保存されている。
【0045】
5はシェーディングプロセッサ(shading processor)である。シェーディングとは、ポリゴンで構成される物体の影のような表現を、ポリゴンの法線ベクトル、光源の位置や色、視点の位置、視線の方向等を考慮して行う手法である。シェーディングプロセッサ5は、領域内の各ピクセルの輝度を求める。5aは1画面の画像データが記憶されるフレームバッファ(frame buffer)である。フレームバッファ5aから順次データが読み出され、デジタルデータからアナログ信号に変換された後に、図示しないCRT、液晶表示装置、プラズマディスプレイ装置等のディスプレイに供給される。
【0046】
6は、CPU1のプログラムやグラフィックプロセッサへのコマンド(ポリゴンのデータベース、ディスプレイリストなど)を保存するプログラムワーク/ポリゴンバッファメモリ(program work/polygon buffer RAM)である。このバッファメモリ6はCPU1のワークメモリでもある。
【0047】
フィルプロセッサ3、テクスチャプロセッサ4、シェーディングプロセッサ5は、いわゆるレンダリングを行う。実際には、ジオメタリが仮想空間座標中にオブジェクトを配置しスクリーン上に透視変換を行う。レンダリングはそのスクリーン座標上に定義されたデータをもとに絵を作成する。レンダリングでは、各領域は画面左上から順に処理される。レンダリングの処理は領域の個数分繰り返される。
【0048】
次にこの発明の実施の形態1に係る画像処理装置の詳細について、図2乃至図5の機能ブロック図に基づき説明する。
【0049】
図2はジオメトリプロセッサ2の機能ブロック図である。この図において、21はデータディスパッチャー(data dispatcher)であり、バッファメモリ6からコマンドを読み出すとともに解析し、この解析結果に基づきベクタエンジン22、クリッピングエンジン24をコントロールし、処理されたデータをソートエンジン27へ出力する。
【0050】
22はベクタエンジン(vector engine)であり、ベクトル演算を行う。扱うベクトルはベクタレジスタ23に保存される。
【0051】
23はベクタレジスタ(vector register)であり、ベクタエンジン22で演算を行うベクトルデータを保存する。
【0052】
24はクリッピングエンジン(clipping engine)であり、クリッピングを行う。
【0053】
25はYソートインデックス(Y-sort INDEX)であり、ソートエンジン27でYソーティングを行うときに使うY指標を保存する。
【0054】
26はXソートインデックス(X-sort INDEX)であり、ソートエンジン27でXソーティングを行うときに使うX指標を保存する。
【0055】
27はソートエンジン(sort engine)であり、Xソーティング及びYソーティングを行うことにより、注目しているフラグメントに入るポリゴンをバッファ6から検索する。検索されたポリゴンはバッファメモリ2aに格納されるとともに、フィルプロセッサ3に送られレンダリングがなされる。また、ソートエンジン27はポリゴンTAG28及びポリゴンキャッシュ34の制御も行う。
【0056】
28はポリゴンTAG(polygon TAG)であり、ポリゴンキャッシュ34のTAGを保存するバッファである。
【0057】
図3はフィルプロセッサ3の機能ブロック図である。この図において、31はキャッシュコントローラ(cache controller)であり、後述のマテリアルキャッシュ42、45、51b、52a、53a及びライトキャッシュ51aを制御する。
【0058】
32はマテリアルTAG(material TAG)であり、後述のマテリアルキャッシュ42、45、51b、52a、53a及びライトキャッシュ51aのTAGを保存する。
【0059】
33はライトTAG(light TAG)であり、後述のライトキャッシュ51aのTAGを保存するバッファである。
【0060】
34はポリゴンキャッシュ(polygon cache)であり、ポリゴンデータのキャッシュメモリである。
【0061】
35は初期パラメータ計算機(initial parameter calculator)であり、DDAの初期値を求める。
【0062】
36はZコンパレータアレー(Z comparator array)であり、陰面消去処理のためにポリゴン間でZ比較を行うとともに、ポリゴンID及び内分比t0、t1、t2を埋め込む。Zコンパレータアレー36は8×8=64個のZ比較器から構成される。これらがパラレルに動作するので、同時に64個のピクセルについて処理が可能である。1つのZ比較器にはポリゴンに関するデータが保存される。例えば、polygon ID, iz, t0, t1, t2, window, stencil, shadowなどである。
【0063】
37は頂点パラメータバッファ(vertex parameter buffer)であり、ポリゴンの頂点でのパラメータを保存するバッファである。Zコンパレータアレー36に対応して64ポリゴン分の大きさをもつ。
【0064】
38は補間器(interpolator)であり、Zコンパレータアレー36の計算結果t0、t1、t2及びizと頂点パラメータバッファ37の内容により、ピクセルのパラメータを補間して算出する。
【0065】
図4はテクスチャプロセッサ4の機能ブロック図である。この図において、41は濃度計算機(density calculator)であり、フォグまたはデプスキューイングのためのブレンド比を算出する。
【0066】
42はマテリアルキャッシュ(material cache)であり、深さ情報に関するデータが保存される。
【0067】
43はウインドウレジスタ(window register)であり、ウインドウに関する情報を保存するバッファである。
【0068】
44はアドレス発生器(address generator)であり、テクスチャ座標Tx,Ty及びLODよりテクスチャマップ上でのアドレスを算出する。
【0069】
45はマテリアルキャッシュ(material cache)であり、材質に関するデータが保存される。例えば、
translucency enable, texture type, offset x,y, size x,y, repeat x,y, mirror x,y, color idなどである。
【0070】
46は3次元補間であるトライリニアミップマップ補間を行うTLMMI計算機(TLMMI calculator, TLMMI:Tri Linear MIP Map Interpolation)である。ミップマップとは、テクスチャマッピングを行うときのアンチエイリアシング、すなわちテクスチャのジャギ(ぎざぎざ)をなくすための技法である。これは次のような原理によるものである。本来、1画素に投影される物体面の色(輝度)は、対応するマッピング領域の色の平均値としなければならない。そうしないとジャギが目立ってしまい、テクスチャの質が極端に落ちる。一方、いちいち平均を求める処理を行うと計算負荷が過大となり、処理に時間がかかったり、高速プロセッサが必要になったりする。ミップマップはこれを解決するためのものである。ミップマップでは、1画素に対応するマッピング領域の色(輝度)の集計を簡素化するために、あらかじめ2の倍数幅のマッピングデータを複数用意する。1画素に対応したすべてのマッピング領域の大きさは、これら2の倍数倍のいずれか2つのデータの間に存在することになる。これら2つのデータを比較することにより対応するマッピング領域の色を求める。例えば、1倍の画面Aと1/2倍の画面Bとがあったとき、1/1.5倍の画面Cの各画素と対応する画面A及びBの画素をそれぞれ求める。このとき、画面Cの当該画素の色は、画面Aの画素と画面Bの画素の中間の色になる。
【0071】
47はカラーコンバータ(color converter)であり、4bitテクセル時にカラー変換を行う。
【0072】
48はカラーパレット(color pallet)であり、4bitテクセル時のカラー情報が保存される。カラーパレット48は、グラフィックを書くときに使う色を格納する。カラーパレット48の内容に対応して1つの画素に使える色が決まる。
【0073】
図5はシェーディングプロセッサ5の機能ブロック図である。この図において、51は輝度処理器(intensity processor)であり、テクスチャマッピングされた後のポリゴンに対して輝度計算を行う。
【0074】
51aはライトキャッシュ(light cache)であり、ライト情報を格納する。
【0075】
51bはマテリアルキャッシュ(material cache)であり、材質に関する情報を格納する。Shinnies, Material specula, material emissionなどである。
【0076】
51cはウインドウレジスタ(window register)であり、ウインドウに関する情報を保存する。Screen center, Focus, Scene ambientなどである。
【0077】
52はモジュレート処理器(modulate processor)であり、ポリゴンカラーとテクスチャカラーの関連づけ、輝度変調、フォグ処理を行う。
【0078】
52aはマテリアルキャッシュ(material cache)であり、材質に関する情報を格納する。例えば、Polygon color, Texture modeなどである。
【0079】
52bはウインドウレジスタ(window register)であり、ウインドウに関する情報を保存するバッファである。Fog colorなどである。
【0080】
53はブレンド処理器(blend processor)であり、カラーバッファ54上のデータとブレンドを行い、カラーバッファ54に書き込む。ブレンド処理器53は、プレンドレートレジスタの値に基づき、カレントピクセルカラーとフレームバッファのピクセルカラーとをブレンドし、ライトバンクレジスタで示されるバンクのフレームバッファに書き込む。
【0081】
53aはマテリアルキャッシュ(material cache)であり、材質に関する情報を格納する。blend modeなどである。
【0082】
54はカラーバッファ(color buffer)であり、フラグメントのサイズと同じ8×8の大きさのカラーバッファである。ダブルバンク構造になっている。
【0083】
55はプロット処理器(plot processor)であり、カラーバッファ54上のデータをフレームバッファ5aに書き込む。
【0084】
56はビットマップ処理器(bitmap processor)であり、ビットマップ処理を行う。
【0085】
57はディスプレイ制御器(display controller)であり、フレームバッファ5aのデータを読み出して、DAC(Digital to Analogue Converter:デジタル−アナログ変換器)に供給し、図示しないディスプレイに表示する。
【0086】
次に、図1乃至図5の画像処理装置のうちで残像処理を行う部分についての詳細な機能ブロックを、図6に示す。この図は、画面全体に対して残像効果を使用する場合の残像回路の機能ブロック図である。ブレンド回路101は、残像回路100の外部からカレントピクセルカラーを受け、外部のフレームバッファ5a−1,5a−2にブレンドピクセルカラーを出力する。ブレンド回路101は、ブレンドレートレジスタ102、ライトバンクレジスタ103、及びセレクタ104と接続されている。なお、ライトバンクレジスタ103はセレクタ104にも接続されている。ブレンドレートレジスタ102はブレンドレートをブレンド回路101に供給する。セレクタ104はフレームバッファ5a−1(バンク0)からのフレームバッファ0ピクセルカラー(のリードアドレス)及びフレームバッファ5a−2(バンク1)からのフレームバッファ1ピクセルカラー(のリードアドレス)のいずれかを選択してブレンド回路101に供給する。セレクタ104は、バッファセレクトレジスタ105からのセレクト信号に基づき、上記選択動作を行う。
【0087】
図6において、ブレンド回路101は、ブレンドレートレジスタ102の割合に基づきカレントピクセルカラーとフレームバッファ5aのピクセルカラーをブレンドし、ライトバンクレジスタ103で示されるバンクのフレームバッファに書き込む。具体的な処理は後述する。
【0088】
バッファのピクセルカラーはバッファセレクトレジスタ105の値により、2つのバンク0、1から1つが選択される。バッファセレクトレジスタ105は「1フレーム前」あるいは「2フレーム前」のどちらかを示す値を持つ。セレクタ104は「1フレーム前」のときは、書き込んでいるバンクとは別のバンク、「2フレーム前」のときは同じバンクをセレクトする。なお、実際はフレームバッファは1つのメモリなので、ピクセルカラーは1つのバスからしか出力されない。実際はリードアドレスを選択することにより、読み出す場所が選択される。
【0089】
図7は、画面全体に残像効果を使用する残像回路100の処理を示すフローチャートである。
【0090】
ステップS1:ブレンドレートレジスタ102、バッファセレクトレジスタ105をセットし、残像の濃さ、残像の間隔を設定する。残像の濃さとは、前回の画像データの何%のデータを残像として表示するかのパラメータであり、例えば20%、30%の値が選択される。残像の間隔とは、残像として残す画像データを、前回のデータとするか、前々回のデータとするかを決めるパラメータである。
【0091】
ステップS2:ライトバンクレジスタ103をセットし、書き込みを行うフレームバッファ5aのバンク0、1を設定する。
【0092】
ステップS3:全てのポリゴンをジオメトリ処理、ソーティングする。
【0093】
ステップS4:領域のレンダリング、テクスチャ、シェーディング処理を行う。
【0094】
ステップS5:バッファセレクトレジスタ105、ライトバンクレジスタ103の値により、フレームバッファ5aの2つのバンク0、1から1つを選択し、バッファのピクセルカラーを読み込む。
【0095】
ステップS6:ブレンドレートレジスタの割合で、カレントピクセルカラーとバッファのピクセルカラーをブレンドしフレームバッファに書き込む。
【0096】
ブレンド処理は次式に従って行われる。
【0097】
(ブレンドピクセルカラー)=
(カレントピクセルカラー)×(1−(ブレンドレート))
+(バッファのピクセルカラー)×(ブレンドレート)
ステップS7:領域内の全てのピクセルについて処理したかどうか判定する。全てのピクセルについて処理が完了していないとき(No)はステップS5に戻る。全てのピクセルについて処理が完了しているとき(Yes)はステップS8に進む。
【0098】
ステップS8:全ての領域を処理したかどうか判定する。全ての領域について処理が完了していないとき(No)はステップS4に戻る。全ての領域を処理したとき(Yes)は次のフレームについて処理を移し、ステップS2に戻る。
【0099】
図6の残像回路による残像効果は画面全体に及ぶ。ブレンドレートレジスタが20%の割合を示す値で、バッファセレクトレジスタが「1つ前のフレーム」を表す値を持っているとする。画面がスクロールしたり物体が移動したりすると図15のような残像効果が得られる。
【0100】
発明の実施の形態2.
この実施の形態2の残像回路を、図8に示す。この図は、ポリゴン単位に残像効果を使用する場合の残像回路の機能ブロック図である。
【0101】
図6の残像回路と比較したときの、図8の残像回路の異なる点は、ピクセル単位にブレンドレートとスロープを持つ点である。スロープはブレンドレートを減衰させるためのパラメータである。ブレンド回路101には、外部から入力されるカレントピクセルカラーのほかに、残像バッファ5a−3,5a−4からセレクタ104を介して、そのピクセルのブレンドレートとブレンドレートのフレーム単位の差分を表すスロープが入力される。残像バッファ5a−3,5a−4は、フレームバッファ5a−1,5a−2のカラー情報に対応して、ブレンドレート、スロープを蓄える。
【0102】
図8のSUBブロック106は、残像バッファ5a−3,5a−4内のブレンドレートからスロープを減算し、次のフレームで使用するブレンドレートを求める回路である。コンパレータセレクタ107はSUBブロック106で計算されたフレームバッファのブレンドレートと、外部から入力されるカレントピクセルのブレンドレートとを比較し、大きい方を選択する回路である。コンパレータセレクタ107は、ブレンドレートと同時にスロープも選択する。コンパレータセレクタ107により、ブレンドレートを再設定することができる。セレクタ104は、フレームバッファ5a−1,5a−bのピクセルカラーの他に残像バッファ5a−3,5a−4のブレンドレート、スロープも同時に選択できるように構成される。ブレンド回路101は、残像バッファ5a−3,5a−4に蓄えられ、セレクタ104で選択されたブレンドレートを使用する。なお、実際はフレームバッファは1つのメモリなので、ピクセルカラーは1つのバスからしか出力されない。実際はリードアドレスを選択することにより、読み出す場所が選択される。
【0103】
図9は、ポリゴン単位に残像効果を使用する残像回路100の処理を示すフローチャートである。
【0104】
ステップS11:バッファセレクトレジスタをセットし、残像の間隔を設定する。
【0105】
ステップS12:ライトバンクレジスタをセットし、書き込みを行うフレームバッファのバンクを設定する。
【0106】
ステップS13:全てのポリゴンをジオメトリ処理、ソーティングする。
【0107】
ステップS14:領域のレンダリング、テクスチャ、シェーディング処理を行う。
【0108】
ステップS15:バッファセレクトレジスタ、ライトバンクレジスタの値によりフレームバッファの2つのバンクから1つを選択し、バッファのピクセルカラー、ブレンドレート、スロープを読み込む。
【0109】
ステップS16:バッファから読み込んだブレンドレートの割合で、カレントピクセルカラーと、バッファのピクセルカラーをブレンドし、フレームバッファに書き込む。同時に、ブレンドレートからスロープを引いたものと、カレントピクセルのブレンドレートを比較し、大きい方のブレンドレートとスロープを残像バッファに書き込む。
【0110】
ステップS17:領域内の全てのピクセルについて処理したかどうか判定する。全てのピクセルについて処理が終了しているとき(Yes)はステップS18に進み、そうでないとき(No)はステップS15に戻る。
【0111】
ステップS18:全ての領域を処理したかどうか判定する。全ての領域について処理が終了しているとき(Yes)は、次のフレームについてステップS11以降の処理を繰り返す。そうでないとき(No)はステップS14に戻る。
【0112】
図8の残像回路による残像効果はポリゴンごとに及ぶ。ブレンドレートレジスタが20%及び30%、スロープが10のとき、図16のような残像効果が得られる。
【0113】
発明の実施の形態3.
上記発明の実施の形態1の構成を実際に実現するための機能ブロック図を図10に示す。
【0114】
図10において、カラーバッファRAM121は、シェーディング回路120の内部に含まれるRAMで、カラーデータを一時蓄える。例えば、8×8ピクセル分のカラーデータを蓄える。内部は2バンク構成になっており、シェーディング回路120で片側のバンクに書き込みを行っているときに、転送回路110で、もう片方のバンクをアクセスすることができる。アクセスはリード、ライト同時に行うことができる。データは32ビットでRGBAはそれぞれ10、10、10、2ビットである。
【0115】
ブレンドレートレジスタ112は、フレームバッファRAM150のカラーとカラーバッファRAM121のカラーをブレンドする際のレートを保持する。例えば、値は8ビットのデータで0〜FFhの値をとる。最上位ビット(MSB)が1ならインクリメントし、0から100hとしてFIX1.8のブレンドレートとされる。
【0116】
ブレンド回路111は、カラーバッファRAM121のリードデータ(カラーバッファカラー)とフレームバッファRAM150のリードデータ(フレームバッファカラー)をブレンドレートレジスタ112の値でブレンドする。ブレンドの式は次のようになる。
【0117】
(ブレンドカラー)=(カラーバッファカラー)×(1−ブレンドレート)
+(フレームバッファカラー)×(ブレンドレート)
ライトバンクレジスタ113は、フレームバッファRAM150をライトする際に参照するレジスタである。カラーバッファRAM121のデータをフレームバッファRAM150に転送する際にライトするバンクを保持する。
【0118】
リードバンクレジスタ114は、フレームバッファRAM150をリードする際に参照するレジスタである。フレームバッファRAM150のデータをカラーバッファRAM121のデータとブレンドする際のリードするバンクを保持する。リードバンクレジスタ114があると、「今回は前フレーム、次回は前々フレームをブレンドする」といった切替操作が可能となり、残像間隔を適宜設定することができる。
【0119】
エリアNoレジスタ115は、カラーバッファRAM121がバンク内のどの部分に対応しているかを保持する。
【0120】
フレームバッファIF(インタフェース)116は、フレームバッファRAM150にアクセスする際、RAMIF140のタイミングを生成する。
【0121】
RAMIF140は、フレームバッファRAM150のアクセスタイミングを生成する。また、フレームバッファのデータの転送を行うその他のブロック130との調停も行う。
【0122】
フレームバッファRAM150は、フレームバッファとしてカラーデータを蓄えるRAMである。フレームバッファ内には2つ以上のバンクが設定される。
【0123】
図10の構成において、2種類のデータフローがある。1つはブレンド処理を行うフローで、カラーバッファRAM121のリードデータ、フレームバッファRAM150のリードデータを、ブレンド回路111によりブレンドし、カラーバッファRAM121に書き戻すフローである。もう1つは、カラーバッファRAM121のリードデータをそのままフレームバッファRAM150に転送するフローである。
【0124】
図11はブレンド回路111の内部構成を示すブロック図である。図11は、ブレンド回路111のうち、三原色のひとつである赤色の処理を行う部分111−Rを示す。
【0125】
B1(Blend rate[7:0])は、ブレンドレートレジスタ112から読み出されたブレンドの割合を決める指数である。
【0126】
B2(Blend rate[7])は、ブレンドの割合に応じてセレクタを切り替えるためのものである。
【0127】
B3(Blend red[7:0])は、赤色(Red)のブレンド出力である。
【0128】
C1(Color buf red[7:0])は、カラーバッファRAM121からのRedデータである。
【0129】
F1(Frame buf red[7:0])は、フレームバッファRAM150からのRedデータである。
【0130】
加算器1111は、ブレンドレートB1と「01h]とを加算する。減算器1112は、「100h」からブレンドレートB1を減算し、減算器1113は、「0FFh」からブレンドレートB1を減算する。セレクタ1114、1115はブレンドレートB2に基づき動作する。これらの出力は9ビットである。セレクタ1114はブレンドレートB1又は加算器1111の出力のいずれか一方を選択し、セレクタ1115は減算器1112又は1113の出力のいずれか一方を選択する。乗算器1116はフレームバッファデータF1とセレクタ1114の出力を乗算し、乗算器1117はカラーバッファデータC1とセレクタ1115の出力を乗算する。加算器1118は、乗算器1116の上位8ビットと乗算器1117の上位8ビットを加算し、ブレンド出力B3を出力する。
【0131】
以上の処理を数式で示せば次式のようになる。
【0132】
B1≦7Fhのとき、
B3=F1×B1+C1×(9'h100−C1)
B1≧80hのとき、
B3=F1×(B1+1)+C1×(9'h0FF−C1)
ブレンド回路111は、赤色を処理する回路111−Rの他に、緑色、青色について処理する同じ回路を備える。また、キャラクタ(Alpha)について処理する回路を備えてもよい。
【0133】
発明の実施の形態4.
発明の実施の形態3の図10の回路では、カラーバッファRAM121にブレンドデータを書き戻しているが、書き戻さずにそのままフレームバッファRAM150に書き込む構成も考えられる。その場合、回路は図12のようになる。フレームバッファRAM150は大容量なのでDRAM系のメモリを使用する。例えば、SDRAMというデバイスを使用する。フレームバッファRAM150に対する書き込み及び読み出しにおいて転送レートを稼ぐためにバースト転送するが、データを連続してリード、ライトするので内部にバースト長のバッファが必要となる。図12において、バッファ117はこのためのものである。
【0134】
これに対し、図10の回路では、カラーバッファRAM121に書き戻しているので、内部のバッファを特に必要としない。
【0135】
発明の実施の形態5.
上記発明の実施の形態3(図10)及び実施の形態4(図12)の構成をさらに単純化することも可能である。もっとも単純な構成例を、図13に示す。この図の機能ブロックは、図10のブレンドレートレジスタ112、リードバンクレジスタ114を含まない。
【0136】
ブレンドレートレジスタ112を含まないので、図13の装置ではブレンドレートが固定値となり、常に同じ割合でブレンド処理を行う。
【0137】
リードバンクレジスタ114を含まないので、図13の装置ではブレンドを行うフレームが固定となる。リードバンクレジスタ114があると、「今回は前フレーム、次回は前々フレームをブレンドする」といった切替操作が可能となり、残像間隔を操作できるが、リードバンクレジスタがないと「常に前フレームをブレンドする」しかないので残像間隔を操作できなくなる。
【0138】
なお、図13の装置にブレンドレートレジスタ112のみ追加する、あるいはリードバンクレジスタ114のみ追加する回路構成も考えられる。
【0139】
発明の実施の形態6.
上記発明の実施の形態2の構成を実際に実現するための機能ブロック図を図14に示す。この図は、ピクセル単位にブレンドレートを変えるための装置の機能ブロック図を示す。
【0140】
カラーバッファRAM121、フレームバッファRAM150は、ピクセル単位のカラーデータのほかに、ピクセル単位のブレンドレート及びスロープを蓄える。図14において、ブレンドレートからスロープ分を減算するSUB(減算)回路118と、フレームバッファRAM150のブレンドレートとカラーバッファRAM121のブレンドレートとを比較するCOMP(比較)回路119と、フレームバッファRAM150のブレンドレート及びスロープとカラーバッファRAM121のブレンドレート及びスロープのいずれかを選択するSEL(選択)回路122が追加される。
【0141】
これら追加された回路により、フレームバッファRAM150に保存されていたブレンドレートの、今回のフレームのブレンドレートを求めるとともに、カラーバッファRAM121のブレンドレートを比較してブレンドレートの大きい方を選択し、カラーバッファRAM121にスロープと共に書き戻す。
【0142】
<残像画像の例>
1.画面全体の残像効果の例
図15に画面全体に残像効果を及ぼす処理による残像画面の例を示す。この図の場合、ブレンドレートが20%で、常に前フレームをブレンドしている。また、ブレンド処理は次式に従う。
【0143】
(ブレンドカラー)=(カラーバッファカラー)×(1−ブレンドレート)
+(フレームバッファカラー)×(ブレンドレート)
フレーム0において、内部描画P1−0の領域a0にRGB=(100、100、100)が描画される。このとき表示画面P2−0の領域b0には、次式に従い、RGB=(80、80、80)が表示される。なお、フレーム0の前に描かれた図形はないので(フレーム全体において、RGB=(0、0、0))、領域a0と領域b0とは一致している。フレームとフレームの時間間隔はリフレッシュ期間(例えば、1/60秒)に対応する。
【0144】
(ブレンドカラー)=100×(1−0.2)+0×0.2=80
フレーム1において、内部描画P1−1の領域a1(領域a0から少し右に移動している)にRGB=(100、100、100)が描画される。このとき表示画面P2−1の領域b1、c1、d1には、次式に従いそれぞれ、RGB=(16、16、16)、RGB=(96、96、96)、RGB=(80、80、80)が表示される。なお、領域c1は領域a0とa1の共通領域であり、領域b1は領域a0のそれ以外の部分であり、領域d1は領域a1の共通領域以外の部分である。
【0145】
(ブレンドカラー)=0×(1−0.2)+80×0.2=16
(ブレンドカラー)=100×(1−0.2)+80×0.2=96
(ブレンドカラー)=100×(1−0.2)+0×0.2=80
フレーム2において、内部描画P1−2の領域a2(領域a1から少し右に移動している)にRGB=(100、100、100)が描画される。このとき表示画面P2−2の領域b2、c2、d2,e2には、次式に従いそれぞれ、RGB=(3、3、3)、RGB=(16、16、16)、RGB=(96、96、96)、RGB=(80、80、80)が表示される。なお、領域e2は、領域b2、c2、d2以外の部分(領域a1と領域a2の共通部分以外の領域a2の部分)である。
【0146】
(ブレンドカラー)=0×(1−0.2)+16×0.2=3.2=3
(ブレンドカラー)=0×(1−0.2)+80×0.2=16
(ブレンドカラー)=100×(1−0.2)+80×0.2=96
(ブレンドカラー)=100×(1−0.2)+0×0.2=80
フレーム3において、内部描画P1−3の領域a3(領域a2からさらに少し右に移動している)にRGB=(100、100、100)が描画される。このとき表示画面P2−3の領域c3、d3,e3、f3には、次式に従いそれぞれ、RGB=(3、3、3)、RGB=(16、16、16)、RGB=(96、96、96)、RGB=(80、80、80)が表示される。なお、領域f3は、領域c3、d3,e3以外の部分(領域a2と領域a3の共通部分以外の領域a3の部分)である。また、領域b2は残像処理の結果レベルが0となるので、P2−3には現れない。
【0147】
(ブレンドカラー)=0×(1−0.2)+16×0.2=3.2=3
(ブレンドカラー)=0×(1−0.2)+80×0.2=16
(ブレンドカラー)=100×(1−0.2)+80×0.2=96
(ブレンドカラー)=100×(1−0.2)+0×0.2=80
このように、この発明の実施の形態による残像処理によれば、移動する物体がその背後に跡を引くような表現が可能になる。
【0148】
2.ポリゴン単位の残像効果の例
図16にポリゴン単位に残像効果があり、常に前フレームをブレンドする処理による残像画面の例を示す。この図では2つのポリゴンg,hが描かれている。ポリゴンgは左から右に、ポリゴンhは逆に右から左に移動し、その途中でポリゴンg,hの一部が重なる。この図の場合、ポリゴンgの内部描画のレベル、ブレンドレート、及びスロープは、それぞれ、RGB=(100、100、100)、30%、10である。また、ポリゴンhの内部描画のレベル、ブレンドレート、及びスロープは、それぞれ、RGB=(50、50、50)、20%、10である。なお、図16において、残像バッファを示す画面内の数値は、それぞれブレンドレートを意味する。
【0149】
ブレンドカラーの計算は、図15の場合と同様であるが、図16の場合はスロープ値が設定され、これに従いブレンドレートが減少していく点が異なる。また、図16のP4−0からP4−3にかけて、ポリゴンg,hは背景とブレンドされないが、ポリゴンの残像とはブレンドされるので、その内部描画のとおりに表示されない。
【0150】
(ブレンドピクセルカラー)=
(カレントピクセルカラー)×(1−(ブレンドレート))
+(バッファのピクセルカラー)×(ブレンドレート)
に基づき計算される。
【0151】
・P4−1において、
(領域i1)=100×0.3=30
(領域j1)=50×0.2=10
・P4−2において、
(領域i2)=30×0.2=6
(領域j2)=10×0.1=1
(領域k2)=100×0.3=30
(領域L2)=50×0.2=10
(内部描画h1の残像と内部描画g2の重複領域)
=100×0.8+50×0.2=90
(内部描画h2と内部描画g1の残像の重複領域)
=50×0.7+100×0.3=65
・P4−3において、
(領域i3)=6×0.1=0.6=0
(領域j3)=1×0.1=0.1=0
(領域k3)=30×0.2=6
(領域L3)=10×0.1=1
(領域m3)=100×0.3=30
(領域n3)=50×0.2=10
(内部描画h2の残像と内部描画g3の重複領域)
=100×0.7+90×0.3=97
(内部描画h3と内部描画g2の残像の重複領域)
=50×0.8+65×0.2=53
なお、ポリゴンg,hと背景をブレンドせず、その内部描画のとおりに表示する方法も適用可能である。
【0152】
この発明の実施の形態によれば、画面全体に残像効果を出す装置では、簡単な回路の追加で、従来ソフト的に処理しなければならなかった残像効果を実現できる。残像効果をソフト的に処理すると、残像を通常の物体と同様に処理しなければならず、かなりのポリゴン数が必要となっていた。その点、この回路では残像を前のフレームの絵をブレンドすることで処理するので、残像に対するポリゴン数の増加は全くない。ただし、画面全体にブレンドを行うので、物体の色が、背景色とブレンドされ、本来の色がでないという欠点をもつ。
【0153】
また、この発明の実施の形態によれば、ポリゴン単位に残像効果を出す装置では、多少バッファが必要になるものの、背景と物体に独立してブレンドレートを設定できるので、物体の色は本来の色を出すことができる。また、個々の物体にそれぞれ残像のあり、なし、または残像の程度を設定できる。
【0154】
発明の実施の形態7.
次に、本発明の実施の形態7にかかる画像処理装置につき説明を加える。この実施の形態にかかる画像処理装置は、図1に示す実施の形態1にかかる画像処理装置と略同様に構成され、残像回路のみが、実施の形態1と異なっている。図17は、本発明の実施の形態7にかかる残像回路の概略を示すブロックダイヤグラムである。図17に示す残像回路は、実施の形態1にかかる残像回路(図6参照)に略対応しており、同一の構成部分については、図6の残像回路の構成部分と同一の符号を付している。
【0155】
この実施の形態にかかる残像回路100は、ブレンド回路101、ブレンドレートレジスタ102、ライトバンクレジスタ103、セレクタ104およびバッファセレクトレジスタ105の他、後述する強調ビットの内容にしたがって作動するセレクタ108を備えている。また、この実施の形態においては、たとえば、外部から与えられるカレントピクセルカラーに、強調ビットが付加されている。たとえば、カレントピクセルカラーのデータの最上位ビットを、強調ビットに割り当てることにより実現される。また、上記最上位ビットに強調ビットが割り当てられたカレントピクセルカラーのうち、強調ビットのみがセレクタ108に与えられ、強調ビットを除いたデータが、セレクタ108の一方の入力側およびブレンド回路101に与えられる。またブレンド回路101の出力は、セレクタ108の他方の入力側に与えられる。
【0156】
強調ビットは“1”或いは“0”の何れか一方の値をとることができ、強調ビットの値が“1”であるようなピクセルについては、元の輝度を維持するように残像回路が作動する。たとえば、残像回路(ブレンド処理器53)による処理に先立って、シェーディングプロセッサ5(図5参照)の何れかの構成部分が、強調すべき(すなわち、もとの輝度にて表示すべき)ポリゴンを構成するピクセルのピクセルカラーのデータについては、強調ビットに“1”を設定し、強調ビットが付加されたピクセルカラーのデータを、カラーバッファ54(図5参照)に書き込んでおけば良い。
【0157】
このように構成された、本実施の形態にかかる残像回路の処理を、図18のフローチャートを参照して説明する。図18に示すように、この処理は、図7に示すものと略同様であり、図18のステップS21ないしS25、ステップ29およびステップS30は、図7のステップS1ないしS5、ステップS7およびステップS8に、それぞれ対応する。
【0158】
以下、上記ステップ21ないしステップ30の処理につき説明する。
【0159】
ステップS21:ブレンドレートレジスタ102、バッファセレクトレジスタ105をセットし、残像の濃さ、残像の間隔を設定する。この実施の形態においては、残像の濃さとして、20%或いは30%の何れかの値が選択される。残像の間隔により、残像として残す画像データを前回のデータとするか、或いは、前々回のデータとするかが決定される。
【0160】
ステップS22:ライトバンクレジスタ103をセットし、書き込みを行うフレームバッファ5aのバンク0、1を設定する。
【0161】
ステップS23:全てのポリゴンにジオメトリ処理およびソーティングを施す。
【0162】
ステップS24:領域のレンダリング、テクスチャ、シェーディング処理を行う。
【0163】
ステップS25:バッファセレクトレジスタ105、ライトバンクレジスタ103の値により、フレームバッファ5aの2つのバンク0、1から1つを選択し、バッファのピクセルカラーを読み込む。
【0164】
ステップS26:ブレンド回路101が、ブレンドレートレジスタのデータに基づく割合で、カレントピクセルカラーとバッファのピクセルカラーをブレンドする。
【0165】
ブレンド処理は、実施の形態1と同様に、次式に従って行われる。
【0166】
(ブレンドピクセルカラー)=
(カレントピクセルカラー)×(1−(ブレンドレート))
+(バッファのピクセルカラー)×(ブレンドレート)
ステップS27:前述したように、カレントピクセルカラーの最上位ビットに割り当てられた強調ビットは、セレクタ108に与えられている。セレクタ108は、強調ビットが“1”であるときには、カレントピクセルカラー、すなわち、ブレンド回路101を介さないデータを選択し、その一方、強調ビットが“0”であるときには、ブレンドピクセルカラー、すなわち、ブレンド回路101の出力を選択する。
【0167】
ステップS28:セレクタ108は、選択したデータ(カレントピクセルカラー或いはブレンドピクセルカラー)を、ステップS2にて設定されたデータを書き込むべきフレームバッファ(5a−1或いは5a−2)に書き込む。
【0168】
ステップS29: 領域内の全てのピクセルについて処理したかどうか判定する。全てのピクセルについて処理が完了していないとき(No)はステップS25に戻る。全てのピクセルについて処理が完了しているとき(Yes)はステップS30に進む。
【0169】
ステップS30:全ての領域を処理したかどうか判定する。全ての領域について処理が完了していないとき(No)はステップS24に戻る。全ての領域を処理したとき(Yes)は次のフレームについて処理を移し、ステップS22に戻る。
【0170】
実施の形態1と同様に、この実施の形態にかかる残像回路を含む転送回路を、図19に示すように構成することができる。図19においては、カラーバッファRAM121からのカラーバッファリードデータが、セレクタ128の一方の入力側に与えられ、ブレンド回路111の出力が、セレクタ128の他方の入力側に与えられ、さらに、カラーバッファリードデータに付加された強調ビットにより、セレクタ128が切り換えられるようになっている。上記ブレンド回路およびセレクタは、図20に示すように構成することが可能である。
【0171】
図20においては、ブレンド回路111−Rからの出力B3或いはColor_buf_redC1のうちの8ビット[9:2]のうちの一方が、セレクタ128−Rにより選択される。強調ビットが“1”のときには、 Color_buf_red[9:2]が、セレクタ128−Rから出力され、強調ビットが“0”のときには、Blend_red[7:0]が、セレクタ128−Rから出力される。
【0172】
また、実施の形態1に関連する図12および図13にそれぞれ対応して、図21および図22に示すように、ブレンド回路111およびセレクタ128を配置しても良い。
【0173】
<残像画像の例>
図23に、本実施の形態7にかかる画像処理装置により得られた残像画像の例を示す。図23に示すフレーム0ないしフレーム3の画像は、それぞれ、図15に示すフレーム0ないしフレーム3の内部描画に基づき生成されている。すなわち、この例では、ブレンドレートは20%であり、常に前のフレームの画像がブレンドされ、かつ、ブレンド処理は、次式にしたがっている。また、内部描画の各領域a0ないしa3に含まれるピクセルのデータには、強調ビット“1”が付加されている。
【0174】
(ブレンドカラー)=(カラーバッファカラー)×(1−ブレンドレート)
+(フレームバッファカラー)×(ブレンドレート)
図15と比較すれば理解できるように、図23では、各フレームにおいて、内部描画の領域a0ないしa3にそれぞれ対応する領域g0、h1、i2およびj3のデータ値は、RGB=(100、100、100)となる。すなわち、強調ビットにしたがって、内部描画中のデータ値がそのまま維持される。
【0175】
その一方、他の領域(たとえば、g1)は、上記式にしたがって、ブレンド処理が実行される。フレーム1中の領域g1のデータ値は、
(ブレンドカラー)=0×(1−0.2)+100×0.2=20となる。
【0176】
同様に、フレーム2中の領域g2、h2のデータ値は、それぞれ、
(ブレンドカラー)=0×(1−0.2)+20×0.2=4
(ブレンドカラー)=0×(1−0.2)+100×0.2=20となる。
【0177】
図15の表示描画と、図23の表示描画とを比較すると、もとの領域(内部描画の領域a0など)のデータ値が維持されるため、図23の表示描画のもとの領域は、図15のものよりも、強調されていることが理解できよう。すなわち、もとの領域の形状がはっきりと維持され、かつ、残像効果も得られている。
【0178】
図24は、強調ビットが“0”である場合、および、強調ビットが“0”である場合の表示例を示す図である。図24(a)は、内部描画の(或いは残像処理を施していない)画像を表わし、RGB=(100、100、100)の値をとる領域aa0ないしaa3が、フレーム0ないしフレーム3にわたって移動している。これに対して、図24(b)は、上記領域に含まれるカレントピクセルカラーに付加された強調ビットが“0”である場合に、ブレンドレートを50%として残像処理を施して得られた画像を表わしている。また、図24(c)は、上記領域に含まれるカレントピクセルカラーに付加された強調ビットが“1”である場合に、ブレンドレートを50%として残像処理を施して得られた画像を表わしている。
【0179】
図24から理解できるように、この実施の形態によれば、データに強調ビット“1”が付加されたようなピクセルを含む領域を、表示画像において強調することができる。したがって、この実施の形態によれば、所望のポリゴンに、残像効果を付加しつつ、これを強調することが可能となる。
【0180】
上記実施の形態においては、ブレンド回路の出力と、カレントピクセルカラーとを受け入れて、これらのうちの何れかを選択するようなセレクタを配置したが、このような構成に限定されるものではない。たとえば、カレントピクセルカラーのデータ値自体をセレクタから出力するのではなく、この値を加工して(たとえば、領域を強調するように、RGB値に処理を施して)セレクタから出力するようにしても良い。
【0181】
<ゲームへの適用>
本発明の実施の形態7の画像処理装置を、例えばゲーム装置に適用した場合について説明する。残像処理そのものは上述のとおりであるので、以下、主にゲームの処理との関係において、強調ビットはどのようなタイミングで書き込まれるか、強調ビットはどのような条件で書き込まれるか、強調ビットはゲーム進行のどのような場面で書き込まれるかについて説明する。
【0182】
一例として格闘ゲームを取り上げる。ゲームの進行中において、キャラクターが攻撃を開始したと判定された場合に、当該攻撃に関連するポリゴンを検出して、当該ポリゴンを構成するピクセルカラーのデータに強調ビットを設定する。
【0183】
ゲームに適用される画像処理装置は、図25に示すように強調ビットを付加するかどうかを判定する判定部7を備える。図25のブロック図は、ゲーム装置に組み込まれた画像処理部分を示し、ゲームを進行させるための処理装置の部分は省略されている。判定部7は、この処理装置からゲームに関する情報(この詳細は後述する)を受け取り、強調ビットを付加するかどうか判定し、付加すべきときは強調ビットをシェーディングプロセッサ5に送る。なお、強調ビットの送付先はこれに限らず、フレームバッファ5aやテクスチャプロセッサ4でもよい。
【0184】
判定部7は、例えば、図26に示される処理を実行する。ゲームが開始されるとゲームの進行状況に応じて画面の生成及び更新がなされる(S100)。画面の生成及び更新は、図示しないゲームの進行を処理するプロセッサからの情報に基づき、図25の画像処理によりなされる。この情報の一部あるいは全部は判定部7に入力され、判定処理に用いられる。この情報に基づき、判定部7は、ゲーム進行におけるタイミング、条件、及び場面について判定する(S101)。例えば、格闘ゲームであればキャラクタが殴り掛かってきているかどうか、ドライブゲームであれば他の車両が自分の車両に接触しそうになっているかどうか、シューティングゲームであればエネミー(敵)がプレーヤーを攻撃しようとしているかどうか、を判定する。これはゲームの進行状況を考慮した、一種の衝突判定である。次に、この判定結果に基づき、強調すべきポリゴンがあるかどうか判定する(S102)。S101の判定結果が否定的、すなわちキャラクタが殴り掛かってこない場合は「NO」と判定され、ステップS104に進む。一方、S101の判定結果が肯定的であるときは、さらに強調すべきポリゴンを検索する。例えば、格闘ゲームにおいてキャラクタが殴り掛かってきているとき、その拳のポリゴンを検索し、ドライブゲームにおいて接触しそうになっている他の車両の部分のポリゴンを検索し、シューティングゲームにおいてプレーヤーを攻撃しようとしているエネミー(敵)の武器のポリゴンを検索する。ポリゴンが検索されたとき、「YES」と判定され、ステップS103に進む。当該ポリゴンについて、前述した強調ビットが立てられる(S103)。その後、前述の残像処理が行われる(S104)。以上のS100〜S104の処理が、ゲームの終了まで(あるいは強調ビットの処理が必要な画面生成の終了まで)続けられる(S105)。
【0185】
なお、上記はあくまで一例であり、他の判定方法の例として次のものがある。
【0186】
(強調ビットの書き込みのタイミング)
格闘ゲーム:キャラクタがプレーヤーに対して攻撃をかけたとき
ドライブゲーム:他の車両が自分の車両に接触するとき、及び/又は自分の車両が障害物に接触するとき
シューティングゲーム:エネミー(敵)の武器がプレーヤーに狙いを定めつつあるとき、狙いを定めたとき、射撃したとき、及び/又はボーナスポイントが出現したとき
(強調ビットの書き込みの条件)
格闘ゲーム:攻撃がプレーヤーに対するものであること、及び/又はその攻撃が有効なものであること
ドライブゲーム:他の車両が他のプレーヤーのものであること、及び/又は他の車両と競っていること、障害物の影響が大きいこと
シューティングゲーム:攻撃がプレーヤーに対するものであること、及び/又はその攻撃が有効なものであること、攻撃の効果が大きいこと
(強調ビットの書き込みの場面)
格闘ゲーム:対戦相手が段々レベルアップしていく場合において、最初の相手(初心者にもわかりやすい)又は最後の相手(上級者に対する特殊効果)及び/又はボーナス画面等の特別の画面
ドライブゲーム:周回を重ねるゲームの場合において、周回の最初(初心者にもわかりやすい)又は周回の最後(上級者に対する特殊効果)及び/又はボーナス画面等の特別の画面
シューティングゲーム:複数のステージがある場合において、前のステージ(初心者にもわかりやすい)又は後ろのステージ(上級者に対する特殊効果)、及び/又はボーナス画面等の特別の画面
以上の記載はあくまで一例であって、要するに、ゲーム進行において、ゲーム画面を構成するポリゴンのうち、ゲーム進行において重要で、強調されることによりゲームの状況判断が容易になるようなポリゴンを、所定のタイミング、条件、場面に基づいて選択すればよい。このように強調すべきポリゴンを選択することにより、遊戯者に不愉快な感情を与えることを防止することができる。
【0187】
以上のように、この発明の実施の形態7によれば、すべてのポリゴンに対して、同一の残像効果を生じるように意図するほか、強調ビットを用いることにより、所望の残像効果が、ポリゴンごとに設定できる。したがって、所望のポリゴンを強調して表示することができる。例えば、衝突判定が直接ゲームの進行に関連するようなポリゴン、たとえば、格闘ゲームのキャラクタが殴り掛かった際の拳部分、ドライブゲームで他の車両が自分の車両に接触する部分、シューティングゲームのエネミー(敵)の武器の部分等を強調することにより、ポリゴンを元の輝度で鮮明に表示することができて、ゲームの状況判断が容易になる。
【0188】
なお、本明細書において、手段、回路等は必ずしも物理的手段を意味するものではなく、各手段の機能が、ソフトウェアによって実現される場合も包含する。さらに、一つの手段の機能が、二つ以上の物理的手段により実現されても、若しくは、二つ以上の手段の機能が、一つの物理的手段により実現されてもよい。
【0189】
【発明の効果】
以上のように、この発明によれば、生成された画像データを第1の画像メモリ領域及び第2の画像メモリ領域に書き込む制御部を備える画像処理装置において、前記第1の画像メモリ領域から画像データを読み出すとともに、読み出された画像データを減衰させて、新たに生成された画像データとともに前記第2の画像メモリ領域に書き込むことにより残像効果を生じさせるブレンド回路と、残像の間隔情報を記憶するバッファセレクトレジスタとを備え、前記ブレンド回路は、前記バッファセレクトレジスタのセレクト情報に基づき、画像データを読み出すメモリを選択するので、ハードウェアに残像機能をもたせることにより、処理の効率を上げるとともに、処理の高速化を実現できる。
【0190】
また、本発明によれば、所望の残像効果や強調効果を、所望のポリゴンに得られる画像処理装置を提供することが可能となる。
【図面の簡単な説明】
【図1】この発明の実施の形態1に係る画像処理装置の概略機能ブロック図である。
【図2】この発明の実施の形態1に係る画像処理装置のジオメトリプロセッサの機能ブロック図である。
【図3】この発明の実施の形態1に係る画像処理装置のジオメトリプロセッサの機能ブロック図である。
【図4】この発明の実施の形態1に係る画像処理装置のテクスチャプロセッサの機能ブロック図である。
【図5】この発明の実施の形態1に係る画像処理装置のシェーディングプロセッサの機能ブロック図である。
【図6】この発明の実施の形態1に係る画像処理装置のうちの残像処理を行う部分の詳細を示すブロック図である。
【図7】この発明の実施の形態1に係る画像処理装置の残像処理のフローチャートである。
【図8】この発明の実施の形態2に係る画像処理装置のうちの残像処理を行う部分の詳細を示すブロック図である。
【図9】この発明の実施の形態2に係る画像処理装置の残像処理のフローチャートである。
【図10】この発明の実施の形態3に係る画像処理装置の機能ブロック図である。
【図11】この発明の実施の形態3に係る画像処理装置のブレンド回路の構成を示すブロック図である。
【図12】この発明の実施の形態4に係る画像処理装置の機能ブロック図である。
【図13】この発明の実施の形態5に係る画像処理装置の機能ブロック図である。
【図14】この発明の実施の形態6に係る画像処理装置の機能ブロック図である。
【図15】この発明の実施の形態の、画面全体に残像効果を及ぼす処理の残像画面の例である。
【図16】この発明の実施の形態の、前フレームをブレンドする処理の残像画面の例である。
【図17】この発明の実施の形態7にかかる画像処理装置の残像回路の機能ブロック図である。
【図18】この発明の実施の形態7にかかる画像処理装置の残像処理を示すフローチャートである。
【図19】この発明の実施の形態7にしたがった残像回路を含む転送回路の構成例を示す図である。
【図20】この実施の形態7にかかるブレンド回路およびセレクタの構成例を示す図である。
【図21】この発明の実施の形態7にしたがった残像回路を含む転送回路の他の構成例を示す図である。
【図22】この発明の実施の形態7にしたがった残像回路を含む転送回路の他の構成例を示す図である。
【図23】この実施の形態7にしたがって得られた残像画像の例を示す図である。
【図24】この実施の形態7にしたがって得られた残像画像の例を示す図である。
【図25】この発明の実施の形態7に係る画像処理装置をゲーム装置に適用した場合における、画像処理装置部分の概略機能ブロック図である。
【図26】この発明の実施の形態7に係る画像処理装置をゲーム装置に適用した場合における、判定部及び画像処理装置部分のフローチャートである。
【符号の説明】
1 CPU
2 ジオメトリプロセッサ
2a ポリゴン・マテリアル・ライトバッファメモリ
3 フィルプロセッサ
4 テクスチャプロセッサ
4a テクスチャメモリ
5 シェーディングプロセッサ
5a フレームバッファ
6 プログラム・ワークポリゴンバッファメモリ
7 判定部
21 データディスパッチャー
22 ベクタエンジン
23 ベクタレジスタ
24 クリッピングエンジン
25 Yソートインデックス
26 Xソートインデックス
27 ソートエンジン
28 ポリゴンTAG
31 キャッシュコントローラ
32 マテリアルTAG
33 ライトTAG
34 ポリゴンキャッシュ
35 初期パラメータ計算機
36 Zコンパレータアレー
37 頂点パラメータバッファ
38 補間器
41 濃度計算機
42 マテリアルキャッシュ
43 ウインドウレジスタ
44 アドレス発生器
45 マテリアルキャッシュ
46 TLMMI計算機
47 カラーコンパレータ
48 カラーパレット
51 輝度処理器
51a ライトキャッシュ
51b マテリアルキャッシュ
51c ウインドウレジスタ
52 モジュレート処理器
52a マテリアルキャッシュ
52b ウインドウレジスタ
53 ブレンド処理器
53a マテリアルキャッシュ
54 カラーバッファ
55 プロット処理器
56 ビットマップ処理器
57 ディスプレイ制御器
100 残像回路
101、111 ブレンド回路
102、112 ブレンドレートレジスタ
103、113 ライトバンクレジスタ
104 セレクタ
105 バッファセレクトレジスタ
106 減算器
107 コンパレータセレクタ
108、128 セレクタ
114 リードバンクレジスタ
115 エリアNoレジスタ
116 フレームバッファIF
117 バッファ
118 減算器
119 比較器
122 セレクタ

Claims (9)

  1. 生成された画像データを第1の画像メモリ領域及び第2の画像メモリ領域に書き込む制御部を備える画像処理装置において、
    前記第1の画像メモリ領域から画像データを読み出し、読み出した画像データを減衰させて、新たに生成された画像データとともに前記第2の画像メモリ領域に書き込むことにより残像効果を生じさせるブレンド回路と、
    画像メモリのブレンドレートと、外部から入力されるカレントピクセルのブレンドレートとを比較し、大きい方を選択するコンパレータセレクタと
    を備え、
    前記第1の画像メモリ領域及び前記第2の画像メモリ領域は、それぞれピクセルごとにブレンドレート及びブレンドレートを減衰させるためのパラメータであるスロープを蓄える残像バッファを有し、
    前記ブレンド回路は、前記残像バッファから前記ブレンドレート及び前記スロープを読み出して処理を行い、ピクセルごとに残像効果を調整可能とした
    ことを特徴とする画像処理装置。
  2. 前記コンパレータセレクタは、
    残像処理ごとに前記ブレンドレートから前記スロープを減算し、この演算結果を前記残像バッファに新たなブレンドレートとして書き込む
    ことを特徴とする請求項1に記載の画像処理装置。
  3. 生成された第1の画像データを第1の画像メモリ領域又は第2の画像領域メモリに書き込む制御部を備える画像処理装置において、
    前記第1の画像メモリ領域又は前記第2の画像メモリ領域から前記第1の画像データを読み出し、読み出した前記第1の画像データを減衰させ、新たに生成された第2の画像データとブレンドして第3の画像データとして出力するブレンド回路と、
    前記第2の画像データ及び前記第3の画像データの一方を選択して、選択した前記第2の画像データ又は前記第3の画像データを、前記第1の画像メモリ領域又は前記第2の画像メモリ領域に書き込むセレクタと
    を備え、
    前記セレクタが、前記第2の画像データ中に含まれるフラグに基づいて、ピクセル単位で制御される
    ことを特徴とする画像処理装置。
  4. 画素単位で画像データ、ブレンドレート及びブレンドレートを減衰させるためのパラメータであるスロープを格納するフレームバッファと、
    前段回路から画素単位で画像データ、ブレンドレート及びスロープを受けて前記フレームバッファにデータを書き込む一方、前記フレームバッファからデータを読み出すフレームバッファインタフェースと、
    前記フレームバッファのブレンドレートに基づき前段回路からの画素データと前記フレームバッファインタフェースからの画素データを混合して前段回路に返すブレンド回路と、
    ブレンドレートからスロープに対応する値を減算する減算回路と、
    前記フレームバッファのブレンドレートと前記減算回路からのブレンドレートとを比較する比較回路と、
    前記比較回路の出力に基づき前記フレームバッファのブレンドレート及びスロープと前段回路からのブレンドレート及びスロープのいずれかを選択して前段回路に出力する選択回路と
    を備えることを特徴とする画像処理装置。
  5. ポリゴン単位に残像効果を適用するための画像処理方法であって、
    前回の画像データの何%のデータを残像として表示するかを示すブレンドレート、ブレンドレートを減衰させるためのパラメータであるスロープ、および、残像として残す画像データを前回のデータとするか前々回のデータとするかを決める残像の間隔を設定する第1のステップと、
    画像に含まれるポリゴンをソーティングする第2のステップと、
    設定されたブレンドレートに基づきカレントピクセルカラーとバッファのピクセルカラーをブレンドしてフレームバッファに書き込む第3のステップと、
    現在設定されている前記ブレンドレートから前記スロープを引いたものと、カレントピクセルのブレンドレートとを比較し、大きい方を新たなブレンドレートとして設定する一方、カレントピクセルのブレンドレートが大きいときには、当該カレントピクセルのスロープを新たなスロープとして設定する第4のステップと、
    領域内の全てのピクセルについて処理したかどうか判定し、全てのピクセルについて処理が完了していないときは前記第3ステップ以降の処理を繰り返す第5のステップと、
    全ての領域を処理したかどうか判定し、全ての領域について処理が完了していないときは前記前記第3ステップ以降の処理を繰り返す第6のステップと
    を備えることを特徴とする画像処理方法。
  6. 生成された画像データを第1の画像メモリ領域及び第2の画像メモリ領域に書き込む第1のステップと、
    前記第1の画像メモリ領域から画像データを読み出し、読み出した画像データを減衰させて、新たに生成された画像データとともに前記第2の画像メモリ領域に書き込むことにより残像効果を生じさせる第2のステップと、
    画像メモリのブレンドレートと、外部から入力されるカレントピクセルのブレンドレートとを比較し、大きい方を選択する第3のステップと
    を備え、
    前記第2のステップでは、
    前記第1の画像メモリ領域及び前記第2の画像メモリ領域にそれぞれ設けられた、ピクセルごとにブレンドレート及びブレンドレートを減衰させるためのパラメータであるスロープを蓄える残像バッファから前記ブレンドレート及びスロープを読み出して処理を行い、ピクセルごとに残像効果を調整可能とした
    ことを特徴とする画像処理方法。
  7. 前記第2のステップでは、
    残像処理ごとに前記ブレンドレートから前記スロープを減算し、この減算結果を前記残像バッファに新たなブレンドレートとして書き込む
    ことを特徴とする請求項6記載の画像処理方法。
  8. 生成された第1の画像データを第1の画像メモリ領域又は第2の画像領域メモリに書き込む第1のステップと、
    前記第1の画像メモリ領域又は前記第2の画像メモリ領域から前記第1の画像データを読み出し、読み出した前記第1の画像データを減衰させ、新たに生成された第2の画像データとブレンドして第3の画像データとして出力する第2のステップと、
    前記第2の画像データ及び前記第3の画像データの一方を選択して、選択した前記第2の画像データ又は前記第3の画像データを、前記第1の画像メモリ領域又は前記第2の画像メモリ領域に書き込む第3のステップと
    を備え、
    前記第3のステップでは、前記第2の画像データ中に含まれるフラグに基づいて、ピクセル単位で前記第2の画像データ及び前記第3の画像データの一方を選択する
    ことを特徴とする画像処理方法。
  9. 外部から画素単位で画像データ、ブレンドレート及びブレンドレートを減衰させるためのパラメータであるスロープを受けてフレームバッファにデータを書き込む第1のステップと、
    前記フレームバッファのブレンドレートに基づき外部からの画素データと前記フレームバッファから読み出した画素データを混合して外部に返す一方、ブレンドレートからスロープに対応する値を減算し、前記フレームバッファのブレンドレートと当該減算により得られたブレンドレートとを比較し、比較結果に基づき前記フレームバッファのブレンドレート及びスロープと外部からのブレンドレート及びスロープのいずれかを選択して外部に出力する第2のステップと
    を備えることを特徴とする画像処理方法。
JP14195998A 1997-05-22 1998-05-22 画像処理装置及び画像処理方法 Expired - Fee Related JP4200469B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP14195998A JP4200469B2 (ja) 1997-05-22 1998-05-22 画像処理装置及び画像処理方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP13183297 1997-05-22
JP9-131832 1997-05-22
JP14195998A JP4200469B2 (ja) 1997-05-22 1998-05-22 画像処理装置及び画像処理方法

Publications (2)

Publication Number Publication Date
JPH1139473A JPH1139473A (ja) 1999-02-12
JP4200469B2 true JP4200469B2 (ja) 2008-12-24

Family

ID=26466554

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14195998A Expired - Fee Related JP4200469B2 (ja) 1997-05-22 1998-05-22 画像処理装置及び画像処理方法

Country Status (1)

Country Link
JP (1) JP4200469B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4753252B2 (ja) * 2006-03-23 2011-08-24 サミー株式会社 画像生成装置、遊技機、画像生成方法、画像生成プログラム、及び記録媒体
CN110163935A (zh) * 2019-04-04 2019-08-23 浙江口碑网络技术有限公司 动画渲染方法、装置、设备及可读存储介质

Also Published As

Publication number Publication date
JPH1139473A (ja) 1999-02-12

Similar Documents

Publication Publication Date Title
JP3635051B2 (ja) 画像生成方法及び装置、画像処理プログラムを記録した記録媒体、画像処理プログラム
JP4698052B2 (ja) グラフィクスシステムのエイリアス補正方法および装置
US8547395B1 (en) Writing coverage information to a framebuffer in a computer graphics system
US7817165B1 (en) Selecting real sample locations for ownership of virtual sample locations in a computer graphics system
US7616202B1 (en) Compaction of z-only samples
JP2006195882A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2006318388A (ja) プログラム、情報記憶媒体及び画像生成システム
EP1312047A2 (en) Apparatus and method for rendering antialiased image
US6712700B1 (en) Stereo model displaying method and apparatus in video game, game apparatus, and computer-readable recording medium stored with stereo model displaying program for video game
JP3231029B2 (ja) レンダリング方法及び装置、ゲーム装置、並びに立体モデルをレンダリングするためのプログラムを格納したコンピュータ読み取り可能な記録媒体
JP2004334661A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4200469B2 (ja) 画像処理装置及び画像処理方法
JP2007272356A (ja) プログラム、情報記憶媒体及び画像生成システム
JP2006011539A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP3467259B2 (ja) ゲームシステム、プログラム及び情報記憶媒体
AU5503900A (en) Method and apparatus for providing depth blur effects within a 3D videographics system
JP5253118B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4632855B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP3052839B2 (ja) 画像処理装置及びその処理方法
JP2002163671A (ja) ゲームシステム、プログラム及び情報記憶媒体
JP4683760B2 (ja) 再構成可能なピクセルフォーマットを有する組み込みフレームバッファを有するグラフィックスシステム
JP2003085578A (ja) ゲーム情報、情報記憶媒体、及びゲーム装置
JPH06223199A (ja) 画像合成装置
JP2002092631A (ja) ゲームシステム、プログラム及び情報記憶媒体
KR100243184B1 (ko) 가상 서브픽셀 메모리를 이용한 안티에일리어싱 그래픽스 장치

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050516

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050516

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080409

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080609

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080703

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080820

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080925

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20111017

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees