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
Application number
JP2002038638A
Other languages
English (en)
Other versions
JP4056035B2 (ja
Inventor
Yoshihito Iwanaga
欣仁 岩永
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Namco Ltd
Original Assignee
Namco Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Namco Ltd filed Critical Namco Ltd
Priority to JP2002038638A priority Critical patent/JP4056035B2/ja
Publication of JP2003242521A publication Critical patent/JP2003242521A/ja
Application granted granted Critical
Publication of JP4056035B2 publication Critical patent/JP4056035B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)

Abstract

(57)【要約】 【課題】 少ない処理負荷でリアルな光源処理を実現で
きる画像生成システム、プログラム及び情報記憶媒体を
提供すること。 【解決手段】 オブジェクトOBを照明する複数の光源
LS1〜LS3の照明方向ベクトルV1〜V3や色C1
〜C3を合成し、合成光源LSSの照明方向ベクトルV
Sや色CSを求め、求められた合成光源LSSに基づい
てオブジェクトOBのシェーディングを行う。光源の合
成率を照明方向ベクトルの内積や明度割合に基づき求め
る。光源の明度に基づき選択された基底光源に他の光源
を合成する。基底光源の切替時に前回のフレームの基底
光源の影響度が減少するように光源を合成する。合成処
理の対象とならなかった光源の色を、アンビエント光の
色に付加する。ヒットイベントの発生時に複数のヒット
位置に複数の光源を設定し、これらの光源を合成してヒ
ットエフェクト光を表現する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、画像生成システ
ム、プログラム及び情報記憶媒体に関する。
【0002】
【背景技術及び発明が解決しようとする課題】従来よ
り、仮想的な3次元空間であるオブジェクト空間内にお
いて仮想カメラ(所与の視点)から見える画像を生成す
る画像生成システム(ゲームシステム)が知られてお
り、いわゆる仮想現実を体験できるものとして人気が高
い。格闘ゲームを楽しむことができる画像生成システム
を例にとれば、プレーヤは、ゲームコントローラ(操作
部)を用いて自キャラクタ(オブジェクト)を操作し、
相手プレーヤやコンピュータが操作する敵キャラクタと
対戦することでゲームを楽しむ。
【0003】さて、このような画像生成システムでは、
照明方向ベクトル、色、光源位置などの光源情報が設定
された光源が用意される。そして、この光源情報と照明
モデルとに基づいて、グーロー(Gouraud)シェーディ
ング、フォン(Phong)シェーディングなどの種々のス
ムースシェーディングが行われ、オブジェクトの陰影づ
けが行われる。
【0004】そして、このような画像生成システムにお
いて、よりリアルな画像を生成するためには、より多く
の光源を用意することが望ましい。例えば、日光(太
陽)を表現する光源のみならず、松明、炎、エフェクト
などを表現する種々の光源を用意することが望ましい。
【0005】しかしながら、用意する光源の数を増やす
と、その分だけ画像生成システムの処理負荷が増えてし
まう。このため、光源の数を増やしすぎると、1フレー
ム以内に全ての処理を完了させるというリアルタイム処
理の要請に応えることが難しくなるという課題がある。
【0006】本発明は、以上のような課題に鑑みてなさ
れたものであり、その目的とするところは、少ない処理
負荷でリアルな光源処理を実現できる画像生成システ
ム、プログラム及び情報記憶媒体を提供することにあ
る。
【0007】
【課題を解決するための手段】上記課題を解決するため
に、本発明は、オブジェクト空間において所与の視点か
ら見える画像を生成するための画像生成システムであっ
て、オブジェクトを照明するための複数の光源を用意
し、複数の光源の各光源に対して、オブジェクトに対す
る各光源の照明方向ベクトルを設定する光源設定部と、
複数の光源の照明方向ベクトルを合成し、オブジェクト
に対する合成光源の照明方向ベクトルをオブジェクト毎
に求める光源合成部と、合成光源に基づいて、オブジェ
クトのシェーディングを行うシェーディング部とを含む
ことを特徴とする。また本発明に係るプログラムは、上
記各部としてコンピュータを機能させることを特徴とす
る。また本発明に係る情報記憶媒体は、コンピュータ読
み取り可能な情報記憶媒体であって、上記各部としてコ
ンピュータを機能させるためのプログラムを記憶(記
録)したことを特徴とする。
【0008】本発明では、オブジェクトを照明するため
の複数の光源が用意(設定、配置)される。そして、こ
れらの複数の光源の照明方向ベクトルを合成すること
で、合成光源の照明方向ベクトルが求められ、合成光源
に基づいてオブジェクトのシェーディングが行われる。
【0009】このように本発明では、最終的にシェーデ
ィングに使用される光源(合成光源)の数を少なくする
ことができるため、処理負荷を軽減できる。そして本発
明では、論理的に用意された複数の光源に基づいて合成
光源が生成され、この合成光源に基づいてオブジェクト
のシェーディングが行われるため、よりリアルな光源処
理を実現できる。
【0010】なお、照明方向ベクトルと数学的に均等な
パラメータを用いる場合も、本発明の範囲に含めること
ができる。
【0011】また、光源が平行光源を表すものである場
合には、その照明方向ベクトルは、オブジェクトとの位
置関係に依存せずに一義的に決めることができる。
【0012】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体では、前記光源合成部が、複数
の光源に設定された色を合成することで、合成光源の色
を求めるようにしてもよい。
【0013】この場合に、色の合成率と照明方向ベクト
ルの合成率は、同じ合成率であってもよいし、違う合成
率であってもよい。
【0014】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体では、前記光源合成部が、光源
の合成率を、合成される複数の光源の照明方向ベクトル
の内積、及び、合成される複数の光源の明度の割合の少
なくとも一方に基づいて求めるようにしてもよい。
【0015】この場合に、光源の合成率は、例えば、内
積又は内積に変換処理を施したものや、明度割合又は明
度割合に変換処理を施したものなどに基づいて求めるこ
とができる。また、光源の合成率は、例えば、光源情報
(照明方向ベクトル又は色等)の合成率である。
【0016】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体では、前記複数の光源が疑似点
光源を含み、前記光源設定部が、オブジェクトと疑似点
光源との位置関係に基づいて、オブジェクトに対する疑
似点光源の照明方向ベクトルと疑似点光源の明度を設定
するようにしてもよい。
【0017】この場合にオブジェクトと疑似点光源との
位置関係としては、オブジェクトと疑似点光源の間の距
離や、オブジェクトと疑似点光源とを結ぶ方向などを考
えることができる。
【0018】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体では、光源の明度に基づいて複
数の光源の中から基底光源を選択する基底光源選択部を
含み(或いは基底光源選択部としてコンピュータを機能
させるためのプログラム又は該プログラムを記憶した情
報記憶媒体であって)、前記光源合成部が、選択された
基底光源よりも他の光源の合成率が低くなるように、選
択された基底光源に対して他の光源を合成するようにし
てもよい。
【0019】この場合に、基底光源の選択に使用される
明度は、光源の明度に変換処理を施したものであっても
よい。また、光源の合成率は、例えば、光源情報(照明
方向ベクトル又は色等)の合成率などである。
【0020】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体では、前記光源合成部が、第N
のフレームでは第Kの光源が基底光源として選択され、
次の第N+1のフレームでは第Lの光源が基底光源とし
て選択された場合には、合成処理に対する第Kの光源の
影響度がフレーム経過に伴い減少するように、光源の合
成を行うようにしてもよい。
【0021】この場合の影響度は、光源の合成率などに
より制御されるものである。また、基底光源の切替時
に、第Kの光源の影響度を零又はほぼ零にすることも可
能である。
【0022】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体では、前記光源合成部が、現在
のフレームで得られた合成光源に前回のフレームで得ら
れた合成光源を合成し、最終的な合成光源を求めるよう
にしてもよい。
【0023】この場合の前回のフレームは、1フレーム
前でもよいし、1〜Jフレーム前でもよい。
【0024】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体では、前記光源合成部が、現在
のフレームで得られた合成光源と前回のフレームで得ら
れた合成光源との合成率を、可変に制御するようにして
もよい。
【0025】この場合の合成光源の合成率は、例えば時
間要素に基づいて制御してもよいし、ゲームイベント
(ヒットイベント、オブジェクトの移動・動作)の発生
に基づいて制御してもよい。
【0026】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体では、前記光源合成部が、複数
の光源のうち、合成処理の対象とならなかった光源の色
を、アンビエント光の色に付加するようにしてもよい。
【0027】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体では、前記光源設定部が、オブ
ジェクトに対するヒットイベントが発生した場合に、複
数のヒット位置に前記複数の光源を設定し、前記光源合
成部が、複数のヒット位置に設定された複数の光源を合
成し、合成光源を求めるようにしてもよい。
【0028】また本発明は、オブジェクト空間において
所与の視点から見える画像を生成する画像生成システム
であって、複数の光源を設定する光源設定部と、設定さ
れた複数の光源を合成し、合成光源を求める光源合成部
と、求められた合成光源に基づいて、オブジェクトのシ
ェーディングを行うシェーディング部とを含み、前記光
源合成部が、複数の光源のうち、合成処理の対象となら
なかった光源の色を、アンビエント光の色に付加するこ
とを特徴とする。また本発明に係るプログラムは、上記
各部としてコンピュータを機能させることを特徴とす
る。また本発明に係る情報記憶媒体は、コンピュータ読
み取り可能な情報記憶媒体であって、上記各部としてコ
ンピュータを機能させるためのプログラムを記憶(記
録)したことを特徴とする。
【0029】本発明によれば、複数の光源のうち、合成
処理の対象とならなかった光源が特定される。そして、
この光源の色が、アンビエント光の色に付加(合成、ブ
レンド)されて、オブジェクトのシェーディングが行わ
れる。これにより、合成処理の対象とならなかった光源
の影響を残すことが可能になり、よりリアルな画像表現
を実現できる。
【0030】なお、光源の色そのものを、アンビエント
光の色に付加してもよいし、光源の色に変換処理を施し
たものを、アンビエント光の色に付加してもよい。
【0031】また本発明は、オブジェクト空間において
所与の視点から見える画像を生成する画像生成システム
であって、オブジェクトに対するヒットイベントが発生
した場合に、オブジェクトのヒットチェックを行い、ヒ
ット位置を求めるヒットチェック部と、求められた複数
のヒット位置に、ヒットエフェクト光を表すための複数
の光源を設定する光源設定部と、複数のヒット位置に設
定された複数の光源を合成し、合成光源を求める光源合
成部と、求められた合成光源に基づいて、オブジェクト
のシェーディングを行うシェーディング部とを含むこと
を特徴とする。また本発明に係るプログラムは、上記各
部としてコンピュータを機能させることを特徴とする。
また本発明に係る情報記憶媒体は、コンピュータ読み取
り可能な情報記憶媒体であって、上記各部としてコンピ
ュータを機能させるためのプログラムを記憶(記録)し
たことを特徴とする。
【0032】本発明によれば、ヒット位置が判定され、
そのヒット位置に光源が設定(配置)される。そして、
設定された光源が合成され、求められた合成光源に基づ
いてオブジェクトのシェーディングが行われる。これに
より、ヒットイベント時に発生するヒットイベント光の
表現を、簡素で自動的な処理により実現できるようにな
る。
【0033】
【発明の実施の形態】以下、本実施形態について図面を
用いて説明する。
【0034】なお、以下に説明する本実施形態は、特許
請求の範囲に記載された本発明の内容を不当に限定する
ものではない。また本実施形態で説明される構成の全て
が、本発明の必須構成要件であるとは限らない。
【0035】1.構成 図1に、本実施形態の画像生成システム(ゲームシステ
ム)の機能ブロック図の一例を示す。なお同図において
本実施形態は、少なくとも処理部100を含めばよく
(或いは処理部100と記憶部170を含めばよく)、
それ以外の各部(機能ブロック)については任意の構成
要素とすることができる。
【0036】操作部160は、プレーヤが操作データを
入力するためのものであり、その機能は、レバー、ボタ
ン、ステアリング、シフトレバー、アクセルペダル、ブ
レーキペダル、マイク、センサー、或いは筺体などのハ
ードウェアにより実現できる。
【0037】記憶部170は、処理部100や通信部1
96などのワーク領域となるもので、その機能はRAM
などのハードウェアにより実現できる。
【0038】情報記憶媒体180(コンピュータにより
読み取り可能な媒体)は、プログラムやデータなどを格
納するものであり、その機能は、光ディスク(CD、D
VD)、光磁気ディスク(MO)、磁気ディスク、ハー
ドディスク、磁気テープ、或いはメモリ(ROM)など
のハードウェアにより実現できる。処理部100は、こ
の情報記憶媒体180に格納されるプログラム(デー
タ)に基づいて本実施形態の種々の処理を行う。即ち情
報記憶媒体180には、本実施形態の各部(各手段)と
してコンピュータを機能させるためのプログラム(各部
をコンピュータに実現させるためのプログラム)が記憶
(記録、格納)される。
【0039】表示部190は、本実施形態により生成さ
れた画像を出力するものであり、その機能は、CRT、
LCD、或いはHMD(ヘッドマウントディスプレイ)
などのハードウェアにより実現できる。
【0040】音出力部192は、本実施形態により生成
された音を出力するものであり、その機能は、スピー
カ、或いはヘッドフォンなどのハードウェアにより実現
できる。
【0041】携帯型情報記憶装置194は、プレーヤの
個人データやゲームのセーブデータなどが記憶されるも
のであり、この携帯型情報記憶装置194としては、メ
モリカードや携帯型ゲーム装置などを考えることができ
る。
【0042】通信部196は、外部(例えばホスト装置
や他の画像生成システム)との間で通信を行うための各
種の制御を行うものであり、その機能は、各種プロセッ
サ又は通信用ASICなどのハードウェアや、プログラ
ムなどにより実現できる。
【0043】なお本実施形態の各部(各手段)としてコ
ンピュータを機能させるためのプログラム(データ)
は、ホスト装置(サーバー)が有する情報記憶媒体から
ネットワーク及び通信部196を介して情報記憶媒体1
80(記憶部170)に配信するようにしてもよい。こ
のようなホスト装置(サーバー)の情報記憶媒体の使用
も本発明の範囲内に含まれる。
【0044】処理部100(プロセッサ)は、操作部1
60からの操作データやプログラムなどに基づいて、ゲ
ーム処理、画像生成処理、或いは音生成処理などの各種
の処理を行う。この場合、処理部100は、記憶部17
0内の主記憶部172をワーク領域として使用して、各
種の処理を行う。この処理部100の機能は、各種プロ
セッサ(CPU、DSP等)又はASIC(ゲートアレ
イ等)などのハードウェアや、プログラム(ゲームプロ
グラム)により実現できる。
【0045】ここで、処理部100が行う処理として
は、コイン(代価)の受け付け処理、各種モードの設定
処理、ゲームの進行処理、選択画面の設定処理、オブジ
ェクト(1又は複数のプリミティブ)の位置や回転角度
(X、Y又はZ軸回り回転角度)を求める処理、オブジ
ェクトを動作させる処理(モーション処理)、視点の位
置(仮想カメラの位置)や視線角度(仮想カメラの回転
角度)を求める処理、マップオブジェクトなどのオブジ
ェクトをオブジェクト空間へ配置する処理、ヒットチェ
ック処理、ゲーム結果(成果、成績)を演算する処理、
複数のプレーヤが共通のゲーム空間でプレイするための
処理、或いはゲームオーバー処理などを考えることがで
きる。
【0046】処理部100は、移動・動作処理部11
0、オブジェクト空間設定部112、ヒットチェック部
114、光源設定部116、基底光源選択部118、光
源合成部119、画像生成部120、音生成部130を
含む。なお、処理部100は、これらの各部(機能ブロ
ック)を全て含む必要はなく、その一部を省略してもよ
い。
【0047】移動・動作処理部110は、オブジェクト
(移動体)の移動情報(位置、回転角度)や動作情報
(オブジェクトの各パーツの位置、回転角度)を求める
処理を行う。即ち、操作部160によりプレーヤが入力
した操作データやゲームプログラムなどに基づいて、オ
ブジェクトを移動させたり動作(モーション、アニメー
ション)させたりする処理を行う。
【0048】より具体的には、移動・動作処理部110
は、オブジェクト(移動体)の位置や回転角度を例えば
1フレーム(1/60秒、1/30秒等)毎に変化させ
る。例えば(k−1)フレームでのオブジェクトの位
置、回転角度をPk-1、θk-1とし、オブジェクトの1フ
レームでの位置変化量(速度)、回転変化量(回転速
度)を△P、△θとする。するとkフレームでのオブジ
ェクトの位置Pk、回転角度θkは例えば下式(1)、
(2)のように求められる。
【0049】Pk=Pk-1+△P (1) θk=θk-1+△θ (2) オブジェクト空間設定部112は、移動体(キャラク
タ、車、戦車、ロボット)、柱、壁、建物、マップ(地
形)などの各種オブジェクト(ポリゴン、自由曲面又は
サブディビジョンサーフェスなどのプリミティブ面で構
成されるオブジェクト)をオブジェクト空間内に配置設
定するための処理を行う。より具体的には、ワールド座
標系でのオブジェクトの位置や回転角度(方向)を決定
し、その位置(X、Y、Z)にその回転角度(X、Y、
Z軸回りでの回転)でオブジェクトを配置する。
【0050】ヒットチェック部114は、オブジェクト
(キャラクタ)に対して、攻撃(キック、パンチ又はシ
ョット等)がヒットしたか否かをチェックする処理を行
う。具体的には、一方のオブジェクトの部位(手、足)
や武器(剣、ショット)が、他方のオブジェクト(体、
武器)にヒットしたか否かをチェックする。そして、他
方のオブジェクトに攻撃がヒットした場合には、攻撃が
ヒットしたことをプレーヤに視覚的に伝えられるための
ヒットエフェクト光(ヒットエフェクト画像)が生成さ
れる。また、他方のオブジェクトは、攻撃を受けたこと
を示すモーション(やられモーション、被ヒットモーシ
ョン)を行うようになる。
【0051】なお、オブジェクト(キャラクタ)の形状
を簡略化して擬似的に表したヒットボリューム(ヒット
ボックス、ヒットエリア、簡易オブジェクト)や、オブ
ジェクトの部位(手、足)や武器などが描く軌道を簡略
化して擬似的に表したヒットボリュームを用いて、ヒッ
トチェックを行うことが望ましい。
【0052】光源設定部116は、複数の光源を設定
(配置)する処理を行う。具体的には、オブジェクト
(照明位置又はオブジェクトの代表位置)を照明するた
めの複数の光源(論理的な光源)を用意し、複数の光源
の各光源に対して、照明方向ベクトル、色、明度又は光
源位置などの光源情報(属性情報)を設定する。
【0053】なお、光源設定部116は、オブジェクト
に対するヒットイベントが発生した場合に、ヒットチェ
ック部114により検出されたヒット位置に、ヒットエ
フェクト光を表すための光源を設定(配置)する処理も
行う。
【0054】基底光源選択部118は、光源の明度(光
源情報)に基づいて、複数の光源の中から基底光源(メ
イン光源、基準光源)を選択する処理(光源のソート処
理)を行う。
【0055】光源合成部119は、複数の光源を合成す
る処理(照明方向ベクトルの合成処理、色の合成処理
等)を行い、合成光源(合成ベクトルや合成色などを、
光源情報として有する光源)を求める処理を行う。より
具体的には、光源設定部116により設定された複数の
光源の照明方向ベクトルを合成し、合成光源の照明方向
ベクトル(合成ベクトル)を求める。或いは、複数の光
源に設定された色を合成することで、合成光源の色(合
成色)を求める。
【0056】この場合、光源合成部119は、例えば、
照明方向ベクトルの内積(内積と数学的に均等なものを
含む)や、明度の割合(明度を関数により変換したもの
の割合を含む)などに基づいて。光源の合成率(照明方
向ベクトルの合成率、色の合成率又は光源位置の合成率
等)を得る。
【0057】また、光源合成部119は、基底光源選択
部118により選択された基底光源(基底ベクトル)に
対して、他の光源(照明方向ベクトル)を合成する処理
を行う。そして、前のフレームで選択された光源とは異
なる光源が基底光源選択部118により基底光源として
選択された場合には、前のフレームで選択された光源の
影響度(合成率)が、その後のフレーム経過に伴い徐々
に減少するように、光源の合成を行う。これにより、光
源の切り替わりが目立ってしまう事態を防止できる。
【0058】画像生成部120は、処理部100で行わ
れる種々の処理の結果に基づいて画像処理を行い、ゲー
ム画像を生成し、表示部190に出力する。例えば、い
わゆる3次元のゲーム画像を生成する場合には、まず、
座標変換、クリッピング処理、透視変換或いは光源処理
等のジオメトリ処理が行われ、その処理結果に基づい
て、描画データ(プリミティブ面の頂点(構成点)に付
与される位置座標、テクスチャ座標、色(輝度)デー
タ、法線ベクトル或いはα値等)が作成される。そし
て、この描画データ(プリミティブ面データ)に基づい
て、ジオメトリ処理後のオブジェクト(1又は複数プリ
ミティブ面)の画像が、描画バッファ174(フレーム
バッファ、ワークバッファ等のピクセル単位で画像情報
を記憶できるバッファ)に描画される。これにより、オ
ブジェクト空間内において仮想カメラ(所与の視点)か
ら見える画像が生成されるようになる。
【0059】音生成部130は、処理部100で行われ
る種々の処理の結果に基づいて音処理を行い、BGM、
効果音、又は音声などのゲーム音を生成し、音出力部1
92に出力する。
【0060】画像生成部120が含むシェーディング部
122は、オブジェクトに陰影をつけるための処理を行
う。より具体的には、光源情報(照明方向ベクトル、色
又は光源位置等)、照明モデル、オブジェクトの法線ベ
クトル(頂点又は面の法線ベクトル)などに基づいてシ
ェーディング処理を行う。
【0061】ここで、シェーディング処理は、例えばオ
ブジェクトの各点(ピクセル、ドット)での光の色(R
GB、YCrCb、YUV、YIQ)を決定する処理と
定義できる。そして、このシェーディング処理は、実世
界での照明現象を模擬した数学的なモデルである照明モ
デルを用いて行われる。この照明モデルとしては、実世
界現象のモデル化の態様に応じて、ランバード(Lamber
t)、フォン(Phong)、ブリン(Blinn)などの種々の
モデルがある。また、プリミティブ面(ポリゴン、曲面
等)の陰影づけを滑らかにして、プリミティブ面の境界
を目立たなくする手法として、グーロー(Gouraud)シ
ェーディング、フォン(Phong)シェーディングなどの
種々のスムースシェーディング手法がある。
【0062】なお、本実施形態の画像生成システムは、
1人のプレーヤのみがプレイできるシングルプレーヤモ
ード専用のシステムにしてもよいし、このようなシング
ルプレーヤモードのみならず、複数のプレーヤがプレイ
できるマルチプレーヤモードも備えるシステムにしても
よい。
【0063】また複数のプレーヤがプレイする場合に、
これらの複数のプレーヤに提供するゲーム画像やゲーム
音を、1つの端末を用いて生成してもよいし、ネットワ
ーク(伝送ライン、通信回線)などで接続された複数の
端末(ゲーム機、携帯電話)を用いて生成してもよい。
【0064】2.本実施形態の手法 次に本実施形態の手法について図面を用いて説明する。
なお、以下では、格闘ゲームに本実施形態を適用した場
合を主に例にとり説明するが、本実施形態は、格闘ゲー
ム以外の種々のゲームに広く適用できる。
【0065】2.1 光源の合成 さて、よりリアルで高品質なゲーム画像を生成するため
には、より多くの数の光源を用いてシェーディングを行
うことが望ましい。
【0066】しかしながら、光源の数が多くなると、そ
の分だけシェーディングの処理負荷が重くなってしまう
という問題がある。
【0067】例えばグーローシェーディングでは、オブ
ジェクトの頂点に設定された法線ベクトルと光源の照明
方向ベクトルとの内積を求めることで、オブジェクトの
各頂点色を求める。従って、オブジェクトの頂点数がI
個であり、光源の数が1個の場合には、頂点色を求める
処理がI回分だけ必要になる。従って、光源の数がJ個
になると、頂点色を求める処理が(I×J)回分だけ必
要になってしまう。
【0068】通常、オブジェクトの頂点数Iは非常に多
いため、このように光源数を増やすことによる処理負荷
の増加は過大なものとなる。
【0069】このような課題を解決するために本実施形
態では以下のような手法を採用している。
【0070】即ち、本実施形態では図2(A)に示すよ
うに、複数の光源LS1、LS2を用意する(3個以上
用意してもよい)。
【0071】例えば、光源LS1は、その照明方向ベク
トルがV11であり、その色がC1であり、その明度が
BR1(例えば色C1をグレースケールで表した時の明
るさ)である。ここで、照明方向ベクトルV11は、光
源LS1とオブジェクトOB1(照明位置又はOB1の
代表位置LP1)とを結ぶ方向に沿ったベクトル(単位
ベクトル)である。
【0072】また、光源LS2は、その照明方向ベクト
ルがV21であり、その色がC2であり、その明度がB
R2である。ここで、照明方向ベクトルV21は、光源
LS2とオブジェクトOB1(照明位置又は代表位置L
P1)とを結ぶ方向に沿ったベクトル(単位ベクトル)
である。
【0073】本実施形態では図2(A)に示すように、
これらの光源LS1、LS2(論理的な光源)を合成す
ることで、オブジェクトOB1に対する合成光源LSS
1(シェーディング用の光源)を求める。
【0074】より具体的には、オブジェクトOB1に対
する光源LS1、LS2の照明方向ベクトルV11、V
21を合成し、合成光源LSS1の照明方向ベクトルV
S1(単位ベクトル)を求める。また、光源LS1、L
S2の色C1、C2を合成し、合成光源LSS1の色C
S1を求める。
【0075】そして、この求められた合成光源LSS1
を用いて、オブジェクトOB1に対するシェーディング
を行う。即ち、光源LS1、LS2の代わりに、照明方
向ベクトルがVS1で色がCS1である合成光源LSS
1(平行光源)が仮想的に存在すると考え、この合成光
源LSS1だけを用いてシェーディングを行う。
【0076】一方、オブジェクトOB2については、図
2(B)に示すような合成処理を行う。即ち、光源LS
1、LS2を合成することで、オブジェクトOB2(照
明位置又はOB2の代表位置LP2)に対する合成光源
LSS2を求める。
【0077】より具体的には、オブジェクトOB2に対
する光源LS1、LS2の照明方向ベクトルV12、V
22を合成し、合成光源LSS2の照明方向ベクトルV
S2を求める。また、光源LS1、LS2の色C1、C
2を合成し、合成光源LSS2の色CS2を求める。
【0078】そして、この求められた合成光源LSS2
を用いて、オブジェクトOB2に対するシェーディング
を行う。
【0079】このようにすれば、論理的な光源(LS
1、LS2)は複数個存在するにも拘わらず、シェーデ
ィング用の物理的な光源は例えば1個で済むため、シェ
ーディングの処理負荷を軽減できる。例えば、オブジェ
クトの頂点数がI個である場合には、頂点色を求める処
理は、各オブジェクトについてI回分だけ行えば済むよ
うになる。
【0080】そして、本実施形態では、論理的な光源
(LS1、LS2)が複数個存在するため、光源が1個
しか存在しない場合に比べてリアルな画像表現が可能に
なる。例えば、光源LS1、LS2の位置関係や色の関
係に応じて、合成光源の照明方向ベクトルや色が様々に
変化するようになる。また、図2(A)、(B)から明
らかなように、オブジェクト毎に、或いはオブジェクト
と光源との位置関係に応じて、シェーディングに使用さ
れる合成光源は異なったものになり、異なったシェーデ
ィングが施されるようになる。
【0081】例えば本実施形態と異なる手法として、複
数の光源を用意し、オブジェクトとの位置関係に基づい
て、その複数の光源の中から適当な1つの光源を選択
し、選択された光源を用いてオブジェクトのシェーディ
ングを行う手法が考えられる。
【0082】しかしながら、この手法では、例えば図2
(A)において光源LS1が選択された場合には、光源
LS2の影響が全く無視されてしまう。逆に、光源LS
2が選択された場合には、光源LS1の影響が全く無視
されてしまう。
【0083】即ち、光源LS1が選択された場合には照
明方向はV11の方向になり、LS2が選択された場合
にはV21の方向になるというように、照明方向が択一
的になってしまう。同様に、光源LS1の色が白でLS
2の色が赤であったとすると、LS1が選択された場合
には白の陰影づけだけがオブジェクトに施され、LS2
が選択された場合には赤の陰影づけだけが施されるよう
になり、陰影づけされる色も択一的になってしまう。従
って、今ひとつリアルな画像を生成できない。
【0084】これに対して本実施形態では、合成光源L
SS1の照明方向、色は、光源LS1の照明方向、色の
みならず、光源LS2の照明方向、色の影響も受けるよ
うになる。従って、上記の手法に比べて、得られる画像
のリアル度を格段に高めることができる。
【0085】なお、以下では、説明を簡単にするため
に、2個又は3個の数の光源を合成する場合を主に例に
とり説明する。しかしながら、この明細書で説明する本
実施形態の手法は、3個以上又は4個以上の数の光源を
使用する場合にも当然に拡張できる。
【0086】2.2 光源の合成率 さて、本実施形態では光源の合成率(照明方向ベクトル
の合成率、色の合成率)を、以下に説明する手法で求め
ている。
【0087】例えば、図3(A)において、光源LS
1、LS2の明度をBR1、BR2とした場合に、明度
の割合BRP(例えばBRP=BR2/BR1)を求め
る。
【0088】また、光源LS1、LS2の照明方向ベク
トルV1、V2の内積VIP=V1・V2を求める。
【0089】次に、これらの明度割合BRPと内積VI
Pに基づいて、合成率γ=F(BRP、VIP)を求め
る。ここで、F(BRP、VIP)は、BRP、VIP
を引数とする関数である。
【0090】そして、この合成率γを用いて、光源LS
1、LS2の照明方向ベクトルV1、V2を合成し、合
成光源LSSの照明方向ベクトルVSを求める。或い
は、LS1、LS2の色C1、C2を合成し、LSSの
色CSを求める。
【0091】 VS=V1+γ×V2 (3) CS=C1+γ×C2 (4) なお、上式(3)のベクトル合成処理は、ベクトルV
S、V1、V2のX、Y、Z座標の各々について行う。
また、上式(4)の色合成処理は、色CS、C1、C2
のR、G、B成分(広義には第1〜第3の成分)の各々
について行う。
【0092】また、上式(3)、(4)は、加算ブレン
ディング方式を採用しているが、下式のような狭義のブ
レンディング方式を採用してもよい。
【0093】 VS=(1−γ)×V1+γ×V2 (5) CS=(1−γ)×C1+γ×C2 (6) また、合成率γを求める際に使用する明度割合(明度比
率)BRPは、BR1、BR2そのものの割合(比率)
であってもよいし、BR1、BR2を関数等で変換する
ことで得られるBR1’、BR2’の割合であってもよ
い。
【0094】また、合成率γを求める関数Fとしては、
例えばF(BRP、VIP)=K×BRP×VIP(K
は定数)を考えることができる。また、関数G、Hを用
いて、F(BRP、VIP)=K×G(BRP)×H
(VIP)とすることもできる。ここで、関数G、Hと
しては、引数を非線形変換する関数(正弦関数、余弦関
数、n次式)などを採用できる。
【0095】また、合成率γを、内積VIPのみに基づ
いて求めたり、明度割合BRPにのみに基づいて求めて
もよい。
【0096】以上のように本実施形態では、光源LS
1、LS2の照明方向ベクトルV1、V2の内積VIP
を用いて合成率γを求めている。従って、図3(A)、
(B)に示すように、照明方向ベクトルV1、V2間の
なす角度に応じて、合成率γも変化するようになり、多
様な画像表現を実現できる。
【0097】より具体的には、内積VIPを用いて合成
率γを求めるようにすれば、図3(B)のようにV1と
V2のなす角度が大きくなって90度に近づいたとして
も、合成光源LSSの照明方向ベクトルVSの向きを、
V2の方向よりもV1の方向に常に近づけるようにする
ことができる。これにより、例えば照明ベクトルV1
(基底ベクトル)を、常に支配的な光源に設定できるよ
うになる。
【0098】また本実施形態では、光源LS1、LS2
の明度BR1、BR2の割合BRPを用いて合成率γを
求めている。従って、明度(RGBをグレースケール変
換した時の明るさ等)の高い方の光源を支配的な光源に
設定することが可能になる。例えば、図3(A)、
(B)において、光源LS1の明度BR1の方が明るい
場合には、合成光源LSSの照明方向ベクトルVSの向
きが、V2の方向よりもV1の方向に近づくようにな
る。
【0099】2.3 疑似点光源 本実施形態では平行光源を用いて点光源を擬似的に表現
している。
【0100】即ち図4(A)において、光源LS1は通
常の平行光源(例えば日光)に設定され、光源LS2は
疑似点光源(例えば松明)に設定されている。そして、
この場合には、オブジェクトOB(照明位置又はOBの
代表位置LP)と疑似点光源LS2との距離DIS(広
義には位置関係)を求める。そして、疑似点光源LS2
の明度BR2を、この距離DISに応じて変化(減衰)
させる。具体的には、例えば、BR2=BR2/DIS
n(例えばn=3)という変換を行う。また、点光源L
S2の照明方向ベクトルV2を、LS2からOB(L
P)へと向かう方向のベクトルに設定する。
【0101】このようにすることで、平行光源を用いな
がら、擬似的に点光源を表現できるようになる。
【0102】即ち、図4(B)に示すように、オブジェ
クトOBと疑似点光源LS2との位置関係(距離関係、
方向関係)が変化すると、OBに対するLS2の明度B
R2が変化(増減)したり、照明方向ベクトルV2の方
向が変化するようになる。
【0103】なお、平行光源(例えば日光)として設定
された光源LS1については、その明度BR1や照明方
向ベクトルV1の方向は、オブジェクトOBが移動して
も一定になる。但し、BR1やV1の方向を、時間経過
やゲームイベントの発生に伴い変化させるようにしても
よい。
【0104】図5、図6に、本実施形態により生成され
る画像の例を示す。
【0105】図5は、ゲームフィールド(オブジェクト
空間)の全体を示す画像の例である。このゲームフィー
ルドには、日光を表現する光源LS1や、松明を表現す
る疑似点光源LS2などが設定されており、これらの光
源LS1、LS2を用いてオブジェクト(キャラクタ)
OB1、OB2のシェーディングが行われる。
【0106】図6は、図2(A)、(B)の手法で光源
LS1、LS2を合成し、求められた合成光源を用いて
オブジェクトOB1をシェーディングした場合の画像の
例である。
【0107】図6に示すように、本実施形態によれば、
オブジェクトOB1の体全体が、光源LS1、LS2の
合成光源により自然にシェーディングされるようにな
る。また、合成光源の色は、日光(LS1)の白と松明
(LS2)の赤が合成された色になる。従って、あたか
も2つの光源でシェーディングしたかのように見えるリ
アルな画像を提供できる。また、オブジェクトOB1
が、松明(LS2)から離れた位置から松明の方に近づ
いて行った場合に、日光により支配的にシェーディング
される状態から、松明により支配的にシェーディングさ
れる状態に徐々に移行するようになり、より自然な画像
表現が可能になる。
【0108】なお、図7に、日光(LS1)だけを用い
てオブジェクトOB1をシェーディングした場合の画像
の例を示し、図8に、松明(LS2)だけを用いてOB
1をシェーディングした場合の画像の例を示す。
【0109】図7では、松明(LS2)からの光の影響
が、オブジェクトOB1のシェーディングの際に考慮さ
れず、日光(LS1)の白の光だけでシェーディングさ
れてしまうため、図6に比べて今ひとつリアルな画像を
表現できない。また、図8では、松明(LS2)からの
赤の色の光だけでオブジェクトOB1がシェーディング
されてしまうため、不自然な画像になってしまう。
【0110】この場合、例えば、オブジェクトOB1が
松明(LS2)に近づいた時に、所与のタイミングで、
日光(LS1)だけを用いるシェーディングから、松明
(LS2)だけを用いるシェーディングに切り替える手
法を考えることもできる。
【0111】しかしながら、この手法によると、プレー
ヤの見る画像が、図7の画像から図8の画像に突然切り
替わる事態が生じてしまい、プレーヤが不自然さを感じ
る。
【0112】図2(A)、(B)の本実施形態によれ
ば、光源LS1、LS2の合成光源でオブジェクトOB
1がシェーディングされるため、上記のような事態を防
止でき、より自然でリアルな画像を生成できる。
【0113】2.4 基底光源 本実施形態では、光源を合成する前に、複数の光源の中
から基底光源(メイン光源、基準光源)を、まず選択す
る。そして、この選択された基底光源に対して、他の光
源を合成するようにしている。
【0114】より具体的には、例えば図9(A)では、
光源LS1が基底光源として選択されている。この基底
光源の選択は、例えば光源の明度(広義には光源情報)
に基づいて行う。そして、明度が最も高い光源を基底光
源として選択する。図9(A)では、光源LS1〜LS
3のうち、LS1の明度BR1がLS2、LS3の明度
BR2、BR3よりも高いため、LS1が基底光源とし
て選択される。
【0115】本実施形態では、このようにして選択され
た基底光源LS1に対して、他の光源LS2、LS3を
合成する。
【0116】即ち、図2(A)〜図4(B)で説明した
手法を用いて、基底光源LS1の照明方向ベクトルV1
に対して、光源LS2、LS3の照明方向ベクトルV
2、V3を合成する。また、LS1の色C1に対して、
LS2、LS3の色C2、C3を合成する。そして、得
られた合成光源LSS(合成ベクトルVS、合成色C
S)でオブジェクトOB(LP)をシェーディングす
る。
【0117】この場合に本実施形態では、基底光源より
も他の光源の合成率が低くなるように、基底光源に対し
て他の光源を合成している。
【0118】従って、図9(B)に示すように、LS1
の明度BR1の方がLS2のBR2より高く、LS1が
基底光源として選択された場合には、合成光源LSSの
照明方向ベクトルVSの方向が、V2の方向よりもV1
の方向に近づくようになる。また、図9(C)に示すよ
うに、LS2の明度BR2の方がLS1のBR1より高
く、LS2が基底光源として選択された場合には、VS
の方向が、V1の方向よりもV2の方向に近づくように
なる。即ち、合成光源の照明方向ベクトルの方向を、明
度が高い基底光源の照明ベクトルの方向の方に自動的に
近づけることができる。これにより、明度が高い基底光
源を支配的な光源に設定して、オブジェクトOBをシェ
ーディングすることが可能になる。
【0119】例えば図5に示すゲームフィールドにおい
て、オブジェクトOB1と疑似点光源LS2(松明)と
の距離が遠い場合には、図4(A)、(B)で説明した
ようにOB1に対する疑似点光源LS2の明度は低くな
る。従って、この場合には、LS2に比べて明度が高い
光源LS1(日光)が基底光源として選択され、LS1
の照明方向にほぼ一致する照明方向で、オブジェクトO
B1がシェーディングされるようになる。
【0120】一方、オブジェクトOB1が疑似点光源L
S2(松明)に近づくと、OB1、LS2間の距離が短
くなり、OB1に対する疑似点光源LS2の明度は高く
なる。そして、OB1、LS2間が所与の距離になる
と、LS2(松明)の明度の方がLS1(日光)の明度
よりも高くなり、LS2が基底光源として選択される。
これにより、LS2の照明方向に近い照明方向で、オブ
ジェクトOB1がシェーディングされるようになる。
【0121】従って、OB1、LS2間の距離が遠い場
合には、LS1(日光)が支配的な光源になるシェーデ
ィングが行われ、OB1、LS2間の距離が近い場合に
は、LS2(松明)が支配的な光源になるシェーディン
グが行われるようになる。
【0122】さて、図9(A)に示す手法を採用する
と、例えば基底光源がLS1からLS2に切り替わった
際に、合成光源LSSの照明方向ベクトルVSの方向
が、図9(B)、図9(C)に示すように急激に切り替
わってしまう可能性がある。また、合成光源LSSの色
CSが、例えば白(日光)から赤(松明)に急激に切り
替わってしまう可能性がある。
【0123】そこで本実施形態では、基底光源が、例え
ばLS1(第Nのフレームの第Kの光源)からLS2
(第N+1のフレームの第Lの光源)に切り替わった場
合に、合成処理に対するLS1の影響度(合成率)が、
フレーム経過に伴い徐々に減少するように、光源の合成
処理を行っている。
【0124】即ち図10(A)に示すように、合成光源
LSSのVSの方向が、LS1のV1の方向から、LS
2のV2の方向の方に徐々に変化するように、光源の合
成処理を行っている。また、合成光源LSSの色CS
が、LS1の色C1から、LS2の色C2の方に徐々に
変化するように、光源の合成処理を行っている。
【0125】より具体的には、このような合成処理は例
えば以下のような手法で実現できる。
【0126】即ち、図10(B)に示すように、前回の
フレーム(第Nのフレーム)で得られた合成光源LS
S’の情報(VS’、CS’)を破棄せずに取ってお
く。そして、この前回(過去)のフレームの合成光源L
SS’と、現在のフレーム(第N+1のフレーム)の合
成光源LSSを合成し、最終的な合成光源LSSLを求
める。そして、このLSSLを用いてオブジェクトOB
をシェーディングする。
【0127】例えば、前回のフレームの合成光源LS
S’の照明方向ベクトルVS’、色CS’と、現在のフ
レームの合成光源LSSの照明方向ベクトルVS、色C
Sとを、合成率GRを用いて下式のように合成し、最終
的な合成光源LSSLの照明方向ベクトルVSL、色C
SLを求める。
【0128】 VSL=(1.0−GR)×VS’+GR×VS (7) CSL=(1.0−GR)×CS’+GR×CS (8) なお、上式(7)、(8)に示すような狭義のブレンデ
ィング方式ではなく、前述した式(3)、(4)のよう
な加算ブレンディング方式で合成処理を行ってもよい。
【0129】また、上式の合成率GRを、可変に制御す
るようにしてもよい。
【0130】例えば、基底光源の切り替わりの際に、図
9(B)の状態から図9(C)の状態に素早く移行させ
たい場合には、合成率GRを1.0(最大値)に設定し
たり、1.0に近い値に設定する。
【0131】このようにすれば、上式(7)、(8)か
ら明らかなように、前回(過去)のフレームの合成光源
LSS’のVS’、CS’が、最終的な合成光源LSS
LのVSL、CSLに対して与える影響が少なくなる。
これにより、光源の素早い切替が可能になる。
【0132】一方、基底光源の切り替わりの際に、図1
0(A)に示すように、LSSのVSやCSを徐々に変
化させたい場合には、GRを小さな値(0.0に近い
値)に設定する。或いは、小さな値から大きな値にフレ
ーム経過に伴い変化するように、GRを設定する。
【0133】このようにすれば、上式(7)、(8)か
ら明らかなように、前回(過去)のフレームの合成光源
LSS’のVS’、CS’の影響が強く残るようにな
る。これにより、最終的な合成光源LSSLのVSL、
CSLがゆっくりと変化するようになり、より自然で滑
らかな光源の切替が可能になる。
【0134】2.5 アンビエント光への付加 本実施形態では、複数の光源のうち、合成処理の対象と
ならなかった光源の色を、アンビエント光の色に付加す
るようにしている。
【0135】例えば図11(A)では、光源LS1、L
S2、LS3を合成することで、合成光源LSSが求め
られ、LSSに基づいてオブジェクトOBのシェーディ
ングが行われている。
【0136】一方、図11(B)では、オブジェクトO
Bが移動しており、OBとLS1、LS2、LS3の位
置関係が変化している。そして図11(B)では、基底
光源となるLS1の照明方向ベクトルV1と、光源LS
2の照明方向ベクトルV2とのなす角度が90度(直
角)以上になっている。
【0137】このような場合に、光源LS2の影響がL
SSの合成処理に及んだままになると、不自然な事態が
生じるおそれがある。特に、光源の合成率γを、図3
(A)、(B)に示すように内積値VIPに基づいて求
めている場合には、V1とV2のなす角度が90度より
も広がると、VIPが負の値になってしまい、合成率γ
を適切に求めることができなくなるおそれがある。
【0138】そこで本実施形態では、図11(B)のよ
うにV1とV2のなす角度が90度以上になった場合に
は、光源LS2を合成処理の対象から除外している。そ
して、この除外された光源LS2の色C2を、アンビエ
ント光の色(RGB)に付加する。
【0139】このようにすれば、光源LS2は、合成処
理の対象からは除外されるものの、その影響は、アンビ
エント光の色として残るようになる。
【0140】例えば図5において、オブジェクトOB1
と松明(LS2)の位置関係が変化し、松明が光源の合
成処理の対象から除外された場合を考える。このような
場合に、松明(LS2)による照明の影響が全く無くな
ってしまうと、今ひとつリアルな画像を生成できない。
【0141】本実施形態では、このような場合にも、松
明(LS2)の色(赤)がアンビエント光の色に付加さ
れる。従って、松明による赤の照明の影響が少なからず
残るようになり、少ない処理でリアルな画像の生成が可
能になる。
【0142】なお、図11(B)において光源LS2を
合成処理の対象から除外するか否かは、V1とV2の内
積VIPが負になったか否かで判断することが望ましい
が、これとは異なる基準で判断するようにしてもよい。
【0143】また、LS2の色C2そのものをアンビエ
ント光の色に付加する代わりに、C2に変換処理を施
し、変換処理後のC2をアンビエント光の色に付加する
ようにしてもよい。
【0144】2.6 ヒットイベント時のエフェクト光 格闘ゲームなどにおいては、一方のオブジェクト(キャ
ラクタ)の攻撃(武器、キック、パンチ)が他方のオブ
ジェクトにヒットするヒットイベントの発生時に、ヒッ
トイベントが発生したことをプレーヤに視覚的に伝える
ヒットエフェクト光を表示することが望ましい。
【0145】本実施形態では、このヒットエフェクト光
の表示を、図2(A)、(B)で説明した光源合成処理
で実現している。
【0146】例えば図12(A)では、オブジェクトO
B2(キャラクタ)の攻撃(武器)がオブジェクトOB
1にヒットしている。そして、ヒットチェック処理によ
り、ヒット位置としてHP1、HP2、HP3、HP4
が検出されている。
【0147】この場合に本実施形態では図12(B)に
示すように、これらの複数のヒット位置HP1、HP
2、HP3、HP4に、ヒットエフェクト光を表現する
ための光源LS1、LS2、LS3、LS4を設定(配
置)する。
【0148】そして、これらの光源LS1〜LS4を図
2(A)、(B)で説明した手法により合成すること
で、図13(A)に示すように、合成光源LSS1を求
める。そして、求められた合成光源LSS1に基づいて
オブジェクトOB1のシェーディングを行う。
【0149】より具体的には、光源LS1〜LS4から
オブジェクトOB1の代表位置LP1に向かう方向の照
明方向ベクトルを求める。そして、これらの照明方向ベ
クトルを合成し、合成光源LSS1の照明方向ベクトル
VS1を求める。また、光源LS1〜LS4の色を合成
し、合成光源LSS1の色CS1を求める。
【0150】そして、求められた照明方向ベクトルLS
S1、色CS1を用いて、オブジェクトOB1の各頂点
の色などを求め、OB1のシェーディングを行う。
【0151】一方、オブジェクトOB2については、図
13(B)に示すような合成光源LSS2を求める。そ
して、求められた合成光源LSS2に基づいてオブジェ
クトOB2のシェーディングを行う。
【0152】より具体的には、光源LS1〜LS4から
オブジェクトOB2の代表位置LP2に向かう方向の照
明方向ベクトルを求める。そして、これらの照明方向ベ
クトルを合成し、合成光源LSS2の照明方向ベクトル
を求める。また、光源LS1〜LS4の色を合成し、合
成光源LSS2の色CS2を求める。そして、求められ
た照明方向ベクトルLSS2、色CS2を用いて、オブ
ジェクトOB2の各頂点の色などを求め、OB2のシェ
ーディングを行う。
【0153】図14に、図12(A)〜図13(B)の
本実施形態の手法により生成される画像の例を示す。
【0154】このように本実施形態によれば、あたかも
複数個の光源で構成されているかのように見えるヒット
エフェクト光を、簡素な処理で生成できる。
【0155】しかも、ヒットチェックにより検出された
ヒット位置に複数の光源を配置するだけで、その後の光
源合成処理は自動的に行われる。従って、ヒット位置に
応じて処理内容を変えるなどの煩雑な処理を必要とする
ことなく、ヒット位置を反映した適正な合成光源で、オ
ブジェクトをシェーディングすることが可能になる。
【0156】また、本実施形態によれば、図13
(A)、(B)に示すように、同じヒット位置に基づい
て、オブジェクトOB1用の合成光源LSS1と、オブ
ジェクトOB2用の合成光源LSS2の両方を自動的に
生成できる。そして、これらのLSS1、LSS2を用
いることで、オブジェクトOB1、OB2に対して、異
なったシェーディングを施すことが可能になり、よりリ
アルなシェーディングを実現できる。
【0157】なお、ヒットイベントが発生する前におい
ては、合成光源LSS1やLSS2に使用されるシェー
ディング用の物理的な光源を、他の用途に使用すること
が望ましい。ここで、他の用途としては、例えば、オブ
ジェクトの逆光部分を照明する逆光補正用の光源などの
用途が考えられる。そして、ヒットイベントが発生した
ことを条件に、このシェーディング用の物理的な光源
を、図13(A)、(B)に示すようなヒットエフェク
ト光の光源に使用するようにすればよい。
【0158】また、ヒットエフェクト光の生成時には、
図10(A)、(B)や上式(7)、(8)で説明した
合成率GR(移行速度)を、なるべく大きな値に設定す
ることが望ましい。例えば、ヒットエフェクト光の生成
時には、上式(7)、(8)においてGR=1.0に設
定する。このようにすることで、例えば他の用途の光源
(逆光補正用の光源)からヒットエフェクト用の光源へ
の切替を素早く行うことが可能になる。
【0159】3.本実施形態の処理 次に、本実施形態の処理の詳細例について、図15、図
16、図17のフローチャートを用いて説明する。
【0160】まず、各光源について、オブジェクト(照
明位置)に対する照明方向ベクトルと明度(減衰度)を
決定する(ステップS1)。ここで、減衰率は、図4
(A)、(B)で説明した疑似点光源の明度の減衰率で
ある。そして、全ての光源について処理が終了するまで
処理を繰り返す(ステップS2)。
【0161】次に、ステップS1で決定した明度(減衰
後の明度)に基づき、オブジェクトを照明する光源を、
明るい順になるようにソートする(ステップS3)。即
ち、明度が最も高い光源が先頭になるようにソートす
る。そして、全ての光源のソートが終了するまで処理を
繰り返す(ステップS4)。
【0162】次に、処理対象となる光源が、ソートされ
た光源のうちの先頭の光源か否かを判断する(図16の
ステップS5)。そして、先頭の光源である場合には、
その光源が、前回のフレームで基底光源として使用した
光源と同じか否かを判断する(ステップS6)。そし
て、同じ光源である場合にはステップS10に移行す
る。
【0163】一方、違う光源である場合(基底光源が切
り替わった場合)には、合成率GRの移行速度SSを早
くするか否かを判定する(ステップS7)。そして、速
くする場合(図12(A)〜図14のヒットエフェクト
光の場合)には、SSを1.0(最大値)に設定する
(ステップS8)。一方、速くしない場合(図5の日光
と松明の場合)には、SSを0.0(最小値)に設定す
る(ステップS9)。
【0164】次に、処理対象光源を基底光源に設定する
(ステップS10)。より具体的には、基底光源(図9
(A)〜(C)参照)の照明方向ベクトルを基底ベクト
ルVBに設定すると共に合成ベクトルVSの初期値に設
定する。また、基底光源の明度を基底明度BRBに設定
し、基底光源の色を合成色CSの初期値に設定する。そ
して、追従度Tを1.0に設定し(ステップS11)、
ステップS19に移行する。
【0165】ステップS5で、処理対象光源が先頭の光
源ではないと判断された場合には、基底明度BRBに対
する、処理対象光源の明度BRの割合BRPを求め、求
められたBRPを0.0〜1.0の範囲にリミットする
(ステップS12)。また、基底ベクトルVBと処理対
象光源の照明方向ベクトルVとの内積VIPを求める
(ステップS13)。
【0166】次に、内積VIPが負の値か否かを判断し
(ステップS14)、VIP<0の場合には、処理対象
光源の色CとVIPに基づき、アンビエント光の色に付
加すべき色CAを求める(ステップS15。図11
(A)、(B)参照)。
【0167】一方、VIP≧0の場合には、明度割合B
RPと内積VIPに基づいて、合成率γ=F(BRP,
VIP)を求める(ステップS16。図3(A)、
(B)参照)。
【0168】次に、基底光源と処理対象光源の明度が近
いほど小さな値になる追従度T={T+(1−BR
P)}×0.5を設定する(ステップS17)。
【0169】次に、求まった合成率γと、処理対象光源
の照明方向ベクトルV及び色Cに基づいて、合成ベクト
ルVS=VS+γ×V、合成色CS=CS+γ×Cを求
める。(ステップS18。図2(A)、(B)、図9
(A)、(B)、(C)参照)。そして、全ての処理対
象光源を処理したか否かを判断し(ステップS19)、
処理していない場合にはステップS5に戻る。
【0170】次に、合成ベクトルVSを正規化する(図
17のステップS20)。そして、過去の合成ベクトル
との合成率GRをコントロールするか否かを判断する
(ステップS21)。
【0171】そして、GRをコントロールする場合に
は、GR=T3に設定し、得られたGRを0.1〜1.
0の範囲にリミットする(ステップS22)。このよう
にすることで、GRは、T=1.0付近で急峻に0.0
から1.0に変化するようになる。一方、GRをコント
ロールしない場合には、GR=1.0に設定する(ステ
ップS23)。
【0172】次に、GR=GR×SSに設定し、得られ
たGRを0.05〜1.0の範囲にリミットする(ステ
ップS24)。GR≧0.05となるようにGRをリミ
ットすることで、移行速度SS=0.0の場合にも、G
Rが0.05よりも小さくならないことが保証されるよ
うになる。
【0173】次に、移行速度SS=SS+1/M(例え
ばM=24)に設定し、得られたSSを0.0〜1.0
の範囲にリミットする(ステップS25)。このように
することで、移行速度SSが、フレーム経過に伴い徐々
に増加するようになる。
【0174】次に、前回のフレームの合成ベクトルV
S’と、今回のフレームの合成ベクトルVSと、合成率
GRに基づき、最終合成ベクトルVSL=(1.0−G
R)×VS’+GR×VSを求める(ステップS26。
図10(B)参照)。
【0175】また、前回のフレームの合成色CS’と、
今回のフレームの合成色CSと、合成率GRに基づき、
最終合成色CSL=(1.0−GR)×CS’+GR×
CSを求める(ステップS27)。
【0176】そして、求められた最終合成ベクトルVS
Lと、最終合成色CSLと、移行速度SSを、次のフレ
ームの処理に使用するために主記憶部に保存する(ステ
ップS28)。
【0177】最後に、最終合成ベクトルVSL、最終合
成色CSLに基づき、オブジェクトのシェーディングを
行う(ステップS29)。
【0178】以上のようにすることで、当該フレームで
の光源の合成処理が完了し、オブジェクトをシェーディ
ングすることができる。
【0179】4.ハードウェア構成 次に、本実施形態を実現できるハードウェアの構成の一
例について図18を用いて説明する。
【0180】メインプロセッサ900は、CD982
(情報記憶媒体)に格納されたプログラム、通信インタ
ーフェース990を介して転送されたプログラム、或い
はROM950(情報記憶媒体の1つ)に格納されたプ
ログラムなどに基づき動作し、ゲーム処理、画像処理、
音処理などの種々の処理を実行する。
【0181】コプロセッサ902は、メインプロセッサ
900の処理を補助するものであり、高速並列演算が可
能な積和算器や除算器を有し、マトリクス演算(ベクト
ル演算)を高速に実行する。例えば、オブジェクトを移
動させたり動作(モーション)させるための物理シミュ
レーションに、マトリクス演算などの処理が必要な場合
には、メインプロセッサ900上で動作するプログラム
が、その処理をコプロセッサ902に指示(依頼)す
る。
【0182】ジオメトリプロセッサ904は、座標変
換、透視変換、光源計算、曲面生成などのジオメトリ処
理を行うものであり、高速並列演算が可能な積和算器や
除算器を有し、マトリクス演算(ベクトル演算)を高速
に実行する。例えば、座標変換、透視変換、光源計算な
どの処理を行う場合には、メインプロセッサ900で動
作するプログラムが、その処理をジオメトリプロセッサ
904に指示する。
【0183】データ伸張プロセッサ906は、圧縮され
た画像データや音データを伸張するデコード処理を行っ
たり、メインプロセッサ900のデコード処理をアクセ
レートする処理を行う。これにより、オープニング画
面、インターミッション画面、エンディング画面、或い
はゲーム画面などにおいて、MPEG方式等で圧縮され
た動画像を表示できるようになる。なお、デコード処理
の対象となる画像データや音データは、ROM950、
CD982に格納されたり、或いは通信インターフェー
ス990を介して外部から転送される。
【0184】描画プロセッサ910は、ポリゴンや曲面
などのプリミティブ(プリミティブ面)で構成されるオ
ブジェクトの描画(レンダリング)処理を高速に実行す
るものである。オブジェクトの描画の際には、メインプ
ロセッサ900は、DMAコントローラ970の機能を
利用して、オブジェクトデータを描画プロセッサ910
に渡すと共に、必要であればテクスチャ記憶部924に
テクスチャを転送する。すると、描画プロセッサ910
は、これらのオブジェクトデータやテクスチャに基づい
て、Zバッファなどを利用した陰面消去を行いながら、
オブジェクトをフレームバッファ922に高速に描画す
る。また、描画プロセッサ910は、αブレンディング
(半透明処理)、デプスキューイング、ミップマッピン
グ、フォグ処理、バイリニア・フィルタリング、トライ
リニア・フィルタリング、アンチエリアシング、シェー
ディング処理なども行うことができる。そして、1フレ
ーム分の画像がフレームバッファ922に書き込まれる
と、その画像はディスプレイ912に表示される。
【0185】サウンドプロセッサ930は、多チャンネ
ルのADPCM音源などを内蔵し、BGM、効果音、音
声などの高品位のゲーム音を生成する。生成されたゲー
ム音は、スピーカ932から出力される。
【0186】ゲームコントローラ942(レバー、ボタ
ン、筺体、パッド型コントローラ又はガン型コントロー
ラ等)からの操作データや、メモリカード944からの
セーブデータ、個人データは、シリアルインターフェー
ス940を介してデータ転送される。
【0187】ROM950にはシステムプログラムなど
が格納される。なお、業務用ゲームシステムの場合に
は、ROM950が情報記憶媒体として機能し、ROM
950に各種プログラムが格納されることになる。な
お、ROM950の代わりにハードディスクを利用する
ようにしてもよい。
【0188】RAM960は、各種プロセッサの作業領
域として用いられる。
【0189】DMAコントローラ970は、プロセッ
サ、メモリ(RAM、VRAM、ROM等)間でのDM
A転送を制御するものである。
【0190】CDドライブ980は、プログラム、画像
データ、或いは音データなどが格納されるCD982
(情報記憶媒体)を駆動し、これらのプログラム、デー
タへのアクセスを可能にする。
【0191】通信インターフェース990は、ネットワ
ークを介して外部との間でデータ転送を行うためのイン
ターフェースである。この場合に、通信インターフェー
ス990に接続されるネットワークとしては、通信回線
(アナログ電話回線、ISDN)、高速シリアルバスな
どを考えることができる。そして、通信回線を利用する
ことでインターネットを介したデータ転送が可能にな
る。また、高速シリアルバスを利用することで、他の画
像生成システムとの間でのデータ転送が可能になる。
【0192】なお、本実施形態の各部(各手段)は、そ
の全てを、ハードウェアのみにより実現してもよいし、
情報記憶媒体に格納されるプログラムや通信インターフ
ェースを介して配信されるプログラムのみにより実現し
てもよい。或いは、ハードウェアとプログラムの両方に
より実現してもよい。
【0193】そして、本実施形態の各部をハードウェア
とプログラムの両方により実現する場合には、情報記憶
媒体には、ハードウェア(コンピュータ)を本実施形態
の各部として機能させるためのプログラムが格納される
ことになる。より具体的には、上記プログラムが、ハー
ドウェアである各プロセッサ902、904、906、
910、930等に処理を指示すると共に、必要であれ
ばデータを渡す。そして、各プロセッサ902、90
4、906、910、930等は、その指示と渡された
データとに基づいて、本発明の各部を実現することにな
る。
【0194】図19(A)に、本実施形態を業務用ゲー
ムシステム(画像生成システム)に適用した場合の例を
示す。プレーヤは、ディスプレイ1100上に映し出さ
れたゲーム画像を見ながら、操作部1102(レバー、
ボタン)を操作してゲームを楽しむ。内蔵されるシステ
ムボード(サーキットボード)1106には、各種プロ
セッサ、各種メモリなどが実装される。そして、本実施
形態の各部を実現するためのプログラム(データ)は、
システムボード1106上の情報記憶媒体であるメモリ
1108に格納される。以下、このプログラムを格納プ
ログラム(格納情報)と呼ぶ。
【0195】図19(B)に、本実施形態を家庭用のゲ
ームシステム(画像生成システム)に適用した場合の例
を示す。プレーヤはディスプレイ1200に映し出され
たゲーム画像を見ながら、コントローラ1202、12
04などを操作してゲームを楽しむ。この場合、上記格
納プログラム(格納情報)は、本体システムに着脱自在
な情報記憶媒体であるCD1206、或いはメモリカー
ド1208、1209などに格納されている。
【0196】図19(C)に、ホスト装置1300と、
このホスト装置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に伝送し端末において出力することになる。
【0197】なお、図19(C)の構成の場合に、本実
施形態の各部を、ホスト装置(サーバー)と端末とで分
散して実現するようにしてもよい。また、本実施形態の
各部を実現するための上記格納プログラム(格納情報)
を、ホスト装置(サーバー)の情報記憶媒体と端末の情
報記憶媒体に分散して格納するようにしてもよい。
【0198】またネットワークに接続する端末は、家庭
用ゲームシステムであってもよいし業務用ゲームシステ
ムであってもよい。
【0199】なお本発明は、上記実施形態で説明したも
のに限らず、種々の変形実施が可能である。
【0200】例えば、明細書中の記載において広義な用
語(光源情報、光源の合成、光源等)として引用された
用語(照明方向ベクトル・色・光源位置・明度、照明方
向ベクトル・色の合成、疑似点光源等)は、明細書中の
他の記載においても広義な用語に置き換えることができ
る。
【0201】また、本発明の光源の合成処理手法は、図
2(A)〜図17で詳細に説明した手法に限定されず、
種々の変形実施が可能である。
【0202】例えば、合成率を、内積や明度割合以外の
パラメータで求めるようにしてもよい。また、光源を合
成する方式も、加算ブレンディング方式や狭義のブレン
ディング方式に限定されない。
【0203】特に、合成処理の対象とならなかった光源
の色をアンビエント光の色に付加する発明や、複数のヒ
ット位置に複数の光源を設定して合成光源を求める発明
においては、光源の合成処理を、本実施形態で説明した
ものとは異なる処理で実現してもよい。
【0204】また、本発明のうち従属請求項に係る発明
においては、従属先の請求項の構成要件の一部を省略す
る構成とすることもできる。また、本発明の1の独立請
求項に係る発明の要部を、他の独立請求項に従属させる
こともできる。
【0205】また、本発明は種々のゲーム(格闘ゲー
ム、競争ゲーム、シューティングゲーム、ロボット対戦
ゲーム、スポーツゲーム、ロールプレイングゲーム等)
に適用できる。
【0206】また本発明は、業務用ゲームシステム、家
庭用ゲームシステム、多数のプレーヤが参加する大型ア
トラクションシステム、シミュレータ、マルチメディア
端末、ゲーム画像を生成するシステムボード等の種々の
画像生成システム(ゲームシステム)に適用できる。
【図面の簡単な説明】
【図1】本実施形態の画像生成システムの機能ブロック
図の例である。
【図2】図2(A)、(B)は、本実施形態の光源合成
手法について説明するための図である。
【図3】図3(A)、(B)は、光源合成の合成率を得
る手法について説明するための図である。
【図4】図4(A)、(B)は、疑似点光源について説
明するための図である。
【図5】本実施形態により生成された画像の例を示す図
である。
【図6】本実施形態により生成された画像の例を示す図
である。
【図7】本実施形態の処理を施さなかった場合の画像の
例を示す図である。
【図8】本実施形態の処理を施さなかった場合の画像の
例を示す図である。
【図9】図9(A)、(B)、(C)は、基底光源を用
いて光源合成を行う手法について説明するための図であ
る。
【図10】図10(A)、(B)は、基底光源の切替時
における光源合成手法について説明するための図であ
る。
【図11】図11(A)、(B)は、合成処理の対象と
ならなかった光源の色をアンビエント光に付加する手法
について説明するための図である。
【図12】図12(A)、(B)は、複数のヒット位置
に複数の光源を設定して合成する手法について説明する
ための図である。
【図13】図13(A)、(B)も、複数のヒット位置
に複数の光源を設定して合成する手法について説明する
ための図である。
【図14】本実施形態により生成された画像の例を示す
図である。
【図15】本実施形態の処理の詳細例について示すフロ
ーチャートである。
【図16】本実施形態の処理の詳細例について示すフロ
ーチャートである。
【図17】本実施形態の処理の詳細例について示すフロ
ーチャートである。
【図18】本実施形態を実現できるハードウェアの構成
の一例を示す図である。
【図19】図19(A)、(B)、(C)は、本実施形
態が適用される種々の形態のシステムの例を示す図であ
る。
【符号の説明】
LS1、LS2 光源 C1、C2 色 BR1、BR2 明度 V11、V21、V12、V22、V1、V2 照明方
向ベクトル 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 通信部
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G06T 3/00 300 G06T 3/00 300 17/40 17/40 A Fターム(参考) 2C001 AA03 AA06 AA09 AA14 BA01 BA03 BA05 BA06 BA07 BB02 BC05 BC06 BC08 BC09 CA02 CA06 CB01 CB02 CB04 CB06 CB08 CC01 CC08 5B050 AA10 BA09 BA18 EA07 EA09 EA19 EA27 EA30 FA02 FA05 5B057 AA20 CA08 CA13 CB08 CB13 CE08 CE16 CH01 CH11 CH14 DA16 5B080 BA05 CA01 FA02 GA11

Claims (25)

    【特許請求の範囲】
  1. 【請求項1】 オブジェクト空間において所与の視点か
    ら見える画像を生成するための画像生成システムであっ
    て、 オブジェクトを照明するための複数の光源を用意し、複
    数の光源の各光源に対して、オブジェクトに対する各光
    源の照明方向ベクトルを設定する光源設定部と、 複数の光源の照明方向ベクトルを合成し、オブジェクト
    に対する合成光源の照明方向ベクトルをオブジェクト毎
    に求める光源合成部と、 合成光源に基づいて、オブジェクトのシェーディングを
    行うシェーディング部と、 を含むことを特徴とする画像生成システム。
  2. 【請求項2】 請求項1において、 前記光源合成部が、 複数の光源に設定された色を合成することで、合成光源
    の色を求めることを特徴とする画像生成システム。
  3. 【請求項3】 請求項1又は2において、 前記光源合成部が、 光源の合成率を、合成される複数の光源の照明方向ベク
    トルの内積、及び、合成される複数の光源の明度の割合
    の少なくとも一方に基づいて求めることを特徴とする画
    像生成システム。
  4. 【請求項4】 請求項1乃至3のいずれかにおいて、 前記複数の光源が疑似点光源を含み、 前記光源設定部が、 オブジェクトと疑似点光源との位置関係に基づいて、オ
    ブジェクトに対する疑似点光源の照明方向ベクトルと疑
    似点光源の明度を設定することを特徴とする画像生成シ
    ステム。
  5. 【請求項5】 請求項1乃至4のいずれかにおいて、 光源の明度に基づいて複数の光源の中から基底光源を選
    択する基底光源選択部を含み、 前記光源合成部が、 選択された基底光源よりも他の光源の合成率が低くなる
    ように、選択された基底光源に対して他の光源を合成す
    ることを特徴とする画像生成システム。
  6. 【請求項6】 請求項5において、 前記光源合成部が、 第Nのフレームでは第Kの光源が基底光源として選択さ
    れ、次の第N+1のフレームでは第Lの光源が基底光源
    として選択された場合には、合成処理に対する第Kの光
    源の影響度がフレーム経過に伴い減少するように、光源
    の合成を行うことを特徴とする画像生成システム。
  7. 【請求項7】 請求項1乃至6のいずれかにおいて、 前記光源合成部が、 現在のフレームで得られた合成光源に前回のフレームで
    得られた合成光源を合成し、最終的な合成光源を求める
    ことを特徴とする画像生成システム。
  8. 【請求項8】 請求項7において、 前記光源合成部が、 現在のフレームで得られた合成光源と前回のフレームで
    得られた合成光源との合成率を、可変に制御することを
    特徴とする画像生成システム。
  9. 【請求項9】 請求項1乃至8のいずれかにおいて、 前記光源合成部が、 複数の光源のうち、合成処理の対象とならなかった光源
    の色を、アンビエント光の色に付加することを特徴とす
    る画像生成システム。
  10. 【請求項10】 請求項1乃至9のいずれかにおいて、 前記光源設定部が、 オブジェクトに対するヒットイベントが発生した場合
    に、複数のヒット位置に前記複数の光源を設定し、 前記光源合成部が、 複数のヒット位置に設定された複数の光源を合成し、合
    成光源を求めることを特徴とする画像生成システム。
  11. 【請求項11】 オブジェクト空間において所与の視点
    から見える画像を生成する画像生成システムであって、 複数の光源を設定する光源設定部と、 設定された複数の光源を合成し、合成光源を求める光源
    合成部と、 求められた合成光源に基づいて、オブジェクトのシェー
    ディングを行うシェーディング部とを含み、 前記光源合成部が、 複数の光源のうち、合成処理の対象とならなかった光源
    の色を、アンビエント光の色に付加することを特徴とす
    る画像生成システム。
  12. 【請求項12】 オブジェクト空間において所与の視点
    から見える画像を生成する画像生成システムであって、 オブジェクトに対するヒットイベントが発生した場合
    に、オブジェクトのヒットチェックを行い、ヒット位置
    を求めるヒットチェック部と、 求められた複数のヒット位置に、ヒットエフェクト光を
    表すための複数の光源を設定する光源設定部と、 複数のヒット位置に設定された複数の光源を合成し、合
    成光源を求める光源合成部と、 求められた合成光源に基づいて、オブジェクトのシェー
    ディングを行うシェーディング部と、 を含むことを特徴とする画像生成システム。
  13. 【請求項13】 オブジェクト空間において所与の視点
    から見える画像を生成するためのプログラムであって、 オブジェクトを照明するための複数の光源を用意し、複
    数の光源の各光源に対して、オブジェクトに対する各光
    源の照明方向ベクトルを設定する光源設定部と、 複数の光源の照明方向ベクトルを合成し、オブジェクト
    に対する合成光源の照明方向ベクトルをオブジェクト毎
    に求める光源合成部と、 合成光源に基づいて、オブジェクトのシェーディングを
    行うシェーディング部として、 コンピュータを機能させることを特徴とするプログラ
    ム。
  14. 【請求項14】 請求項13において、 前記光源合成部が、 複数の光源に設定された色を合成することで、合成光源
    の色を求めることを特徴とするプログラム。
  15. 【請求項15】 請求項13又は14において、 前記光源合成部が、 光源の合成率を、合成される複数の光源の照明方向ベク
    トルの内積、及び、合成される複数の光源の明度の割合
    の少なくとも一方に基づいて求めることを特徴とするプ
    ログラム。
  16. 【請求項16】 請求項13乃至15のいずれかにおい
    て、 前記複数の光源が疑似点光源を含み、 前記光源設定部が、 オブジェクトと疑似点光源との位置関係に基づいて、オ
    ブジェクトに対する疑似点光源の照明方向ベクトルと疑
    似点光源の明度を設定することを特徴とするプログラ
    ム。
  17. 【請求項17】 請求項13乃至16のいずれかにおい
    て、 光源の明度に基づいて複数の光源の中から基底光源を選
    択する基底光源選択部としてコンピュータを機能させる
    と共に、 前記光源合成部が、 選択された基底光源よりも他の光源の合成率が低くなる
    ように、選択された基底光源に対して他の光源を合成す
    ることを特徴とするプログラム。
  18. 【請求項18】 請求項17において、 前記光源合成部が、 第Nのフレームでは第Kの光源が基底光源として選択さ
    れ、次の第N+1のフレームでは第Lの光源が基底光源
    として選択された場合には、合成処理に対する第Kの光
    源の影響度がフレーム経過に伴い減少するように、光源
    の合成を行うことを特徴とするプログラム。
  19. 【請求項19】 請求項13乃至18のいずれかにおい
    て、 前記光源合成部が、 現在のフレームで得られた合成光源に前回のフレームで
    得られた合成光源を合成し、最終的な合成光源を求める
    ことを特徴とするプログラム。
  20. 【請求項20】 請求項19において、 前記光源合成部が、 現在のフレームで得られた合成光源と前回のフレームで
    得られた合成光源との合成率を、可変に制御することを
    特徴とするプログラム。
  21. 【請求項21】 請求項13乃至20のいずれかにおい
    て、 前記光源合成部が、 複数の光源のうち、合成処理の対象とならなかった光源
    の色を、アンビエント光の色に付加することを特徴とす
    るプログラム。
  22. 【請求項22】 請求項13乃至21のいずれかにおい
    て、 前記光源設定部が、 オブジェクトに対するヒットイベントが発生した場合
    に、複数のヒット位置に前記複数の光源を設定し、 前記光源合成部が、 複数のヒット位置に設定された複数の光源を合成し、合
    成光源を求めることを特徴とするプログラム。
  23. 【請求項23】 オブジェクト空間において所与の視点
    から見える画像を生成するためのプログラムであって、 複数の光源を設定する光源設定部と、 設定された複数の光源を合成し、合成光源を求める光源
    合成部と、 求められた合成光源に基づいて、オブジェクトのシェー
    ディングを行うシェーディング部として、 コンピュータを機能させると共に、 前記光源合成部が、 複数の光源のうち、合成処理の対象とならなかった光源
    の色を、アンビエント光の色に付加することを特徴とす
    るプログラム。
  24. 【請求項24】 オブジェクト空間において所与の視点
    から見える画像を生成するためのプログラムであって、 オブジェクトに対するヒットイベントが発生した場合
    に、オブジェクトのヒットチェックを行い、ヒット位置
    を求めるヒットチェック部と、 求められた複数のヒット位置に、ヒットエフェクト光を
    表すための複数の光源を設定する光源設定部と、 複数のヒット位置に設定された複数の光源を合成し、合
    成光源を求める光源合成部と、 求められた合成光源に基づいて、オブジェクトのシェー
    ディングを行うシェーディング部として、 コンピュータを機能させることを特徴とするプログラ
    ム。
  25. 【請求項25】 コンピュータ読み取り可能な情報記憶
    媒体であって、請求項13乃至24のいずれかのプログ
    ラムを記憶したことを特徴とする情報記憶媒体。
JP2002038638A 2002-02-15 2002-02-15 画像生成システム、プログラム及び情報記憶媒体 Expired - Fee Related JP4056035B2 (ja)

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)

* Cited by examiner, † Cited by third party
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 一飞(海南)科技有限公司 一种无人机编队流光灯效实现方法、系统及无人机编队

Cited By (7)

* Cited by examiner, † Cited by third party
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