JP4610729B2 - ゲームシステム、プログラム及び情報記憶媒体 - Google Patents
ゲームシステム、プログラム及び情報記憶媒体 Download PDFInfo
- Publication number
- JP4610729B2 JP4610729B2 JP2000386884A JP2000386884A JP4610729B2 JP 4610729 B2 JP4610729 B2 JP 4610729B2 JP 2000386884 A JP2000386884 A JP 2000386884A JP 2000386884 A JP2000386884 A JP 2000386884A JP 4610729 B2 JP4610729 B2 JP 4610729B2
- Authority
- JP
- Japan
- Prior art keywords
- partial object
- shadow
- partial
- light source
- information storage
- 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
Images
Classifications
-
- 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
- Image Generation (AREA)
Description
【発明の属する技術分野】
本発明は、ゲームシステム、プログラム及び情報記憶媒体に関する。
【0002】
【背景技術及び発明が解決しようとする課題】
従来より影を表現する手法として、影を作り出すオブジェクトを光源方向からみた形状をレンダリングして影テクスチャを生成し、影の影響を受けるオブジェクトに影テクスチャをマッピングするシャドウマップという手法がある。
【0003】
図9はシャドウマップを行う際に生成する影テクスチャについて説明するための図である。シャドウマップを行う際には、同図に示すように、椅子オブジェクト810を光線ベクトル820の方向に投影して影テクスチャ領域840に椅子オブジェクトの影テクスチャ830を生成する。
【0004】
図10はシャドウマップの手法により椅子オブジェクトの影を床壁オブジェクトにつける場合について説明するための図である。
【0005】
810は椅子オブジェクトであり、850は床壁オブジェクトである。また830は椅子オブジェクト810を光線ベクトル820の方向に投影して生成した影テクスチャである。
【0006】
同図に示すように影テクスチャ830を床壁オブジェクト850にマッピングすることにより、椅子オブジェクトの影がマッピングされた床壁オブジェクト850’の画像を生成することができる。
【0007】
このようにあるオブジェクトの影が他のオブジェクトに映っている画像を生成する場合にはシャドウマップは有効な方法であった。
【0008】
ところがあるオブジェクトの影が自分自身に落ちている場合の画像をシャドウマップの手法を用いて生成しようとすると以下のような不都合が生じてしまう。
【0009】
図11はシャドウマップの手法を用いてあるオブジェクトの影を自分自身につける場合の様子を示した図である。810’はシャドウマップの手法を用いて生成した椅子オブェクトの影テクスチャ830を椅子オブジェクト810にマッピングした場合の画像である。
【0010】
このように従来のシャドウマップの手法では、影を作り出すオブジェクト自身に影の投影を行うと、そのオブジェクト全てに影が落ちてしまうため、従来のシャドウマップの手法では、影を自己投影させた画像をリアルタイムに生成することが困難であった。そのため自分自身によって光がさえぎられて自分自身に影ができるような表現ができず、リアリティを欠いた画像になってしまっていた。
【0011】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、影が自己投影された画像をリアルタイムに生成可能にすることによりリアルな陰影表現をおこなえるゲームシステム、プログラム及び情報記憶媒体を提供することである。
【0012】
【課題を解決するための手段】
(1)画像生成を行うゲームシステムであって、所与のオブジェクトを第1の部分オブジェクト及び第2の部分オブジェクトを含む複数の部分オブジェクトに分割し、第1の部分オブジェクトの影を第2の部分オブジェクトに付ける処理を行うことで所与のオブジェクに自己陰影を施す手段を含むことを特徴とする。
【0013】
また本発明にかかるプログラムは、コンピュータにより使用可能なプログラム(情報記憶媒体又は搬送波に具現化されるプログラム)であって、上記手段をコンピュータに実現させることを特徴とする。また本発明にかかる情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体、上記手段をコンピュータに実現させるためのプログラムを含むことを特徴とする。
【0014】
所与のオブジェクトとは、例えば1つのモデルでもよいし、ゲーム空間内で与えられる位置座標を共有する複数のモデルの集合として構成されたオブジェクトでもよい。例えば後者の例としては最初は別個のモデルとして生成された2つのオブジェクトが関節で接続された場合があげられる。
【0015】
本発明によれば、所与のオブジェクトを第1の部分オブジェクト及び第2の部分オブジェクトを含む複数の部分オブジェクトに分割し、第1の部分オブジェクトの影を第2の部分オブジェクトに生成することにより当該オブジェクトに当該オブジェクト自身の影が投影された画像をリアルタイムに生成することができる。
【0016】
(2)また本発明に係るゲームシステム、プログラム及び情報記憶媒体は、第1の部分オブジェクトをリアルタイムにレンダリングして第1の影画像を生成し、第1の影画像をテクスチャとして第2の部分オブジェクトにマッピングすることを特徴とする。
【0017】
本発明によれば第1の部分オブジェクトをリアルタイムにレンダリングして第1の影画像を生成するため、その時点の第1の部分オブジェクトの配置や形状に応じた正確な影画像を生成することできる。このため第2の部分オブジェクトによりリアルな第1の部分オブジェクトの影をつけることができる。
【0018】
(3)また本発明に係るゲームシステム、プログラム及び情報記憶媒体は、前記第1の影画像は第1の部分オブジェクトを光線ベクトル方向に投影変換して生成することを特徴とする。
【0019】
(4)また本発明に係るゲームシステム、プログラム及び情報記憶媒体は、第1の部分オブジェクトに第2の部分オブジェクトの影をつけるか否かを第1の部分オブジェクトと第2の部分オブジェクトと光源との位置関係に基づき決定することを特徴とする。
【0020】
例えば光源からみて近い部分オブジェクトには遠い部分オブジェクトの影を付けないようにすることが好ましい。
【0021】
このようにすると光源と各部分オブジェクトとの位置関係に応じたリアルな影を付けることができる。
【0022】
(5)また本発明に係るゲームシステム、プログラム及び情報記憶媒体は、点光源である場合には、前記第1の部分オブジェクトと第2の部分オブジェクトの光源からの距離に基づき、前記第1の部分オブジェクトと第2の部分オブジェクトと光源との位置関係を判断することを特徴とする。
【0023】
(6)また本発明に係るゲームシステム、プログラム及び情報記憶媒体は、平行光源の場合には、光線ベクトルに直交し当該オブジェクトから離れた位置にある仮想平面から前記第1の部分オブジェクトと第2の部分オブジェクトへの距離に基づき前記第1の部分オブジェクトと第2の部分オブジェクトと光源との位置関係を判断することを特徴とする。
【0024】
(7)また本発明に係るゲームシステム、プログラム及び情報記憶媒体は、分割した各部分オブジェクトに所定のルールに基づき番号付けを行い、第1の部分オブジェクトに第2の部分オブジェクトの影をつけるか否かを第1の部分オブジェクトに付加された番号と第2の部分オブジェクトに付加された番号に基づき決定することを特徴とする。
【0025】
ここにおいて所定のルールとは、例えば光源に近い部分オブジェクトから順に若い番号を与えるように番号付けしてもよい。このようにすると所与の部分オブジェクトについて、当該部分オブジェクトより大きな番号が付された部分オブジェクトについては、当該部分オブジェクトについての陰影付けの処理は行わないものとし、当該オブジェクトと同じ又は当該オブジェクトより小さい番号を有する部分オブジェクトのみの影が映る可能性があるとして陰影付け処理を行うことができる。
【0026】
本発明によれば、各部分オブジェクトに所定のルールに基づき与えた番号に従って陰影付けの処理を行うことで、第1の部分オブジェクトに第2の部分オブジェクトの影をつけるか否かを効率よく判断して自己陰影処理を行うことができる。
【0027】
(8)また本発明に係るゲームシステム、プログラム及び情報記憶媒体は、第1の部分オブジェクトの影画像を描画して第1の影テクスチャを生成し、第1の影テクスチャを第2の部分オブジェクトにマッピングし、第2の部分オブジェクトの影画像を第1の部分オブジェクトの影画像の描画領域に重ねて描画し第2の影テクスチャを生成し、第2の影テクスチャを第3の部分オブジェクトにマッピングすることを特徴とする。
【0028】
例えば光源からの距離が、第1の部分オブジェクト<第2の部分オブジェクト<第3の部分オブジェクトである場合に、まず第1の部分オブジェクトの影画像を描画して第1の影テクスチャを生成し、第1の影テクスチャを第2の部分オブジェクトにマッピングし、第2の部分オブジェクトの影画像を第1の部分オブジェクトの影画像の描画領域に重ねて描画し第2の影テクスチャを生成し、第2の影テクスチャを第3の部分オブジェクトにマッピングすることが好ましい。
【0029】
このようにすると第3の部分オブジェクトにマッピングする影テクスチャと第2の部分オブジェクトにマッピングする影テクスチャを別々に生成してマッピングする場合に比べ、各部分オブジェクトに対するマッピング処理が一回ですみ、効率よく影画像のマッピング処理を行うことができる。
【0030】
(9)また本発明に係るゲームシステム、プログラム及び情報記憶媒体は、光源とオブジェクトの位置関係に応じて分割内容を変更することを特徴とする。
【0031】
ここにおいて分割内容とは、例えば分割数や分割後の部分オブジェクトの形状等である。
【0032】
予め複数の分割パターンを持っていて光源とオブジェクトの位置関係に応じて切り替えるようにしてもよいし、光源とオブジェクトの位置関係に応じてリアルタイムに分割内容を切り替えるようにしてもよい。
【0033】
【発明の実施の形態】
以下、本発明の好適な実施形態について図面を用いて説明する。
【0034】
1.構成
図1に、本実施形態のブロック図の一例を示す。なお同図において本実施形態は、少なくとも処理部100を含めばよく、それ以外のブロックについては、任意の構成要素とすることができる。
【0035】
ここで処理部100は、システム全体の制御、システム内の各ブロックへの命令の指示、ゲーム処理、画像処理、音処理などの各種の処理を行うものであり、その機能は、各種プロセッサ(CPU、DSP等)、或いはASIC(ゲートアレイ等)などのハードウェアや、所与のプログラム(ゲームプログラム)により実現できる。
【0036】
操作部160は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、筺体などのハードウェアにより実現できる。
【0037】
記憶部170は、処理部100や通信部196などのワーク領域となるもので、メインメモリ172、フレームバッファ174(第1のフレームバッファ、第2のフレームバッファ)として機能し、RAMなどのハードウェアにより実現できる。
【0038】
情報記憶媒体(コンピュータにより使用可能な記憶媒体)180は、プログラムやデータなどの情報を格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などのハードウェアにより実現できる。処理部100は、この情報記憶媒体180に格納される情報に基づいて本発明(本実施形態)の種々の処理を行う。即ち情報記憶媒体180には、本発明(本実施形態)の手段(特に処理部100に含まれるブロック)を実行するための情報(プログラム或いはデータ)が格納される。
【0039】
なお、情報記憶媒体180に格納される情報の一部又は全部は、システムへの電源投入時等に記憶部170に転送されることになる。また情報記憶媒体180に記憶される情報は、本発明の処理を行うためのプログラムコード、画像データ、音データ、表示物の形状データ、テーブルデータ、リストデータ、本発明の処理を指示するための情報、その指示に従って処理を行うための情報等の少なくとも1つを含むものである。
【0040】
表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、或いはHMD(ヘッドマウントディスプレイ)などのハードウェアにより実現できる。
【0041】
音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカなどのハードウェアにより実現できる。
【0042】
セーブ用情報記憶装置194は、プレーヤの個人データ(セーブデータ)などが記憶されるものであり、このセーブ用情報記憶装置194としては、メモリカードや携帯型ゲーム装置などを考えることができる。
【0043】
通信部196は、外部(例えばホスト装置や他のゲームシステム)との間で通信を行うための各種の制御を行うものであり、その機能は、各種プロセッサ、或いは通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
【0044】
なお本発明(本実施形態)の手段を実行するためのプログラム或いはデータは、ホスト装置(サーバー)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180に配信するようにしてもよい。このようなホスト装置(サーバー)の情報記憶媒体の使用も本発明の範囲内に含まれる。
【0045】
処理部100は、ゲーム処理部110、画像生成部130、音生成部150を含む。
【0046】
ここでゲーム処理部110は、コイン(代価)の受け付け処理、各種モードの設定処理、ゲームの進行処理、選択画面の設定処理、オブジェクト(1又は複数のプリミティブ面)の位置や回転角度(X、Y又はZ軸回り回転角度)を求める処理、オブジェクトを動作させる処理(モーション処理)、視点の位置(仮想カメラの位置)や視線角度(仮想カメラの回転角度)を求める処理、マップオブジェクトなどのオブジェクトをオブジェクト空間へ配置するための処理、ヒットチェック処理、ゲーム結果(成果、成績)を演算する処理、複数のプレーヤが共通のゲーム空間でプレイするための処理、或いはゲームオーバー処理などの種々のゲーム処理を、操作部160からの操作データや、セーブ用情報記憶装置194からの個人データや、ゲームプログラムなどに基づいて行う。
【0047】
画像生成部130は、ゲーム処理部110からの指示等にしたがって例えば座標変換、クリッピング処理、透視変換、或いは光源計算などの種々のジオメトリ処理(3次元演算)やジオメトリ処理後のオブジェクト(モデル)を、フレームバッファ174に描画するための描画処理等の各種の画像処理を行い、オブジェクト空間内で仮想カメラ(視点)から見える画像を生成して、表示部190に出力する。
【0048】
また、音生成部150は、ゲーム処理部110からの指示等にしたがって各種の音処理を行い、BGM、効果音、音声などの音を生成し、音出力部192に出力する。
【0049】
なお、ゲーム処理部110、画像生成部130、音生成部150の機能は、その全てをハードウェアにより実現してもよいし、その全てをプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【0050】
画像生成部130は、自己陰影処理部140を含む。自己陰影処理部140は、所与のオブジェクトを第1の部分オブジェクト及び第2の部分オブジェクトを含む複数の部分オブジェクトに分割し、第1の部分オブジェクトの影を第2の部分オブジェクトに付ける処理を行うことで所与のオブジェクに自己陰影を施す処理を行う。
【0051】
また第1の部分オブジェクトをリアルタイムにレンダリングして第1の影画像を生成し、第1の影画像をテクスチャとして第2の部分オブジェクトにマッピングするようにしてもよい。
【0052】
また前記第1の影画像は第1の部分オブジェクトを光線ベクトル方向に投影変換して生成するようにしてもよい。
【0053】
また第1の部分オブジェクトに第2の部分オブジェクトの影をつけるか否かを第1の部分オブジェクトと第2の部分オブジェクトと光源との位置関係に基づき決定するようにしてもよい。
【0054】
また点光源である場合には、前記第1の部分オブジェクトと第2の部分オブジェクトの光源からの距離に基づき、前記第1の部分オブジェクトと第2の部分オブジェクトと光源との位置関係を判断するようにしてもよい。
【0055】
また平行光源の場合には、光線ベクトルに直交し当該オブジェクトから離れた位置にある仮想平面から前記第1の部分オブジェクトと第2の部分オブジェクトへの距離に基づき前記第1の部分オブジェクトと第2の部分オブジェクトと光源との位置関係を判断するようにしてもよい。
【0056】
また分割した各部分オブジェクトに所定のルールに基づき番号付けを行い、第1の部分オブジェクトに第2の部分オブジェクトの影をつけるか否かを第1の部分オブジェクトに付加された番号と第2の部分オブジェクトに付加された番号に基づき決定するようにしてもよい。
【0057】
また第1の部分オブジェクトの影画像を描画して第1の影テクスチャを生成し、第1の影テクスチャを第2の部分オブジェクトにマッピングし、第2の部分オブジェクトの影画像を第1の部分オブジェクトの影画像の描画領域に重ねて描画し第2の影テクスチャを生成し、第2の影テクスチャを第3の部分オブジェクトにマッピングするようにしてもよい。
【0058】
また光源とオブジェクトの位置関係に応じて分割内容を変更するようにしてもよい。
【0059】
なお、本実施形態のゲームシステムは、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、このようなシングルプレーヤモードのみならず、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
【0060】
また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末を用いて生成してもよい。
【0061】
2.本実施形態の特徴
本実施の形態の特徴を図面を用いて説明する。
【0062】
図2(A)(B)は本実施の形態の自己陰影画像について説明するための図である。図2(A)は陰影付けされる前の人体オブジェクトの画像であり、図2(B)は本実施の形態の自己陰影が施された人体オブジェクトの画像である。
【0063】
図2(B)に示すように、本実施の形態では人体オブジェクトの腕部分210の影220が胴体から足の部分におちている画像を生成することができる。これにより、光源から人体オブジェクトへの光の影響をよりリアルに表現することができる。
【0064】
以下図3〜図5を用いて本実施の形態における自己陰影の実現手法の一例について説明する。
【0065】
図3は自己陰影を施すオブジェクトの分割について説明するための図である。本実施の形態では例えば人体オブジェクト250に自己陰影を施す場合には、図3に示すように人体オブジェクト250を複数の部分オブジェクトP1〜P6に分割する。
【0066】
ここで分割内容は予め定めておいてもよいし、オブジェクトの形状やアニメーションの状態や表現したい影の効果や光源とオブジェクトの位置関係等に基づきリアルタイムに決定してもよい。
【0067】
そして第1の部分オブジェクトの影を第2の部分オブジェクトに生成することで、当該オブジェクトに影の自己投影を行う。
【0068】
なお本実施の形態では第1の部分オブジェクトに第2の部分オブジェクトの影をつけるか否かを第1の部分オブジェクトと第2の部分オブジェクトと光源との位置関係に基づき決定する。ここにおいて本実施の形態では分割した各部分オブジェクトに所定のルールに基づき番号付けを行い、第1の部分オブジェクトに第2の部分オブジェクトの影をつけるか否かを第1の部分オブジェクトに付加された番号と第2の部分オブジェクトに付加された番号に基づき決定する。
【0069】
図4は部分オブジェクトへの番号付けについて説明するための図である。
【0070】
270は平行光源の光線ベクトルの向きを表しており、260は前記光線ベクトル270に直交し人体オブジェクト250から離れた位置にある仮想平面である。
【0071】
P1、P2、P3は人体オブジェクト250を分割して生成した部分オブジェクトであり、R1、R2、R3は各部分オブジェクトの前記仮想平面260からの距離であるとする。ここでR2<R1<R3であるとすると部分オブジェクトP1、P2、P3にはそれぞれ2、1、3の番号が付される。
【0072】
そして所与の部分オブジェクトについて、当該部分オブジェクトより大きな番号が付された部分オブジェクトについては、当該部分オブジェクトについての陰影付けの処理は行わないものとし、当該オブジェクトと同じ又は当該オブジェクトより小さい番号を有する部分オブジェクトのみの影が映る可能性があるとして陰影付け処理を行う。
【0073】
例えば部分オブジェクトP2には部分オブジェクトP1及びP3の影が映らないように陰影付けの処理を行い、部分オブジェクトP1には部分オブジェクトP3の影が映らないように陰影付けの処理を行う。
【0074】
言い換えれば部分オブジェクトP3には部分オブジェクトP1及びP2の影が映る可能性があるものとして陰影付けの処理を行い、部分オブジェクトP1には部分オブジェクトP2の影が映る可能性があるものとして陰影付けの処理を行う。
【0075】
なおオブジェクトに付す番号には同じ番号があってもよい。例えば仮想平面からの距離が同じ部分オブジェクトについては同じ番号を付すようにしてもよい。この場合同じ番号についてどのように取り扱うかについては、適宜定めることができる。
【0076】
図5は部分オブジェクトに付けられた番号に基づく陰影付け処理の一例について説明するための図である。
【0077】
ここでは310に示すような人体オブジェクトを頭、右腕、左腕、胴体及び足の4つの部分オブジェクトに分割した場合の右腕、左腕、胴体及び足の各部分オブジェクトに対する陰影付け処理を例にとり説明する。右腕、左腕、胴体及び足の各部分オブジェクトにはそれぞれ1、2、3の番号が付されているものとする。
【0078】
まず人体オブジェクト310における番号1の部分オブジェクトである右腕の影画像322を生成し、影バッファ300−1に描画する(S1)。
【0079】
次に右腕の影画像322が描画された影バッファ300−1をテクスチャとして番号2のオブジェクトである左腕の部分オブジェクト330にマッピングを行う(S2)。この場合番号2の部分オブジェクトである左腕には番号1の部分オブジェクトである右腕の影はかからないので実際に図上の左腕には影がついていない。すなわち影バッファ300−1の左腕にマッピングされた部分は右腕の影322が描画されている部分ではなかったのである。
【0080】
次に番号2のオブジェクトである左腕の部分オブジェクト330の影画像を生成し、右腕の影画像322が描画された影バッファ300−2に重ね書きする(S3)。ここで影バッファ300−2には右腕の影画像322と左腕の影画像332の両方が描画されている。
【0081】
そして両腕の影画像が描画された影バッファ300−2をテクスチャとして胴体及び脚の部分オブジェクトに描画する(S4)。これにより胴体及び脚の一部に両腕の影のかかった画像を生成することができる(340参照)。
【0082】
例えば部分オブジェクトに光源からの距離が近いほうから降順に番号を与えた場合には、このように各部分オブジェクトに与えられた番号に従って陰影付けの処理を行うことで、各部分オブジェクトに自分より光源に近い部分オブジェクトのみの影を投影する処理を効率よく行うことができる。
【0083】
また各部分オブジェクトの影画像を各部分オブジェクトに与えられた番号に従って重ね書きすることで、各部分オブジェクトに対するマッピング処理が一回ですみ、効率よく影画像をマッピングすることができる。
【0084】
3.本実施の形態の処理
図6は本実施の形態の自己陰影処理の一例について説明するためのフローチャート図である。
【0085】
まず自己陰影を行うオブジェクトをN個の部分オブジェクトに分割し、全ての部分オブジェクトに番号1〜Nのいずれかの番号を付ける(ステップS10)。
【0086】
次に初期設定として影バッファを透明に塗りつぶす(ステップS20)。ここで影バッファとは図5で説明したようにテクスチャとして部分オブジェクトに対してマッピングするテクスチャ画像を描画する領域である。
【0087】
また変数iに1をセットする(ステップS30)。ここで変数iは部分オブジェクトをカウントするための変数である。
【0088】
次に全ての部分オブジェクトについて処理が終了するまで、ステップS40〜S70の処理を繰り返す。
【0089】
まず番号iの部分オブジェクトに対して影バッファのテクスチャ画像をマッピングする(ステップS40)。
【0090】
次に番号iの部分オブジェクトの影画像を影バッファに重ね書きする(ステップS50)。
【0091】
次に変数iをインクリメントする(ステップS60)。
【0092】
そしてi>Nでない場合にはステップS30に戻って処理を繰り返し、i>Nである場合には処理を終了する(ステップS70)。
【0093】
4.ハードウェア構成
次に、本実施形態を実現できるハードウェアの構成の一例について図7を用いて説明する。
【0094】
メインプロセッサ900は、CD982(情報記憶媒体)に格納されたプログラム、通信インターフェース990を介して転送されたプログラム、或いはROM950(情報記憶媒体の1つ)に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などの種々の処理を実行する。
【0095】
コプロセッサ902は、メインプロセッサ900の処理を補助するものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算(ベクトル演算)を高速に実行する。例えば、オブジェクトを移動させたり動作(モーション)させるための物理シミュレーションに、マトリクス演算などの処理が必要な場合には、メインプロセッサ900上で動作するプログラムが、その処理をコプロセッサ902に指示(依頼)する。
【0096】
ジオメトリプロセッサ904は、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算(ベクトル演算)を高速に実行する。例えば、座標変換、透視変換、光源計算などの処理を行う場合には、メインプロセッサ900で動作するプログラムが、その処理をジオメトリプロセッサ904に指示する。
【0097】
データ伸張プロセッサ906は、圧縮された画像データや音データを伸張するデコード処理を行ったり、メインプロセッサ900のデコード処理をアクセレートする処理を行う。これにより、オープニング画面、インターミッション画面、エンディング画面、或いはゲーム画面などにおいて、所与の画像圧縮方式で圧縮された動画像を表示できるようになる。なお、デコード処理の対象となる画像データや音データは、ROM950、CD982に格納されたり、或いは通信インターフェース990を介して外部から転送される。
【0098】
描画プロセッサ910は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画(レンダリング)処理を高速に実行するものである。オブジェクトの描画の際には、メインプロセッサ900は、DMAコントローラ970の機能を利用して、オブジェクトデータを描画プロセッサ910に渡すと共に、必要であればテクスチャ記憶部924にテクスチャを転送する。すると、描画プロセッサ910は、これらのオブジェクトデータやテクスチャに基づいて、Zバッファなどを利用した陰面消去を行いながら、オブジェクトをフレームバッファ922に高速に描画する。また、描画プロセッサ910は、αブレンディング(半透明処理)、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエリアシング、シェーディング処理なども行うことができる。そして、1フレーム分の画像がフレームバッファ922に書き込まれると、その画像はディスプレイ912に表示される。
【0099】
サウンドプロセッサ930は、多チャンネルのADPCM音源などを内蔵し、BGM、効果音、音声などの高品位のゲーム音を生成する。生成されたゲーム音は、スピーカ932から出力される。
【0100】
ゲームコントローラ942からの操作データや、メモリカード944からのセーブデータ、個人データは、シリアルインターフェース940を介してデータ転送される。
【0101】
ROM950にはシステムプログラムなどが格納される。なお、業務用ゲームシステムの場合には、ROM950が情報記憶媒体として機能し、ROM950に各種プログラムが格納されることになる。なお、ROM950の代わりにハードディスクを利用するようにしてもよい。
【0102】
RAM960は、各種プロセッサの作業領域として用いられる。
【0103】
DMAコントローラ970は、プロセッサ、メモリ(RAM、VRAM、ROM等)間でのDMA転送を制御するものである。
【0104】
CDドライブ980は、プログラム、画像データ、或いは音データなどが格納されるCD982(情報記憶媒体)を駆動し、これらのプログラム、データへのアクセスを可能にする。
【0105】
通信インターフェース990は、ネットワークを介して外部との間でデータ転送を行うためのインターフェースである。この場合に、通信インターフェース990に接続されるネットワークとしては、通信回線(アナログ電話回線、ISDN)、高速シリアルバスなどを考えることができる。そして、通信回線を利用することでインターネットを介したデータ転送が可能になる。また、高速シリアルバスを利用することで、他のゲームシステム、他のゲームシステムとの間でのデータ転送が可能になる。
【0106】
なお、本発明の各手段は、その全てを、ハードウェアのみにより実行してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムのみにより実行してもよい。或いは、ハードウェアとプログラムの両方により実行してもよい。
【0107】
そして、本発明の各手段をハードウェアとプログラムの両方により実行する場合には、情報記憶媒体には、本発明の各手段をハードウェアを利用して実行するためのプログラムが格納されることになる。より具体的には、上記プログラムが、ハードウェアである各プロセッサ902、904、906、910、930等に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ902、904、906、910、930等は、その指示と渡されたデータとに基づいて、本発明の各手段を実行することになる。
【0108】
図8(A)に、本実施形態を業務用ゲームシステムに適用した場合の例を示す。プレーヤは、ディスプレイ1100上に映し出されたゲーム画像を見ながら、レバー1102、ボタン1104等を操作してゲームを楽しむ。内蔵されるシステムボード(サーキットボード)1106には、各種プロセッサ、各種メモリなどが実装される。そして、本発明の各手段を実行するための情報(プログラム又はデータ)は、システムボード1106上の情報記憶媒体であるメモリ1108に格納される。以下、この情報を格納情報と呼ぶ。
【0109】
図8(B)に、本実施形態を家庭用のゲームシステムに適用した場合の例を示す。プレーヤはディスプレイ1200に映し出されたゲーム画像を見ながら、ゲームコントローラ1202、1204を操作してゲームを楽しむ。この場合、上記格納情報は、本体システムに着脱自在な情報記憶媒体であるCD1206、或いはメモリカード1208、1209等に格納されている。
【0110】
図8(C)に、ホスト装置1300と、このホスト装置1300とネットワーク1302(LANのような小規模ネットワークや、インターネットのような広域ネットワーク)を介して接続される端末1304-1〜1304-nとを含むシステムに本実施形態を適用した場合の例を示す。この場合、上記格納情報は、例えばホスト装置1300が制御可能な磁気ディスク装置、磁気テープ装置、メモリ等の情報記憶媒体1306に格納されている。端末1304-1〜1304-nが、スタンドアロンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置1300からは、ゲーム画像、ゲーム音を生成するためのゲームプログラム等が端末1304-1〜1304-nに配送される。一方、スタンドアロンで生成できない場合には、ホスト装置1300がゲーム画像、ゲーム音を生成し、これを端末1304-1〜1304-nに伝送し端末において出力することになる。
【0111】
なお、図8(C)の構成の場合に、本発明の各手段を、ホスト装置(サーバー)と端末とで分散して実行するようにしてもよい。また、本発明の各手段を実行するための上記格納情報を、ホスト装置(サーバー)の情報記憶媒体と端末の情報記憶媒体に分散して格納するようにしてもよい。
【0112】
またネットワークに接続する端末は、家庭用ゲームシステムであってもよいし業務用ゲームシステムであってもよい。そして、業務用ゲームシステムをネットワークに接続する場合には、業務用ゲームシステムとの間で情報のやり取りが可能であると共に家庭用ゲームシステムとの間でも情報のやり取りが可能なセーブ用情報記憶装置(メモリカード、携帯型ゲーム装置)を用いることが望ましい。
【0113】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。
【0114】
例えば、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の1の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
【0115】
また、本発明は種々のゲーム(格闘ゲーム、シューティングゲーム、ロボット対戦ゲーム、スポーツゲーム、競争ゲーム、ロールプレイングゲーム、音楽演奏ゲーム、ダンスゲーム等)に適用できる。
【0116】
また本実施の形態では、関節モデルである人体オブジェクトについて自己陰影処理を施す場合を例にとり説明したがこれに限られない。例えば飛行機の機体に羽の影が映っている場合等のように、関節関係を有さないオブジェクトに自己陰影処理を施す場合でもよい。
【0117】
また本実施の形態ではテクスチャマッピングの手法を用いて自己陰影処理を施す場合を例にとり説明したがこれに限られない。例えばステンシルバッファを用いて行う場合のように他の手法を用いて自己陰影処理を行う場合でもよい。
【0118】
また本実施の形態では、自分より光源に近い部分オブジェクトの影が自分に投影されるように自己陰影処理を行う場合を例にとり説明したがこれに限られない。例えば部分オブジェクトと光源との位置関係に関係なく、表現したい影の状態に応じてどの部分オブジェクトにどの部分オブジェクトの影をつけるかを決定してもよい。
【0119】
また本実施の形態では平行光源の場合を例にとり説明したがこれに限られない。例えば点光源の場合でもよい。
【0120】
また本実施の形態では、光源がひとつである場合を例にとり説明したがこれに限られない。たとえば複数の光源に対して自己陰影処理を行う場合でもよく、その場合には各光源ごとに自己陰影処理を行うとよい。
【0121】
また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード等の種々のゲームシステムに適用できる。
【図面の簡単な説明】
【図1】本実施形態のゲームシステムのブロック図の例である。
【図2】図2(A)(B)は本実施の形態の自己陰影画像について説明するための図である。
【図3】自己陰影を施すオブジェクトの分割について説明するための図である。
【図4】部分オブジェクトへの番号付けについて説明するための図である。
【図5】部分オブジェクトに付けられた番号に基づく陰影付け処理の一例について説明するための図である。
【図6】本実施の形態の自己陰影処理の一例について説明するためのフローチャート図である。
【図7】本実施形態を実現できるハードウェアの構成の一例を示す図である。
【図8】図8(A)、(B)、(C)は、本実施形態が適用される種々の形態のシステムの例を示す図である。
【図9】シャドウマップを行う際に生成する影テクスチャについて説明するための図である。
【図10】シャドウマップの手法により椅子オブジェクトの影を床壁オブジェクトにつける場合について説明するための図である。
【図11】シャドウマップの手法を用いてあるオブジェクトの影を自分自身につける場合の様子を示した図である。
【符号の説明】
100 処理部
110 ゲーム処理部
130 画像生成部
140 自己陰影処理部
150 音生成部
160 操作部
170 記憶部
172 メインメモリ
174 フレームバッファ
180 情報記憶媒体
190 表示部
192 音出力部
194 セーブ用情報記憶装置
196 通信部
Claims (18)
- 画像生成を行うゲームシステムであって、
所与のオブジェクトを第1の部分オブジェクト及び第2の部分オブジェクトを含む複数の部分オブジェクトに分割する手段と、
分割された第1の部分オブジェクトの影を分割された第2の部分オブジェクトに付ける処理を行い、所与のオブジェクトに自己陰影を施した画像を生成する手段と、を含むことを特徴とするゲームシステム。 - 請求項1において、
第1の部分オブジェクトをレンダリングして第1の影画像を生成し、第1の影画像をテクスチャとして第2の部分オブジェクトにマッピングすることを特徴とするゲームシステム。 - 請求項2において、
前記第1の影画像は第1の部分オブジェクトを光線ベクトル方向に投影変換して生成することを特徴とするゲームシステム。 - 請求項1乃至3のいずれかにおいて、
第1の部分オブジェクトに第2の部分オブジェクトの影をつけるか否かを第1の部分オブジェクトと第2の部分オブジェクトと光源との位置関係に基づき決定することを特徴とするゲームシステム。 - 請求項4において、
点光源である場合には、前記第1の部分オブジェクトと第2の部分オブジェクトの光源からの距離に基づき、前記第1の部分オブジェクトと第2の部分オブジェクトと光源との位置関係を判断することを特徴とするゲームシステム。 - 請求項4において、
平行光源の場合には、光線ベクトルに直交し当該オブジェクトから離れた位置にある仮想平面から前記第1の部分オブジェクトと第2の部分オブジェクトへの距離に基づき前記第1の部分オブジェクトと第2の部分オブジェクトと光源との位置関係を判断することを特徴とするゲームシステム。 - 請求項1乃至6のいずれかにおいて、
分割した各部分オブジェクトに所定のルールに基づき番号付けを行い、第1の部分オブジェクトに第2の部分オブジェクトの影をつけるか否かを第1の部分オブジェクトに付加された番号と第2の部分オブジェクトに付加された番号に基づき決定することを特徴とするゲームシステム。 - 請求項1乃至7のいずれかにおいて、
第1の部分オブジェクトの影画像を描画して第1の影テクスチャを生成し、第1の影テクスチャを第2の部分オブジェクトにマッピングし、第2の部分オブジェクトの影画像を第1の部分オブジェクトの影画像の描画領域に重ねて描画し第2の影テクスチャを生成し、第2の影テクスチャを第3の部分オブジェクトにマッピングすることを特徴とするゲームシステム。 - 請求項1乃至8のいずれかにおいて、
光源とオブジェクトの位置関係に応じて分割内容を変更することを特徴とするゲームシステム。 - コンピュータが読み取り可能な情報記憶媒体であって、
所与のオブジェクトを第1の部分オブジェクト及び第2の部分オブジェクトを含む複数の部分オブジェクトに分割する手段と、
分割された第1の部分オブジェクトの影を分割された第2の部分オブジェクトに付ける処理を行い、所与のオブジェクトに自己陰影を施した画像を生成する手段と、してコンピュータを機能させるプログラムが記憶された情報記憶媒体。 - 請求項10において、
第1の部分オブジェクトをレンダリングして第1の影画像を生成し、第1の影画像をテクスチャとして第2の部分オブジェクトにマッピングすることを特徴とする情報記憶媒体。 - 請求項11において、
前記第1の影画像は第1の部分オブジェクトを光線ベクトル方向に投影変換して生成することを特徴とする情報記憶媒体。 - 請求項10乃至12のいずれかにおいて、
第1の部分オブジェクトに第2の部分オブジェクトの影をつけるか否かを第1の部分オブジェクトと第2の部分オブジェクトと光源との位置関係に基づき決定することを特徴とする情報記憶媒体。 - 請求項13において、
点光源である場合には、前記第1の部分オブジェクトと第2の部分オブジェクトの光源からの距離に基づき、前記第1の部分オブジェクトと第2の部分オブジェクトと光源との位置関係を判断することを特徴とする情報記憶媒体。 - 請求項13において、
平行光源の場合には、光線ベクトルに直交し当該オブジェクトから離れた位置にある仮想平面から前記第1の部分オブジェクトと第2の部分オブジェクトへの距離に基づき前記第1の部分オブジェクトと第2の部分オブジェクトと光源との位置関係を判断することを特徴とする情報記憶媒体。 - 請求項10乃至15のいずれかにおいて、
分割した各部分オブジェクトに所定のルールに基づき番号付けを行い、第1の部分オブジェクトに第2の部分オブジェクトの影をつけるか否かを第1の部分オブジェクトに付加された番号と第2の部分オブジェクトに付加された番号に基づき決定することを特徴とする情報記憶媒体。 - 請求項10乃至16のいずれかにおいて、
第1の部分オブジェクトの影画像を描画して第1の影テクスチャを生成し、第1の影テクスチャを第2の部分オブジェクトにマッピングし、第2の部分オブジェクトの影画像を第1の部分オブジェクトの影画像の描画領域に重ねて描画し第2の影テクスチャを生成し、第2の影テクスチャを第3の部分オブジェクトにマッピングすることを特徴とする情報記憶媒体。 - 請求項10乃至17のいずれかにおいて、
光源とオブジェクトの位置関係に応じて分割内容を変更することを特徴とする情報記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000386884A JP4610729B2 (ja) | 2000-12-20 | 2000-12-20 | ゲームシステム、プログラム及び情報記憶媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000386884A JP4610729B2 (ja) | 2000-12-20 | 2000-12-20 | ゲームシステム、プログラム及び情報記憶媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002190032A JP2002190032A (ja) | 2002-07-05 |
JP4610729B2 true JP4610729B2 (ja) | 2011-01-12 |
Family
ID=18853913
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000386884A Expired - Fee Related JP4610729B2 (ja) | 2000-12-20 | 2000-12-20 | ゲームシステム、プログラム及び情報記憶媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4610729B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100632535B1 (ko) * | 2004-12-29 | 2006-10-11 | 엘지전자 주식회사 | 이동통신단말기용 삼차원 그래픽 엔진 및 그래픽 제공 방법 |
EP1923837A4 (en) | 2005-09-08 | 2010-09-29 | Sega Corp | IMAGE PROCESSING PROGRAM AND IMAGE PROCESSING SYSTEM USING THE SAME |
TWI322392B (en) * | 2006-12-14 | 2010-03-21 | Inst Information Industry | Apparatus, method, application program, and computer readable medium thereof capable of pre-storing data for generating self-shadow of a 3d object |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0778267A (ja) * | 1993-07-09 | 1995-03-20 | Silicon Graphics Inc | 陰影を表示する方法及びコンピュータ制御表示システム |
JPH08153213A (ja) * | 1994-09-29 | 1996-06-11 | Hitachi Ltd | 画像合成表示方法 |
JPH0935085A (ja) * | 1995-07-17 | 1997-02-07 | Mitsubishi Precision Co Ltd | 実時間映像発生方法及びその装置 |
-
2000
- 2000-12-20 JP JP2000386884A patent/JP4610729B2/ja not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0778267A (ja) * | 1993-07-09 | 1995-03-20 | Silicon Graphics Inc | 陰影を表示する方法及びコンピュータ制御表示システム |
JPH08153213A (ja) * | 1994-09-29 | 1996-06-11 | Hitachi Ltd | 画像合成表示方法 |
JPH0935085A (ja) * | 1995-07-17 | 1997-02-07 | Mitsubishi Precision Co Ltd | 実時間映像発生方法及びその装置 |
Also Published As
Publication number | Publication date |
---|---|
JP2002190032A (ja) | 2002-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3249955B2 (ja) | 画像生成システム及び情報記憶媒体 | |
JP3777288B2 (ja) | ゲームシステム及び情報記憶媒体 | |
JP4167358B2 (ja) | 画像生成システム及び情報記憶媒体 | |
JP3656012B2 (ja) | ゲームシステム及び情報記憶媒体 | |
JP3442344B2 (ja) | ゲームシステム及び情報記憶媒体 | |
JP4367804B2 (ja) | 画像生成システム及び情報記憶媒体 | |
JP4610729B2 (ja) | ゲームシステム、プログラム及び情報記憶媒体 | |
JP2001229403A (ja) | ゲームシステム及び情報記憶媒体 | |
JP4245356B2 (ja) | ゲームシステム及び情報記憶媒体 | |
JP3297410B2 (ja) | 画像生成システム及び情報記憶媒体 | |
JP4497690B2 (ja) | ゲームシステム及び情報記憶媒体 | |
JP2005209217A (ja) | ゲームシステム及び情報記憶媒体 | |
JP4574058B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP3377490B2 (ja) | ゲームシステム及び情報記憶媒体 | |
JP4394211B2 (ja) | 画像生成システム及び情報記憶媒体 | |
JP4641602B2 (ja) | ゲームシステム及び情報記憶媒体 | |
JP4391633B2 (ja) | 画像生成システム及び情報記憶媒体 | |
JP4632530B2 (ja) | ゲームシステム、プログラム及び情報記憶媒体 | |
JP2003162734A (ja) | ゲームシステム及び情報記憶媒体 | |
JP4827217B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP4480322B2 (ja) | ゲームシステム及び情報記憶媒体 | |
JP4632521B2 (ja) | ゲームシステム及び情報記憶媒体 | |
JP4632531B2 (ja) | ゲームシステム、情報記憶媒体及びゲームシステムの制御方法 | |
JP4803909B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP4162125B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20071025 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100426 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100519 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100720 |
|
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: 20101006 |
|
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: 20101013 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131022 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4610729 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: 20131022 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
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 |