JP4001227B2 - ゲーム装置及びゲームプログラム - Google Patents
ゲーム装置及びゲームプログラム Download PDFInfo
- Publication number
- JP4001227B2 JP4001227B2 JP2002141635A JP2002141635A JP4001227B2 JP 4001227 B2 JP4001227 B2 JP 4001227B2 JP 2002141635 A JP2002141635 A JP 2002141635A JP 2002141635 A JP2002141635 A JP 2002141635A JP 4001227 B2 JP4001227 B2 JP 4001227B2
- Authority
- JP
- Japan
- Prior art keywords
- shadow
- game
- light source
- thickness
- shadow volume
- 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
Links
- PWPJGUXAGUPAHP-UHFFFAOYSA-N lufenuron Chemical compound C1=C(Cl)C(OC(F)(F)C(C(F)(F)F)F)=CC(Cl)=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F PWPJGUXAGUPAHP-UHFFFAOYSA-N 0.000 title 1
- 238000000034 method Methods 0.000 claims description 86
- 230000008569 process Effects 0.000 claims description 74
- 238000012545 processing Methods 0.000 claims description 52
- 238000001514 detection method Methods 0.000 claims description 7
- 239000000872 buffer Substances 0.000 description 52
- 238000010586 diagram Methods 0.000 description 13
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000009877 rendering Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 230000002542 deteriorative effect Effects 0.000 description 2
- 238000007429 general method Methods 0.000 description 2
- 238000011835 investigation Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- A63F13/10—
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/45—Controlling the progress of the video game
-
- 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
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
- A63F2300/66—Methods for processing data by generating or executing the game program for rendering three dimensional images
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
- A63F2300/66—Methods for processing data by generating or executing the game program for rendering three dimensional images
- A63F2300/6646—Methods for processing data by generating or executing the game program for rendering three dimensional images for the computation and display of the shadow of an object or character
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
Description
【発明の属する技術分野】
本発明は、ゲーム装置及びゲームプログラムに関し、より特定的には、ゲーム処理において仮想三次元のゲーム空間における第1オブジェクトおよび第2オブジェクトを表示するときに、光源からの光に基づいて前記第2オブジェクト上に落ちる前記第1オブジェクトの影を表示するゲーム装置及びゲームプログラムに関する。
【0002】
【従来の技術】
従来よりコンピュータグラフィクスを実現するコンピュータにおける陰影処理では、いわゆるレイトレーシングやラディオシティなどを採用することによって、リアルな陰影を付けたコンピュータグラフィクスが実現されている。
【0003】
一方、ゲーム機による3次元ゲーム処理では、1フレーム(1/30秒または1/60秒)内にゲーム画像を生成する必要があり、上記コンピュータグラフィクスのような処理時間のかかる処理を採用できない。そこで従来のゲーム機では、予め影画像(または影ポリゴン)を用意しておき、適宜その影画像をキャラクタの下に置くことによって、3次元ゲーム空間におけるキャラクタ等の影を表示しているものが多かった。このような陰影処理で表示される影はリアルさにかけるという問題があった。
【0004】
そこで、近年のゲーム機の高性能化に伴い、いわゆるシャドウマッピングやシャドウボリュームという陰影処理方法が可能になってきており、従来に比べて比較的リアルな影を表示させることも可能になってきている。
【0005】
【発明が解決しようとする課題】
ここで、シャドウマッピングでは下記のステップ1〜5の処理により影を描画する。
(1)ゲーム空間における光源を視点とし、この視点から見たオブジェクトの奥行き情報をテーブルに格納する。
(2)本来描画しようとする視点から見たオブジェクトを描画し、奥行き情報をZバッファに格納する。
(3)スクリーン上のある点について、そのスクリーン上の位置情報から、ステップ1で作成したテーブルの、対応する奥行き情報と比較できるように変換する変換式を作成する。
(4)ステップ3で作成した式を用いて、その点の奥行き情報と対応するステップ1のテーブルの奥行き情報とを比較し、値が等しくなければ、その点は光源との間に光を遮るオブジェクトが存在するということなので、輝度を落とす処理を行う。
(5)ステップ4の処理をスクリーン上の全ての点に対して行う。
【0006】
このようなシャドウマッピングの場合には、光源に基づく奥行き情報の作成やコピー処理が発生し、メモリ転送帯域の少ないハードウェアでは、そのバスを占領され、その結果処理負担が大きくなるという問題がある。また、奥行き情報を格納しておくメモリが必要となる。
【0007】
また、シャドウボリュームでは以下のような処理により影を描画する。まず、ゲーム空間における光源からの光線方向にオブジェクトの輪郭を延ばすことによって、影が落ちる影空間(シャドウボリューム)を求める。そして、例えばステンシルバッファにその影空間の表面・裏面を描画することで、影が落ちる部分だけを求める。そして、その部分に対応するゲーム画像の部分に影を描画する。
【0008】
このようなシャドウボリュームの場合には、オブジェクトの輪郭を抽出し、その輪郭を光線方向に延ばした影空間を生成することに大きな処理負担がかかり、また、ステンシルバッファに全影空間を描画することに大きな処理負担がかかるという問題がある。
【0009】
つまり、ゲーム機が高性能化しても、よりリアルなゲーム画像を生成するために、負担の大きな上述の処理を行わせることは、ゲーム性を損なわせる原因にもなっており、リアルでかつ負担の少ない処理を実現することが求められている。
【0010】
それゆえに本発明の目的は、処理負担が少なくかつリアルな影を描画することのできるゲーム装置及びゲームプログラムを提供することである。
【0011】
【課題を解決するための手段および発明の効果】
この発明は、上記の目的を達成するために、次のように構成される。
すなわち、請求項1に係る発明によれば、ゲーム装置は、ゲーム処理において仮想三次元のゲーム空間における第1オブジェクト(実施例との対応関係を示せば、例えばキャラクタオブジェクト)および第2オブジェクト(地形オブジェクト)を表示するときに、光源からの光に基づいて第2オブジェクト上に落ちる第1オブジェクトの影を表示するものであって、部分シャドウボリューム記憶手段(DVD−ROM300または本体RAM)と、部分シャドウボリューム配置手段(ステップS1106を実行するCPU10;以下、単にステップ番号のみを示す)と、影描画手段(S1302)とを備える。部分シャドウボリューム記憶手段は、第1オブジェクトの輪郭および光源からの光線方向に基づく部分シャドウボリュームを記憶する。この部分シャドウボリュームの光線方向の厚みは第2オブジェクトの起伏に基づく。部分シャドウボリューム配置手段は、部分シャドウボリュームをシャドウボリューム配置座標に配置する。影描画手段は、部分シャドウボリューム配置手段によって配置された部分シャドウボリュームに基づいて、第2オブジェクト上に落ちる第1オブジェクトの影を描画する。
【0012】
上記第1の発明によれば、所定の厚みを有する部分シャドウボリュームを用いて影描画処理を行うので、影描画処理に係る処理負担を低減しつつリアルな影を描画することができる。
【0013】
また、請求項2に係る発明によれば、部分シャドウボリューム配置手段は、シャドウボリューム配置座標算出手段(S1201〜S1205)を含む。シャドウボリューム配置座標算出手段は、第1オブジェクト上の所定座標から光線方向に延びる直線と第2オブジェクトとの交点をシャドウボリューム配置座標として算出する。
【0014】
また、請求項3に係る発明によれば、第1オブジェクトの影が落ちる第2オブジェクトの影領域がゲームの進行に応じて任意に変化する場合にも影領域全体が常に部分シャドウボリュームの内部に含まれるように、部分シャドウボリュームの厚みが決定されることを特徴とする。
【0015】
上記第3の発明によれば、ゲームの進行に応じて影領域の位置や大きさや形状等が変化する場合であっても常に正確な影を描画することができる。
【0016】
また、請求項4に係る発明によれば、部分シャドウボリュームの厚みは、シャドウボリューム配置座標を基準として光源の方向への厚みである光源方向厚み(ha)と、シャドウボリューム配置座標を基準として光源とは逆の方向への厚みである光源逆方向厚み(hb)とにより規定され、第1オブジェクトの影が落ちる第2オブジェクトの影領域がゲームの進行に応じて任意に変化する場合にも影領域全体が常に部分シャドウボリュームの内部に含まれるような大きさであってかつ最小限の大きさとなるように、光源方向厚みおよび光源逆方向厚みがそれぞれ決定されることを特徴とする。
【0017】
上記第4の発明によれば、シャドウボリューム配置座標を基準として光源方向および光源逆方向にそれぞれ必要最小限の厚みを有する部分シャドウボリュームを用意するので、影描画処理にかかる処理負荷を最適に低減することができる。
【0018】
また、請求項5に係る発明によれば、光源方向厚みは、影領域がゲームの進行に応じて任意に変化するときにとりうる、シャドウボリューム配置座標を基準として光源の方向への影領域の最大起伏(ha1,ha2,ha3,・・・,haNのうちの最大値)に基づいて決定され、光源逆方向厚みは、影領域がゲームの進行に応じて任意に変化するときにとりうる、シャドウボリューム配置座標を基準として光源とは逆の方向への影領域の最大起伏(hb1,hb2,hb3,・・・,hbNのうちの最大値)に基づいて決定されることを特徴とする。
【0019】
上記第5の発明によれば、部分シャドウボリュームの必要最小限の光源方向厚みおよび光源逆方向厚みを決定することができる。
【0020】
また、請求項6に係る発明によれば、光源方向厚みおよび光源逆方向厚みは、影領域がゲームの進行に応じて任意に変化するときにとりうる影領域の最大起伏(H1,H2,H3,・・・,HNのうちの最大値)に基づいて共通に決定されることを特徴とする。
【0021】
上記第6の発明によれば、部分シャドウボリュームに必要な厚みを簡略的に決定することができる。
【0022】
また、請求項7に係る発明によれば、部分シャドウボリューム記憶手段は、第2オブジェクトの起伏に基づいてゲーム処理以前に予め形成された部分シャドウボリュームを記憶することを特徴とする。
【0023】
上記第7の発明によれば、ゲーム処理において部分シャドウボリュームを生成する必要がないため、ゲーム処理にかかる処理負担が低減される。
【0024】
また、請求項8に係る発明によれば、ゲーム装置は、最大起伏算出手段(S1802、S2002、S2003))および部分シャドウボリューム生成手段(S1803、S2004)をさらに備える。最大起伏算出手段は、第1オブジェクトの影が落ちる第2オブジェクトの影領域の最大起伏を算出する。部分シャドウボリューム生成手段は、最大起伏算出手段によって算出された最大起伏に相当する厚みを有する部分シャドウボリュームを生成して部分シャドウボリューム記憶手段に記憶させる。
【0025】
上記第8の発明によれば、影領域の最大起伏に基づいて必要最小限の厚みを有する部分シャドウボリュームを適宜生成することができる。
【0026】
また、請求項9に係る発明によれば、最大起伏算出手段は、影領域においてシャドウボリューム配置座標を基準として光源の方向へ最も離れた最大座標(Pmax)と、影領域においてシャドウボリューム配置座標を基準として光源とは逆の方向へ最も離れた最小座標(Pmin)とを検出し、これら検出結果に基づいて部分シャドウボリュームの厚みを決定することを特徴とする。
【0027】
また、請求項10に係る発明によれば、ゲーム装置は輪郭ポリゴン記憶手段(DVD−ROM300又は本体RAM)をさらに備える。輪郭ポリゴン記憶手段は、光線方向に投影される第1オブジェクトの輪郭に相当する輪郭ポリゴンを記憶する。最大起伏算出手段は、輪郭ポリゴンをシャドウボリューム配置座標に配置した後、この輪郭ポリゴンを光線方向および光線方向とは逆の方向にずらすことにより最大座標および最小座標とを検出し、これら検出結果に基づいて部分シャドウボリュームの厚みを決定することを特徴とする。
【0028】
上記第10の発明によれば、第2オブジェクトにおける第1オブジェクトの輪郭領域(影領域)を算出することなく影領域の最大起伏を算出することができるので、部分シャドウボリュームの生成処理にかかる処理負担が低減される。
【0029】
また、請求項11に係る発明によれば、ゲーム装置は、輪郭ポリゴン生成手段をさらに備える。輪郭ポリゴン生成手段は、第1オブジェクトの輪郭および光源からの光線に基づいて輪郭ポリゴンを生成して輪郭ポリゴン記憶手段に記憶させる。
【0030】
上記第11の発明によれば、状況に応じて適宜に輪郭ポリゴンを生成して利用することができる。
【0031】
また、請求項12に係る発明によれば、ゲームプログラムは、ゲーム処理において仮想三次元のゲーム空間における第1オブジェクトおよび第2オブジェクトを表示するときに、光源からの光に基づいて第2オブジェクト上に落ちる第1オブジェクトの影を表示するためにゲーム装置のコンピュータにより実行されるものであって、このコンピュータに、部分シャドウボリューム読み出しステップ(S1206)と、部分シャドウボリューム配置ステップと、影描画ステップとを実行させる。部分シャドウボリューム読み出しステップは、第1オブジェクトの輪郭および光源からの光線方向に基づくと部分シャドウボリュームを読み出す。この部分シャドウボリュームの光線方向の厚みは第2オブジェクトの起伏に基づく。部分シャドウボリューム配置ステップは、部分シャドウボリュームを第2オブジェクト上のシャドウボリューム配置座標に配置する。影描画ステップは、部分シャドウボリューム配置ステップによって配置された部分シャドウボリュームに基づいて、第2オブジェクト上に落ちる第1オブジェクトの影を描画する。
【0032】
上記第12の発明によれば、所定の厚みを有する部分シャドウボリュームを用いて影描画処理を行うので、影描画処理に係る処理負担を低減しつつリアルな影を描画することができる。
【0033】
また、請求項13に係る発明によれば、部分シャドウボリューム配置ステップは、シャドウボリューム配置座標算出ステップを含む。シャドウボリューム配置座標算出ステップは、第1オブジェクト上の所定座標から光線方向に延びる直線と第2オブジェクトとの交点をシャドウボリューム配置座標として算出する。
【0034】
また、請求項14に係る発明によれば、第1オブジェクトの影が落ちる第2オブジェクトの影領域がゲームの進行に応じて任意に変化する場合にも影領域全体が常に部分シャドウボリュームの内部に含まれるように、部分シャドウボリュームの厚みが決定されることを特徴とする。
【0035】
また、請求項15に係る発明によれば、部分シャドウボリュームの厚みは、シャドウボリューム配置座標を基準として光源の方向への厚みである光源方向厚みと、シャドウボリューム配置座標を基準として光源とは逆の方向への厚みである光源逆方向厚みとにより規定され、第1オブジェクトの影が落ちる第2オブジェクトの影領域がゲームの進行に応じて任意に変化する場合にも影領域全体が常に部分シャドウボリュームの内部に含まれるような大きさであってかつ最小限の大きさとなるように、光源方向厚みおよび光源逆方向厚みがそれぞれ決定されることを特徴とする。
【0036】
また、請求項16に係る発明によれば、光源方向厚みは、影領域がゲームの進行に応じて任意に変化するときにとりうる、シャドウボリューム配置座標を基準として光源の方向への影領域の最大起伏に基づいて決定され、光源逆方向厚みは、影領域がゲームの進行に応じて任意に変化するときにとりうる、シャドウボリューム配置座標を基準として光源とは逆の方向への影領域の最大起伏に基づいて決定されることを特徴とする。
【0037】
また、請求項17に係る発明によれば、光源方向厚みおよび光源逆方向厚みは、影領域がゲームの進行に応じて任意に変化するときにとりうる影領域の最大起伏に基づいて共通に決定されることを特徴とする。
【0038】
また、請求項18に係る発明によれば、部分シャドウボリューム読み出しステップは、第2オブジェクトの起伏に基づいてゲーム処理以前に予め形成された部分シャドウボリュームを読み出すことを特徴とする。
【0039】
また、請求項19に係る発明によれば、ゲームプログラムは、最大起伏算出ステップと、部分シャドウボリューム生成ステップとをコンピュータにさらに実行させる。最大起伏算出ステップは、第1オブジェクトの影が落ちる第2オブジェクトの影領域の最大起伏を算出する。部分シャドウボリューム生成ステップは、最大起伏算出ステップで算出された最大起伏に相当する厚みを有する部分シャドウボリュームを生成して一時的に記憶し、この部分シャドウボリュームを部分シャドウボリューム読み出しステップで読み出させる。
【0040】
また、請求項20に係る発明によれば、最大起伏算出ステップは、影領域においてシャドウボリューム配置座標を基準として光源の方向へ最も離れた最大座標と、影領域においてシャドウボリューム配置座標を基準として光源とは逆の方向へ最も離れた最小座標とを検出し、これら検出結果に基づいて部分シャドウボリュームの厚みを決定することを特徴とする。
【0041】
また、請求項21に係る発明によれば、ゲームプログラムは、輪郭ポリゴン読み出しステップ(S2001)をコンピュータにさらに実行させる。輪郭ポリゴン読み出しステップは、光線方向に投影される第1オブジェクトの輪郭に相当する輪郭ポリゴンを読み出す。そして最大起伏算出ステップは、輪郭ポリゴンをシャドウボリューム配置座標に配置した後、この輪郭ポリゴンを光線方向および光線方向とは逆の方向にずらすことにより最大座標および最小座標とを検出し、これら検出結果に基づいて部分シャドウボリュームの厚みを決定することを特徴とする。
【0042】
また、請求項22に係る発明によれば、ゲームプログラムは、輪郭ポリゴン生成ステップをコンピュータにさらに実行させる。輪郭ポリゴン生成ステップは、第1オブジェクトの輪郭および光源からの光線に基づいて輪郭ポリゴンを生成して一時的に記憶し、この輪郭ポリゴンを輪郭ポリゴン読み出しステップで読み出させる。
【0043】
【発明の実施の形態】
図1は、本発明の一実施形態に係るゲームシステムの構成を示す外観図であり、図2はそのブロック図である。図1、図2に示すように、ゲームシステムは、ゲーム機本体100、DVD−ROM300、外部メモリカード400、コントローラ200、スピーカ600およびTVモニタ500を備える。DVD−ROM300および外部メモリカード400は、ゲーム機本体100に着脱自在に装着される。コントローラ200は、通信ケーブルを介して、ゲーム機本体100に設けられた複数(図1では4つ)のコントローラポート用コネクタのいずれかに接続される。TVモニタ500およびスピーカ600は、AVケーブル等によって接続される。なお、ゲーム機本体100とコントローラ200との通信は無線通信であってもよい。以下、図2を参照しながら、ゲームシステムの各部についてより詳細に説明する。
【0044】
DVD−ROM300は、ゲームプログラムやキャラクタデータ等のゲームに関するデータを固定的に記憶している。プレイヤがゲームを行う場合、DVD−ROM300はゲーム機本体100に装着される。なお、ゲームプログラム等を記憶する手段として、DVD−ROM300の代わりに例えばCD−ROM、MO、メモリカード、ROMカートリッジ等の外部記憶媒体を用いてもよい。
【0045】
外部メモリカード400は、例えばフラッシュメモリ等の書き換え可能な記憶媒体によって構成され、例えばゲームにおけるセーブデータ等のデータを記録する。
【0046】
ゲーム機本体100は、DVD−ROM300に記録されているゲームプログラムを読み出し、ゲーム処理を行う。
【0047】
コントローラ200は、プレイヤがゲーム操作に関する入力を行うための入力装置であり、複数の操作スイッチを有する。コントローラ200は、プレイヤによる操作スイッチの押圧等に応じて操作データをゲーム機本体100に出力する。
【0048】
TVモニタ500は、ゲーム機本体100から出力された画像データを画面に表示する。なお、スピーカ600は、典型的にはTVモニタ500に内蔵されており、ゲーム機本体100から出力されたゲーム中の音声を出力する。
【0049】
次に、ゲーム機本体100の構成について説明する。図2において、ゲーム機本体100には、CPU10およびそれに接続されるメモリコントローラ20が設けられる。さらにゲーム機本体100において、メモリコントローラ20は、グラフィックスプロセッシングユニット(GPU)11と、メインメモリ17と、DSP18と、各種インターフェース(I/F)21〜24,26とに接続される。メモリコントローラ20は、これら各構成要素間のデータ転送を制御する。
【0050】
ゲーム開始の際、まず、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が所定の処理を行う際に用いられる。
【0051】
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)を使うようにしてもよい。
【0052】
図3に、DVD−ROM300のメモリマップを示す。DVD−ROM300には、ゲームプログラムや、オブジェクトデータや、テクスチャデータや、ボリュームデータなどが格納されている。ここでは一例としてゲームプログラムがカートゲーム用のプログラムである場合について説明する。オブジェクトデータには、コースオブジェクトやキャラクタオブジェクトやカートオブジェクトなどのデータが含まれる。テクスチャデータには、コーステクスチャやキャラクタテクスチャやカートテクスチャなどのデータが含まれる。ボリュームデータには、カートシャドウボリュームのデータが含まれる。カートシャドウボリュームの詳細については後述する。
【0053】
以下、本実施形態の動作について具体的に説明する。
ゲーム機本体100のCPU10は、DVD−ROM300に格納されたカートゲーム用のプログラムに基づいてゲーム処理を実行する。このカートゲームでは、仮想三次元のゲーム空間に設置されたコース上を複数のキャラクタがカートに乗って走行する。ゲーム空間には地面・建物等の地形オブジェクトと、プレイヤキャラクタ・敵キャラクタ等のキャラクタオブジェクトが配置され、キャラクタオブジェクトの位置はゲームの進行に応じて適宜変更される。
【0054】
図4に、地形オブジェクトおよびキャラクタオブジェクトが配置された仮想三次元のゲーム空間を示す。ゲーム空間における各オブジェクトの位置はワールド座標系で表される。このゲーム空間をTVモニタ500に表示するために、ゲーム空間において視点(例えばプレイヤキャラクタをその背後から捉えるような視点)が設定される。ワールド座標系で表された各オブジェクトの座標は、この視点を中心とした座標(カメラ座標系)に変換され、その後、各オブジェクトは二次元の投影平面座標系に投影される。この投影平面座標系に投影された各オブジェクトにはテクスチャに基づいて色情報が与えられる。このとき、後述する影描画処理によってコース上に落ちるカートの影も描画される。こうして生成されたゲーム画像が例えば1/60秒毎に生成され、TVモニタ500に表示される。
【0055】
図5に、TVモニタ500に表示されるゲーム画像の一例を示す。コース上には各カートの影が表示される。以下、この影描画処理について説明する。
【0056】
本実施形態では、カートに対して予めシャドウボリュームが用意されている(図3に示すカートシャドウボリューム)。シャドウボリュームとは、あるオブジェクトが影を落とす空間、言い換えると、あるオブジェクトによって光源からの光が遮られるような空間を規定するものである。このシャドウボリュームを用いることにより、複雑な地形に落ちる影を正確に表示することができる。本来、シャドウボリュームは、影を落とすオブジェクト(ここではカート)の各頂点を光線方向に延ばすことによって得られる半無限の空間となる。しかしながら本実施形態では、光線方向に地形の起伏に基づいた所定の厚み(この厚みの決定方法については後述する。)を有するようなシャドウボリュームを用いる。以下、このシャドウボリュームを用いた影描画処理について図面を参照して簡単に説明する。
【0057】
図6に示すように、地形オブジェクトにおいて、影を落とすオブジェクトのシャドウボリュームと交わる領域が影ができる領域(以下、影領域と称す)となる。なお図6では天空光の場合を示しているが、点光源の場合も同様である。影領域は、ステンシルバッファを用いることにより簡単に判定することができる。ステンシルバッファを用いて影領域を判定する一般的な手法としては、図7に示すように、まず(a)シャドウボリュームの表面をステンシルバッファに描画(ステンシルバッファをインクリメント)し、それから(b)シャドウボリュームの裏面をステンシルバッファに描画(ステンシルバッファをデクリメント)する。その結果、ステンシルバッファの値は、影領域の部分は“1”になり、それ以外の部分は“0”となる。しかしながらこの一般的な手法では、シャドウボリュームの内部に視点が設定されたときに影領域の部分がインクリメントされず、その結果、影領域を正確に判定できないという問題があった。そこで本実施形態では、図7に示すように、まず(c)シャドウボリュームの裏面であってかつ他のオブジェクトに隠れている部分をステンシルバッファに描画(ステンシルバッファをインクリメント)し、それから(d)シャドウボリュームの表面であってかつ他のオブジェクトに隠れている部分をステンシルバッファに描画(ステンシルバッファをデクリメント)する。これにより、シャドウボリュームの内部に視点が設定されたときにも影領域を正確に判定することができる。
【0058】
次に、予め用意しておくシャドウボリュームの厚みについて説明する。本実施形態では、予め所定の厚さ(好ましくは必要最小限の厚さ)のシャドウボリュームを用意しておき、これを地形オブジェクト上に配置することを特徴としている。本実施形態では、図8に示すように、影を落とすオブジェクト(ここではカート)の配置座標を光線方向に下ろしていき、影が落ちるオブジェクト(ここでは地形オブジェクト)と交差した点にシャドウボリュームを配置する。この点をシャドウボリューム配置座標と称す。図9にシャドウボリュームの上面および側面を示す。シャドウボリュームの厚みはシャドウボリューム配置座標を基準に規定され、具体的には図9に示すように、シャドウボリューム配置座標から光源方向への厚みである光源方向厚みhaと、シャドウボリューム配置座標から光源とは逆の方向への厚みである光源逆方向厚みhbとにより規定される。以下、この光源方向厚みhaおよび光源逆方向厚みhbの決定方法について図10を参照して説明する。ただし、図10では便宜上、シャドウボリュームおよび地形オブジェクトを二次元で図示している。
【0059】
まず、シャドウボリューム配置座標がP1のときに最小限必要となるシャドウボリュームの光源方向への厚みおよび光源とは逆の方向への厚みをそれぞれ求める。求めた結果をそれぞれha1、hb1とする。次に、シャドウボリュームの配置座標がP2のときに最小限必要となるシャドウボリュームの光源方向への厚みおよび光源とは逆の方向への厚みをそれぞれ求める。求めた結果をそれぞれha2、hb2とする。以下同様に、シャドウボリューム配置座標を順次変更し、その都度、最小限必要となるシャドウボリュームの光源方向の厚みおよび光源とは逆の方向への厚みをそれぞれ求める。このような調査を、地形オブジェクト上の、シャドウボリューム配置座標として設定され得る全ての点(ここでは仮にN箇所とする)において行う。なお例えばコースの両側が高い崖となっていてカートがコース外に出る可能性がないような場合には、コース外の点についてはこのような調査を行なわない。このような調査の結果、光源方向への厚みについてN個の値(ha1,ha2,ha3,・・・,haN)が得られ、光源とは逆の方向への厚みについてN個の値(hb1,hb2,hb3,・・・,hbN)が得られる。そして光源方向への厚みおよび光源とは逆の方向への厚みのそれぞれについて、得られたN個の値の中から最大値を選出する。こうして選出されたそれぞれの最大値が、予め用意しておくべきシャドウボリュームの光源方向厚みhaおよび光源逆方向厚みhbの値となる。なお、上記の決定方法は一例にすぎず、結果的に同じ値が得られるならば他の方法を用いて光源方向厚みhaおよび光源逆方向厚みhbを決定してもよい。
【0060】
なお、光源方向厚みhaおよび光源逆方向厚みhbを決定するためのより簡略な方法として、シャドウボリューム配置座標P1〜PNのそれぞれにおいて最小限必要となるシャドウボリュームの厚みH1〜HNを求め(ここでH1=ha1+hb1,H2=ha2+hb2,H3=ha3+hb3,・・・,HN=haN+hbN)、それらN個の値(H1〜HN)の最大値を、光源方向厚みhaおよび光源逆方向厚みhbの両方に共通に用いてもよい。この方法によれば、各シャドウボリューム配置座標P1〜PNについて、光源方向への厚みおよび光源とは逆方向への厚みを求める必要はなく、カートの影が落ちる領域における最大起伏(光線方向について)を算出するだけでよいため、シャドウボリュームの厚みをより簡単に決定することができる。ただしこの場合、シャドウボリュームの厚みとして必ずしも必要最小限の厚みが設定されるとは限らない。例えば光源が点光源である場合や、シャドウボリューム配置座標として設定され得る領域のすぐ外側に大きな起伏がある場合といった特殊な状況において、必要最小限の厚みよりも大きな厚みが設定される可能性がある。
【0061】
次に、本実施形態におけるCPU10またはGPU11の動作について、図11〜図16のフローチャートを参照して説明する。
【0062】
ゲーム処理が開始すると、CPU10は、地面(コースを含む)や建物等を形成するための地形オブジェクトをワールド座標系の初期座標に配置する(ステップS1101)。続いてプレイヤキャラクタや敵キャラクタを含むキャラクタオブジェクトおよび仮想カメラをワールド座標系の初期座標に配置する(ステップS1102)。なお図3ではキャラクタオブジェクトとカートオブジェクトとを別々に記載したが、ここでは両者を区別することなく単にキャラクタオブジェクトと称する。続いてCPU10は、コントローラ200からの入力があったかどうかを判断し(ステップS1103)、入力があった場合には、その内容に応じてプレイヤキャラクタ(プレイヤキャラクタが乗車しているカートを含む)および仮想カメラの位置座標を更新し(ステップS1104)、ステップS1104に進む。一方、ステップS1103においてコントローラ200からの入力がなかった場合にはそのままステップS1104に進む。ステップS1104で、CPU1105は、ワールド座標系における敵キャラクタの位置座標を更新する。こうして各キャラクタおよび仮想カメラの位置座標の更新が完了すると、シャドウボリューム処理が開始され(ステップS1106)、ワールド座標系の所定の位置座標にシャドウボリュームが配置される。このシャドウボリューム処理の詳細については後述する。
【0063】
ワールド座標系におけるシャドウボリュームの配置が完了すると、GPU11は、キャラクタオブジェクト、地形オブジェクトおよびシャドウボリュームの位置座標をワールド座標系から仮想カメラの位置を基準とするカメラ座標系に変換し(ステップS1107)、さらにカメラ座標系から二次元の投影平面座標系に変換する(ステップS1108)。このとき、クリッピング処理やテクスチャの指定処理もあわせて行われる。
【0064】
位置座標の変換が完了すると、ゲーム画像生成処理が開始され(ステップS1109)、TVモニタ500に表示すべきゲーム画像が生成される。このゲーム画像生成処理の詳細については後述する。ステップS1109で生成されたゲーム画像はTVモニタ500に表示される(ステップS1110)。その後、CPU10は、ゲームが終了したかどうかを判断し(ステップS1111)、ゲームが続行する場合にはステップS1103に戻り、ゲームが終了した場合にはゲーム処理を終了する。
【0065】
次に、図12を参照して、図11に示すステップS1106のシャドウボリューム処理の詳細について説明する。
シャドウボリューム処理が開始すると、CPU10は、ワールド座標系における影を落とすオブジェクト(キャラクタオブジェクト等)の配置座標を取得する(ステップS1201)。そして、ステップS1201で取得したキャラクタオブジェクト等の配置座標を、シャドウボリューム配置座標を求めるための調査座標にセットする(ステップS1202)。そして、調査座標を光線方向にシフトするように更新し(ステップS1203)、調査座標の更新の結果、調査座標が影の落ちるオブジェクト(地形オブジェクト)に含まれたかどうかを判断する(ステップS1204)。調査座標が地形オブジェクトに含まれていない場合にはステップS1203に戻り、さらに調査座標を光線方向にシフトさせ、調査座標が地形オブジェクトに含まれるまでステップS1203およびステップS1204を繰り返す。
【0066】
ステップS1204で調査座標が地形オブジェクトに含まれたと判断すると、CPU10は、現在の調査座標をシャドウボリューム配置座標として設定する(ステップS1205)。そして、予め用意された、影を落とすオブジェクトに対応するシャドウボリュームを、ステップS1205で設定したシャドウボリューム配置座標に配置する(ステップS1206)。こうしてシャドウボリューム処理は終了する。
【0067】
次に、図13を参照して、図11に示すステップS1109のゲーム画像生成処理の詳細について説明する。
ゲーム画像生成処理が開始すると、GPU11は、まず地形オブジェクトの描画処理を行う(ステップS1301)。この地形オブジェクトの描画処理の詳細については後述する。地形オブジェクトの描画が完了すると、地形オブジェクトに落ちる影を描画するための影描画処理を行う(ステップS1302)。この影描画処理の詳細については後述する。影の描画が完了すると、GPU11は、プレイヤキャラクタの描画処理を行い(ステップS1303)、続いて敵キャラクタやアイテム等の描画処理を行う(ステップS1304)。これらキャラクタ等の描画処理の詳細については後述する。こうしてゲーム画像生成処理は終了する。以下、ゲーム画像生成処理における各ステップの処理の詳細について説明する。
【0068】
まず、図14を参照して、図13に示すステップS1301の地形オブジェクトの描画処理の詳細について説明する。
地形オブジェクトの描画処理が開始すると、GPU11は、地面や建物などの地形オブジェクト等に対応するテクスチャの読み出しを行う(ステップS1401)。次に、投影平面座標系に投影された地形オブジェクトの書き込もうとしている部分に対応する各ピクセルのZバッファ15を参照し(ステップS1402)、その書き込もうとしている地形オブジェクトの部分の奥行き情報が、対応するZバッファ値よりも小さいかどうかを判断する(ステップS1403)。奥行き情報がZバッファ値よりも小さい場合は、そのピクセルのZバッファ値を更新し(ステップS1404)、カラーバッファ14のこのピクセルに該当する領域にテクスチャの色情報を書き込んで(ステップS1405)からステップS1406へ進む。一方、ステップS1403で。奥行き情報がZバッファ値よりも小さくない場合はそのままステップS1406へ進む。ステップS1406でGPU11は、地形の描画が終了したかどうか判断し、終了していなければステップS1402に戻り、終了していれば影描画処理に進む。
【0069】
図15を参照して、図13に示すステップS1302の影描画処理の詳細について説明する。
影描画処理が開始すると、GPU11は、まずステンシルバッファ(非表示バッファ)16をクリアする(ステップS1501)。そして、Zバッファ15を参照しながらシャドウボリュームの裏面であってかつ地形オブジェクトに隠れている部分をステンシルバッファ16に描画する(ステップS1502)。ただしここでは色情報は書き込まれず、ステンシルバッファ16の各ピクセルのカウント値がインクリメントされる。そしてシャドウボリュームの裏面処理が終了したかどうかを判断し(ステップS1503)、終了してればステップS1504に進み、終了していなければステップS1502に戻る。次にGPU11は、ステップS1504で、Zバッファ値を参照しながらシャドウボリュームの表面であってかつ地形オブジェクトに隠れている部分をステンシルバッファ16に描画する。ただしここでは色情報は書き込まれず、ステンシルバッファ16の各ピクセルのカウント値がデクリメントされる。そしてシャドウボリュームの表面処理が終了したかどうかを判断し(ステップS1505)、終了していればステップS1506に進み、終了していなければステップS1504に戻る。ステップS1506では全てのシャドウボリュームについてステンシルバッファ16への描画処理が終了したかどうかを判断し、終了していればステップS1507に進み、終了していなければステップS1502に戻る。次にGPU11は、ステンシルバッファ16の各ピクセルのカウント値を参照して、カラーバッファ14の各ピクセルの色情報(RGB)を更新する。例えばステンシルバッファ16のカウント値が1以上である部分(つまり影の部分)については色が暗くなるようにカラーバッファ14の色情報を変化させることにより影の描画を行う。そして影の描画が終了したかどうか判断し(ステップS1508)、終了していなければステップS1507に戻り、終了していればプレイヤキャラクタの描画処理に進む。
【0070】
図16を参照して、図13に示すステップS1303のプレイヤキャラクタの描画処理の詳細について説明する。
プレイヤキャラクタの描画処理が開始すると、GPU11は、プレイヤキャラクタに対応するテクスチャの読み出しを行う(ステップS1601)。次に、投影平面座標系に投影されたプレイヤキャラクタオブジェクトの書き込もうとしている部分に対応する各ピクセルのZバッファ15を参照し(ステップS1602)、その書き込もうとしているキャラクタオブジェクトの部分の奥行き情報が、対応するZバッファ値よりも小さいかどうかを判断する(ステップS1603)。奥行き情報がZバッファ値よりも小さい場合は、そのピクセルのZバッファ値を更新し(ステップS1604)、カラーバッファ14のこのピクセルに該当する領域にテクスチャの色情報を書き込んで(ステップS1605)からステップS1606へ進む。一方、ステップS1603で。奥行き情報がZバッファ値よりも小さくない場合はそのままステップS1606へ進む。ステップS1606でGPU11は、プレイヤキャラクタの描画が終了したかどうか判断し、終了していなければステップS1602に戻り、終了していれば敵キャラクタ等の描画処理に進む。
【0071】
図13に示すステップS1304の敵キャラクタ等の描画処理の詳細については、前述のプレイヤキャラクタの描画処理と基本的に同様であるので説明を省略する。
【0072】
以上のように本実施形態では、地形オブジェクトの起伏に応じた所定の厚さを有するシャドウボリュームを予め用意しておき、このシャドウボリュームに基づいて影描画処理を行う。よって、影領域の判定のためにステンシルバッファ16に描画すべきシャドウボリュームの大きさが従来よりも小さくなり、その結果、影描画処理(図15のステップS1502およびステップS1504)にかかる処理負担を低減することができる。したがってゲーム装置においてゲーム性を損ねることなくリアルな影を描画することが可能となる。
【0073】
なお本実施形態ではゲームプログラムはDVD−ROM300を介してゲーム機本体100に供給されるとしたが、これに限らず、DVD−ROM300以外の他のコンピュータ読み取り可能な記録媒体(例えばCD−ROM、MO、メモリカード、ROMカートリッジ等)に格納されてゲーム機本体100に供給されても構わないし、予めゲーム機本体100に組み込まれていても構わないし、通信回線を通じてゲーム機本体100に供給されても構わない。
【0074】
また本実施形態では描画処理等をGPU11が行うとしたが、CPU10が行ってもよい。
【0075】
また本実施形態では平行光によってできる影を描画する場合について説明したが、これに限らず、例えば点光源からの光によってできる影を描画する場合についても本発明を適用することができる。点光源の場合、光源と影を落とす物体(例えばカート)と影の落ちる物体(例えば地形オブジェクト)との位置関係によってシャドウボリュームの大きさを変える必要があるが、本実施形態と同様に予め所定の厚み(好ましくは必要最小限の厚み)を設定しておくことにより、従来に比べて影描画処理にかかる処理負担を低減することができる。
【0076】
なお本実施形態ではシャドウボリュームの厚みを予め決定しておくとしたが、変形例として、シャドウボリューム配置座標が決定してからシャドウボリュームの厚みを動的に決定することも考えられる。以下、図面を参照して2つの変形例について説明する。
【0077】
まず図17および図18を参照して第1の変形例について説明する。ただし、シャドウボリュームの配置に係る処理以外は前述の実施形態と同一であるため説明を省略する。本変形例では図18に示すように、図12のステップS1205においてシャドウボリューム配置座標が決定された後、CPU10は、影を落とすオブジェクトと光線方向とに基づいて、オブジェクトの輪郭に対応する地形オブジェクト上の輪郭領域を算出する(ステップS1801)。そして、輪郭領域内の座標をスキャンして、輪郭領域内の最大座標Pmaxおよび最小座標Pminを検出する(ステップS1802)。次に、輪郭領域を最大起伏の幅(最大座標Pmaxから最小座標Pminの幅)に引き延ばしたシャドウボリュームを生成する(ステップS1803)。そしてこのシャドウボリュームをシャドウボリューム配置座標に配置する(ステップS1804)。
【0078】
次に図19および図20を参照して第2の変形例について説明する。ただし、シャドウボリュームの配置に係る処理以外は前述の実施形態と同一であるため説明を省略する。本変形例では図20に示すように、図12のステップS1205においてシャドウボリューム配置座標が決定された後、CPU10は、影を落とすオブジェクトに対応して予め用意されている輪郭ポリゴンをシャドウボリューム配置座標に配置する(ステップS2001)。なお輪郭ポリゴンは、DVD−ROM300や本体RAM等に予め用意されていても構わないし、適宜作成されてDVD−ROM300や本体RAM等に記憶されても構わない。この輪郭ポリゴンを、地形オブジェクトが含まれる限界点まで(つまり輪郭ポリゴンに前述の最大座標Pmaxが含まれるまで)光源方向に移動させる(ステップS2002)。また、この輪郭ポリゴンを、地形オブジェクトが含まれる限界点まで(つまり輪郭ポリゴンに前述の最小座標Pminが含まれるまで)光源逆方向に移動させる(ステップS2003)。その後、輪郭ポリゴンを最大起伏の幅(最大座標Pmaxから最小座標Pminの幅)に引き延ばしたシャドウボリュームを生成する(ステップS2004)。そしてこのシャドウボリュームをシャドウボリューム配置座標に配置する(ステップS2005)。
【0079】
以上のように、第1および第2の変形例ではシャドウボリュームを動的に生成して配置するため、その場その場で必要最小限の厚みを有するシャドウボリュームを適宜生成することができる。よって、影描画処理(図15のステップS1502およびステップS1504)にかかる処理負担をより低減することができる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係るゲームシステムの外観を示す図である。
【図2】ゲームシステムの構成を示すブロック図である。
【図3】DVD−ROM300のメモリマップを示す図である。
【図4】地形オブジェクトおよびキャラクタオブジェクトが配置された仮想三次元のゲーム空間を示す図である。
【図5】TVモニタ500に表示されるゲーム画像の一例を示す図である。
【図6】シャドウボリュームと影の関係を説明するための図である。
【図7】ステンシルバッファを用いた影描画処理について説明するための図である。
【図8】シャドウボリューム配置座標の決定方法を説明するための図である。
【図9】シャドウボリュームの厚みの規定方法を説明するための図である。
【図10】シャドウボリュームの厚みの決定方法を説明するための図である。
【図11】ゲーム処理全体の流れを示すフローチャートである。
【図12】シャドウボリューム処理の流れを示すフローチャートである。
【図13】ゲーム画像生成処理の流れを示すフローチャートである。
【図14】地形オブジェクトの描画処理の流れを示すフローチャートである。
【図15】影描画処理の流れを示すフローチャートである。
【図16】プレイヤキャラクタの描画処理の流れを示すフローチャートである。
【図17】第1の変形例のシャドウボリューム生成方法を説明するための図である。
【図18】第1の変形例のシャドウボリューム処理の流れを示すフローチャートである。
【図19】第2の変形例のシャドウボリューム生成方法を説明するための図である。
【図20】第2の変形例のシャドウボリューム処理の流れを示すフローチャートである。
【符号の説明】
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 (22)
- ゲーム処理において仮想三次元のゲーム空間における第1オブジェクトおよび第2オブジェクトを表示するときに、光源からの光に基づいて前記第2オブジェクト上に落ちる前記第1オブジェクトの影を表示するゲーム装置であって、
前記第1オブジェクトの輪郭および前記光源からの光線方向に基づき、かつ光線方向に前記第2オブジェクトの起伏に基づく所定の厚みを有する部分シャドウボリュームを記憶する部分シャドウボリューム記憶手段と、
前記部分シャドウボリュームをシャドウボリューム配置座標に配置する部分シャドウボリューム配置手段と、
前記部分シャドウボリューム配置手段によって配置された部分シャドウボリュームに基づいて、前記第2オブジェクト上に落ちる前記第1オブジェクトの影を描画する影描画手段とを備えるゲーム装置。 - 前記部分シャドウボリューム配置手段は、前記第1オブジェクト上の所定座標から光線方向に延びる直線と前記第2オブジェクトとの交点を前記シャドウボリューム配置座標として算出するシャドウボリューム配置座標算出手段を含む、請求項1記載のゲーム装置。
- 前記第1オブジェクトの影が落ちる前記第2オブジェクトの影領域がゲームの進行に応じて任意に変化する場合にも当該影領域全体が常に前記部分シャドウボリュームの内部に含まれるように、前記部分シャドウボリュームの厚みが決定されることを特徴とする、請求項1記載のゲーム装置。
- 前記部分シャドウボリュームの厚みは、前記シャドウボリューム配置座標を基準として光源の方向への厚みである光源方向厚みと、前記シャドウボリューム配置座標を基準として光源とは逆の方向への厚みである光源逆方向厚みとにより規定され、
前記第1オブジェクトの影が落ちる前記第2オブジェクトの影領域がゲームの進行に応じて任意に変化する場合にも当該影領域全体が常に前記部分シャドウボリュームの内部に含まれるような大きさであってかつ最小限の大きさとなるように、前記光源方向厚みおよび前記光源逆方向厚みがそれぞれ決定されることを特徴とする、請求項1記載のゲーム装置。 - 前記光源方向厚みは、前記影領域がゲームの進行に応じて任意に変化するときにとりうる、前記シャドウボリューム配置座標を基準として光源の方向への当該影領域の最大起伏に基づいて決定され、
前記光源逆方向厚みは、前記影領域がゲームの進行に応じて任意に変化するときにとりうる、前記シャドウボリューム配置座標を基準として光源とは逆の方向への当該影領域の最大起伏に基づいて決定されることを特徴とする、請求項4記載のゲーム装置。 - 前記光源方向厚みおよび前記光源逆方向厚みは、前記影領域がゲームの進行に応じて任意に変化するときにとりうる前記影領域の最大起伏に基づいて共通に決定されることを特徴とする、請求項4記載のゲーム装置。
- 前記部分シャドウボリューム記憶手段は、前記第2オブジェクトの起伏に基づいて前記ゲーム処理以前に予め形成された部分シャドウボリュームを記憶することを特徴とする、請求項1記載のゲーム装置。
- 前記第1オブジェクトの影が落ちる前記第2オブジェクトの影領域の最大起伏を算出する最大起伏算出手段と、
前記最大起伏算出手段によって算出された前記最大起伏に相当する厚みを有する部分シャドウボリュームを生成して前記部分シャドウボリューム記憶手段に記憶させる部分シャドウボリューム生成手段とをさらに備える、請求項1記載のゲーム装置。 - 前記最大起伏算出手段は、前記影領域において前記シャドウボリューム配置座標を基準として光源の方向へ最も離れた最大座標と、前記影領域において前記シャドウボリューム配置座標を基準として光源とは逆の方向へ最も離れた最小座標とを検出し、当該検出結果に基づいて前記部分シャドウボリュームの厚みを決定することを特徴とする、請求項8記載のゲーム装置。
- 前記光線方向に投影される前記第1オブジェクトの輪郭に相当する輪郭ポリゴンを記憶する輪郭ポリゴン記憶手段をさらに備え、
前記最大起伏算出手段は、前記輪郭ポリゴンを前記シャドウボリューム配置座標に配置した後、当該輪郭ポリゴンを光線方向および光線方向とは逆の方向にずらすことにより前記最大座標および前記最小座標とを検出し、当該検出結果に基づいて前記部分シャドウボリュームの厚みを決定することを特徴とする、請求項9記載のゲーム装置。 - 前記第1オブジェクトの輪郭および前記光源からの光線に基づいて前記輪郭ポリゴンを生成して前記輪郭ポリゴン記憶手段に記憶させる輪郭ポリゴン生成手段をさらに備える、請求項10記載のゲーム装置。
- ゲーム処理において仮想三次元のゲーム空間における第1オブジェクトおよび第2オブジェクトを表示するときに、光源からの光に基づいて前記第2オブジェクト上に落ちる前記第1オブジェクトの影を表示するためにゲーム装置のコンピュータにより実行されるゲームプログラムであって、当該コンピュータに、
前記第1オブジェクトの輪郭および前記光源からの光線方向に基づき、かつ光線方向に前記第2オブジェクトの起伏に基づく所定の厚みを有する部分シャドウボリュームを読み出す部分シャドウボリューム読み出しステップと、
読み出した部分シャドウボリュームをシャドウボリューム配置座標に配置する部分シャドウボリューム配置ステップと、
前記部分シャドウボリューム配置ステップによって配置された部分シャドウボリュームに基づいて、前記第2オブジェクト上に落ちる前記第1オブジェクトの影を描画する影描画ステップとを実行させるゲームプログラム。 - 前記部分シャドウボリューム配置ステップは、前記第1オブジェクト上の所定座標から光線方向に延びる直線と前記第2オブジェクトとの交点を前記シャドウボリューム配置座標として算出するシャドウボリューム配置座標算出ステップを含む、請求項12記載のゲームプログラム。
- 前記第1オブジェクトの影が落ちる前記第2オブジェクトの影領域がゲームの進行に応じて任意に変化する場合にも当該影領域全体が常に前記部分シャドウボリュームの内部に含まれるように、前記部分シャドウボリュームの厚みが決定されることを特徴とする、請求項12記載のゲームプログラム。
- 前記部分シャドウボリュームの厚みは、前記シャドウボリューム配置座標を基準として光源の方向への厚みである光源方向厚みと、前記シャドウボリューム配置座標を基準として光源とは逆の方向への厚みである光源逆方向厚みとにより規定され、
前記第1オブジェクトの影が落ちる前記第2オブジェクトの影領域がゲームの進行に応じて任意に変化する場合にも当該影領域全体が常に前記部分シャドウボリュームの内部に含まれるような大きさであってかつ最小限の大きさとなるように、前記光源方向厚みおよび前記光源逆方向厚みがそれぞれ決定されることを特徴とする、請求項12記載のゲームプログラム。 - 前記光源方向厚みは、前記影領域がゲームの進行に応じて任意に変化するときにとりうる、前記シャドウボリューム配置座標を基準として光源の方向への当該影領域の最大起伏に基づいて決定され、
前記光源逆方向厚みは、前記影領域がゲームの進行に応じて任意に変化するときにとりうる、前記シャドウボリューム配置座標を基準として光源とは逆の方向への当該影領域の最大起伏に基づいて決定されることを特徴とする、請求項15記載のゲームプログラム。 - 前記光源方向厚みおよび前記光源逆方向厚みは、前記影領域がゲームの進行に応じて任意に変化するときにとりうる前記影領域の最大起伏に基づいて共通に決定されることを特徴とする、請求項15記載のゲームプログラム。
- 前記部分シャドウボリューム読み出しステップは、前記第2オブジェクトの起伏に基づいて前記ゲーム処理以前に予め形成された部分シャドウボリュームを読み出すことを特徴とする、請求項12記載のゲームプログラム。
- 前記第1オブジェクトの影が落ちる前記第2オブジェクトの影領域の最大起伏を算出する最大起伏算出ステップと、
前記最大起伏算出ステップで算出された前記最大起伏に相当する厚みを有する部分シャドウボリュームを生成して一時的に記憶し、当該部分シャドウボリュームを前記部分シャドウボリューム読み出しステップで読み出させる部分シャドウボリューム生成ステップとを前記コンピュータにさらに実行させる、請求項12記載のゲームプログラム。 - 前記最大起伏算出ステップは、前記影領域において前記シャドウボリューム配置座標を基準として光源の方向へ最も離れた最大座標と、前記影領域において前記シャドウボリューム配置座標を基準として光源とは逆の方向へ最も離れた最小座標とを検出し、当該検出結果に基づいて前記部分シャドウボリュームの厚みを決定することを特徴とする、請求項19記載のゲームプログラム。
- 前記光線方向に投影される前記第1オブジェクトの輪郭に相当する輪郭ポリゴンを読み出す輪郭ポリゴン読み出しステップを前記コンピュータにさらに実行させ、
前記最大起伏算出ステップは、前記輪郭ポリゴンを前記シャドウボリューム配置座標に配置した後、当該輪郭ポリゴンを光線方向および光線方向とは逆の方向にずらすことにより前記最大座標および前記最小座標とを検出し、当該検出結果に基づいて前記部分シャドウボリュームの厚みを決定することを特徴とする、請求項20記載のゲームプログラム。 - 前記第1オブジェクトの輪郭および前記光源からの光線に基づいて前記輪郭ポリゴンを生成して一時的に記憶し、当該輪郭ポリゴンを前記輪郭ポリゴン読み出しステップで読み出させる輪郭ポリゴン生成ステップを前記コンピュータにさらに実行させる、請求項21記載のゲームプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002141635A JP4001227B2 (ja) | 2002-05-16 | 2002-05-16 | ゲーム装置及びゲームプログラム |
US10/288,303 US7104891B2 (en) | 2002-05-16 | 2002-11-06 | 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 |
EP03002682A EP1386646A3 (en) | 2002-05-16 | 2003-02-12 | Game machine and game program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002141635A JP4001227B2 (ja) | 2002-05-16 | 2002-05-16 | ゲーム装置及びゲームプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003331314A JP2003331314A (ja) | 2003-11-21 |
JP4001227B2 true JP4001227B2 (ja) | 2007-10-31 |
Family
ID=29416984
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002141635A Expired - Fee Related JP4001227B2 (ja) | 2002-05-16 | 2002-05-16 | ゲーム装置及びゲームプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US7104891B2 (ja) |
EP (1) | EP1386646A3 (ja) |
JP (1) | JP4001227B2 (ja) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4082937B2 (ja) * | 2002-06-07 | 2008-04-30 | 任天堂株式会社 | ゲームシステム及びゲームプログラム |
US7030878B2 (en) * | 2004-03-19 | 2006-04-18 | Via Technologies, Inc. | Method and apparatus for generating a shadow effect using shadow volumes |
US7277098B2 (en) * | 2004-08-23 | 2007-10-02 | Via Technologies, Inc. | Apparatus and method of an improved stencil shadow volume operation |
JP2006280731A (ja) * | 2005-04-01 | 2006-10-19 | Aruze Corp | ゲームプログラム、ゲーム装置及び記録媒体 |
JP4833674B2 (ja) * | 2006-01-26 | 2011-12-07 | 株式会社コナミデジタルエンタテインメント | ゲーム装置、ゲーム装置の制御方法及びプログラム |
US7612786B2 (en) * | 2006-02-10 | 2009-11-03 | Microsoft Corporation | Variable orientation input mode |
US8930834B2 (en) * | 2006-03-20 | 2015-01-06 | Microsoft Corporation | Variable orientation user interface |
US8139059B2 (en) * | 2006-03-31 | 2012-03-20 | Microsoft Corporation | Object illumination in a virtual environment |
US20070284429A1 (en) * | 2006-06-13 | 2007-12-13 | Microsoft Corporation | Computer component recognition and setup |
US7552402B2 (en) * | 2006-06-22 | 2009-06-23 | Microsoft Corporation | Interface orientation using shadows |
US8001613B2 (en) * | 2006-06-23 | 2011-08-16 | Microsoft Corporation | Security using physical objects |
US20080040692A1 (en) * | 2006-06-29 | 2008-02-14 | Microsoft Corporation | Gesture input |
WO2008087700A1 (ja) | 2007-01-15 | 2008-07-24 | Fujitsu Microelectronics Limited | グラフィックスシステム及びその描画方法 |
JP4941934B2 (ja) * | 2007-06-08 | 2012-05-30 | サミー株式会社 | 画像生成装置および画像生成プログラム |
US7884823B2 (en) * | 2007-06-12 | 2011-02-08 | Microsoft Corporation | Three dimensional rendering of display information using viewer eye coordinates |
JP4612031B2 (ja) * | 2007-09-28 | 2011-01-12 | 株式会社コナミデジタルエンタテインメント | 画像生成装置、画像生成方法、ならびに、プログラム |
JP4852555B2 (ja) * | 2008-01-11 | 2012-01-11 | 株式会社コナミデジタルエンタテインメント | 画像処理装置、画像処理方法、ならびに、プログラム |
JP2010033296A (ja) * | 2008-07-28 | 2010-02-12 | Namco Bandai Games Inc | プログラム、情報記憶媒体及び画像生成システム |
US8878773B1 (en) | 2010-05-24 | 2014-11-04 | Amazon Technologies, Inc. | Determining relative motion as input |
US8643703B1 (en) | 2011-03-30 | 2014-02-04 | Amazon Technologies, Inc. | Viewer tracking image display |
US9449427B1 (en) | 2011-05-13 | 2016-09-20 | Amazon Technologies, Inc. | Intensity modeling for rendering realistic images |
US9041734B2 (en) * | 2011-07-12 | 2015-05-26 | Amazon Technologies, Inc. | Simulating three-dimensional features |
US9852135B1 (en) | 2011-11-29 | 2017-12-26 | Amazon Technologies, Inc. | Context-aware caching |
US9269012B2 (en) | 2013-08-22 | 2016-02-23 | Amazon Technologies, Inc. | Multi-tracker object tracking |
US9857869B1 (en) | 2014-06-17 | 2018-01-02 | Amazon Technologies, Inc. | Data optimization |
US10607403B2 (en) | 2017-10-04 | 2020-03-31 | Google Llc | Shadows for inserted content |
CN108245893B (zh) | 2018-02-09 | 2021-06-29 | 腾讯科技(深圳)有限公司 | 三维虚拟环境中虚拟对象的姿态确定方法、装置及介质 |
JP7563393B2 (ja) * | 2020-01-23 | 2024-10-08 | ソニーグループ株式会社 | 情報処理装置、情報処理方法及びプログラム |
CN114742934B (zh) * | 2022-04-07 | 2024-09-20 | 北京字跳网络技术有限公司 | 图像渲染方法、装置、可读介质及电子设备 |
CN116824029B (zh) * | 2023-07-13 | 2024-03-08 | 北京弘视科技有限公司 | 全息影像阴影生成的方法、装置、电子设备和存储介质 |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS58121091A (ja) * | 1982-01-14 | 1983-07-19 | 池上通信機株式会社 | 立体感表示方式 |
DE69233717T2 (de) * | 1991-06-28 | 2008-10-30 | Lim, Hong Lip, Darlington | Verbesserungen in sichtbarkeit-berechnungen fuer 3d-rechner |
JP3052681B2 (ja) * | 1993-08-06 | 2000-06-19 | 松下電器産業株式会社 | 3次元動画像生成装置 |
JP3442181B2 (ja) * | 1995-02-17 | 2003-09-02 | 株式会社ナムコ | 3次元ゲーム装置及び画像合成方法 |
US5936626A (en) | 1996-02-07 | 1999-08-10 | Silicon Graphics, Inc. | Computer graphics silhouette load management |
DE69732211T2 (de) * | 1996-06-05 | 2005-12-22 | Sega Corp. | Bildverarbeitungseinheit für spiele |
JPH10211358A (ja) * | 1997-01-28 | 1998-08-11 | Sega Enterp Ltd | ゲーム装置 |
US6320580B1 (en) * | 1997-11-07 | 2001-11-20 | Sega Enterprises, Ltd. | Image processing apparatus |
JP2980579B2 (ja) * | 1997-12-09 | 1999-11-22 | コナミ株式会社 | フィッシングゲームシステムおよびゲーム用入力装置 |
JPH11175752A (ja) * | 1997-12-15 | 1999-07-02 | Sega Enterp Ltd | 画像処理装置及び画像処理方法 |
US6667741B1 (en) * | 1997-12-24 | 2003-12-23 | Kabushiki Kaisha Sega Enterprises | Image generating device and image generating method |
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 |
JP3599268B2 (ja) * | 1999-03-08 | 2004-12-08 | 株式会社ソニー・コンピュータエンタテインメント | 画像処理方法、画像処理装置及び記録媒体 |
US6384822B1 (en) * | 1999-05-14 | 2002-05-07 | Creative Technology Ltd. | Method for rendering shadows using a shadow volume and a stencil buffer |
JP3124999B1 (ja) * | 1999-07-09 | 2001-01-15 | 株式会社スクウェア | レンダリング方法及び装置、ゲーム装置、並びに仮想空間内のオブジェクトの陰影に関するデータを計算するためのプログラムを格納するコンピュータ読み取り可能な記録媒体 |
JP2001092989A (ja) * | 1999-07-21 | 2001-04-06 | Sega Corp | 画像処理方法及びその装置 |
JP3417883B2 (ja) * | 1999-07-26 | 2003-06-16 | コナミ株式会社 | 画像作成装置、画像作成方法、画像作成プログラムが記録されたコンピュータ読み取り可能な記録媒体およびビデオゲーム装置 |
JP3502796B2 (ja) * | 1999-10-29 | 2004-03-02 | 株式会社スクウェア・エニックス | ビデオゲームにおける立体モデル表示方法及び装置、ゲーム装置並びにビデオゲーム用立体モデル表示プログラムを格納したコンピュータ読み取り可能な記録媒体 |
JP3527672B2 (ja) * | 1999-12-28 | 2004-05-17 | 株式会社スクウェア・エニックス | 3次元コンピュータ画像処理のプログラムを記録したコンピュータ読み取り可能な記録媒体および影描画処理方法およびビデオゲーム装置 |
JP3369159B2 (ja) * | 2000-02-17 | 2003-01-20 | 株式会社ソニー・コンピュータエンタテインメント | 画像描画方法、画像描画装置、記録媒体及びプログラム |
US6791544B1 (en) * | 2000-04-06 | 2004-09-14 | S3 Graphics Co., Ltd. | Shadow rendering system and method |
US6624833B1 (en) * | 2000-04-17 | 2003-09-23 | Lucent Technologies Inc. | Gesture-based input interface system with shadow detection |
JP2002058868A (ja) * | 2000-06-07 | 2002-02-26 | Square Co Ltd | 球技系ゲームのプログラムを記録したコンピュータ読み取り可能な記録媒体およびプログラム、ならびに、球技系ゲーム処理装置およびその方法 |
JP3641578B2 (ja) * | 2000-08-31 | 2005-04-20 | コナミ株式会社 | ゲーム用3次元画像処理方法、装置、ゲーム用3次元画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体及びビデオゲーム装置 |
JP3625184B2 (ja) * | 2000-09-25 | 2005-03-02 | コナミ株式会社 | ゲーム用3次元画像処理方法、装置、ゲーム用3次元画像処理プログラムを記録した可読記録媒体及びビデオゲーム装置 |
JP3527196B2 (ja) * | 2000-11-16 | 2004-05-17 | 株式会社ソニー・コンピュータエンタテインメント | テクスチャ描画方法、エンタテインメント装置および記録媒体 |
US6646640B2 (en) * | 2001-02-06 | 2003-11-11 | Sony Computer Entertainment Inc. | System and method for creating real-time shadows of complex transparent objects |
JP4082937B2 (ja) | 2002-06-07 | 2008-04-30 | 任天堂株式会社 | ゲームシステム及びゲームプログラム |
-
2002
- 2002-05-16 JP JP2002141635A patent/JP4001227B2/ja not_active Expired - Fee Related
- 2002-11-06 US US10/288,303 patent/US7104891B2/en not_active Expired - Lifetime
-
2003
- 2003-02-12 EP EP03002682A patent/EP1386646A3/en not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
US7104891B2 (en) | 2006-09-12 |
EP1386646A2 (en) | 2004-02-04 |
US20030216175A1 (en) | 2003-11-20 |
EP1386646A3 (en) | 2011-11-30 |
JP2003331314A (ja) | 2003-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4001227B2 (ja) | ゲーム装置及びゲームプログラム | |
US8602888B2 (en) | Video game device and image processing program | |
JP3668019B2 (ja) | 記録媒体、画像処理装置および画像処理方法 | |
JP5896424B2 (ja) | 全方位画像編集プログラム及び全方位画像編集装置 | |
JP3310257B2 (ja) | ゲームシステム及びゲーム用プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
US20040110561A1 (en) | Game apparatus storing game sound control program and game sound control thereof | |
JP4917346B2 (ja) | ゲーム画像処理プログラムおよびゲーム画像処理装置 | |
JP3352982B2 (ja) | レンダリング方法及び装置、ゲーム装置、並びに立体モデルをレンダリングするプログラムを格納するコンピュータ読み取り可能な記録媒体 | |
JP4343207B2 (ja) | ゲーム装置および画像処理プログラム | |
JP3604312B2 (ja) | ビデオゲーム用のプログラムを記録したコンピュータ読み取り可能な記録媒体、ビデオゲームにおけるオブジェクト描画方法及びビデオゲーム装置 | |
JP4082937B2 (ja) | ゲームシステム及びゲームプログラム | |
JP3527672B2 (ja) | 3次元コンピュータ画像処理のプログラムを記録したコンピュータ読み取り可能な記録媒体および影描画処理方法およびビデオゲーム装置 | |
JP4193979B2 (ja) | シャドウボリューム生成プログラム及びゲーム装置 | |
JP3807654B2 (ja) | ビデオゲーム用のプログラムを記録したコンピュータ読み取り可能な記録媒体、ビデオゲームにおけるオブジェクト描画方法及びビデオゲーム装置 | |
JP4714763B2 (ja) | 画像処理プログラム、画像処理装置、および画像制御方法 | |
KR19990077421A (ko) | 화상작성장치,화상작성방법및화상작성프로그램이기록된판독가능한기록매체 | |
JP2014146162A (ja) | 画像合成処理方法及び遊技機 | |
JP2005346417A (ja) | 仮想三次元座標ポリゴンによるオブジェクト画像の表示制御方法及びこれを用いた画像表示装置 | |
JP4079249B2 (ja) | ゲーム装置及びゲームプログラム | |
JP4425589B2 (ja) | 画像生成プログラム、画像生成方法及び画像生成装置 | |
JP3747042B2 (ja) | 画像処理装置及び画像処理方法 | |
JP3635037B2 (ja) | 画像の描画方法及びそれに用いるプログラム | |
JP4231684B2 (ja) | ゲーム装置及びゲームプログラム | |
JP3538228B2 (ja) | 画像合成装置 | |
JP3589657B2 (ja) | 3次元ポリゴン表面模様処理方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041228 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070806 |
|
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: 20070808 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070808 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100824 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4001227 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: 20100824 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100824 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110824 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: 20110824 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120824 Year of fee payment: 5 |
|
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: 20120824 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120824 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130824 Year of fee payment: 6 |
|
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: 20130824 Year of fee payment: 6 |
|
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 |
|
LAPS | Cancellation because of no payment of annual fees |