JP2003242521A - 画像生成システム、プログラム及び情報記憶媒体 - Google Patents
画像生成システム、プログラム及び情報記憶媒体Info
- Publication number
- JP2003242521A JP2003242521A JP2002038638A JP2002038638A JP2003242521A JP 2003242521 A JP2003242521 A JP 2003242521A JP 2002038638 A JP2002038638 A JP 2002038638A JP 2002038638 A JP2002038638 A JP 2002038638A JP 2003242521 A JP2003242521 A JP 2003242521A
- Authority
- JP
- Japan
- Prior art keywords
- light source
- unit
- light
- light sources
- synthesizing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
- Image Processing (AREA)
Abstract
きる画像生成システム、プログラム及び情報記憶媒体を
提供すること。 【解決手段】 オブジェクトOBを照明する複数の光源
LS1〜LS3の照明方向ベクトルV1〜V3や色C1
〜C3を合成し、合成光源LSSの照明方向ベクトルV
Sや色CSを求め、求められた合成光源LSSに基づい
てオブジェクトOBのシェーディングを行う。光源の合
成率を照明方向ベクトルの内積や明度割合に基づき求め
る。光源の明度に基づき選択された基底光源に他の光源
を合成する。基底光源の切替時に前回のフレームの基底
光源の影響度が減少するように光源を合成する。合成処
理の対象とならなかった光源の色を、アンビエント光の
色に付加する。ヒットイベントの発生時に複数のヒット
位置に複数の光源を設定し、これらの光源を合成してヒ
ットエフェクト光を表現する。
Description
ム、プログラム及び情報記憶媒体に関する。
り、仮想的な3次元空間であるオブジェクト空間内にお
いて仮想カメラ(所与の視点)から見える画像を生成す
る画像生成システム(ゲームシステム)が知られてお
り、いわゆる仮想現実を体験できるものとして人気が高
い。格闘ゲームを楽しむことができる画像生成システム
を例にとれば、プレーヤは、ゲームコントローラ(操作
部)を用いて自キャラクタ(オブジェクト)を操作し、
相手プレーヤやコンピュータが操作する敵キャラクタと
対戦することでゲームを楽しむ。
照明方向ベクトル、色、光源位置などの光源情報が設定
された光源が用意される。そして、この光源情報と照明
モデルとに基づいて、グーロー(Gouraud)シェーディ
ング、フォン(Phong)シェーディングなどの種々のス
ムースシェーディングが行われ、オブジェクトの陰影づ
けが行われる。
いて、よりリアルな画像を生成するためには、より多く
の光源を用意することが望ましい。例えば、日光(太
陽)を表現する光源のみならず、松明、炎、エフェクト
などを表現する種々の光源を用意することが望ましい。
と、その分だけ画像生成システムの処理負荷が増えてし
まう。このため、光源の数を増やしすぎると、1フレー
ム以内に全ての処理を完了させるというリアルタイム処
理の要請に応えることが難しくなるという課題がある。
れたものであり、その目的とするところは、少ない処理
負荷でリアルな光源処理を実現できる画像生成システ
ム、プログラム及び情報記憶媒体を提供することにあ
る。
に、本発明は、オブジェクト空間において所与の視点か
ら見える画像を生成するための画像生成システムであっ
て、オブジェクトを照明するための複数の光源を用意
し、複数の光源の各光源に対して、オブジェクトに対す
る各光源の照明方向ベクトルを設定する光源設定部と、
複数の光源の照明方向ベクトルを合成し、オブジェクト
に対する合成光源の照明方向ベクトルをオブジェクト毎
に求める光源合成部と、合成光源に基づいて、オブジェ
クトのシェーディングを行うシェーディング部とを含む
ことを特徴とする。また本発明に係るプログラムは、上
記各部としてコンピュータを機能させることを特徴とす
る。また本発明に係る情報記憶媒体は、コンピュータ読
み取り可能な情報記憶媒体であって、上記各部としてコ
ンピュータを機能させるためのプログラムを記憶(記
録)したことを特徴とする。
の複数の光源が用意(設定、配置)される。そして、こ
れらの複数の光源の照明方向ベクトルを合成すること
で、合成光源の照明方向ベクトルが求められ、合成光源
に基づいてオブジェクトのシェーディングが行われる。
ィングに使用される光源(合成光源)の数を少なくする
ことができるため、処理負荷を軽減できる。そして本発
明では、論理的に用意された複数の光源に基づいて合成
光源が生成され、この合成光源に基づいてオブジェクト
のシェーディングが行われるため、よりリアルな光源処
理を実現できる。
パラメータを用いる場合も、本発明の範囲に含めること
ができる。
合には、その照明方向ベクトルは、オブジェクトとの位
置関係に依存せずに一義的に決めることができる。
グラム及び情報記憶媒体では、前記光源合成部が、複数
の光源に設定された色を合成することで、合成光源の色
を求めるようにしてもよい。
ルの合成率は、同じ合成率であってもよいし、違う合成
率であってもよい。
グラム及び情報記憶媒体では、前記光源合成部が、光源
の合成率を、合成される複数の光源の照明方向ベクトル
の内積、及び、合成される複数の光源の明度の割合の少
なくとも一方に基づいて求めるようにしてもよい。
積又は内積に変換処理を施したものや、明度割合又は明
度割合に変換処理を施したものなどに基づいて求めるこ
とができる。また、光源の合成率は、例えば、光源情報
(照明方向ベクトル又は色等)の合成率である。
グラム及び情報記憶媒体では、前記複数の光源が疑似点
光源を含み、前記光源設定部が、オブジェクトと疑似点
光源との位置関係に基づいて、オブジェクトに対する疑
似点光源の照明方向ベクトルと疑似点光源の明度を設定
するようにしてもよい。
位置関係としては、オブジェクトと疑似点光源の間の距
離や、オブジェクトと疑似点光源とを結ぶ方向などを考
えることができる。
グラム及び情報記憶媒体では、光源の明度に基づいて複
数の光源の中から基底光源を選択する基底光源選択部を
含み(或いは基底光源選択部としてコンピュータを機能
させるためのプログラム又は該プログラムを記憶した情
報記憶媒体であって)、前記光源合成部が、選択された
基底光源よりも他の光源の合成率が低くなるように、選
択された基底光源に対して他の光源を合成するようにし
てもよい。
明度は、光源の明度に変換処理を施したものであっても
よい。また、光源の合成率は、例えば、光源情報(照明
方向ベクトル又は色等)の合成率などである。
グラム及び情報記憶媒体では、前記光源合成部が、第N
のフレームでは第Kの光源が基底光源として選択され、
次の第N+1のフレームでは第Lの光源が基底光源とし
て選択された場合には、合成処理に対する第Kの光源の
影響度がフレーム経過に伴い減少するように、光源の合
成を行うようにしてもよい。
より制御されるものである。また、基底光源の切替時
に、第Kの光源の影響度を零又はほぼ零にすることも可
能である。
グラム及び情報記憶媒体では、前記光源合成部が、現在
のフレームで得られた合成光源に前回のフレームで得ら
れた合成光源を合成し、最終的な合成光源を求めるよう
にしてもよい。
前でもよいし、1〜Jフレーム前でもよい。
グラム及び情報記憶媒体では、前記光源合成部が、現在
のフレームで得られた合成光源と前回のフレームで得ら
れた合成光源との合成率を、可変に制御するようにして
もよい。
間要素に基づいて制御してもよいし、ゲームイベント
(ヒットイベント、オブジェクトの移動・動作)の発生
に基づいて制御してもよい。
グラム及び情報記憶媒体では、前記光源合成部が、複数
の光源のうち、合成処理の対象とならなかった光源の色
を、アンビエント光の色に付加するようにしてもよい。
グラム及び情報記憶媒体では、前記光源設定部が、オブ
ジェクトに対するヒットイベントが発生した場合に、複
数のヒット位置に前記複数の光源を設定し、前記光源合
成部が、複数のヒット位置に設定された複数の光源を合
成し、合成光源を求めるようにしてもよい。
所与の視点から見える画像を生成する画像生成システム
であって、複数の光源を設定する光源設定部と、設定さ
れた複数の光源を合成し、合成光源を求める光源合成部
と、求められた合成光源に基づいて、オブジェクトのシ
ェーディングを行うシェーディング部とを含み、前記光
源合成部が、複数の光源のうち、合成処理の対象となら
なかった光源の色を、アンビエント光の色に付加するこ
とを特徴とする。また本発明に係るプログラムは、上記
各部としてコンピュータを機能させることを特徴とす
る。また本発明に係る情報記憶媒体は、コンピュータ読
み取り可能な情報記憶媒体であって、上記各部としてコ
ンピュータを機能させるためのプログラムを記憶(記
録)したことを特徴とする。
処理の対象とならなかった光源が特定される。そして、
この光源の色が、アンビエント光の色に付加(合成、ブ
レンド)されて、オブジェクトのシェーディングが行わ
れる。これにより、合成処理の対象とならなかった光源
の影響を残すことが可能になり、よりリアルな画像表現
を実現できる。
光の色に付加してもよいし、光源の色に変換処理を施し
たものを、アンビエント光の色に付加してもよい。
所与の視点から見える画像を生成する画像生成システム
であって、オブジェクトに対するヒットイベントが発生
した場合に、オブジェクトのヒットチェックを行い、ヒ
ット位置を求めるヒットチェック部と、求められた複数
のヒット位置に、ヒットエフェクト光を表すための複数
の光源を設定する光源設定部と、複数のヒット位置に設
定された複数の光源を合成し、合成光源を求める光源合
成部と、求められた合成光源に基づいて、オブジェクト
のシェーディングを行うシェーディング部とを含むこと
を特徴とする。また本発明に係るプログラムは、上記各
部としてコンピュータを機能させることを特徴とする。
また本発明に係る情報記憶媒体は、コンピュータ読み取
り可能な情報記憶媒体であって、上記各部としてコンピ
ュータを機能させるためのプログラムを記憶(記録)し
たことを特徴とする。
そのヒット位置に光源が設定(配置)される。そして、
設定された光源が合成され、求められた合成光源に基づ
いてオブジェクトのシェーディングが行われる。これに
より、ヒットイベント時に発生するヒットイベント光の
表現を、簡素で自動的な処理により実現できるようにな
る。
用いて説明する。
請求の範囲に記載された本発明の内容を不当に限定する
ものではない。また本実施形態で説明される構成の全て
が、本発明の必須構成要件であるとは限らない。
ム)の機能ブロック図の一例を示す。なお同図において
本実施形態は、少なくとも処理部100を含めばよく
(或いは処理部100と記憶部170を含めばよく)、
それ以外の各部(機能ブロック)については任意の構成
要素とすることができる。
入力するためのものであり、その機能は、レバー、ボタ
ン、ステアリング、シフトレバー、アクセルペダル、ブ
レーキペダル、マイク、センサー、或いは筺体などのハ
ードウェアにより実現できる。
96などのワーク領域となるもので、その機能はRAM
などのハードウェアにより実現できる。
読み取り可能な媒体)は、プログラムやデータなどを格
納するものであり、その機能は、光ディスク(CD、D
VD)、光磁気ディスク(MO)、磁気ディスク、ハー
ドディスク、磁気テープ、或いはメモリ(ROM)など
のハードウェアにより実現できる。処理部100は、こ
の情報記憶媒体180に格納されるプログラム(デー
タ)に基づいて本実施形態の種々の処理を行う。即ち情
報記憶媒体180には、本実施形態の各部(各手段)と
してコンピュータを機能させるためのプログラム(各部
をコンピュータに実現させるためのプログラム)が記憶
(記録、格納)される。
れた画像を出力するものであり、その機能は、CRT、
LCD、或いはHMD(ヘッドマウントディスプレイ)
などのハードウェアにより実現できる。
された音を出力するものであり、その機能は、スピー
カ、或いはヘッドフォンなどのハードウェアにより実現
できる。
個人データやゲームのセーブデータなどが記憶されるも
のであり、この携帯型情報記憶装置194としては、メ
モリカードや携帯型ゲーム装置などを考えることができ
る。
や他の画像生成システム)との間で通信を行うための各
種の制御を行うものであり、その機能は、各種プロセッ
サ又は通信用ASICなどのハードウェアや、プログラ
ムなどにより実現できる。
ンピュータを機能させるためのプログラム(データ)
は、ホスト装置(サーバー)が有する情報記憶媒体から
ネットワーク及び通信部196を介して情報記憶媒体1
80(記憶部170)に配信するようにしてもよい。こ
のようなホスト装置(サーバー)の情報記憶媒体の使用
も本発明の範囲内に含まれる。
60からの操作データやプログラムなどに基づいて、ゲ
ーム処理、画像生成処理、或いは音生成処理などの各種
の処理を行う。この場合、処理部100は、記憶部17
0内の主記憶部172をワーク領域として使用して、各
種の処理を行う。この処理部100の機能は、各種プロ
セッサ(CPU、DSP等)又はASIC(ゲートアレ
イ等)などのハードウェアや、プログラム(ゲームプロ
グラム)により実現できる。
は、コイン(代価)の受け付け処理、各種モードの設定
処理、ゲームの進行処理、選択画面の設定処理、オブジ
ェクト(1又は複数のプリミティブ)の位置や回転角度
(X、Y又はZ軸回り回転角度)を求める処理、オブジ
ェクトを動作させる処理(モーション処理)、視点の位
置(仮想カメラの位置)や視線角度(仮想カメラの回転
角度)を求める処理、マップオブジェクトなどのオブジ
ェクトをオブジェクト空間へ配置する処理、ヒットチェ
ック処理、ゲーム結果(成果、成績)を演算する処理、
複数のプレーヤが共通のゲーム空間でプレイするための
処理、或いはゲームオーバー処理などを考えることがで
きる。
0、オブジェクト空間設定部112、ヒットチェック部
114、光源設定部116、基底光源選択部118、光
源合成部119、画像生成部120、音生成部130を
含む。なお、処理部100は、これらの各部(機能ブロ
ック)を全て含む必要はなく、その一部を省略してもよ
い。
(移動体)の移動情報(位置、回転角度)や動作情報
(オブジェクトの各パーツの位置、回転角度)を求める
処理を行う。即ち、操作部160によりプレーヤが入力
した操作データやゲームプログラムなどに基づいて、オ
ブジェクトを移動させたり動作(モーション、アニメー
ション)させたりする処理を行う。
は、オブジェクト(移動体)の位置や回転角度を例えば
1フレーム(1/60秒、1/30秒等)毎に変化させ
る。例えば(k−1)フレームでのオブジェクトの位
置、回転角度をPk-1、θk-1とし、オブジェクトの1フ
レームでの位置変化量(速度)、回転変化量(回転速
度)を△P、△θとする。するとkフレームでのオブジ
ェクトの位置Pk、回転角度θkは例えば下式(1)、
(2)のように求められる。
タ、車、戦車、ロボット)、柱、壁、建物、マップ(地
形)などの各種オブジェクト(ポリゴン、自由曲面又は
サブディビジョンサーフェスなどのプリミティブ面で構
成されるオブジェクト)をオブジェクト空間内に配置設
定するための処理を行う。より具体的には、ワールド座
標系でのオブジェクトの位置や回転角度(方向)を決定
し、その位置(X、Y、Z)にその回転角度(X、Y、
Z軸回りでの回転)でオブジェクトを配置する。
(キャラクタ)に対して、攻撃(キック、パンチ又はシ
ョット等)がヒットしたか否かをチェックする処理を行
う。具体的には、一方のオブジェクトの部位(手、足)
や武器(剣、ショット)が、他方のオブジェクト(体、
武器)にヒットしたか否かをチェックする。そして、他
方のオブジェクトに攻撃がヒットした場合には、攻撃が
ヒットしたことをプレーヤに視覚的に伝えられるための
ヒットエフェクト光(ヒットエフェクト画像)が生成さ
れる。また、他方のオブジェクトは、攻撃を受けたこと
を示すモーション(やられモーション、被ヒットモーシ
ョン)を行うようになる。
を簡略化して擬似的に表したヒットボリューム(ヒット
ボックス、ヒットエリア、簡易オブジェクト)や、オブ
ジェクトの部位(手、足)や武器などが描く軌道を簡略
化して擬似的に表したヒットボリュームを用いて、ヒッ
トチェックを行うことが望ましい。
(配置)する処理を行う。具体的には、オブジェクト
(照明位置又はオブジェクトの代表位置)を照明するた
めの複数の光源(論理的な光源)を用意し、複数の光源
の各光源に対して、照明方向ベクトル、色、明度又は光
源位置などの光源情報(属性情報)を設定する。
に対するヒットイベントが発生した場合に、ヒットチェ
ック部114により検出されたヒット位置に、ヒットエ
フェクト光を表すための光源を設定(配置)する処理も
行う。
源情報)に基づいて、複数の光源の中から基底光源(メ
イン光源、基準光源)を選択する処理(光源のソート処
理)を行う。
る処理(照明方向ベクトルの合成処理、色の合成処理
等)を行い、合成光源(合成ベクトルや合成色などを、
光源情報として有する光源)を求める処理を行う。より
具体的には、光源設定部116により設定された複数の
光源の照明方向ベクトルを合成し、合成光源の照明方向
ベクトル(合成ベクトル)を求める。或いは、複数の光
源に設定された色を合成することで、合成光源の色(合
成色)を求める。
照明方向ベクトルの内積(内積と数学的に均等なものを
含む)や、明度の割合(明度を関数により変換したもの
の割合を含む)などに基づいて。光源の合成率(照明方
向ベクトルの合成率、色の合成率又は光源位置の合成率
等)を得る。
部118により選択された基底光源(基底ベクトル)に
対して、他の光源(照明方向ベクトル)を合成する処理
を行う。そして、前のフレームで選択された光源とは異
なる光源が基底光源選択部118により基底光源として
選択された場合には、前のフレームで選択された光源の
影響度(合成率)が、その後のフレーム経過に伴い徐々
に減少するように、光源の合成を行う。これにより、光
源の切り替わりが目立ってしまう事態を防止できる。
れる種々の処理の結果に基づいて画像処理を行い、ゲー
ム画像を生成し、表示部190に出力する。例えば、い
わゆる3次元のゲーム画像を生成する場合には、まず、
座標変換、クリッピング処理、透視変換或いは光源処理
等のジオメトリ処理が行われ、その処理結果に基づい
て、描画データ(プリミティブ面の頂点(構成点)に付
与される位置座標、テクスチャ座標、色(輝度)デー
タ、法線ベクトル或いはα値等)が作成される。そし
て、この描画データ(プリミティブ面データ)に基づい
て、ジオメトリ処理後のオブジェクト(1又は複数プリ
ミティブ面)の画像が、描画バッファ174(フレーム
バッファ、ワークバッファ等のピクセル単位で画像情報
を記憶できるバッファ)に描画される。これにより、オ
ブジェクト空間内において仮想カメラ(所与の視点)か
ら見える画像が生成されるようになる。
る種々の処理の結果に基づいて音処理を行い、BGM、
効果音、又は音声などのゲーム音を生成し、音出力部1
92に出力する。
122は、オブジェクトに陰影をつけるための処理を行
う。より具体的には、光源情報(照明方向ベクトル、色
又は光源位置等)、照明モデル、オブジェクトの法線ベ
クトル(頂点又は面の法線ベクトル)などに基づいてシ
ェーディング処理を行う。
ブジェクトの各点(ピクセル、ドット)での光の色(R
GB、YCrCb、YUV、YIQ)を決定する処理と
定義できる。そして、このシェーディング処理は、実世
界での照明現象を模擬した数学的なモデルである照明モ
デルを用いて行われる。この照明モデルとしては、実世
界現象のモデル化の態様に応じて、ランバード(Lamber
t)、フォン(Phong)、ブリン(Blinn)などの種々の
モデルがある。また、プリミティブ面(ポリゴン、曲面
等)の陰影づけを滑らかにして、プリミティブ面の境界
を目立たなくする手法として、グーロー(Gouraud)シ
ェーディング、フォン(Phong)シェーディングなどの
種々のスムースシェーディング手法がある。
1人のプレーヤのみがプレイできるシングルプレーヤモ
ード専用のシステムにしてもよいし、このようなシング
ルプレーヤモードのみならず、複数のプレーヤがプレイ
できるマルチプレーヤモードも備えるシステムにしても
よい。
これらの複数のプレーヤに提供するゲーム画像やゲーム
音を、1つの端末を用いて生成してもよいし、ネットワ
ーク(伝送ライン、通信回線)などで接続された複数の
端末(ゲーム機、携帯電話)を用いて生成してもよい。
なお、以下では、格闘ゲームに本実施形態を適用した場
合を主に例にとり説明するが、本実施形態は、格闘ゲー
ム以外の種々のゲームに広く適用できる。
には、より多くの数の光源を用いてシェーディングを行
うことが望ましい。
の分だけシェーディングの処理負荷が重くなってしまう
という問題がある。
ジェクトの頂点に設定された法線ベクトルと光源の照明
方向ベクトルとの内積を求めることで、オブジェクトの
各頂点色を求める。従って、オブジェクトの頂点数がI
個であり、光源の数が1個の場合には、頂点色を求める
処理がI回分だけ必要になる。従って、光源の数がJ個
になると、頂点色を求める処理が(I×J)回分だけ必
要になってしまう。
いため、このように光源数を増やすことによる処理負荷
の増加は過大なものとなる。
態では以下のような手法を採用している。
うに、複数の光源LS1、LS2を用意する(3個以上
用意してもよい)。
トルがV11であり、その色がC1であり、その明度が
BR1(例えば色C1をグレースケールで表した時の明
るさ)である。ここで、照明方向ベクトルV11は、光
源LS1とオブジェクトOB1(照明位置又はOB1の
代表位置LP1)とを結ぶ方向に沿ったベクトル(単位
ベクトル)である。
ルがV21であり、その色がC2であり、その明度がB
R2である。ここで、照明方向ベクトルV21は、光源
LS2とオブジェクトOB1(照明位置又は代表位置L
P1)とを結ぶ方向に沿ったベクトル(単位ベクトル)
である。
これらの光源LS1、LS2(論理的な光源)を合成す
ることで、オブジェクトOB1に対する合成光源LSS
1(シェーディング用の光源)を求める。
する光源LS1、LS2の照明方向ベクトルV11、V
21を合成し、合成光源LSS1の照明方向ベクトルV
S1(単位ベクトル)を求める。また、光源LS1、L
S2の色C1、C2を合成し、合成光源LSS1の色C
S1を求める。
を用いて、オブジェクトOB1に対するシェーディング
を行う。即ち、光源LS1、LS2の代わりに、照明方
向ベクトルがVS1で色がCS1である合成光源LSS
1(平行光源)が仮想的に存在すると考え、この合成光
源LSS1だけを用いてシェーディングを行う。
2(B)に示すような合成処理を行う。即ち、光源LS
1、LS2を合成することで、オブジェクトOB2(照
明位置又はOB2の代表位置LP2)に対する合成光源
LSS2を求める。
する光源LS1、LS2の照明方向ベクトルV12、V
22を合成し、合成光源LSS2の照明方向ベクトルV
S2を求める。また、光源LS1、LS2の色C1、C
2を合成し、合成光源LSS2の色CS2を求める。
を用いて、オブジェクトOB2に対するシェーディング
を行う。
1、LS2)は複数個存在するにも拘わらず、シェーデ
ィング用の物理的な光源は例えば1個で済むため、シェ
ーディングの処理負荷を軽減できる。例えば、オブジェ
クトの頂点数がI個である場合には、頂点色を求める処
理は、各オブジェクトについてI回分だけ行えば済むよ
うになる。
(LS1、LS2)が複数個存在するため、光源が1個
しか存在しない場合に比べてリアルな画像表現が可能に
なる。例えば、光源LS1、LS2の位置関係や色の関
係に応じて、合成光源の照明方向ベクトルや色が様々に
変化するようになる。また、図2(A)、(B)から明
らかなように、オブジェクト毎に、或いはオブジェクト
と光源との位置関係に応じて、シェーディングに使用さ
れる合成光源は異なったものになり、異なったシェーデ
ィングが施されるようになる。
数の光源を用意し、オブジェクトとの位置関係に基づい
て、その複数の光源の中から適当な1つの光源を選択
し、選択された光源を用いてオブジェクトのシェーディ
ングを行う手法が考えられる。
(A)において光源LS1が選択された場合には、光源
LS2の影響が全く無視されてしまう。逆に、光源LS
2が選択された場合には、光源LS1の影響が全く無視
されてしまう。
明方向はV11の方向になり、LS2が選択された場合
にはV21の方向になるというように、照明方向が択一
的になってしまう。同様に、光源LS1の色が白でLS
2の色が赤であったとすると、LS1が選択された場合
には白の陰影づけだけがオブジェクトに施され、LS2
が選択された場合には赤の陰影づけだけが施されるよう
になり、陰影づけされる色も択一的になってしまう。従
って、今ひとつリアルな画像を生成できない。
SS1の照明方向、色は、光源LS1の照明方向、色の
みならず、光源LS2の照明方向、色の影響も受けるよ
うになる。従って、上記の手法に比べて、得られる画像
のリアル度を格段に高めることができる。
に、2個又は3個の数の光源を合成する場合を主に例に
とり説明する。しかしながら、この明細書で説明する本
実施形態の手法は、3個以上又は4個以上の数の光源を
使用する場合にも当然に拡張できる。
の合成率、色の合成率)を、以下に説明する手法で求め
ている。
1、LS2の明度をBR1、BR2とした場合に、明度
の割合BRP(例えばBRP=BR2/BR1)を求め
る。
トルV1、V2の内積VIP=V1・V2を求める。
Pに基づいて、合成率γ=F(BRP、VIP)を求め
る。ここで、F(BRP、VIP)は、BRP、VIP
を引数とする関数である。
1、LS2の照明方向ベクトルV1、V2を合成し、合
成光源LSSの照明方向ベクトルVSを求める。或い
は、LS1、LS2の色C1、C2を合成し、LSSの
色CSを求める。
S、V1、V2のX、Y、Z座標の各々について行う。
また、上式(4)の色合成処理は、色CS、C1、C2
のR、G、B成分(広義には第1〜第3の成分)の各々
について行う。
ディング方式を採用しているが、下式のような狭義のブ
レンディング方式を採用してもよい。
率)BRPは、BR1、BR2そのものの割合(比率)
であってもよいし、BR1、BR2を関数等で変換する
ことで得られるBR1’、BR2’の割合であってもよ
い。
例えばF(BRP、VIP)=K×BRP×VIP(K
は定数)を考えることができる。また、関数G、Hを用
いて、F(BRP、VIP)=K×G(BRP)×H
(VIP)とすることもできる。ここで、関数G、Hと
しては、引数を非線形変換する関数(正弦関数、余弦関
数、n次式)などを採用できる。
いて求めたり、明度割合BRPにのみに基づいて求めて
もよい。
1、LS2の照明方向ベクトルV1、V2の内積VIP
を用いて合成率γを求めている。従って、図3(A)、
(B)に示すように、照明方向ベクトルV1、V2間の
なす角度に応じて、合成率γも変化するようになり、多
様な画像表現を実現できる。
率γを求めるようにすれば、図3(B)のようにV1と
V2のなす角度が大きくなって90度に近づいたとして
も、合成光源LSSの照明方向ベクトルVSの向きを、
V2の方向よりもV1の方向に常に近づけるようにする
ことができる。これにより、例えば照明ベクトルV1
(基底ベクトル)を、常に支配的な光源に設定できるよ
うになる。
の明度BR1、BR2の割合BRPを用いて合成率γを
求めている。従って、明度(RGBをグレースケール変
換した時の明るさ等)の高い方の光源を支配的な光源に
設定することが可能になる。例えば、図3(A)、
(B)において、光源LS1の明度BR1の方が明るい
場合には、合成光源LSSの照明方向ベクトルVSの向
きが、V2の方向よりもV1の方向に近づくようにな
る。
している。
常の平行光源(例えば日光)に設定され、光源LS2は
疑似点光源(例えば松明)に設定されている。そして、
この場合には、オブジェクトOB(照明位置又はOBの
代表位置LP)と疑似点光源LS2との距離DIS(広
義には位置関係)を求める。そして、疑似点光源LS2
の明度BR2を、この距離DISに応じて変化(減衰)
させる。具体的には、例えば、BR2=BR2/DIS
n(例えばn=3)という変換を行う。また、点光源L
S2の照明方向ベクトルV2を、LS2からOB(L
P)へと向かう方向のベクトルに設定する。
がら、擬似的に点光源を表現できるようになる。
クトOBと疑似点光源LS2との位置関係(距離関係、
方向関係)が変化すると、OBに対するLS2の明度B
R2が変化(増減)したり、照明方向ベクトルV2の方
向が変化するようになる。
された光源LS1については、その明度BR1や照明方
向ベクトルV1の方向は、オブジェクトOBが移動して
も一定になる。但し、BR1やV1の方向を、時間経過
やゲームイベントの発生に伴い変化させるようにしても
よい。
る画像の例を示す。
空間)の全体を示す画像の例である。このゲームフィー
ルドには、日光を表現する光源LS1や、松明を表現す
る疑似点光源LS2などが設定されており、これらの光
源LS1、LS2を用いてオブジェクト(キャラクタ)
OB1、OB2のシェーディングが行われる。
LS1、LS2を合成し、求められた合成光源を用いて
オブジェクトOB1をシェーディングした場合の画像の
例である。
オブジェクトOB1の体全体が、光源LS1、LS2の
合成光源により自然にシェーディングされるようにな
る。また、合成光源の色は、日光(LS1)の白と松明
(LS2)の赤が合成された色になる。従って、あたか
も2つの光源でシェーディングしたかのように見えるリ
アルな画像を提供できる。また、オブジェクトOB1
が、松明(LS2)から離れた位置から松明の方に近づ
いて行った場合に、日光により支配的にシェーディング
される状態から、松明により支配的にシェーディングさ
れる状態に徐々に移行するようになり、より自然な画像
表現が可能になる。
てオブジェクトOB1をシェーディングした場合の画像
の例を示し、図8に、松明(LS2)だけを用いてOB
1をシェーディングした場合の画像の例を示す。
が、オブジェクトOB1のシェーディングの際に考慮さ
れず、日光(LS1)の白の光だけでシェーディングさ
れてしまうため、図6に比べて今ひとつリアルな画像を
表現できない。また、図8では、松明(LS2)からの
赤の色の光だけでオブジェクトOB1がシェーディング
されてしまうため、不自然な画像になってしまう。
松明(LS2)に近づいた時に、所与のタイミングで、
日光(LS1)だけを用いるシェーディングから、松明
(LS2)だけを用いるシェーディングに切り替える手
法を考えることもできる。
ヤの見る画像が、図7の画像から図8の画像に突然切り
替わる事態が生じてしまい、プレーヤが不自然さを感じ
る。
ば、光源LS1、LS2の合成光源でオブジェクトOB
1がシェーディングされるため、上記のような事態を防
止でき、より自然でリアルな画像を生成できる。
から基底光源(メイン光源、基準光源)を、まず選択す
る。そして、この選択された基底光源に対して、他の光
源を合成するようにしている。
光源LS1が基底光源として選択されている。この基底
光源の選択は、例えば光源の明度(広義には光源情報)
に基づいて行う。そして、明度が最も高い光源を基底光
源として選択する。図9(A)では、光源LS1〜LS
3のうち、LS1の明度BR1がLS2、LS3の明度
BR2、BR3よりも高いため、LS1が基底光源とし
て選択される。
た基底光源LS1に対して、他の光源LS2、LS3を
合成する。
手法を用いて、基底光源LS1の照明方向ベクトルV1
に対して、光源LS2、LS3の照明方向ベクトルV
2、V3を合成する。また、LS1の色C1に対して、
LS2、LS3の色C2、C3を合成する。そして、得
られた合成光源LSS(合成ベクトルVS、合成色C
S)でオブジェクトOB(LP)をシェーディングす
る。
も他の光源の合成率が低くなるように、基底光源に対し
て他の光源を合成している。
の明度BR1の方がLS2のBR2より高く、LS1が
基底光源として選択された場合には、合成光源LSSの
照明方向ベクトルVSの方向が、V2の方向よりもV1
の方向に近づくようになる。また、図9(C)に示すよ
うに、LS2の明度BR2の方がLS1のBR1より高
く、LS2が基底光源として選択された場合には、VS
の方向が、V1の方向よりもV2の方向に近づくように
なる。即ち、合成光源の照明方向ベクトルの方向を、明
度が高い基底光源の照明ベクトルの方向の方に自動的に
近づけることができる。これにより、明度が高い基底光
源を支配的な光源に設定して、オブジェクトOBをシェ
ーディングすることが可能になる。
て、オブジェクトOB1と疑似点光源LS2(松明)と
の距離が遠い場合には、図4(A)、(B)で説明した
ようにOB1に対する疑似点光源LS2の明度は低くな
る。従って、この場合には、LS2に比べて明度が高い
光源LS1(日光)が基底光源として選択され、LS1
の照明方向にほぼ一致する照明方向で、オブジェクトO
B1がシェーディングされるようになる。
S2(松明)に近づくと、OB1、LS2間の距離が短
くなり、OB1に対する疑似点光源LS2の明度は高く
なる。そして、OB1、LS2間が所与の距離になる
と、LS2(松明)の明度の方がLS1(日光)の明度
よりも高くなり、LS2が基底光源として選択される。
これにより、LS2の照明方向に近い照明方向で、オブ
ジェクトOB1がシェーディングされるようになる。
合には、LS1(日光)が支配的な光源になるシェーデ
ィングが行われ、OB1、LS2間の距離が近い場合に
は、LS2(松明)が支配的な光源になるシェーディン
グが行われるようになる。
と、例えば基底光源がLS1からLS2に切り替わった
際に、合成光源LSSの照明方向ベクトルVSの方向
が、図9(B)、図9(C)に示すように急激に切り替
わってしまう可能性がある。また、合成光源LSSの色
CSが、例えば白(日光)から赤(松明)に急激に切り
替わってしまう可能性がある。
ばLS1(第Nのフレームの第Kの光源)からLS2
(第N+1のフレームの第Lの光源)に切り替わった場
合に、合成処理に対するLS1の影響度(合成率)が、
フレーム経過に伴い徐々に減少するように、光源の合成
処理を行っている。
LSSのVSの方向が、LS1のV1の方向から、LS
2のV2の方向の方に徐々に変化するように、光源の合
成処理を行っている。また、合成光源LSSの色CS
が、LS1の色C1から、LS2の色C2の方に徐々に
変化するように、光源の合成処理を行っている。
えば以下のような手法で実現できる。
フレーム(第Nのフレーム)で得られた合成光源LS
S’の情報(VS’、CS’)を破棄せずに取ってお
く。そして、この前回(過去)のフレームの合成光源L
SS’と、現在のフレーム(第N+1のフレーム)の合
成光源LSSを合成し、最終的な合成光源LSSLを求
める。そして、このLSSLを用いてオブジェクトOB
をシェーディングする。
S’の照明方向ベクトルVS’、色CS’と、現在のフ
レームの合成光源LSSの照明方向ベクトルVS、色C
Sとを、合成率GRを用いて下式のように合成し、最終
的な合成光源LSSLの照明方向ベクトルVSL、色C
SLを求める。
ィング方式ではなく、前述した式(3)、(4)のよう
な加算ブレンディング方式で合成処理を行ってもよい。
るようにしてもよい。
9(B)の状態から図9(C)の状態に素早く移行させ
たい場合には、合成率GRを1.0(最大値)に設定し
たり、1.0に近い値に設定する。
ら明らかなように、前回(過去)のフレームの合成光源
LSS’のVS’、CS’が、最終的な合成光源LSS
LのVSL、CSLに対して与える影響が少なくなる。
これにより、光源の素早い切替が可能になる。
0(A)に示すように、LSSのVSやCSを徐々に変
化させたい場合には、GRを小さな値(0.0に近い
値)に設定する。或いは、小さな値から大きな値にフレ
ーム経過に伴い変化するように、GRを設定する。
ら明らかなように、前回(過去)のフレームの合成光源
LSS’のVS’、CS’の影響が強く残るようにな
る。これにより、最終的な合成光源LSSLのVSL、
CSLがゆっくりと変化するようになり、より自然で滑
らかな光源の切替が可能になる。
ならなかった光源の色を、アンビエント光の色に付加す
るようにしている。
S2、LS3を合成することで、合成光源LSSが求め
られ、LSSに基づいてオブジェクトOBのシェーディ
ングが行われている。
Bが移動しており、OBとLS1、LS2、LS3の位
置関係が変化している。そして図11(B)では、基底
光源となるLS1の照明方向ベクトルV1と、光源LS
2の照明方向ベクトルV2とのなす角度が90度(直
角)以上になっている。
SSの合成処理に及んだままになると、不自然な事態が
生じるおそれがある。特に、光源の合成率γを、図3
(A)、(B)に示すように内積値VIPに基づいて求
めている場合には、V1とV2のなす角度が90度より
も広がると、VIPが負の値になってしまい、合成率γ
を適切に求めることができなくなるおそれがある。
うにV1とV2のなす角度が90度以上になった場合に
は、光源LS2を合成処理の対象から除外している。そ
して、この除外された光源LS2の色C2を、アンビエ
ント光の色(RGB)に付加する。
理の対象からは除外されるものの、その影響は、アンビ
エント光の色として残るようになる。
と松明(LS2)の位置関係が変化し、松明が光源の合
成処理の対象から除外された場合を考える。このような
場合に、松明(LS2)による照明の影響が全く無くな
ってしまうと、今ひとつリアルな画像を生成できない。
明(LS2)の色(赤)がアンビエント光の色に付加さ
れる。従って、松明による赤の照明の影響が少なからず
残るようになり、少ない処理でリアルな画像の生成が可
能になる。
合成処理の対象から除外するか否かは、V1とV2の内
積VIPが負になったか否かで判断することが望ましい
が、これとは異なる基準で判断するようにしてもよい。
ント光の色に付加する代わりに、C2に変換処理を施
し、変換処理後のC2をアンビエント光の色に付加する
ようにしてもよい。
ラクタ)の攻撃(武器、キック、パンチ)が他方のオブ
ジェクトにヒットするヒットイベントの発生時に、ヒッ
トイベントが発生したことをプレーヤに視覚的に伝える
ヒットエフェクト光を表示することが望ましい。
の表示を、図2(A)、(B)で説明した光源合成処理
で実現している。
B2(キャラクタ)の攻撃(武器)がオブジェクトOB
1にヒットしている。そして、ヒットチェック処理によ
り、ヒット位置としてHP1、HP2、HP3、HP4
が検出されている。
示すように、これらの複数のヒット位置HP1、HP
2、HP3、HP4に、ヒットエフェクト光を表現する
ための光源LS1、LS2、LS3、LS4を設定(配
置)する。
2(A)、(B)で説明した手法により合成すること
で、図13(A)に示すように、合成光源LSS1を求
める。そして、求められた合成光源LSS1に基づいて
オブジェクトOB1のシェーディングを行う。
オブジェクトOB1の代表位置LP1に向かう方向の照
明方向ベクトルを求める。そして、これらの照明方向ベ
クトルを合成し、合成光源LSS1の照明方向ベクトル
VS1を求める。また、光源LS1〜LS4の色を合成
し、合成光源LSS1の色CS1を求める。
S1、色CS1を用いて、オブジェクトOB1の各頂点
の色などを求め、OB1のシェーディングを行う。
13(B)に示すような合成光源LSS2を求める。そ
して、求められた合成光源LSS2に基づいてオブジェ
クトOB2のシェーディングを行う。
オブジェクトOB2の代表位置LP2に向かう方向の照
明方向ベクトルを求める。そして、これらの照明方向ベ
クトルを合成し、合成光源LSS2の照明方向ベクトル
を求める。また、光源LS1〜LS4の色を合成し、合
成光源LSS2の色CS2を求める。そして、求められ
た照明方向ベクトルLSS2、色CS2を用いて、オブ
ジェクトOB2の各頂点の色などを求め、OB2のシェ
ーディングを行う。
本実施形態の手法により生成される画像の例を示す。
複数個の光源で構成されているかのように見えるヒット
エフェクト光を、簡素な処理で生成できる。
ヒット位置に複数の光源を配置するだけで、その後の光
源合成処理は自動的に行われる。従って、ヒット位置に
応じて処理内容を変えるなどの煩雑な処理を必要とする
ことなく、ヒット位置を反映した適正な合成光源で、オ
ブジェクトをシェーディングすることが可能になる。
(A)、(B)に示すように、同じヒット位置に基づい
て、オブジェクトOB1用の合成光源LSS1と、オブ
ジェクトOB2用の合成光源LSS2の両方を自動的に
生成できる。そして、これらのLSS1、LSS2を用
いることで、オブジェクトOB1、OB2に対して、異
なったシェーディングを施すことが可能になり、よりリ
アルなシェーディングを実現できる。
ては、合成光源LSS1やLSS2に使用されるシェー
ディング用の物理的な光源を、他の用途に使用すること
が望ましい。ここで、他の用途としては、例えば、オブ
ジェクトの逆光部分を照明する逆光補正用の光源などの
用途が考えられる。そして、ヒットイベントが発生した
ことを条件に、このシェーディング用の物理的な光源
を、図13(A)、(B)に示すようなヒットエフェク
ト光の光源に使用するようにすればよい。
図10(A)、(B)や上式(7)、(8)で説明した
合成率GR(移行速度)を、なるべく大きな値に設定す
ることが望ましい。例えば、ヒットエフェクト光の生成
時には、上式(7)、(8)においてGR=1.0に設
定する。このようにすることで、例えば他の用途の光源
(逆光補正用の光源)からヒットエフェクト用の光源へ
の切替を素早く行うことが可能になる。
16、図17のフローチャートを用いて説明する。
明位置)に対する照明方向ベクトルと明度(減衰度)を
決定する(ステップS1)。ここで、減衰率は、図4
(A)、(B)で説明した疑似点光源の明度の減衰率で
ある。そして、全ての光源について処理が終了するまで
処理を繰り返す(ステップS2)。
後の明度)に基づき、オブジェクトを照明する光源を、
明るい順になるようにソートする(ステップS3)。即
ち、明度が最も高い光源が先頭になるようにソートす
る。そして、全ての光源のソートが終了するまで処理を
繰り返す(ステップS4)。
た光源のうちの先頭の光源か否かを判断する(図16の
ステップS5)。そして、先頭の光源である場合には、
その光源が、前回のフレームで基底光源として使用した
光源と同じか否かを判断する(ステップS6)。そし
て、同じ光源である場合にはステップS10に移行す
る。
り替わった場合)には、合成率GRの移行速度SSを早
くするか否かを判定する(ステップS7)。そして、速
くする場合(図12(A)〜図14のヒットエフェクト
光の場合)には、SSを1.0(最大値)に設定する
(ステップS8)。一方、速くしない場合(図5の日光
と松明の場合)には、SSを0.0(最小値)に設定す
る(ステップS9)。
(ステップS10)。より具体的には、基底光源(図9
(A)〜(C)参照)の照明方向ベクトルを基底ベクト
ルVBに設定すると共に合成ベクトルVSの初期値に設
定する。また、基底光源の明度を基底明度BRBに設定
し、基底光源の色を合成色CSの初期値に設定する。そ
して、追従度Tを1.0に設定し(ステップS11)、
ステップS19に移行する。
源ではないと判断された場合には、基底明度BRBに対
する、処理対象光源の明度BRの割合BRPを求め、求
められたBRPを0.0〜1.0の範囲にリミットする
(ステップS12)。また、基底ベクトルVBと処理対
象光源の照明方向ベクトルVとの内積VIPを求める
(ステップS13)。
(ステップS14)、VIP<0の場合には、処理対象
光源の色CとVIPに基づき、アンビエント光の色に付
加すべき色CAを求める(ステップS15。図11
(A)、(B)参照)。
RPと内積VIPに基づいて、合成率γ=F(BRP,
VIP)を求める(ステップS16。図3(A)、
(B)参照)。
いほど小さな値になる追従度T={T+(1−BR
P)}×0.5を設定する(ステップS17)。
の照明方向ベクトルV及び色Cに基づいて、合成ベクト
ルVS=VS+γ×V、合成色CS=CS+γ×Cを求
める。(ステップS18。図2(A)、(B)、図9
(A)、(B)、(C)参照)。そして、全ての処理対
象光源を処理したか否かを判断し(ステップS19)、
処理していない場合にはステップS5に戻る。
17のステップS20)。そして、過去の合成ベクトル
との合成率GRをコントロールするか否かを判断する
(ステップS21)。
は、GR=T3に設定し、得られたGRを0.1〜1.
0の範囲にリミットする(ステップS22)。このよう
にすることで、GRは、T=1.0付近で急峻に0.0
から1.0に変化するようになる。一方、GRをコント
ロールしない場合には、GR=1.0に設定する(ステ
ップS23)。
たGRを0.05〜1.0の範囲にリミットする(ステ
ップS24)。GR≧0.05となるようにGRをリミ
ットすることで、移行速度SS=0.0の場合にも、G
Rが0.05よりも小さくならないことが保証されるよ
うになる。
ばM=24)に設定し、得られたSSを0.0〜1.0
の範囲にリミットする(ステップS25)。このように
することで、移行速度SSが、フレーム経過に伴い徐々
に増加するようになる。
S’と、今回のフレームの合成ベクトルVSと、合成率
GRに基づき、最終合成ベクトルVSL=(1.0−G
R)×VS’+GR×VSを求める(ステップS26。
図10(B)参照)。
今回のフレームの合成色CSと、合成率GRに基づき、
最終合成色CSL=(1.0−GR)×CS’+GR×
CSを求める(ステップS27)。
Lと、最終合成色CSLと、移行速度SSを、次のフレ
ームの処理に使用するために主記憶部に保存する(ステ
ップS28)。
成色CSLに基づき、オブジェクトのシェーディングを
行う(ステップS29)。
の光源の合成処理が完了し、オブジェクトをシェーディ
ングすることができる。
例について図18を用いて説明する。
(情報記憶媒体)に格納されたプログラム、通信インタ
ーフェース990を介して転送されたプログラム、或い
はROM950(情報記憶媒体の1つ)に格納されたプ
ログラムなどに基づき動作し、ゲーム処理、画像処理、
音処理などの種々の処理を実行する。
900の処理を補助するものであり、高速並列演算が可
能な積和算器や除算器を有し、マトリクス演算(ベクト
ル演算)を高速に実行する。例えば、オブジェクトを移
動させたり動作(モーション)させるための物理シミュ
レーションに、マトリクス演算などの処理が必要な場合
には、メインプロセッサ900上で動作するプログラム
が、その処理をコプロセッサ902に指示(依頼)す
る。
換、透視変換、光源計算、曲面生成などのジオメトリ処
理を行うものであり、高速並列演算が可能な積和算器や
除算器を有し、マトリクス演算(ベクトル演算)を高速
に実行する。例えば、座標変換、透視変換、光源計算な
どの処理を行う場合には、メインプロセッサ900で動
作するプログラムが、その処理をジオメトリプロセッサ
904に指示する。
た画像データや音データを伸張するデコード処理を行っ
たり、メインプロセッサ900のデコード処理をアクセ
レートする処理を行う。これにより、オープニング画
面、インターミッション画面、エンディング画面、或い
はゲーム画面などにおいて、MPEG方式等で圧縮され
た動画像を表示できるようになる。なお、デコード処理
の対象となる画像データや音データは、ROM950、
CD982に格納されたり、或いは通信インターフェー
ス990を介して外部から転送される。
などのプリミティブ(プリミティブ面)で構成されるオ
ブジェクトの描画(レンダリング)処理を高速に実行す
るものである。オブジェクトの描画の際には、メインプ
ロセッサ900は、DMAコントローラ970の機能を
利用して、オブジェクトデータを描画プロセッサ910
に渡すと共に、必要であればテクスチャ記憶部924に
テクスチャを転送する。すると、描画プロセッサ910
は、これらのオブジェクトデータやテクスチャに基づい
て、Zバッファなどを利用した陰面消去を行いながら、
オブジェクトをフレームバッファ922に高速に描画す
る。また、描画プロセッサ910は、αブレンディング
(半透明処理)、デプスキューイング、ミップマッピン
グ、フォグ処理、バイリニア・フィルタリング、トライ
リニア・フィルタリング、アンチエリアシング、シェー
ディング処理なども行うことができる。そして、1フレ
ーム分の画像がフレームバッファ922に書き込まれる
と、その画像はディスプレイ912に表示される。
ルのADPCM音源などを内蔵し、BGM、効果音、音
声などの高品位のゲーム音を生成する。生成されたゲー
ム音は、スピーカ932から出力される。
ン、筺体、パッド型コントローラ又はガン型コントロー
ラ等)からの操作データや、メモリカード944からの
セーブデータ、個人データは、シリアルインターフェー
ス940を介してデータ転送される。
が格納される。なお、業務用ゲームシステムの場合に
は、ROM950が情報記憶媒体として機能し、ROM
950に各種プログラムが格納されることになる。な
お、ROM950の代わりにハードディスクを利用する
ようにしてもよい。
域として用いられる。
サ、メモリ(RAM、VRAM、ROM等)間でのDM
A転送を制御するものである。
データ、或いは音データなどが格納されるCD982
(情報記憶媒体)を駆動し、これらのプログラム、デー
タへのアクセスを可能にする。
ークを介して外部との間でデータ転送を行うためのイン
ターフェースである。この場合に、通信インターフェー
ス990に接続されるネットワークとしては、通信回線
(アナログ電話回線、ISDN)、高速シリアルバスな
どを考えることができる。そして、通信回線を利用する
ことでインターネットを介したデータ転送が可能にな
る。また、高速シリアルバスを利用することで、他の画
像生成システムとの間でのデータ転送が可能になる。
の全てを、ハードウェアのみにより実現してもよいし、
情報記憶媒体に格納されるプログラムや通信インターフ
ェースを介して配信されるプログラムのみにより実現し
てもよい。或いは、ハードウェアとプログラムの両方に
より実現してもよい。
とプログラムの両方により実現する場合には、情報記憶
媒体には、ハードウェア(コンピュータ)を本実施形態
の各部として機能させるためのプログラムが格納される
ことになる。より具体的には、上記プログラムが、ハー
ドウェアである各プロセッサ902、904、906、
910、930等に処理を指示すると共に、必要であれ
ばデータを渡す。そして、各プロセッサ902、90
4、906、910、930等は、その指示と渡された
データとに基づいて、本発明の各部を実現することにな
る。
ムシステム(画像生成システム)に適用した場合の例を
示す。プレーヤは、ディスプレイ1100上に映し出さ
れたゲーム画像を見ながら、操作部1102(レバー、
ボタン)を操作してゲームを楽しむ。内蔵されるシステ
ムボード(サーキットボード)1106には、各種プロ
セッサ、各種メモリなどが実装される。そして、本実施
形態の各部を実現するためのプログラム(データ)は、
システムボード1106上の情報記憶媒体であるメモリ
1108に格納される。以下、このプログラムを格納プ
ログラム(格納情報)と呼ぶ。
ームシステム(画像生成システム)に適用した場合の例
を示す。プレーヤはディスプレイ1200に映し出され
たゲーム画像を見ながら、コントローラ1202、12
04などを操作してゲームを楽しむ。この場合、上記格
納プログラム(格納情報)は、本体システムに着脱自在
な情報記憶媒体であるCD1206、或いはメモリカー
ド1208、1209などに格納されている。
このホスト装置1300とネットワーク1302(LA
Nのような小規模ネットワークや、インターネットのよ
うな広域ネットワーク)を介して接続される端末130
4-1〜1304-n(ゲーム機、携帯電話)とを含むシ
ステムに本実施形態を適用した場合の例を示す。この場
合、上記格納プログラム(格納情報)は、例えばホスト
装置1300が制御可能な磁気ディスク装置、磁気テー
プ装置、メモリなどの情報記憶媒体1306に格納され
ている。端末1304-1〜1304-nが、スタンドア
ロンでゲーム画像、ゲーム音を生成できるものである場
合には、ホスト装置1300からは、ゲーム画像、ゲー
ム音を生成するためのゲームプログラム等が端末130
4-1〜1304-nに配送される。一方、スタンドアロ
ンで生成できない場合には、ホスト装置1300がゲー
ム画像、ゲーム音を生成し、これを端末1304-1〜
1304-nに伝送し端末において出力することになる。
施形態の各部を、ホスト装置(サーバー)と端末とで分
散して実現するようにしてもよい。また、本実施形態の
各部を実現するための上記格納プログラム(格納情報)
を、ホスト装置(サーバー)の情報記憶媒体と端末の情
報記憶媒体に分散して格納するようにしてもよい。
用ゲームシステムであってもよいし業務用ゲームシステ
ムであってもよい。
のに限らず、種々の変形実施が可能である。
語(光源情報、光源の合成、光源等)として引用された
用語(照明方向ベクトル・色・光源位置・明度、照明方
向ベクトル・色の合成、疑似点光源等)は、明細書中の
他の記載においても広義な用語に置き換えることができ
る。
2(A)〜図17で詳細に説明した手法に限定されず、
種々の変形実施が可能である。
パラメータで求めるようにしてもよい。また、光源を合
成する方式も、加算ブレンディング方式や狭義のブレン
ディング方式に限定されない。
の色をアンビエント光の色に付加する発明や、複数のヒ
ット位置に複数の光源を設定して合成光源を求める発明
においては、光源の合成処理を、本実施形態で説明した
ものとは異なる処理で実現してもよい。
においては、従属先の請求項の構成要件の一部を省略す
る構成とすることもできる。また、本発明の1の独立請
求項に係る発明の要部を、他の独立請求項に従属させる
こともできる。
ム、競争ゲーム、シューティングゲーム、ロボット対戦
ゲーム、スポーツゲーム、ロールプレイングゲーム等)
に適用できる。
庭用ゲームシステム、多数のプレーヤが参加する大型ア
トラクションシステム、シミュレータ、マルチメディア
端末、ゲーム画像を生成するシステムボード等の種々の
画像生成システム(ゲームシステム)に適用できる。
図の例である。
手法について説明するための図である。
る手法について説明するための図である。
明するための図である。
である。
である。
例を示す図である。
例を示す図である。
いて光源合成を行う手法について説明するための図であ
る。
における光源合成手法について説明するための図であ
る。
ならなかった光源の色をアンビエント光に付加する手法
について説明するための図である。
に複数の光源を設定して合成する手法について説明する
ための図である。
に複数の光源を設定して合成する手法について説明する
ための図である。
図である。
ーチャートである。
ーチャートである。
ーチャートである。
の一例を示す図である。
態が適用される種々の形態のシステムの例を示す図であ
る。
向ベクトル LSS1、LSS2、LSS 合成光源 CS1、CS2、CS 色 VS1、VS2、VS 照明方向ベクトル OB1、OB2、OB オブジェクト LP1、LP2、LP 照明位置、代表位置 100 処理部 110 移動・動作処理部 112 オブジェクト空間設定部 114 ヒットチェック部 116 光源設定部 118 基底光源選択部 119 光源合成部 120 画像生成部 122 シェーディング部 130 音生成部 160 操作部 170 記憶部 172 主記憶部 174 描画バッファ 180 情報記憶媒体 190 表示部 192 音出力部 194 携帯型情報記憶装置 196 通信部
Claims (25)
- 【請求項1】 オブジェクト空間において所与の視点か
ら見える画像を生成するための画像生成システムであっ
て、 オブジェクトを照明するための複数の光源を用意し、複
数の光源の各光源に対して、オブジェクトに対する各光
源の照明方向ベクトルを設定する光源設定部と、 複数の光源の照明方向ベクトルを合成し、オブジェクト
に対する合成光源の照明方向ベクトルをオブジェクト毎
に求める光源合成部と、 合成光源に基づいて、オブジェクトのシェーディングを
行うシェーディング部と、 を含むことを特徴とする画像生成システム。 - 【請求項2】 請求項1において、 前記光源合成部が、 複数の光源に設定された色を合成することで、合成光源
の色を求めることを特徴とする画像生成システム。 - 【請求項3】 請求項1又は2において、 前記光源合成部が、 光源の合成率を、合成される複数の光源の照明方向ベク
トルの内積、及び、合成される複数の光源の明度の割合
の少なくとも一方に基づいて求めることを特徴とする画
像生成システム。 - 【請求項4】 請求項1乃至3のいずれかにおいて、 前記複数の光源が疑似点光源を含み、 前記光源設定部が、 オブジェクトと疑似点光源との位置関係に基づいて、オ
ブジェクトに対する疑似点光源の照明方向ベクトルと疑
似点光源の明度を設定することを特徴とする画像生成シ
ステム。 - 【請求項5】 請求項1乃至4のいずれかにおいて、 光源の明度に基づいて複数の光源の中から基底光源を選
択する基底光源選択部を含み、 前記光源合成部が、 選択された基底光源よりも他の光源の合成率が低くなる
ように、選択された基底光源に対して他の光源を合成す
ることを特徴とする画像生成システム。 - 【請求項6】 請求項5において、 前記光源合成部が、 第Nのフレームでは第Kの光源が基底光源として選択さ
れ、次の第N+1のフレームでは第Lの光源が基底光源
として選択された場合には、合成処理に対する第Kの光
源の影響度がフレーム経過に伴い減少するように、光源
の合成を行うことを特徴とする画像生成システム。 - 【請求項7】 請求項1乃至6のいずれかにおいて、 前記光源合成部が、 現在のフレームで得られた合成光源に前回のフレームで
得られた合成光源を合成し、最終的な合成光源を求める
ことを特徴とする画像生成システム。 - 【請求項8】 請求項7において、 前記光源合成部が、 現在のフレームで得られた合成光源と前回のフレームで
得られた合成光源との合成率を、可変に制御することを
特徴とする画像生成システム。 - 【請求項9】 請求項1乃至8のいずれかにおいて、 前記光源合成部が、 複数の光源のうち、合成処理の対象とならなかった光源
の色を、アンビエント光の色に付加することを特徴とす
る画像生成システム。 - 【請求項10】 請求項1乃至9のいずれかにおいて、 前記光源設定部が、 オブジェクトに対するヒットイベントが発生した場合
に、複数のヒット位置に前記複数の光源を設定し、 前記光源合成部が、 複数のヒット位置に設定された複数の光源を合成し、合
成光源を求めることを特徴とする画像生成システム。 - 【請求項11】 オブジェクト空間において所与の視点
から見える画像を生成する画像生成システムであって、 複数の光源を設定する光源設定部と、 設定された複数の光源を合成し、合成光源を求める光源
合成部と、 求められた合成光源に基づいて、オブジェクトのシェー
ディングを行うシェーディング部とを含み、 前記光源合成部が、 複数の光源のうち、合成処理の対象とならなかった光源
の色を、アンビエント光の色に付加することを特徴とす
る画像生成システム。 - 【請求項12】 オブジェクト空間において所与の視点
から見える画像を生成する画像生成システムであって、 オブジェクトに対するヒットイベントが発生した場合
に、オブジェクトのヒットチェックを行い、ヒット位置
を求めるヒットチェック部と、 求められた複数のヒット位置に、ヒットエフェクト光を
表すための複数の光源を設定する光源設定部と、 複数のヒット位置に設定された複数の光源を合成し、合
成光源を求める光源合成部と、 求められた合成光源に基づいて、オブジェクトのシェー
ディングを行うシェーディング部と、 を含むことを特徴とする画像生成システム。 - 【請求項13】 オブジェクト空間において所与の視点
から見える画像を生成するためのプログラムであって、 オブジェクトを照明するための複数の光源を用意し、複
数の光源の各光源に対して、オブジェクトに対する各光
源の照明方向ベクトルを設定する光源設定部と、 複数の光源の照明方向ベクトルを合成し、オブジェクト
に対する合成光源の照明方向ベクトルをオブジェクト毎
に求める光源合成部と、 合成光源に基づいて、オブジェクトのシェーディングを
行うシェーディング部として、 コンピュータを機能させることを特徴とするプログラ
ム。 - 【請求項14】 請求項13において、 前記光源合成部が、 複数の光源に設定された色を合成することで、合成光源
の色を求めることを特徴とするプログラム。 - 【請求項15】 請求項13又は14において、 前記光源合成部が、 光源の合成率を、合成される複数の光源の照明方向ベク
トルの内積、及び、合成される複数の光源の明度の割合
の少なくとも一方に基づいて求めることを特徴とするプ
ログラム。 - 【請求項16】 請求項13乃至15のいずれかにおい
て、 前記複数の光源が疑似点光源を含み、 前記光源設定部が、 オブジェクトと疑似点光源との位置関係に基づいて、オ
ブジェクトに対する疑似点光源の照明方向ベクトルと疑
似点光源の明度を設定することを特徴とするプログラ
ム。 - 【請求項17】 請求項13乃至16のいずれかにおい
て、 光源の明度に基づいて複数の光源の中から基底光源を選
択する基底光源選択部としてコンピュータを機能させる
と共に、 前記光源合成部が、 選択された基底光源よりも他の光源の合成率が低くなる
ように、選択された基底光源に対して他の光源を合成す
ることを特徴とするプログラム。 - 【請求項18】 請求項17において、 前記光源合成部が、 第Nのフレームでは第Kの光源が基底光源として選択さ
れ、次の第N+1のフレームでは第Lの光源が基底光源
として選択された場合には、合成処理に対する第Kの光
源の影響度がフレーム経過に伴い減少するように、光源
の合成を行うことを特徴とするプログラム。 - 【請求項19】 請求項13乃至18のいずれかにおい
て、 前記光源合成部が、 現在のフレームで得られた合成光源に前回のフレームで
得られた合成光源を合成し、最終的な合成光源を求める
ことを特徴とするプログラム。 - 【請求項20】 請求項19において、 前記光源合成部が、 現在のフレームで得られた合成光源と前回のフレームで
得られた合成光源との合成率を、可変に制御することを
特徴とするプログラム。 - 【請求項21】 請求項13乃至20のいずれかにおい
て、 前記光源合成部が、 複数の光源のうち、合成処理の対象とならなかった光源
の色を、アンビエント光の色に付加することを特徴とす
るプログラム。 - 【請求項22】 請求項13乃至21のいずれかにおい
て、 前記光源設定部が、 オブジェクトに対するヒットイベントが発生した場合
に、複数のヒット位置に前記複数の光源を設定し、 前記光源合成部が、 複数のヒット位置に設定された複数の光源を合成し、合
成光源を求めることを特徴とするプログラム。 - 【請求項23】 オブジェクト空間において所与の視点
から見える画像を生成するためのプログラムであって、 複数の光源を設定する光源設定部と、 設定された複数の光源を合成し、合成光源を求める光源
合成部と、 求められた合成光源に基づいて、オブジェクトのシェー
ディングを行うシェーディング部として、 コンピュータを機能させると共に、 前記光源合成部が、 複数の光源のうち、合成処理の対象とならなかった光源
の色を、アンビエント光の色に付加することを特徴とす
るプログラム。 - 【請求項24】 オブジェクト空間において所与の視点
から見える画像を生成するためのプログラムであって、 オブジェクトに対するヒットイベントが発生した場合
に、オブジェクトのヒットチェックを行い、ヒット位置
を求めるヒットチェック部と、 求められた複数のヒット位置に、ヒットエフェクト光を
表すための複数の光源を設定する光源設定部と、 複数のヒット位置に設定された複数の光源を合成し、合
成光源を求める光源合成部と、 求められた合成光源に基づいて、オブジェクトのシェー
ディングを行うシェーディング部として、 コンピュータを機能させることを特徴とするプログラ
ム。 - 【請求項25】 コンピュータ読み取り可能な情報記憶
媒体であって、請求項13乃至24のいずれかのプログ
ラムを記憶したことを特徴とする情報記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002038638A JP4056035B2 (ja) | 2002-02-15 | 2002-02-15 | 画像生成システム、プログラム及び情報記憶媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002038638A JP4056035B2 (ja) | 2002-02-15 | 2002-02-15 | 画像生成システム、プログラム及び情報記憶媒体 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007286312A Division JP4596551B2 (ja) | 2007-11-02 | 2007-11-02 | 画像生成システム、プログラム及び情報記憶媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003242521A true JP2003242521A (ja) | 2003-08-29 |
JP4056035B2 JP4056035B2 (ja) | 2008-03-05 |
Family
ID=27779904
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002038638A Expired - Fee Related JP4056035B2 (ja) | 2002-02-15 | 2002-02-15 | 画像生成システム、プログラム及び情報記憶媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4056035B2 (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005107968A (ja) * | 2003-09-30 | 2005-04-21 | Canon Inc | 画像表示装置及び方法並びに情報処理方法 |
JP2006323515A (ja) * | 2005-05-17 | 2006-11-30 | Namco Bandai Games Inc | プログラム、情報記憶媒体及び画像生成システム |
JP2007037728A (ja) * | 2005-08-02 | 2007-02-15 | Konami Digital Entertainment:Kk | 音出力装置、音出力方法及びプログラム |
JP2021047883A (ja) * | 2017-06-09 | 2021-03-25 | 株式会社ソニー・インタラクティブエンタテインメント | 中心窩レンダリングシステムにおける、遅延ライティングの最適化、パーティクルの中心窩適応、及びシミュレーションモデル |
CN112566335A (zh) * | 2020-10-27 | 2021-03-26 | 一飞(海南)科技有限公司 | 一种无人机编队流光灯效实现方法、系统及无人机编队 |
-
2002
- 2002-02-15 JP JP2002038638A patent/JP4056035B2/ja not_active Expired - Fee Related
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005107968A (ja) * | 2003-09-30 | 2005-04-21 | Canon Inc | 画像表示装置及び方法並びに情報処理方法 |
JP2006323515A (ja) * | 2005-05-17 | 2006-11-30 | Namco Bandai Games Inc | プログラム、情報記憶媒体及び画像生成システム |
JP4671756B2 (ja) * | 2005-05-17 | 2011-04-20 | 株式会社バンダイナムコゲームス | プログラム、情報記憶媒体及び画像生成システム |
JP2007037728A (ja) * | 2005-08-02 | 2007-02-15 | Konami Digital Entertainment:Kk | 音出力装置、音出力方法及びプログラム |
JP2021047883A (ja) * | 2017-06-09 | 2021-03-25 | 株式会社ソニー・インタラクティブエンタテインメント | 中心窩レンダリングシステムにおける、遅延ライティングの最適化、パーティクルの中心窩適応、及びシミュレーションモデル |
JP7050883B2 (ja) | 2017-06-09 | 2022-04-08 | 株式会社ソニー・インタラクティブエンタテインメント | 中心窩レンダリングシステムにおける、遅延ライティングの最適化、パーティクルの中心窩適応、及びシミュレーションモデル |
CN112566335A (zh) * | 2020-10-27 | 2021-03-26 | 一飞(海南)科技有限公司 | 一种无人机编队流光灯效实现方法、系统及无人机编队 |
Also Published As
Publication number | Publication date |
---|---|
JP4056035B2 (ja) | 2008-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3262772B2 (ja) | 画像生成システム及び情報記憶媒体 | |
US7116334B2 (en) | Game system and image creating method | |
US7046242B2 (en) | Game system, program and image generating method | |
JP2007226576A (ja) | プログラム、情報記憶媒体及び画像生成システム | |
JP3249955B2 (ja) | 画像生成システム及び情報記憶媒体 | |
US7566273B2 (en) | Game system and image generating method | |
JP4187188B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP3449993B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP2002216158A (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP4223244B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP3280355B2 (ja) | 画像生成システム及び情報記憶媒体 | |
JP2002063596A (ja) | ゲームシステム、プログラム及び情報記憶媒体 | |
JP4824514B2 (ja) | プログラム、情報記憶媒体及び画像生成システム | |
JP4056035B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP4159082B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP3297410B2 (ja) | 画像生成システム及び情報記憶媒体 | |
JP4707078B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP3254195B2 (ja) | 画像生成システム及び情報記憶媒体 | |
JP2004341570A (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP4704615B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP2002222431A (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP4596551B2 (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP2004038639A (ja) | 画像生成システム、プログラム及び情報記憶媒体 | |
JP2002063591A (ja) | ゲームシステム、プログラム及び情報記憶媒体 | |
JP2002183753A (ja) | 画像生成システム及び情報記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050124 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070829 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070905 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071102 |
|
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: 20071205 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20071210 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4056035 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: 20101221 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101221 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101221 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111221 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: 20111221 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121221 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: 20121221 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131221 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 |
|
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 |