JP4193979B2 - シャドウボリューム生成プログラム及びゲーム装置 - Google Patents
シャドウボリューム生成プログラム及びゲーム装置 Download PDFInfo
- Publication number
- JP4193979B2 JP4193979B2 JP2003072552A JP2003072552A JP4193979B2 JP 4193979 B2 JP4193979 B2 JP 4193979B2 JP 2003072552 A JP2003072552 A JP 2003072552A JP 2003072552 A JP2003072552 A JP 2003072552A JP 4193979 B2 JP4193979 B2 JP 4193979B2
- Authority
- JP
- Japan
- Prior art keywords
- shadow
- shadow volume
- value
- buffer
- light source
- 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 - Lifetime
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
- G06T15/60—Shadow generation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
Description
【発明の属する技術分野】
本発明はシャドウボリューム生成プログラムに関し、より特定的には、シャドウボリューム技法において利用されるシャドウボリュームを生成するためのシャドウボリューム生成プログラムに関する。
【0002】
【従来の技術】
シャドウボリューム技法とは、主に影の表現に使われる技法のことであって、影を落とすモデルによって光が遮られる空間(一般にシャドウボリュームと呼ばれる。)に対応した空間モデル(この空間モデル自体がシャドウボリュームと呼ばれることもある。)を用意し、この空間モデルを特殊な方法でレンダリングすることによって(この空間モデル自身は描かれない)、影が落ちるモデルの、空間モデルの内部に位置する部分の色だけを暗くする方法である(例えば、特許文献1参照。)。例えば影を落とす物体が球体であれば、その物体によって光が遮られる空間は円柱状となる。
【0003】
以下の説明では、影を落とすモデルを「影オブジェクト」と呼び、影の形を決定する空間モデルを「シャドウボリューム」と呼ぶことにする。
【0004】
このシャドウボリューム技法で問題となるのが、シャドウボリュームの形をどのように決めるかである。シャドウボリュームの形は、影オブジェクトの形状アニメーションや、光源方向の変化によって様々に変化する。
【0005】
シャドウボリュームの形を決定する従来の方法の一例として、影オブジェクトを光源方向から見たときに表を向いているポリゴンと裏を向いているポリゴンに共有されているエッジを輪郭線としてシャドウボリュームの形を決定するものがある。
【0006】
例えば、図15(a)に示すように斜めに傾いた直方体(影オブジェクト)に光源からの光が当たっている場合、影オブジェクトを光源から見ると図15(b)のようになっている。従来の方法では、この影オブジェクトにおいて、光源に対して表向きのポリゴン(図15(c))と、光源に対して裏向きのポリゴン(図15(d))をそれぞれ検出し、光源に対して表向きのポリゴンと、光源に対して裏向きのポリゴンによって共有されるエッジを抽出する(図15(e)の実線)。このエッジがシャドウボリュームの断面の輪郭線となる。つまり、図15(e)の実線で示した形を断面に持つ筒状のモデルがシャドウボリュームとして使用される。
【0007】
【特許文献1】
特開2002−24854号公報
【0008】
【発明が解決しようとする課題】
上記のような従来の方法では、まず、各エッジを共有する面を示すデータと、全ての面の法線情報が必要となる。これらは通常のグラフィックデータには含まれず、特別なデータコンバータを作成した上で、メモリ上に置いておくことになる。
【0009】
そして、実際の処理では様々な例外処理を必要とするので、専用のプロセッサを実現できず、CPUによる時間をかけた処理が必要となる。
【0010】
具体的には、全てのエッジについて、そのエッジに接している面の法線とライト方向との内積を計算し、ライト方向に対して表を向いた面と裏を向きた面に共有されるエッジが選び出される。そして、選び出されたエッジのうち、同一の頂点でつながっているものが順次選出され、最終的に輪となる1つながりの線状のデータが作成される。これがシャドウボリュームの断面のデータとなる。そして、この断面をライト方向に伸ばして筒状にしたものがシャドウボリュームの形状データとなる。
【0011】
しかしながら、このようにしてシャドウボリュームが難なく作成されるのはまれである。例えば、図16(a)に示すように、直方体に真上から光が当たる場合のように影オブジェクトが光源方向に対して平行な面を有する場合には、図16(b)に示すように、輪郭線として複数のエッジが選択可能となり、エッジの選択が困難となる。また、図16(c)に示すように、雪ダルマのような凹みのある物体に斜めから光が当たる場合には、図16(d)に示すように、輪郭線が途切れてしまうため、特別な処理が必要となる。また、図16(e)に示すように、雪ダルマのような凹みのある物体に真上から光が当たる場合には、複数の輪郭線が検出され、その結果、シャドウボリュームが複数発生して処理の手続きが倍になる。
【0012】
一般に、上記のような異常な状態は頻繁に発生し、これに対処するためにはたくさんの例外処理プログラムを用意したり、元々のデータに様々な細工をしたりする必要がある。しかしながら、このような作業はとても困難であり、処理負担も大きい。特にゲーム機においてゲーム画像を生成する場合には、1フレーム(1/30秒または1/60秒)内にゲーム画像を生成する必要があり、このように負担の大きい処理を採用することはできない。そこで普通は、そのような異常な状態が絶対に起こり得ないような単純な形状データをシャドウボリューム作成用に用意し、これを利用してシャドウボリュームが作成される。しかしながらこのような方法で影を描画した場合、本来の影とは異なり、かなり省略された影しか表現できない。
【0013】
それゆえに本発明は、例外的な処理を必要とせず、常に一定の簡単な処理でシャドウボリュームを作成することができるシャドウボリューム生成プログラムを提供することを目的とする。
【0014】
【課題を解決するための手段】
上記の課題を解決するために本発明は以下の構成を採用した。ただし、括弧内の参照符号等は、本発明の理解を助けるために後述する実施形態との対応関係を示したものであって、本発明の範囲を何ら限定するものではない。
【0015】
本発明のシャドウボリューム生成プログラムは、3次元の仮想空間に配置されたオブジェクト(2)が落とす影を描画するために利用されるシャドウボリューム(4)をコンピュータ(10、11)に生成させるためのプログラムである。このプログラムは、コンピュータ(10、11)に、まず、仮想空間に設置された光源を視点として、少なくとも影を落とすオブジェクト(2)を含む所定領域内の各ピクセルに対応するZ値をZバッファ(15)に書き込むステップ(S201)を実行させ、続いて、シャドウボリュームの元となる平面状オブジェクト(3)を構成する複数のポリゴンの各頂点の厚み方向(Y軸方向)に関する位置(py)を、Zバッファ(15)に書き込まれた各ピクセルのZ値(Zvalue)に応じて決定する(S206)ことによって、この平面状オブジェクト(3)からシャドウボリューム(4)を生成するステップを実行させる。
【0016】
本発明のゲーム装置は、3次元の仮想空間に配置されたオブジェクト(2)が落とす影を描画するために利用されるシャドウボリューム(4)を生成するものであって、Zバッファ(15)と、Z値書込手段(ステップS201を実行するCPU10ないしGPU11)と、シャドウボリューム生成手段(ステップS204を実行するCPU10ないしGPU11)とを備える。Z値書込手段は、仮想空間に設置された光源を視点として、少なくとも影を落とすオブジェクト(2)を含む所定領域内の各ピクセルのZ値をZバッファ(15)に書き込む。シャドウボリューム生成手段は、シャドウボリュームの元となる平面状オブジェクト(3)を構成する複数のポリゴンの各頂点の厚み方向(Y軸方向)に関する位置(py)を、Z値書込手段によってZバッファ(15)に書き込まれた各ピクセルのZ値(Zvalue)に応じて決定することによって、この平面状オブジェクト(3)からシャドウボリューム(4)を生成する。
【0017】
【発明の実施の形態】
以下、本発明の一実施形態について説明する。ただし、実施形態について詳細に説明する前に、まず、本発明の原理について簡単に説明する。
【0018】
本発明は、あたかも非常に柔らかい1枚の布を影オブジェクトに対して光源方向から被せたときの布の形状を、シャドウボリュームの形状として利用するという発想に基づいている。
【0019】
例えば、図1(a)に示すように、ひょうたん形の影オブジェクトに対して上方から光が当たっているときに、この影オブジェクトに対して光源の方向から柔らかな布を被せると(図1(b)、図1(c))、最終的に図1(d)の状態になる。図1(d)において布によって囲まれた空間は、ひょうたん形の影オブジェクトのシャドウボリュームと一致するため、この布の形状をシャドウボリュームの形状として利用することによって、正確な形状のシャドウボリュームが得られることになる。他の例として、ドーナツ型の影オブジェクトに対して光が当たっているときの様子を図1(e)〜図1(h)に示す。このようにして生成されたシャドウボリュームを用いてシャドウボリューム技法による影の描画を行うと、図2(a)および図2(b)に実線で示すような影を表示することができる。
【0020】
以下、本実施形態の一実施形態に係るゲームシステムについて説明する。
図3は、ゲームシステムの構成を示す外観図であり、図4はそのブロック図である。図3、図4に示すように、ゲームシステムは、ゲーム機本体100、DVD−ROM300、外部メモリカード400、コントローラ200、スピーカ600およびTVモニタ500を備える。DVD−ROM300および外部メモリカード400は、ゲーム機本体100に着脱自在に装着される。コントローラ200は、通信ケーブルを介して、ゲーム機本体100に設けられた複数(図3では4つ)のコントローラポート用コネクタのいずれかに接続される。TVモニタ500およびスピーカ600は、AVケーブル等によって接続される。なお、ゲーム機本体100とコントローラ200との通信は無線通信であってもよい。以下、図4を参照しながら、ゲームシステムの各部についてより詳細に説明する。
【0021】
DVD−ROM300は、ゲームプログラムや後述するシャドウボリューム生成プログラムやオブジェクトデータ等を固定的に記憶している。プレイヤがゲームをプレイするとき、DVD−ROM300はゲーム機本体100に装着される。なお、プログラム等を記憶する手段として、DVD−ROM300の代わりに例えばCD−ROM、MO、メモリカード、ROMカートリッジ等の外部記憶媒体を用いてもよい。
【0022】
外部メモリカード400は、例えばフラッシュメモリ等の書き換え可能な記憶媒体によって構成され、例えばゲームのセーブデータ等のデータを記録する。
【0023】
ゲーム機本体100は、DVD−ROM300に記録されているプログラムを読み出し、読み出したプログラムに応じた処理を行う。
【0024】
コントローラ200は、プレイヤがゲーム操作に関する入力を行うための入力装置であり、複数の操作スイッチを有する。コントローラ200は、プレイヤによる操作スイッチの押圧等に応じて操作データをゲーム機本体100に出力する。
【0025】
TVモニタ500は、ゲーム機本体100から出力された画像データを画面に表示する。なお、スピーカ600は、典型的にはTVモニタ500に内蔵されており、ゲーム機本体100から出力されたゲーム中の音声を出力する。
【0026】
次に、ゲーム機本体100の構成について説明する。図4において、ゲーム機本体100には、CPU10およびそれに接続されるメモリコントローラ20が設けられる。さらにゲーム機本体100において、メモリコントローラ20は、GPU(グラフィックスプロセッシングユニット)11と、メインメモリ17と、DSP18と、各種インターフェース(I/F)21〜24,26とに接続される。メモリコントローラ20は、これら各構成要素間のデータ転送を制御する。
【0027】
ゲーム開始の際、まず、DVDドライブ25は、ゲーム機本体100に装着されたDVD−ROM300を駆動する。DVD−ROM300に記憶されているゲームプログラムは、DVDディスクI/F26およびメモリコントローラ20を介して、メインメモリ17に読み込まれる。このメインメモリ17上のプログラムをCPU10が実行することによってゲームが開始される。ゲーム開始後、プレイヤは、操作スイッチを用いてコントローラ200に対してゲーム操作等の入力を行う。プレイヤによる入力に従い、コントローラ200は、操作データをゲーム機本体100に出力する。コントローラ200から出力される操作データは、コントローラI/F21およびメモリコントローラ20を介してCPU10に入力される。CPU10は、入力された操作データに応じてゲーム処理を行う。ゲーム処理における画像データ生成等に際して、GPU11やDSP18が用いられる。また、サブメモリ19は、DSP18が所定の処理を行う際に用いられる。
【0028】
GPU11は、ジオメトリユニット12およびレンダリングユニット13を含み、画像処理専用のメモリに接続されている。この画像処理専用メモリは、例えばカラーバッファ14やZバッファ15やステンシルバッファ16として利用される。ジオメトリユニット12は、仮想三次元空間であるゲーム空間に置かれた物体や図形に関する立体モデル(例えばポリゴンで構成されるオブジェクト)の座標についての演算処理を行うものであり、例えば立体モデルの回転・拡大縮小・変形や、ワールド座標系の座標から視点座標系やスクリーン座標系の座標への変換を行うものである。レンダリングユニット13は、所定のテクスチャに基づいて、スクリーン座標に投影された立体モデルについて各ピクセルごとのカラーデータ(RGBデータ)をカラーバッファ14に書き込むことによって、ゲーム画像を生成するためのものである。また、カラーバッファ14は、レンダリングユニット13によって生成されたゲーム画像データ(RGBデータ)を保持するために確保されたメモリ領域である。Zバッファ15は、3次元の視点座標から2次元のスクリーン座標に変換する際に失われる視点からの奥行情報を保持するために確保されたメモリ領域である。ステンシルバッファ16は、シャドウボリューム技法によって影領域を判定するときに利用されるメモリ領域である。GPU11は、これらバッファを用いてTVモニタ500に表示すべき画像データを生成し、メモリコントローラ20およびビデオI/F22を介して画像データをTVモニタ500に適宜出力する。なお、ゲームプログラム実行時にCPU10において生成される音声データは、メモリコントローラ20からオーディオI/F24を介してスピーカ600に出力される。なお本実施形態では、画像処理専用のメモリを別途設けたハードウェア構成としたが、これに限らず例えばメインメモリ17の一部を画像処理用のメモリとして利用する方式(UMA:Unified Memory Architecture)を使うようにしてもよい。
【0029】
図5に、DVD−ROM300のメモリマップを示す。DVD−ROM300には、ゲームプログラムや、シャドウボリューム生成プログラムや、オブジェクトデータなどが格納されている。なお、シャドウボリューム生成プログラムは、ゲームプログラムに含まれていても構わない。オブジェクトデータには、影を落とすオブジェクトやその他のオブジェクトのデータが含まれる。
【0030】
以下、図6および図7のフローチャートを参照して本ゲームシステムの影描画に関する動作について説明する。
【0031】
図6において、影描画処理が開始すると、CPU10は、まずカラーバッファ14およびZバッファ15をクリアする(S10)。そして前述のシャドウボリューム生成プログラムに基づいて、シャドウボリューム生成処理を実行する(S20)。以下、このシャドウボリューム生成処理の詳細について図7を参照して説明する。
【0032】
図7において、シャドウボリューム生成処理が開始すると、GPU11は、仮想空間に配置された光源を視点として、影を落とすオブジェクトだけをレンダリングする(S201)。つまり、図8(a)に示すように、板1の上に浮かんでいる影を落とすオブジェクト2に対して真上から光があたっている場合、この影を落とすオブジェクト2を真上から見たときのシーンをレンダリングする。その結果、カラーバッファ14には図8(b)に示すような2次元の画像データが書き込まれ、一方、Zバッファ15には、その2次元の画像データの各ピクセルに対応したZ値(視点からオブジェクトまでの距離に応じた値)が書き込まれる。なお、ここでは説明を容易にするためにカラーバッファ14に2次元の画像データが書き込まれるとしたが、実際にはZバッファ15にZ値が書き込まれさえすればよく、カラーバッファ14に画像データを書き込む必要はない。
【0033】
ステップS201のレンダリングが完了すると、CPU10は、つづくステップS202〜S214の処理によって、図8(c)に示す平面状オブジェクト3(図1(b)に示した柔らかな布に相当)から図8(d)に示すメッシュモデル4を生成する処理を実行する。本実施形態ではこのメッシュモデル4がシャドウボリュームとして用いられる。
【0034】
平面状オブジェクト3は複数のポリゴンによって構成され、これらのポリゴンの頂点でもある複数の頂点を有している。そして各頂点の位置は、X座標とZ座標の組み合わせにより規定されている。本実施形態では、平面状オブジェクト3の各頂点の座標がそれぞれ下記のように規定されているものとする。
(0,0) 、(1,0) 、(2,0) 、・・・、(xm,0)
(0,1) 、(1,1) 、(2,1) 、・・・、(xm,1)
(0,2) 、(1,2) 、(2,2) 、・・・、(xm,2)
(0,3) 、(1,3) 、(2,3) 、・・・、(xm,3)
・ ・ ・ ・
・ ・ ・ ・
(0,zm)、(1,zm)、(2,zm)、・・・、(xm,zm)
なお以下の説明では、メッシュモデル4のある頂点Pについて、その元となった平面状オブジェクト3の頂点の座標(x,z)を、メッシュモデル4の頂点Pの基本座標と称する。そして、特に基本座標のうちのX座標およびZ座標を、それぞれ基本X座標および基本Z座標と称する。
【0035】
以下、ステップS202以降の処理について具体的に説明する。
なお、図7に示すフローチャートにおいて、
・xおよびzは、それぞれ基本X座標および基本Z座標を示す変数であり、
・xmおよびzmは、それぞれ基本X座標の上限値および基本Z座標の上限値を示す変数であり、
・Zadrsは、Zバッファ15のアドレスを示す変数であり、
・Zvalueは、Zバッファ15の値を示す変数であり、
・Padrsは、メッシュモデル4の頂点座標を格納するメインメモリ17のアドレスを示す変数であり、
・px、pyおよびpzは、メッシュモデル4のX座標、Y座標およびZ座標をそれぞれ示す変数である。
【0036】
また、図7に示すフローチャートにおいて、
・cal_Zadrs()は、基本座標から、対応するZバッファ15のアドレスを求める関数であり、
・cal_Padrs()は、基本座標から、対応するメッシュモデル4の頂点データ格納アドレスを求める関数であり、
・read_Zbuf()は、Zバッファアドレスから、そこのZ値を読み込む関数であり、
・cal_height()は、Z値から適切な高さの値を計算する関数であり、
・scale_mesh()は、メッシュモデル4の各頂点がZ値に応じて(つまりZ値に対して比例的に変化するように、またはZ値に応じてべき乗的に変化するように、または予め用意された変換テーブルに基づいてZ値に応じて所定の増加率で変化するように)放射状に移動するように(つまり光源から遠い頂点ほど大きく移動するように)、基本X座標または基本Z座標を修正する関数であり、
・store_pos()は、X座標、Y座標およびZ座標をメッシュモデル4の頂点データ格納領域に格納する関数である。
【0037】
ステップS202において、CPU10は、基本Z座標を初期化し、続くステップS203においてさらに基本X座標を初期化する。つまり、メッシュモデル4の形状を規定する複数の頂点のうち、基本座標が(0,0)である頂点が最初の処理対象頂点として選ばれることになる。
【0038】
ステップS204で、CPU10は、処理対象頂点の基本座標(x,y)から、この基本座標に対応するZバッファ15のアドレスおよび頂点データの格納アドレスを求める。そして、このZバッファ15のアドレスのZ値を読み込む(S205)。つまり、カラーバッファ14に格納されている図8(b)に示す2次元画像を構成するピクセルのうち、処理対象頂点に対応するピクセルのZ値が、Zバッファ15より読み出されることになる。CPU10は、こうして読み出したZ値から、処理対象頂点のY座標(つまり平面状オブジェクト3の厚み方向に関する位置)を決定する(S206)。Z値から処理対象頂点のY座標(py)を求めるには、例えば図9に示すように、視点(光源)から遠い側のクリッピングプレーンに位置するZ値(例えば図9では1)と、レンダリングされたZ値(Zvalue)の差を求め、それをY座標軸の単位系にスケーリングすればよい。
【0039】
ステップS206で処理対象頂点のY座標が決定されると、次にCPU10は、光源が平行光源であるか点光源であるかを判断する(S207)。そして、光源が平行光源であった場合にはステップS208に進み、光源が点光源であった場合にはステップS209に進む。なお、光源として平行光源のみもしくは点光源のみしか用意されていないシステムにおいては、ステップS207が不要であることは言うまでもない。
【0040】
光源が平行光源だった場合には、図8(d)に示すように、処理対象頂点のX座標(px)およびZ座標(pz)として、それぞれ基本X座標(x)および基本Z座標(z)をそのまま利用する(S208)。一方、光源が点光源だった場合には、ステップS205において読み出されたZ値(Zvalue)に応じて基本Z座標(x)および基本Z座標(z)を修正したものを、処理対象頂点のX座標(px)およびZ座標(pz)として設定する(S209)。このように光源の種類によって処理が変わる理由について図10を参照して説明する。
【0041】
図10(a)に示すように、影を落とすオブジェクトが平行光源によって照らされている場合には、ステップS201のレンダリング処理において、奥行きが変わっても見える大きさが同じである正射影によって影を落とすオブジェクトが描画され、図10(e)に示すように、点光源によって照らされている場合には、ステップS201のレンダリング処理において、奥に位置するほど小さく見える透視射影によって影を落とすオブジェクトが描画される。その結果、平行光源の場合と点光源の場合とで、カラーバッファ14に格納される2次元画像データの内容が、それぞれ図10(b)および図10(f)に示すように異なることになる。これは、Zバッファ15に格納されるZ値の内容についても同様である。そして、そのようなZ値に基づいてステップS206が実行された結果、平面状オブジェクトの厚み方向に関する位置が、平行光源の場合には図10(c)に示すように決定され、点光源の場合には図10(g)に示すように決定される。ここで、平行光源の場合には、図10(c)のメッシュモデルをそのまま図10(d)に示すようにシャドウボリュームとして利用することが可能であるが、点光源の場合には、図10(g)のメッシュモデルをそのままシャドウボリュームとして利用することができない。つまり点光源の場合には、図10(h)に示すように、メッシュモデルの各頂点が、平面状オブジェクト3の面方向に関してZ値に応じて放射状に移動するように(つまり光源から遠い頂点ほど大きく移動するように)、基本X座標または基本Z座標を修正する。なお、放射状に移動するときの中心軸は、ステップS201において光源を視点として影を落とすオブジェクトをレンダリングしたときに生成された2次元画像の中心点に対応する。このようにして生成されたメッシュモデルは、図10(i)に示すようにシャドウボリュームとして利用可能となる。
【0042】
ステップS208またはステップS209において処理対象頂点のX座標およびZ座標が決定されると、CPU10は、処理対象頂点の座標をステップS204で求められたアドレスに格納する(S210)。その後、基本X座標(x)をインクリメントし(S211)、基本X座標が最大値(xm)を超えるまで処理対象頂点を順次変更しながらステップS204〜S212の処理を繰り返す(ステップS212でNo)。そして、基本X座標が最大値を超えた場合には(ステップS212でYes)、基本Z座標(z)をインクリメントし(S213)、続いて基本Z座標が最大値(zm)を超えたかどうかを判断する(S214)。判断の結果、Z座標値が最大値を超えていなかった場合には(ステップS214でNo)ステップS203に戻り、Z座標値が最大値を超えていた場合には(これはメッシュモデル4の全頂点の頂点データがメインメモリ17に格納されたことを意味する)、シャドウボリューム生成処理を終了し、図6のフローチャートに処理が戻る。
【0043】
図6において、シャドウボリューム生成処理が完了すると、GPU11は、Zバッファ15と、必要に応じてカラーバッファ14をクリアしてから(S30)、シーンをレンダリングする(S40)。ここでは通常のレンダリング処理が行われ、例えば図8(a)に示す板1および影を落とすオブジェクト2がレンダリングされる。
【0044】
シーンのレンダリングが完了後、GPU11は、ステップS20で生成したメッシュモデル4をシャドウボリュームとして利用して、シャドウボリューム技法による影描画処理を実行する。具体的には、図11(a)に示す仮想空間において、図11(b)に示すメッシュモデル4が図11(c)のように仮想的に配置され、ステンシルバッファ16を用いたシャドウボリューム技法によって図11(d)に示す影の領域が抽出される。
【0045】
なお、本実施形態では、影を落とすオブジェクト2が上方から光に照らされている場合について説明したが、影を落とすオブジェクト2が斜め上方から光に照らされている場合についても同様に本発明を適用することができる。例えば、図12(a)のように、球状の影を落とすオブジェクト2に対して斜め上方から光があたっている場合、この影を落とすオブジェクト2を光源を視点としてレンダリングして得られる2次元画像は図12(b)のようになる。そして、レンダリングの結果としてZバッファ15に書き込まれているZ値に基づいて、平面状オブジェクト3の各頂点の厚み方向に関する位置が決定され、最終的に図12(c)に示すメッシュモデル4が得られる。このメッシュモデル4をシャドウボリュームとして利用して影描画を行うときには、まず図13(a)に示す仮想空間において、図13(b)に示すメッシュモデル4が図13(c)のように仮想的に配置される。つまり、光線方向と、メッシュモデル4の厚み方向(つまりY軸方向)とが平行になるようにメッシュモデル4を配置する。その後、ステンシルバッファ16を用いたシャドウボリューム技法によって図13(d)に示す影の領域が抽出される。
【0046】
また、本実施形態では、平面状オブジェクト3に基づいてシャドウボリュームを生成するとしたが、この平面状オブジェクト3が、例えば図14(a)に示すように立体オブジェクト5の一面を構成するものであっても構わない。この場合にも、本実施形態と同様に、Zバッファ15に書き込まれているZ値に基づいて平面状オブジェクト3の各頂点の厚み方向に関する位置を決定することによって、図14(b)に示すようなシャドウボリュームが得られ、このシャドウボリュームを利用して影描画を行うことができる。
【0047】
以上のように、本実施形態によれば、影を落とすオブジェクトの形状の複雑さに関係なく、常に同じ処理によってどんな形状のオブジェクトのシャドウボリュームも生成することができる。したがって、例外処理が発生せず、プログラムが少量化されると同時に安定した処理が可能となる。さらに、本実施形態で行われる処理は、グラフィックプロセッサの機能を利用して実行することが可能であるため、グラフィックプロセッサに処理を任せることによって処理速度が大幅に向上する。
【0048】
なお本実施形態ではゲームプログラムはDVD−ROM300を介してゲーム機本体100に供給されるとしたが、これに限らず、DVD−ROM300以外の他のコンピュータ読み取り可能な記録媒体(例えばCD−ROM、MO、メモリカード、ROMカートリッジ等)に格納されてゲーム機本体100に供給されても構わない。また、予めゲーム機本体100に組み込まれていても構わない。また、インターネットなどの通信回線を通じてゲーム機本体100に供給されても構わない。
【0049】
【発明の効果】
以上のように、本発明によれば、例外的な処理を必要とせず、常に一定の簡単な処理でシャドウボリュームを作成することができる。
【図面の簡単な説明】
【図1】本発明の原理を説明するための図である。
【図2】シャドウボリュームと影の関係を示す図である。
【図3】本発明の一実施形態に係るゲームシステムの外観図である。
【図4】ゲーム機本体100の構成を示すブロック図である。
【図5】DVD−ROM300のメモリマップである。
【図6】影描画処理の流れを示すフローチャートである。
【図7】シャドウボリューム生成処理の流れを示すフローチャートである。
【図8】シャドウボリューム生成処理の具体例を示す図である。
【図9】Z値からメッシュモデルの各頂点のY座標を決定する具体例を示す図である。
【図10】光源が平行光源である場合と点光源である場合との処理の相違点を説明するための図である。
【図11】シャドウボリュームを用いた影描画処理の具体例を示す図である。
【図12】影を落とすオブジェクトの斜め上方から光があたっている場合のシャドウボリューム生成処理の具体例を示す図である。
【図13】影を落とすオブジェクトの斜め上方から光があたっている場合のシャドウボリュームの配置方法を説明するための図である。
【図14】平面状オブジェクトが立体オブジェクトの一部である場合のシャドウボリューム生成処理の具体例を示す図である。
【図15】従来のシャドウボリューム技法における輪郭線の抽出処理を示す図である。
【図16】従来のシャドウボリューム技法において抽出される輪郭線の形を示す図である。
【符号の説明】
1 板
2 影を落とすオブジェクト
3 平面状オブジェクト
4 メッシュモデル
5 立体オブジェクト
10 CPU
11 GPU
12 ジオメトリユニット
13 レンダリングユニット
14 カラーバッファ
15 Zバッファ
16 ステンシルバッファ
17 メインメモリ
18 DSP
19 サブメモリ
20 メモリコントローラ
21 コントローラI/F
22 ビデオI/F
23 外部メモリI/F
24 オーディオI/F
25 DVDドライブ
26 DVDディスクI/F
100 ゲーム機本体
200 コントローラ
300 DVD−ROM
400 外部メモリカード
500 TVモニタ
600 スピーカ
Claims (6)
- 3次元の仮想空間に配置されたオブジェクトが落とす影を描画するために利用されるシャドウボリュームをコンピュータに生成させるためのシャドウボリューム生成プログラムであって、前記コンピュータに、
仮想空間に設置された光源を視点として、少なくとも前記影を落とすオブジェクトを含む所定領域内の各ピクセルに対応するZ値をZバッファに書き込むステップと、
前記シャドウボリュームの元となる平面状オブジェクトを構成する複数のポリゴンの各頂点の厚み方向に関する位置を、前記Zバッファに書き込まれた各ピクセルのZ値に応じて決定することによって、該平面状オブジェクトから前記シャドウボリュームを生成するステップとを実行させる、シャドウボリューム生成プログラム。 - 前記平面状オブジェクトの形状は、X座標およびZ座標の組み合わせが異なる複数の頂点によって規定されており、
前記シャドウボリューム生成ステップでは、前記平面状オブジェクトの各頂点のY座標が、前記Zバッファに書き込まれた各ピクセルのZ値に応じて決定されることを特徴とする、請求項1に記載のシャドウボリューム生成プログラム。 - 前記光源が点光源であり、
前記シャドウボリューム生成ステップは、前記平面状オブジェクトの各頂点の面方向に関する位置を、前記Zバッファに書き込まれた各ピクセルのZ値に応じて決定するステップを含むことを特徴とする、請求項1に記載のシャドウボリューム生成プログラム。 - 前記平面状オブジェクトの形状は、X座標およびZ座標の組み合わせが異なる複数の頂点によって規定されており、
前記シャドウボリューム生成ステップでは、前記平面状オブジェクトの各頂点のX座標およびZ座標が、前記Zバッファに書き込まれた各ピクセルのZ値に応じて決定されることを特徴とする、請求項3に記載のシャドウボリューム生成プログラム。 - 前記シャドウボリューム生成ステップで生成されたシャドウボリュームを、該シャドウボリュームの厚み方向が前記光源の光線方向と一致するように前記仮想空間に仮想的に配置するステップと、
仮想的に配置したシャドウボリュームを用いて前記影を落とすオブジェクトの影を描画するステップとをさらに前記コンピュータに実行させることを特徴とする、請求項1に記載のシャドウボリューム生成プログラム。 - 3次元の仮想空間に配置されたオブジェクトが落とす影を描画するために利用されるシャドウボリュームを生成するゲーム装置であって、
Zバッファと、
仮想空間に設置された光源を視点として、少なくとも前記影を落とすオブジェクトを含む所定領域内の各ピクセルのZ値を前記Zバッファに書き込むZ値書込手段と、
前記シャドウボリュームの元となる複数のポリゴンからなる平面状オブジェクトの各頂点の厚み方向に関する位置を、前記Z値書込手段によって前記Zバッファに書き込まれた各ピクセルのZ値に応じて決定することによって、該平面状オブジェクトから前記シャドウボリュームを生成するシャドウボリューム生成手段とを備えるゲーム装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003072552A JP4193979B2 (ja) | 2003-03-17 | 2003-03-17 | シャドウボリューム生成プログラム及びゲーム装置 |
US10/635,652 US20040186631A1 (en) | 2003-03-17 | 2003-08-07 | Storage medium storing a shadow volume generation program, game device, and shadow volume generation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003072552A JP4193979B2 (ja) | 2003-03-17 | 2003-03-17 | シャドウボリューム生成プログラム及びゲーム装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004280596A JP2004280596A (ja) | 2004-10-07 |
JP4193979B2 true JP4193979B2 (ja) | 2008-12-10 |
Family
ID=32984710
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003072552A Expired - Lifetime JP4193979B2 (ja) | 2003-03-17 | 2003-03-17 | シャドウボリューム生成プログラム及びゲーム装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20040186631A1 (ja) |
JP (1) | JP4193979B2 (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100632535B1 (ko) * | 2004-12-29 | 2006-10-11 | 엘지전자 주식회사 | 이동통신단말기용 삼차원 그래픽 엔진 및 그래픽 제공 방법 |
JP3926828B1 (ja) * | 2006-01-26 | 2007-06-06 | 株式会社コナミデジタルエンタテインメント | ゲーム装置、ゲーム装置の制御方法及びプログラム |
JP2008090673A (ja) * | 2006-10-03 | 2008-04-17 | Mitsubishi Electric Corp | キャッシュメモリ制御装置 |
JP4902748B2 (ja) * | 2006-12-08 | 2012-03-21 | メンタル イメージズ ゲーエムベーハー | 階層型オクルージョンカリングを使用するコンピュータグラフィックシャドウボリューム |
US8125498B2 (en) * | 2007-01-03 | 2012-02-28 | Siemens Medical Solutions Usa, Inc. | Generating a 3D volumetric mask from a closed surface mesh |
KR100865583B1 (ko) | 2007-02-21 | 2008-10-28 | 충북대학교 산학협력단 | 컴퓨터 그래픽 시스템에서의 동영상의 반사 효과 처리 방법 |
JP4852555B2 (ja) * | 2008-01-11 | 2012-01-11 | 株式会社コナミデジタルエンタテインメント | 画像処理装置、画像処理方法、ならびに、プログラム |
KR20120062170A (ko) * | 2010-12-06 | 2012-06-14 | 삼성전자주식회사 | 가상 모니터 제어장치 및 그 제어방법 |
US9070242B2 (en) * | 2011-07-01 | 2015-06-30 | Digital Creations, LLC | Techniques for controlling game event influence and/or outcome in multi-player gaming environments |
KR101265101B1 (ko) | 2011-11-28 | 2013-05-20 | 주식회사 넥슨코리아 | 3d물체의 그림자 맞추기 게임 방법 및 그 프로그램이 기록된 컴퓨터 판독 가능한 기록매체 |
US9600930B2 (en) * | 2013-12-11 | 2017-03-21 | Qualcomm Incorporated | Method and apparatus for optimized presentation of complex maps |
US10607403B2 (en) * | 2017-10-04 | 2020-03-31 | Google Llc | Shadows for inserted content |
CN109949401A (zh) * | 2019-03-14 | 2019-06-28 | 成都风际网络科技股份有限公司 | 一种移动平台的非静态物体非实时阴影渲染的方法 |
Family Cites Families (49)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4275413A (en) * | 1978-03-30 | 1981-06-23 | Takashi Sakamoto | Linear interpolator for color correction |
US4586038A (en) * | 1983-12-12 | 1986-04-29 | General Electric Company | True-perspective texture/shading processor |
US4625289A (en) * | 1985-01-09 | 1986-11-25 | Evans & Sutherland Computer Corp. | Computer graphics system of general surface rendering by exhaustive sampling |
US5361386A (en) * | 1987-12-04 | 1994-11-01 | Evans & Sutherland Computer Corp. | System for polygon interpolation using instantaneous values in a variable |
JPH0693181B2 (ja) * | 1988-03-18 | 1994-11-16 | 株式会社日立製作所 | 表示装置 |
US5097427A (en) * | 1988-07-06 | 1992-03-17 | Hewlett-Packard Company | Texture mapping for computer graphics display controller system |
JPH0727581B2 (ja) * | 1988-09-09 | 1995-03-29 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 図形処理装置 |
US5016183A (en) * | 1988-09-13 | 1991-05-14 | Computer Design, Inc. | Textile design system and method |
US5255353A (en) * | 1989-02-28 | 1993-10-19 | Ricoh Company, Ltd. | Three-dimensional shadow processor for an image forming apparatus |
EP0423653B1 (en) * | 1989-10-13 | 1997-08-06 | Matsushita Electric Industrial Co., Ltd. | Method and apparatus for compensating for color in color images |
JPH0776991B2 (ja) * | 1989-10-24 | 1995-08-16 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Nurbsデータ変換方法及び装置 |
GB2240015A (en) * | 1990-01-15 | 1991-07-17 | Philips Electronic Associated | Texture memory addressing |
US5377313A (en) * | 1992-01-29 | 1994-12-27 | International Business Machines Corporation | Computer graphics display method and system with shadow generation |
US5473736A (en) * | 1992-06-08 | 1995-12-05 | Chroma Graphics | Method and apparatus for ordering and remapping colors in images of real two- and three-dimensional objects |
JPH0778267A (ja) * | 1993-07-09 | 1995-03-20 | Silicon Graphics Inc | 陰影を表示する方法及びコンピュータ制御表示システム |
US5729672A (en) * | 1993-07-30 | 1998-03-17 | Videologic Limited | Ray tracing method and apparatus for projecting rays through an object represented by a set of infinite surfaces |
GB9315852D0 (en) * | 1993-07-30 | 1993-09-15 | Video Logic Ltd | Shading three-dimensional images |
JP3052681B2 (ja) * | 1993-08-06 | 2000-06-19 | 松下電器産業株式会社 | 3次元動画像生成装置 |
JPH07146952A (ja) * | 1993-11-22 | 1995-06-06 | Konami Kk | 3次元画像処理装置 |
US5592597A (en) * | 1994-02-14 | 1997-01-07 | Parametric Technology Corporation | Real-time image generation system for simulating physical paint, drawing media, and feature modeling with 3-D graphics |
US5557712A (en) * | 1994-02-16 | 1996-09-17 | Apple Computer, Inc. | Color map tables smoothing in a color computer graphics system avoiding objectionable color shifts |
US5678037A (en) * | 1994-09-16 | 1997-10-14 | Vlsi Technology, Inc. | Hardware graphics accelerator system and method therefor |
US5561752A (en) * | 1994-12-22 | 1996-10-01 | Apple Computer, Inc. | Multipass graphics rendering method and apparatus with re-traverse flag |
US5649082A (en) * | 1995-03-20 | 1997-07-15 | Silicon Graphics, Inc. | Efficient method and apparatus for determining texture coordinates for lines and polygons |
US5704024A (en) * | 1995-07-20 | 1997-12-30 | Silicon Graphics, Inc. | Method and an apparatus for generating reflection vectors which can be unnormalized and for using these reflection vectors to index locations on an environment map |
US5870097A (en) * | 1995-08-04 | 1999-02-09 | Microsoft Corporation | Method and system for improving shadowing in a graphics rendering system |
US5867166A (en) * | 1995-08-04 | 1999-02-02 | Microsoft Corporation | Method and system for generating images using Gsprites |
US5949428A (en) * | 1995-08-04 | 1999-09-07 | Microsoft Corporation | Method and apparatus for resolving pixel data in a graphics rendering system |
US5999189A (en) * | 1995-08-04 | 1999-12-07 | Microsoft Corporation | Image compression to reduce pixel and texture memory requirements in a real-time image generator |
US5740343A (en) * | 1995-11-03 | 1998-04-14 | 3Dfx Interactive, Incorporated | Texture compositing apparatus and method |
US6331856B1 (en) * | 1995-11-22 | 2001-12-18 | Nintendo Co., Ltd. | Video game system with coprocessor providing high speed efficient 3D graphics and digital audio signal processing |
US5943058A (en) * | 1996-01-25 | 1999-08-24 | Silicon Graphics, Inc. | Texture mapping circuit for performing data interpolations |
US5739819A (en) * | 1996-02-05 | 1998-04-14 | Scitex Corporation Ltd. | Method and apparatus for generating an artificial shadow in a two dimensional color image |
US5966134A (en) * | 1996-06-28 | 1999-10-12 | Softimage | Simulating cel animation and shading |
US6018350A (en) * | 1996-10-29 | 2000-01-25 | Real 3D, Inc. | Illumination and shadow simulation in a computer graphics/imaging system |
US5870098A (en) * | 1997-02-26 | 1999-02-09 | Evans & Sutherland Computer Corporation | Method for rendering shadows on a graphical display |
JP2845857B2 (ja) * | 1997-04-01 | 1999-01-13 | コナミ株式会社 | 画像の半透明表示装置,半透明表示方法,及びコンピュータプログラムを記録した機械読取り可能な記録媒体 |
US5956042A (en) * | 1997-04-30 | 1999-09-21 | Hewlett-Packard Co. | Graphics accelerator with improved lighting processor |
US6043821A (en) * | 1997-06-30 | 2000-03-28 | Ati Technologies, Inc. | Method and apparatus for rendering pixel information from blended texture maps |
US6016151A (en) * | 1997-09-12 | 2000-01-18 | Neomagic Corp. | 3D triangle rendering by texture hardware and color software using simultaneous triangle-walking and interpolation for parallel operation |
US6232981B1 (en) * | 1998-03-26 | 2001-05-15 | Silicon Graphics, Inc. | Method for improving texture locality for pixel quads by diagonal level-of-detail calculation |
US6236413B1 (en) * | 1998-08-14 | 2001-05-22 | Silicon Graphics, Inc. | Method and system for a RISC graphics pipeline optimized for high clock speeds by using recirculation |
US6417858B1 (en) * | 1998-12-23 | 2002-07-09 | Microsoft Corporation | Processor for geometry transformations and lighting calculations |
US6437782B1 (en) * | 1999-01-06 | 2002-08-20 | Microsoft Corporation | Method for rendering shadows with blended transparency without producing visual artifacts in real time applications |
US6384822B1 (en) * | 1999-05-14 | 2002-05-07 | Creative Technology Ltd. | Method for rendering shadows using a shadow volume and a stencil buffer |
JP3625184B2 (ja) * | 2000-09-25 | 2005-03-02 | コナミ株式会社 | ゲーム用3次元画像処理方法、装置、ゲーム用3次元画像処理プログラムを記録した可読記録媒体及びビデオゲーム装置 |
US6924798B2 (en) * | 2001-05-22 | 2005-08-02 | Intel Corporation | Real-time multi-resolution shadows |
JP4079410B2 (ja) * | 2002-02-15 | 2008-04-23 | 株式会社バンダイナムコゲームス | 画像生成システム、プログラム及び情報記憶媒体 |
US6876362B1 (en) * | 2002-07-10 | 2005-04-05 | Nvidia Corporation | Omnidirectional shadow texture mapping |
-
2003
- 2003-03-17 JP JP2003072552A patent/JP4193979B2/ja not_active Expired - Lifetime
- 2003-08-07 US US10/635,652 patent/US20040186631A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
JP2004280596A (ja) | 2004-10-07 |
US20040186631A1 (en) | 2004-09-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7104891B2 (en) | Game machine and game program for displaying a first object casting a shadow formed by light from a light source on a second object on a virtual game space | |
US8602888B2 (en) | Video game device and image processing program | |
JP3853329B2 (ja) | ゲームプログラム及びゲーム装置 | |
JP4193979B2 (ja) | シャドウボリューム生成プログラム及びゲーム装置 | |
JP3625184B2 (ja) | ゲーム用3次元画像処理方法、装置、ゲーム用3次元画像処理プログラムを記録した可読記録媒体及びビデオゲーム装置 | |
JP4082937B2 (ja) | ゲームシステム及びゲームプログラム | |
US6390918B1 (en) | Video game apparatus, model display method for video games, and readable recording medium for storing model display program for video games | |
JP3961525B2 (ja) | 画像処理装置、画像処理方法、ならびに、プログラム | |
JP2002304640A (ja) | 3次元画像処理方法、装置、3次元画像処理プログラム及びビデオゲーム装置 | |
KR100843027B1 (ko) | 영상 처리 방법 및 장치, 그리고 영상 처리 방법을 수행하는 프로그램이 수록된 기록매체 | |
JP2004317878A (ja) | グラフィックスプロセッサ、グラフィックスカード及びグラフィックス処理システム | |
JP2006195882A (ja) | プログラム、情報記憶媒体、及び画像生成システム | |
JP2000218036A (ja) | ゲーム装置、ゲーム制御方法およびその記録媒体 | |
JP3617960B2 (ja) | 3次元ゲーム画像処理プログラム、3次元ゲーム画像処理方法及びビデオゲーム装置 | |
JP4231684B2 (ja) | ゲーム装置及びゲームプログラム | |
JP6559434B2 (ja) | ゲームプログラムおよびゲーム装置 | |
JP4584665B2 (ja) | 3次元ゲーム画像処理プログラム、3次元ゲーム画像処理方法及びビデオゲーム装置 | |
JP4233598B1 (ja) | 画像処理プログラム、画像処理装置、および画像処理方法 | |
JP4233859B2 (ja) | ゲーム装置及びゲームプログラム | |
JP3708904B2 (ja) | 画像処理プログラム | |
JP3586679B2 (ja) | 3次元ゲーム画像処理プログラム、3次元ゲーム画像処理方法及びビデオゲーム装置 | |
JP3545935B2 (ja) | 画像の生成・表示方法及びこの方法を記録した記録媒体 | |
JP3183636B2 (ja) | 3次元ゲーム装置及び情報記憶媒体 | |
JP2006004363A (ja) | プログラム、情報記憶媒体、及び画像生成システム | |
JP2005293091A (ja) | 画像生成システム、プログラム及び情報記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060222 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080912 |
|
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: 20080917 |
|
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: 20080917 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4193979 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111003 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111003 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111003 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111003 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121003 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121003 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121003 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131003 Year of fee payment: 5 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |