プログラム、情報記憶媒体および画像生成システム
【課題】オブジェクトが接触する際の様子を少ない量の音データで適切に表現すること。
【解決手段】ゲームシステム10は、キャラクタと他のオブジェクトとが接触する場合に、キャラクタと他のオブジェクトとが接触することにより発生する音に相当する第1の接触音、およびキャラクタを構成する部分同士が接触することにより発生する音に相当する第2の接触音を再生させるが、キャラクタが接触する他のオブジェクトの属性に応じて、第1の接触音だけでなく第2の接触音の再生状況をも変化させる。
【解決手段】ゲームシステム10は、キャラクタと他のオブジェクトとが接触する場合に、キャラクタと他のオブジェクトとが接触することにより発生する音に相当する第1の接触音、およびキャラクタを構成する部分同士が接触することにより発生する音に相当する第2の接触音を再生させるが、キャラクタが接触する他のオブジェクトの属性に応じて、第1の接触音だけでなく第2の接触音の再生状況をも変化させる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラム、情報記憶媒体および画像生成システムに関する。
【背景技術】
【0002】
従来から、オブジェクトが配置されたオブジェクト空間を仮想カメラから見た画像を生成する画像生成システムが知られている。このような画像生成システムには、オブジェクト同士が衝突したことにより発生する音に対応する複数の音データを予め用意しておき、オブジェクト同士が衝突した時に演算したオブジェクトの状態などに応じて、読み出す音データを決定するものがある。
【特許文献1】特開2007−212635号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかし従来の画像生成システムでは、リアリティが高い効果音を出力させようとすると、予め用意しておくべき音データの量が増加してしまい、音データを作成するコストや必要となる記憶容量が増加してしまうという問題があった。
【0004】
本発明はこのような問題に鑑みてなされたものであり、その目的は、オブジェクトが接触する際の様子を少ない量の音データで適切に表現することができる画像生成システムを提供することにある。
【課題を解決するための手段】
【0005】
(1)本発明は、
キャラクタを含む複数のオブジェクトをオブジェクト空間に設定するオブジェクト空間設定部と、
前記キャラクタの移動および動作の少なくとも一方の制御を行う移動・動作制御部と、
前記キャラクタと他のオブジェクトとが接触する場合に、前記キャラクタと前記他のオブジェクトとが接触することにより発生する音に相当する第1の接触音を再生させるとともに、前記キャラクタを構成する構成部分同士が接触することにより発生する音に相当する第2の接触音を再生させる音制御部と、
前記オブジェクト空間を画像として描画する描画部と、
前記第1の接触音および前記第2の接触音を再生する音処理部とを含み、
前記音制御部は、
前記キャラクタが接触する前記他のオブジェクトの属性に応じて、前記第1の接触音および前記第2の接触音の再生状況を変化させることを特徴とする画像生成システムに関係する。
【0006】
また本発明は、上記各部としてコンピュータを機能させるプログラムに関係する。また本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶(記録)した情報記憶媒体に関係する。
【0007】
本発明では、キャラクタと他のオブジェクトとが接触する場合に、第1の接触音および第2の接触音を再生させるが、キャラクタが接触する他のオブジェクトの属性に応じて、第1の接触音だけでなく第2の接触音の再生状況をも変化させる。これにより本発明によれば、キャラクタと他のオブジェクトとが接触する場合に、キャラクタを構成する部分同士が接触することにより発生する音も、キャラクタが接触する他のオブジェクトの属性に影響を受けて変化することを表現することができる。従って本発明によれば、予め用意する音のデータ量を増加させなくとも、音の再生状況を変化させることにより、キャラクタと他のオブジェクトとが接触する際の様子を適切に表現することができる。
【0008】
(2)また本発明は、
前記音制御部は、
前記キャラクタが接触する前記他のオブジェクトの属性に応じて、前記第1の接触音および前記第2の接触音の音量を変化させるようにしてもよい。
【0009】
このようにすれば、第1の接触音および第2の接触音の音量を変化させることにより、キャラクタを構成する部分同士が接触することにより発生する音が、キャラクタが接触する他のオブジェクトの属性に影響を受けて変化することを表現することができる。
【0010】
(3)また本発明は、
前記音制御部は、
前記キャラクタが前記他のオブジェクトの表面を移動する場合に、前記第1の接触音として、前記キャラクタが前記他のオブジェクトの表面を移動することにより発生する音に相当する音を再生させるようにしてもよい。
【0011】
このようにすれば、キャラクタが他のオブジェクトの表面を移動する場合に、キャラクタを構成する部分同士が接触することにより発生する音も、キャラクタが移動する他のオブジェクトの属性に影響を受けて変化することを表現することができる。
【0012】
(4)また本発明は、
前記オブジェクト空間設定部は、
複数種類のキャラクタのうち少なくとも1つの種類のキャラクタをオブジェクト空間に設定し、
前記音制御部は、
前記第1の接触音として、前記キャラクタの種類に対応して設定されるキャラクタ別音成分と、前記複数種類のキャラクタに共通に設定される複数種類の共通音成分とを、前記複数種類の共通音成分のそれぞれの合成比率が前記キャラクタの属性に応じた合成比率となるように再生させるようにしてもよい。
【0013】
このようにすれば、キャラクタに応じてキャラクタ別音成分を変化させるとともに、複数の共通音成分のそれぞれの合成比率を変化させることにより、キャラクタの属性に応じた第1の接触音の変化を表現することができる。
【0014】
(5)また本発明は、
複数種類のオブジェクトをオブジェクト空間に設定するオブジェクト空間設定部と、
少なくとも1種類の前記オブジェクトの移動および動作の少なくとも一方の制御を行う移動・動作制御部と、
前記オブジェクト同士が接触する場合に、前記オブジェクト同士が接触することにより発生する音に相当する接触音を再生させる音制御部と、
前記オブジェクト空間を画像として描画する描画部と、
前記接触音を再生する音処理部とを含み、
前記音制御部は、
前記接触音として、前記オブジェクトの種類に対応して設定されるオブジェクト別音成分と、前記複数種類のオブジェクトに共通に設定される複数種類の共通音成分とを、前記複数種類の共通音成分のそれぞれの合成比率が前記オブジェクトの属性に応じた合成比率となるように再生させることを特徴とする画像生成システムに関係する。
【0015】
また本発明は、上記各部としてコンピュータを機能させるプログラムに関係する。また本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶(記録)した情報記憶媒体に関係する。
【0016】
本発明によれば、オブジェクトに応じてオブジェクト別音成分を変化させるとともに、複数の共通音成分のそれぞれの合成比率を変化させることにより、オブジェクトの属性に応じた接触音の変化を表現することができる。
【0017】
(6)また本発明は、
前記オブジェクト空間設定部は、
キャラクタを含む複数種類のオブジェクトをオブジェクト空間に設定し、
前記移動・動作制御部は、
前記キャラクタの移動および動作の少なくとも一方の制御を行い、
前記音制御部は、
前記キャラクタと他のオブジェクトとが接触する場合に、前記接触音として、前記キャラクタと前記他のオブジェクトとが接触することにより発生する音に相当する第1の接触音を再生させ、前記第1の接触音として、前記キャラクタの種類に対応して設定されるキャラクタ別音成分と、前記複数種類のキャラクタに共通に設定される複数種類の共通音成分とを、前記複数種類の共通音成分のそれぞれの合成比率が前記キャラクタの属性に応じた合成比率となるように再生させるようにしてもよい。
【0018】
このようにすれば、キャラクタに応じてキャラクタ別音成分を変化させるとともに、複数の共通音成分のそれぞれの合成比率を変化させることにより、キャラクタの属性に応じた第1の接触音の変化を表現することができる。
【0019】
(7)また本発明は、
前記オブジェクト空間設定部は、
キャラクタを含む複数種類のオブジェクトをオブジェクト空間に設定し、
前記移動・動作制御部は、
前記キャラクタの移動および動作の少なくとも一方の制御を行い、
前記音制御部は、
前記キャラクタを構成する構成部分同士が接触する場合に、前記接触音として、前記構成部分同士が接触することにより発生する音に相当する第2の接触音を再生させ、前記第2の接触音として、前記構成部分の種類に対応して設定される構成部分別音成分と、前記複数種類の構成部分に共通に設定される複数種類の共通音成分とを、前記複数種類の共通音成分のそれぞれの合成比率が前記構成部分の属性に応じた合成比率となるように再生させるようにしてもよい。
【0020】
このようにすれば、接触する構成部分に応じて構成部分別音成分を変化させるとともに、複数の共通音成分のそれぞれの合成比率を変化させることにより、構成部分の属性に応じた第2の接触音の変化を表現することができる。
【発明を実施するための最良の形態】
【0021】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【0022】
1.システム全体の概略
図1は、本実施形態のゲームシステム10(画像生成システム)の外観図である。本実施形態のゲームシステム10は、プレーヤが操作情報を入力するコントローラ12と、コントローラ12からの操作情報に基づいてゲーム画像やゲーム音を生成する本体装置14と、本体装置14で生成したゲーム画像を表示するディスプレイ16と、本体装置14で生成したゲーム音を出力するスピーカ18とを含む。
【0023】
図1に示すように、コントローラ12は、プレーヤが左手で握る左グリップ20と、右手で握る右グリップ22とを有している。そしてコントローラ12の正面の左側には、左グリップ20を左手で握ったプレーヤが左手の親指で操作することができる十字型の方向キー24と、左アナログスティック26とが設けられている。この方向キー24は、方向キー24を押下した位置に応じて異なる信号が出力されるように構成され、左アナログスティック26は、左アナログスティック26が倒された角度と方向に応じて異なる信号が出力されるように構成されている。またコントローラ12の正面の右側には、右グリップ22を右手で握ったプレーヤが右手の親指で操作することができる第1ボタン28〜第4ボタン34と、右アナログスティック36とが設けられている。この第1ボタン28〜第4ボタン34は、押下したボタンに応じて異なる信号が出力されるように構成され、右アナログスティック36は、右アナログスティック36が倒された角度と方向に応じて異なる信号が出力されるように構成されている。
【0024】
本体装置14は、プレーヤが操作するプレーヤキャラクタと、コンピュータが操作するコンピュータキャラクタとが格闘を行う格闘ゲームを実行する。そして本体装置14は、コントローラ12からの操作情報や種々のデータやプログラムなどに基づいて、オブジェクト空間においてプレーヤキャラクタおよびコンピュータキャラクタがリアルタイムに移動・動作する3次元画像を生成してディスプレイ16に表示させるとともに、ゲーム状況に応じたゲーム音を生成してスピーカ18に出力させる。特に本実施形態の本体装置14は、左アナログスティック26が倒された方向にプレーヤキャラクタが歩行あるいは走行(接触の一例)する画像をディスプレイ16に表示させるとともに、プレーヤキャラクタの足音をスピーカ18に出力させたり、第1ボタン28が押下されたタイミングでプレーヤキャラクタがジャンプする画像をディスプレイ16に表示させるとともに、プレーヤキャラクタが着地(接触の一例)するタイミングでプレーヤキャラクタの着地音をスピーカ18に出力させる。
【0025】
2.機能ブロック
図2は、本実施形態におけるゲームシステムの機能ブロック図の一例である。なお、本実施形態のゲームシステムは、図2の構成要素(各部)の一部を省略した構成としてもよい。
【0026】
操作部40は、プレーヤが操作情報を入力するためのものであり、その機能は、図1で示した方向キー24、左アナログスティック26、第1ボタン28〜第4ボタン34、右アナログスティック36の他、アナログパッド、レバー、ステアリングなどにより実現できる。
【0027】
表示部42は、ゲームシステムにより生成された画像を出力するものであり、その機能は、CRTディスプレイ、液晶ディスプレイ、プラズマディスプレイ、プロジェクタ、ヘッドマウントディスプレイなどにより実現できる。
【0028】
音出力部44は、ゲームシステムにより生成された音を出力するものであり、その機能は、図1に示したスピーカ18の他、ヘッドフォンなどにより実現できる。
【0029】
情報記憶媒体70(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、メモリカード、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープなどにより実現できる。
【0030】
この情報記憶媒体70には、処理部100において種々の処理を行うためのプログラムやデータが記憶されている。即ち、この情報記憶媒体70には、本実施形態の各部としてコンピュータを機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶されている。また情報記憶媒体70には、キャラクタなどの種々のオブジェクトのモデルデータや属性パラメータ、効果音や楽曲音などの種々の音データなど、各種データが格納されている。本実施形態では音データとして、PCM方式やADPCM方式などで符号化されたデジタルデータが情報記憶媒体70に格納されている。
【0031】
記憶部80は、処理部100や通信部90などのワーク領域となるもので、その機能はRAMやVRAMなどにより実現できる。そして、本実施形態の記憶部80は、処理部100のワーク領域として使用される主記憶部82と、表示部42に表示させる画像が描画される描画バッファ84と、オブジェクトのモデルデータや属性パラメータなどのオブジェクトに関するデータが読み込まれるオブジェクトデータ記憶部86と、音出力部44に出力させる音データが読み込まれる音データ記憶部88とを含む。
【0032】
通信部90は、外部(例えばサーバや他の携帯端末)との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用の集積回路(ASIC)などのハードウェアや、プログラムなどにより実現できる。
【0033】
なお、本実施形態の各部としてコンピュータを機能させるためのプログラム(データ)は、ホスト装置(サーバ)が有する情報記憶媒体70からネットワーク及び通信部90を介して情報記憶媒体70(記憶部80)に配信してもよい。このようなホスト装置(サーバ)の情報記憶媒体70の使用も本発明の範囲内に含めることができる。
【0034】
処理部100(プロセッサ)は、操作部40からの操作情報やプログラムなどに基づいて、ゲーム処理、画像生成処理、音生成処理などの処理を行う。この処理部100は、記憶部80をワーク領域として各種処理を行い、その機能は各種プロセッサ(CPU、DSP等)、各種集積回路(IC、ASIC)などのハードウェアや、プログラムにより実現できる。
【0035】
特に、本実施形態の処理部100は、ゲーム処理部102、表示制御部104、オブジェクト空間設定部106、仮想カメラ制御部108、移動・動作制御部110、音制御部112、通信制御部114、描画部120、音処理部130を含む。なお、これらの一部を省略する構成としてもよい。
【0036】
ゲーム処理部102は、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などを行う。
【0037】
表示制御部104は、表示部42に表示される画像(オブジェクト画像)の表示制御を行う。具体的には、表示すべきオブジェクト(キャラクタ(特定オブジェクトの一例)、移動体(特定オブジェクトの一例)、コース、建物、樹木、柱、壁、マップ、背景)を発生させたり、オブジェクトの表示や表示位置を指示したり、オブジェクトを消滅させたりするなどの表示制御を行う。即ち発生したオブジェクトをオブジェクトリストに登録したり、オブジェクトリストを描画部120等に転送したり、消滅したオブジェクトをオブジェクトリストから削除したりするなどの表示制御を行う。
【0038】
また表示制御部104は、プレーヤからの操作情報やプログラムなどにより、オブジェクトの移動や動作が発生した場合に、発生した移動や動作の様子を示す画像を表示するための制御を行う。特に本実施形態のゲームシステム10では、3次元のオブジェクト空間にオブジェクトを設定するようになっており、表示制御部104は、オブジェクト空間設定部106と仮想カメラ制御部108とを含む。
【0039】
オブジェクト空間設定部106は、キャラクタ、移動体、コース、建物、樹木、柱、壁、マップ、背景などの表示物を表す各種オブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブで構成されるオブジェクト)をオブジェクト空間に配置設定する処理を行う。即ちワールド座標系でのオブジェクトの位置や回転角度(向き、方向と同義)を決定し、その位置(X、Y、Z)にその回転角度(X、Y、Z軸回りでの回転角度)でオブジェクトを配置する。
【0040】
仮想カメラ制御部108は、オブジェクト空間内の所与(任意)の視点から見える画像を生成するための仮想カメラ(視点)の制御処理を行う。具体的には、仮想カメラの位置(X、Y、Z)又は回転角度(X、Y、Z軸回りでの回転角度)を制御する処理(視点位置、向きあるいは画角を制御する処理)を行う。
【0041】
例えば仮想カメラによりキャラクタを撮影する場合には、仮想カメラの向きを規定する注視点(特定オブジェクトの位置情報の一例)をキャラクタに設定し、キャラクタの位置又は回転の変化に応じて変化する注視点を仮想カメラが向くように、仮想カメラの位置又は回転角度(仮想カメラの向き)を制御する。この場合には、後述する移動・動作制御部110で求められたキャラクタ(注視点)の位置、回転角度又は速度などの情報に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた回転角度で回転させたり、予め決められた移動経路で移動させる制御を行ってもよい。この場合には、仮想カメラの位置(移動経路)又は回転角度を特定するための予め決められた制御情報に基づいて仮想カメラを制御する。
【0042】
移動・動作制御部110は、キャラクタの移動・動作演算(移動・動作シミュレーション)を行う。すなわち操作部40からの操作情報や、プログラム(移動・動作アルゴリズム)や、各種データ(モーションデータ)などに基づいて、キャラクタをオブジェクト空間内で移動させたり、キャラクタを動作(モーション、アニメーション)させたりする処理を行う。具体的には、キャラクタの移動情報(位置、回転角度、速度、或いは加速度)や動作情報(移動体を構成する各パーツの位置、或いは回転角度)を、1フレーム(1/60秒)毎に順次求めるシミュレーション処理を行う。なおフレームは、キャラクタの移動・動作処理(シミュレーション処理)や描画処理を行う時間の単位である。
【0043】
特に本実施形態では、複数のキャラクタのそれぞれに属性パラメータや行動パターンデータなどが設定されているとともに、各キャラクタに移動・動作アルゴリズムやモーションデータが設定されている。そして移動・動作制御部110は、操作部40からの操作情報や、属性パラメータや行動パターンデータなどに基づいてキャラクタを移動・動作させる制御を開始し、フレーム単位での移動量(移動体の移動速度)を算出するとともにフレーム単位でのキャラクタの回転量(キャラクタの回転速度)を算出して移動体の座標変換マトリクスMを求める。そして第K−1のフレームでの移動体の頂点座標PK−1に座標変換マトリクスMを乗算して第Kのフレームでの移動体の頂点座標PK(=PK−1×M)を求めている。
【0044】
音制御部112は、操作部40からの操作情報や、プログラムや、各種データなどに基づいて、音データ記憶部88の音データのうちゲーム状況に応じた音データを音処理部130に再生させる処理を行う。特に音制御部112は、キャラクタと他のオブジェクトとが接触する場合に、キャラクタと他のオブジェクトとが接触することにより発生する音に相当する第1の接触音を音処理部130に再生させるとともに、キャラクタと他のオブジェクトとが接触することを起因としてキャラクタを構成する部分同士が接触することにより発生する音に相当する第2の接触音を音処理部130に再生させる。例えば音制御部112は、キャラクタが他のオブジェクトの表面を移動(接触の一例)する移動イベントが発生すると、キャラクタの足音(第1の接触音の一例)に相当する音データを音処理部130に再生させるとともに、キャラクタを構成する部品(構成部分の一例)同士やキャラクタが身に付ける装身具の部品(構成部分の一例)同士、あるいはキャラクタを構成する部品と当該キャラクタが身に付ける装身具(構成部分の一例)とが接触する部品音(第2の接触音の一例)に相当する音データを音処理部130に再生させる。
【0045】
詳細には音制御部112は、キャラクタが地面オブジェクトの表面を歩く歩行イベントが発生すると、歩行イベントに対応するシーケンスデータを設定し、当該シーケンスデータに従ったタイミングで、歩く足音に相当する音データと、部品音に相当する音データとを音処理部130に再生させる。また音制御部112は、キャラクタが地面オブジェクトの表面を走る走行イベントが発生すると、走行イベントに対応するシーケンスデータを設定し、当該シーケンスデータに従ったタイミングで、走る足音に相当する音データと、部品音に相当する音データとを音処理部130に再生させる。
【0046】
具体的には、ゲーム画像においてキャラクタAの足が地面オブジェクトに接地(接触の一例)するタイミングと同期して、キャラクタAの足音が出力されるとともにキャラクタAの部品音が出力されるように、第1の接触音用のシーケンスデータと第2の接触音用のシーケンスデータとが構成されている。すなわち音制御部112は、キャラクタと地面オブジェクトとが接触するタイミングと同期させて、第1の接触音および第2の接触音が出力されるように第1の接触音および第2の接触音を再生させる。
【0047】
そして音制御部112は、キャラクタが接触する他のオブジェクトの属性に応じて、第1の接触音および第2の接触音の再生状況を変化させる。本実施形態では、複数種類の地面オブジェクト(他のオブジェクトの一例)のそれぞれに異なる硬さ(属性の一例)が設定されており、音制御部112は、キャラクタが表面を移動する地面オブジェクトの硬さに応じて、第1の接触音および第2の接触音の音量(再生状況の一例)を設定することにより、音処理部130による音の再生状況を変化させる。
【0048】
例えば、硬い地面オブジェクトの表面をキャラクタが移動する場合には、第1の接触音および第2の接触音の音量を相対的に大きな音量に設定し、軟らかい地面オブジェクトの表面をキャラクタが移動する場合には、第1の接触音および第2の接触音の音量を相対的に小さな音量に設定する。すなわち音制御部112は、キャラクタが接触する地面オブジェクトの硬さに応じて、第1の接触音および第2の接触音の再生状況を同様の態様で変化させる。
【0049】
また音制御部112は、キャラクタの属性に応じて、第1の接触音の音色(再生状況の一例)を変化させる。本実施形態では、複数種類のキャラクタのそれぞれに異なる重量(属性の一例)が設定されており、音制御部112は、第1の接触音として、キャラクタの種類に対応して設定されるキャラクタ別音成分と、複数種類のキャラクタに共通に設定される複数種類の共通音成分とを、複数種類の共通音成分のそれぞれの音量の比(合成比率の一例)がキャラクタの重量に応じた比となるように再生させる。すなわち音制御部112は、キャラクタの重量に応じて複数種類の共通音成分のそれぞれの音量を設定するとともに、キャラクタの種類に応じてキャラクタ別音成分を設定することにより、キャラクタ毎に第1の接触音の音色を変化させる。
【0050】
また音制御部112は、第1の接触音および第2の接触音とともに、キャラクタと他のオブジェクトとが接触することを起因とせずに、キャラクタを構成する構成部分同士が接触することにより発生する音に相当する第3の接触音を、キャラクタと他のオブジェクトとが接触するタイミングとは異なるタイミングで(同期させずに)再生させる。具体的には、ゲーム画像においてキャラクタAが歩行あるいは走行するために手足を動かす(移動するための動作の一例)タイミングと同期してキャラクタAの部品音が出力されるように、第3の接触音用のシーケンスデータが構成されている。すなわち音制御部112は、キャラクタが地面オブジェクトの表面を移動するために行う動作のタイミングと同期させて、第3の接触音を再生させる。
【0051】
通信制御部114は、他のゲームシステム10に送信するパケットを生成する処理、パケット送信先のゲームシステム10のネットワークアドレスを指定する処理、受信したパケットを記憶部80に保存する処理、受信したパケットを解析する処理、その他のパケットの送受信に関する通信部90の制御処理等を行う。特に本実施形態では、育成ゲームをネットワーク(例えば、インターネット)を利用して実行するために必要なデータパケット及びコマンドパケットを生成する制御や、通信部90を介してデータパケット及びコマンドパケットを送受信させる制御を行う。
【0052】
描画部120は、処理部100で行われる種々の処理(ゲーム処理)の結果に基づいて描画処理を行い、これにより画像を生成し表示部42に出力する。いわゆる3次元ゲーム画像を生成する場合には、まず表示物(オブジェクト、モデル)を定義する各頂点の頂点データ(頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)を含む表示物データ(オブジェクトデータ、モデルデータ)が入力され、入力された表示物データに含まれる頂点データに基づいて、頂点処理が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理(テッセレーション、曲面分割、ポリゴン分割)を行うようにしてもよい。頂点処理では、頂点の移動処理や、座標変換(ワールド座標変換、カメラ座標変換)、クリッピング処理、透視変換、あるいは光源処理等のジオメトリ処理が行われ、その処理結果に基づいて、表示物を構成する頂点群について与えられた頂点データを変更(更新、調整)する。そして、頂点処理後の頂点データに基づいてラスタライズ(走査変換)が行われ、ポリゴン(プリミティブ)の面とピクセルとが対応づけられる。そしてラスタライズに続いて、画像を構成するピクセル(表示画面を構成するフラグメント)を描画するピクセル処理(フラグメント処理)が行われる。ピクセル処理では、テクスチャの読出し(テクスチャマッピング)、色データの設定/変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定し、透視変換されたオブジェクトの描画色を、ピクセル単位で画像情報を記憶できる描画バッファ84(VRAM、レンダリングターゲット)に出力(描画)する。すなわち、ピクセル処理では、画像情報(色、法線、輝度、α値等)をピクセル単位で設定あるいは変更するパーピクセル処理を行う。
【0053】
なお描画部120が行う頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、ポリゴン(プリミティブ)の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ(頂点シェーダやピクセルシェーダ)により実現されてもよい。プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、ハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。
【0054】
そして描画部120は、表示物を描画する際に、ジオメトリ処理、テクスチャマッピング、隠面消去処理、αブレンディング等を行う。
【0055】
ジオメトリ処理では、表示物に関して、座標変換、クリッピング処理、透視投影変換、或いは光源計算等の処理が行われる。そして、ジオメトリ処理後(透視投影変換後)の表示物データ(表示物の頂点の位置座標、テクスチャ座標、色データ(輝度データ)、法線ベクトル、或いはα値等)は、主記憶部82に保存される。
【0056】
テクスチャマッピングは、記憶部80に記憶されるテクスチャ(テクセル値)を表示物にマッピングするための処理である。具体的には、表示物の頂点に設定(付与)されるテクスチャ座標等を用いて記憶部80からテクスチャ(色(RGB)、α値などの表面プロパティ)を読み出す。そして、2次元の画像であるテクスチャを表示物にマッピングする。この場合に、ピクセルとテクセルとを対応づける処理や、テクセルの補間としてバイリニア補間などを行う。
【0057】
隠面消去処理としては、描画ピクセルのZ値(奥行き情報)が格納されるZバッファ(奥行きバッファ)を用いたZバッファ法(奥行き比較法、Zテスト)による隠面消去処理を行うことができる。すなわちオブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Zバッファに格納されるZ値を参照する。そして参照されたZバッファのZ値と、プリミティブの描画ピクセルでのZ値とを比較し、描画ピクセルでのZ値が、仮想カメラから見て手前側となるZ値(例えば小さなZ値)である場合には、その描画ピクセルの描画処理を行うとともにZバッファのZ値を新たなZ値に更新する。
【0058】
αブレンディング(α合成)は、α値(A値)に基づく半透明合成処理(通常αブレンディング、加算αブレンディング又は減算αブレンディング等)のことである。例えば、通常αブレンディングでは、α値を合成の強さとして線形補間を行うことにより2つの色を合成した色を求める処理を行う。
【0059】
なお、α値は、各ピクセル(テクセル、ドット)に関連づけて記憶できる情報であり、例えばRGBの各色成分の輝度を表す色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度(透明度、不透明度と等価)、バンプ情報などとして使用できる。
【0060】
音処理部130は、処理部100で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部44に出力する。詳細には音処理部130は、音制御部112からの制御情報に基づいて、24チャンネルの各チャンネルで、シーケンスデータに従ったタイミングで音データ記憶部88の音データを復号化しながら読み出す。そして音処理部130は、各チャンネルで音量調整処理や、リバーブ処理・変調処理などのエフェクト処理(音色調整処理の一例)などを行った後に、各チャンネルの音データを合成し、アナログ信号に変換する。すなわち音処理部130は、複数のチャンネルのチャンネル毎に、ゲーム音の音量や音色などの再生状況を変化させながらゲーム音を再生する。
【0061】
なお、本実施形態の画像生成システムは、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末(ゲーム機、携帯電話)を用いて分散処理により生成してもよい。
【0062】
3.本実施形態の手法
以下、本実施形態のゲームシステム10の手法について詳細に説明する。本実施形態のゲームシステム10は、キャラクタが地面オブジェクトの表面を移動する場合に、キャラクタの足音およびキャラクタの部品同士が接触することにより発生する部品音を再生させる。
【0063】
3−1.キャラクタに応じた接触音の再生
図3は、本実施形態のゲームシステム10の情報記憶媒体70に格納されている音データのリストを示す図である。図3に示すように本実施形態では、キャラクタの足音に相当する足音データと、部品音に相当する部品音データとが情報記憶媒体70に格納されており、必要な音データが情報記憶媒体70から音データ記憶部88に読み込まれる。
【0064】
本実施形態では、対戦を行うキャラクタとしてキャラクタA〜キャラクタD(複数種類のキャラクタの一例)が用意されており、各キャラクタは、キャラクタ自体の材質、衣装、履き物などの装身具の材質、体重、身長、歩幅などのキャラクタ属性が異なるものとされている。従って本実施形態では、キャラクタの種類に対応させて、互いに波形が異なる複数種類のキャラクタ別足音データ(キャラクタ別音成分の一例)が情報記憶媒体70に格納されている。
【0065】
そして本実施形態では、キャラクタA〜キャラクタDの中から、格闘を行うプレーヤキャラクタとコンピュータキャラクタとが選択されると、選択されたキャラクタの種類に対応するキャラクタ別足音データが情報記憶媒体70から音データ記憶部88に読み込まれる。例えばプレーヤキャラクタとしてキャラクタAが、コンピュータキャラクタとしてキャラクタBが選択されると、キャラクタA用足音データとキャラクタB用足音データとが音データ記憶部88に読み込まれる。
【0066】
また本実施形態では、キャラクタA〜キャラクタDに共通に設定される複数種類の共通足音データ(共通音成分の一例)が用意されており、この複数種類の共通足音データは、選択されたキャラクタの種類に関わらず情報記憶媒体70から音データ記憶部88に読み込まれる。この複数種類の共通足音データは、高音成分に相当する高音データと、低音成分に相当する低音データと、超低音成分に相当する超低音データとを含む。
【0067】
そして本実施形態では、各キャラクタの足音データについて4つのチャンネルが割り当てられており、歩行あるいは走行したキャラクタの種類に応じて、1つのチャンネルにおいてキャラクタA用足音データ〜キャラクタD用足音データのいずれかが読み出され、3つのチャンネルにおいて高音データと低音データと超低音データとが読み出される。例えばキャラクタAが歩行すると、キャラクタAの足音データとして、キャラクタA用足音データと高音データと低音データと超低音データとが読み出され、キャラクタBが歩行すると、キャラクタBの足音データとして、キャラクタB用足音データと高音データと低音データと超低音データとが読み出される。
【0068】
そしてキャラクタ毎にこれら4つの足音成分データが合成され、1つのキャラクタの足音として再生される。ここで本実施形態では、高音データと低音データと超低音データの音量が、それぞれの音量の比が各キャラクタの重量に応じた比となるように設定される。
【0069】
図4は、キャラクタの重量に対する高音データと低音データと超低音データの音量を示す図である。図4では、縦軸に音量が示され、横軸にキャラクタの重量が示されている。図4に示すように本実施形態では、高音データに関しては、キャラクタの重量が軽い範囲では、キャラクタの重量の増加に対する音量の増加率が相対的に高くなっているが、キャラクタの重量が中程度から重い範囲では、キャラクタの重量の増加に対する音量の増加率が相対的に低くなっている。また、低音データに関しては、キャラクタの重量が軽い範囲から重い範囲まで、キャラクタの重量の増加に対する音量の増加率はほぼ一定となっている。一方、超低音データに関しては、キャラクタの重量が軽い範囲では音量が0となっており、キャラクタの重量が中程度となる範囲から、キャラクタの重量の増加に対する増加率がほぼ一定となるように音量が増加している。
【0070】
従って図4の例では、重量が50キログラムとされているキャラクタAについては、高音データの音量は0.7に設定され、低音データの音量は0.3に設定され、超低音データの音量は0.0に設定される。一方、重量が100キログラムとされているキャラクタBについては、高音データの音量は0.9に設定され、低音データの音量は0.85に設定され、超低音データの音量は0.6に設定される。
【0071】
すなわち本実施形態では、キャラクタの重量が大きい方が音量が大きくなるように各共通足音データの音量が設定されるが、キャラクタの重量が軽い範囲では高音データの音量の比率が相対的に高く、キャラクタの重量が重い範囲では超低音データの音量の比率が相対的に高くなるように、各共通足音データの音量が設定される。これにより本実施形態では、各キャラクタについて共通の音データを用いつつも、キャラクタの重量に応じて足音の音色を変化させることができる。なお、キャラクタA用足音データ〜キャラクタD用足音データは各キャラクタ用に予め音量が設定されているので、キャラクタの重量に応じたこれらの音量は、等倍を示す1.0に設定される。
【0072】
また本実施形態では、キャラクタの種類に対応させて、互いに波形が異なる複数種類の部品音データが情報記憶媒体70に格納されている。そして本実施形態では、キャラクタA〜キャラクタDの中から、対戦を行うプレーヤキャラクタとコンピュータキャラクタとが選択されると、選択されたキャラクタの種類に対応する部品音データが情報記憶媒体70から音データ記憶部88に読み込まれる。例えばプレーヤキャラクタとしてキャラクタAが、コンピュータキャラクタとしてキャラクタBが選択されると、キャラクタA用部品音データとキャラクタB用部品音データとが音データ記憶部88に読み込まれる。
【0073】
そして本実施形態では、各キャラクタの部品音データについて1つのチャンネルが割り当てられており、歩行あるいは走行したキャラクタの種類に応じて、1つのチャンネルにおいてキャラクタA用部品音データ〜キャラクタD用部品音データのいずれかが読み出される。例えばキャラクタAが歩行すると、キャラクタA用部品音データが読み出され、キャラクタBが歩行すると、キャラクタB用部品音データが読み出される。なお、キャラクタA用部品音データ〜キャラクタD用部品音データは各キャラクタ用に予め音量が設定されているので、キャラクタの重量に応じたこれらの音量は、等倍を示す1.0に設定される。
【0074】
このように本実施形態では、4つのチャンネルにおいて4つの足音成分データが1つのキャラクタの足音データとして読み出され、1つのチャンネルにおいて1つのキャラクタの部品音データが読み出される。そして、各チャンネルの音データが合成されて、1つのキャラクタの足音および部品音として再生される。
【0075】
3−2.地面オブジェクトに応じた接触音の再生
図5は、オブジェクト空間におけるキャラクタの状態と音の再生状況とを示す図である。図5の例では、キャラクタが表面を移動する地面オブジェクトとして石の面が配置されており、この石の面は「硬い」ものとされている。そして現実世界においては、このような石の面の上を人間が歩行あるいは走行すると、大きな衝撃が発生するため大きな足音が発生する。そこで本実施形態では、図5に示すように、地面オブジェクトとして石の面が配置される場合には、上述した4つの足音成分データから構成される足音データの全体としての音量が、その最大値である1.0に設定される。
【0076】
詳細には本実施形態では、4つの足音成分データが読み出される各チャンネルに設定されるキャラクタの重量に応じた音量に、足音データ全体としての音量(1.0)を乗算した音量が、最終的な各チャンネルの音量として設定される。例えば地面オブジェクトとして石の面が配置される場合には、図6(A)に示すように、キャラクタAの足音データに関して、キャラクタA用足音データのチャンネルの音量は、1.0×1.0=1.0となり、高音データのチャンネルの音量は、0.7×1.0=0.7となり、低音データのチャンネルの音量は、0.3×1.0=0.3となり、超低音データのチャンネルの音量は、0.0×1.0=0.0となる。
【0077】
ここで、石の面の上を歩行あるいは走行することにより大きな衝撃が発生すると、その大きな衝撃がキャラクタを構成する部品にも伝達するので、部品同士が接触することにより発生する部品音も大きくなると考えられる。そこで本実施形態では、図5に示すように、地面オブジェクトとして石の面が配置される場合には、地面オブジェクトの硬さに応じた部品音データの音量もその最大値である1.0に設定される。従って図6(A)に示すように、キャラクタAの部品音データに関して、キャラクタA用部品音データのチャンネルの音量は、1.0×1.0=1.0となる。
【0078】
そして図5に示すように、キャラクタAが石の面の上で移動を開始すると、地面オブジェクトの硬さに応じた足音データの音量が1.0に設定された状態で、キャラクタAの足音データがキャラクタAの移動時のシーケンスデータに従ったタイミングで読み出される。それとともに、地面オブジェクトの硬さに応じた部品音データの音量が1.0に設定された状態で、キャラクタAの部品音データがキャラクタAの移動時のシーケンスデータに従ったタイミングで読み出される。
【0079】
図7は、地面オブジェクトの種類に対応する足音データおよび部品音データの音量を示す図である。本実施形態では、石の面の他に、木の面、土の面が地面オブジェクトとして配置される。そして現実世界においては、木の面は石の面よりも軟らかいため衝撃吸収性が高く、木の面の上を人間が歩行あるいは走行した場合に発生する衝撃は、石の面を歩行あるいは走行した場合の衝撃よりも小さくなるので、発生する足音も小さくなる。そこで本実施形態では、図7に示すように、地面オブジェクトとして木の面が配置される場合には、地面オブジェクトの硬さに応じた足音データの音量は、石の面が配置される場合よりも小さい0.8に設定される。
【0080】
そして、歩行あるいは走行した場合に発生する衝撃が小さくなると、キャラクタを構成する部品に伝達する衝撃も小さくなるので、部品同士が接触することにより発生する部品音も小さくなると考えられる。そこで本実施形態では、図7に示すように、地面オブジェクトとして木の面が配置される場合には、地面オブジェクトの硬さに応じた部品音データの音量も、石の面が配置される場合よりも小さい0.8に設定される。
【0081】
更に、土の面は木の面よりも軟らかいため衝撃吸収性がより高く、土の面の上を人間が歩行あるいは走行した場合に発生する衝撃は、木の面を歩行あるいは走行した場合の衝撃よりも更に小さくなる。そこで本実施形態では、図7に示すように、地面オブジェクトとして土の面が配置される場合には、地面オブジェクトの硬さに応じた足音データの音量は、木の面が配置される場合よりも小さい0.6に設定され、地面オブジェクトの硬さに応じた部品音データの音量も、木の面が配置される場合よりも小さい0.6に設定される。このように本実施形態では、地面オブジェクトが硬いものである場合には、足音データおよび部品音データの音量が相対的に大きな音量に設定され、地面オブジェクトが軟らかいものである場合には、足音データおよび部品音データの音量が相対的に小さな音量に設定される。
【0082】
従って、図8に示すように、キャラクタAが土の面の上で移動を開始すると、地面オブジェクトの硬さに応じた足音データの音量が0.6に設定された状態で、キャラクタAの足音データがキャラクタAの移動時のシーケンスデータに従ったタイミングで読み出される。それとともに、地面オブジェクトの硬さに応じた部品音データの音量が0.6に設定された状態で、キャラクタAの部品音データがキャラクタAの移動時のシーケンスデータに従ったタイミングで読み出される。
【0083】
詳細には、地面オブジェクトとして土の面が配置される場合には、図6(B)に示すように、キャラクタAの足音データに関して、キャラクタA用足音データのチャンネルの音量は、1.0×0.6=0.6となり、高音データのチャンネルの音量は、0.7×0.6=0.42となり、低音データのチャンネルの音量は、0.3×0.6=0.18となり、超低音データのチャンネルの音量は、0.0×0.6=0.0となる。また、キャラクタAの部品音データに関して、キャラクタA用部品音データのチャンネルの音量は、1.0×0.6=0.6となる。
【0084】
また本実施形態では、キャラクタAが移動することによりキャラクタAが存在(接触の一例)する地面オブジェクトの硬さが変化する場合には、地面オブジェクトの硬さが変化したタイミングで、キャラクタAが存在している地面オブジェクトの硬さに応じて足音データの音量および部品音データの音量が変更される。例えば図9に示すように、キャラクタAが石の面から土の面に移動する場合には、キャラクタAの足音データおよび部品音データが連続的に読み出されつつ、キャラクタAの足音データおよび部品音データの地面オブジェクトの硬さに応じた音量が、地面オブジェクトが石の面から木の面に変化したタイミングで1.0から0.6に変更される。
【0085】
また本実施形態では、キャラクタAが存在する地面オブジェクトの硬さとキャラクタBが存在する地面オブジェクトの硬さとが異なる場合には、各キャラクタの足音データおよび部品音データの地面オブジェクトの硬さに応じた音量が、各キャラクタが存在する地面オブジェクトの硬さに応じて設定される。例えば、キャラクタAが石の面の上に存在し、キャラクタBが土の面の上に存在する場合には、キャラクタAの足音データおよび部品音データの地面オブジェクトの硬さに応じた音量が1.0に設定され、キャラクタBの足音データおよび部品音データの地面オブジェクトの硬さに応じた音量が0.6に設定される。
【0086】
このように本実施形態のゲームシステム10は、各キャラクタが存在する地面オブジェクトがいかなる地面オブジェクトであるかが判別し、各キャラクタが存在する地面オブジェクトの硬さに応じて、足音だけでなく部品音が再生される際の音量をも変化させる。これによりゲームシステム10は、キャラクタが地面オブジェクトの表面を移動する場合に、キャラクタを構成する部品同士が接触することにより発生する音も、キャラクタが移動する地面オブジェクトの硬さに影響を受けて変化することを表現することができる。従ってゲームシステム10は、予め用意する音のデータ量を増加させなくとも、音の再生音量を変化させることにより、キャラクタが地面オブジェクトの表面を移動する際の様子を適切に表現することができる。
【0087】
4.本実施形態の処理の流れ
図10は、本実施形態のゲームシステム10において行われる処理の流れを示すフローチャートである。図10に示すようにゲームシステム10は、まず、キャラクタA〜キャラクタDの中からプレーヤキャラクタおよびコンピュータキャラクタが選択されると(ステップS10でY)、選択されたキャラクタに対応する足音データおよび部品音データを情報記憶媒体70から音データ記憶部88に読み込む(ステップS12)。するとゲームシステム10は、選択された各キャラクタについて、それぞれの重量に応じて高音データの音量と低音データの音量と超低音データの音量とを設定する(ステップS14)。そして格闘が開始されると、格闘中処理が行われる(ステップS16)。
【0088】
図11は、図10のステップS16において行われる格闘中処理の詳細を示すフローチャートである。図11に示すように、格闘中処理ではゲームシステム10は、まず、各キャラクタが存在する地面オブジェクトがいかなる地面オブジェクトであるかを判別し、各キャラクタが存在する地面オブジェクトの硬さに応じて、各キャラクタについて足音データの音量および部品音データの音量を設定する(ステップS100)。そしていずれかのキャラクタが歩行あるいは走行を開始すると(ステップS102でY)、歩行あるいは走行を開始したキャラクタについて設定された音量で、当該キャラクタの足音データおよび部品音データを読み出す(ステップS104)。
【0089】
そして、キャラクタが存在する地面オブジェクトの種類が変化すると(ステップS106でY)、キャラクタが存在する地面オブジェクトの硬さに応じて、当該キャラクタの足音データおよび部品音データの音量を変更する(ステップS108)。一方、キャラクタが存在する地面オブジェクトの種類が変化しないと(ステップS106でN)、当該キャラクタの足音データおよび部品音データの音量を変更しない。
【0090】
そして歩行あるいは走行をしていたキャラクタが歩行あるいは走行を停止すると(ステップS110でY)、処理を終了し、歩行あるいは走行を継続すると(ステップS110でN)、ステップS104からステップS110までの処理を繰り返す。
【0091】
5.変形例
上記実施形態で説明した手法は、一例を示したに過ぎず、上記実施形態の手法と同様の効果を奏する均等な手法を採用した場合においても本発明の範囲に含めることができる。また本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。そして上記実施形態の手法や、変形例として後述する各種の手法は、本発明を実現する手法として適宜組み合わせて採用することができる。
【0092】
例えば上述した実施形態では、格闘ゲームを行うゲームシステムへの適用例を挙げて説明したが、ロールプレイングゲームや、アクションゲーム、シューティングゲーム、レースゲームなど、キャラクタが移動および動作の少なくとも一方を行う種々のゲームを行うゲームシステムや、各種のシミュレータに適用することができる。
【0093】
また上述した実施形態では、キャラクタとして人間をシミュレートしたものを例に挙げて説明したが、キャラクタとは、動物、モンスター、ロボット、車、飛行機など、移動および動作の少なくとも一方を行う種々のものをシミュレートしたものとすることができる。
【0094】
また、「キャラクタ」とは、キャラクタの一部としてもよく、例えばキャラクタが用いる武器や道具などとしてもよい。
【0095】
また、「キャラクタと他のオブジェクトとが接触すること」とは、キャラクタが他のオブジェクト上に倒れたり、他のオブジェクトと衝突したりすることなども含む。すなわち「キャラクタと他のオブジェクトとが接触することにより発生する音に相当する第1の接触音」とは、足音のみならず種々の接触音とすることができる。
【0096】
また、「他のオブジェクト」とは、地面オブジェクトの他に、壁、天井、橋、他のキャラクタなど、種々のオブジェクトとすることができる。
【0097】
また、「キャラクタを構成する部分」とは、キャラクタの移動・動作とともに移動・動作するものとすることができ、この場合には移動・動作制御部110は、キャラクタおよびキャラクタを構成する部分の移動および動作の少なくとも一方の制御を行うようにしてもよい。
【0098】
また上述した実施形態では、各キャラクタの足音データについて4つのチャンネルが割り当てられている例を挙げて説明したが、第1の接触音や第2の接触音に割り当てられているチャンネルは任意の数とすることができ、例えば、各キャラクタの足音データについて1つのチャンネルを割り当てるようにしてもよい。この場合には、各キャラクタの重量に応じて音色が異なる足音データをキャラクタ毎に予め用意しておき、選択されたキャラクタに対応する足音データを音データ記憶部88に読み込む。そして、キャラクタが接触する他のオブジェクトの属性に応じて、足音データを読み出す1つのチャンネルの音量を設定する。
【0099】
また上述した実施形態では、図7に示したように、第1の接触音および第2の接触音の音量が他のオブジェクトの属性に応じて同一の値で変化する例を挙げて説明したが、図12に示すように、他のオブジェクトの各属性に対応する第1の接触音の音量と第2の接触音の音量とが異なる値となるようにしてもよい。例えば、第1の接触音の音量よりも第2の接触音の音量の方が小さくなるように各値を設定してもよい。
【0100】
そして、他のオブジェクトの各属性に対応する第1の接触音の音量の変化率と、第2の接触音の音量の変化率とが異なるようにしてもよい。例えば図12に示すように、地面オブジェクトが土の面である場合には地面オブジェクトが石の面である場合に比して、第1の接触音の音量は6割程度に減少するが、第2の接触音の音量は2割程度に減少するようにしてもよい。すなわち第1の接触音の音量と第2の接触音の音量とが、他のオブジェクトの属性に応じて同様の態様で変化するように、任意の値が設定される。
【0101】
また上述した実施形態では、キャラクタが接触する地面オブジェクトの属性に応じて、第1の接触音および第2の接触音の音量を同様の態様で変化させる例を挙げて説明したが、キャラクタが接触する地面オブジェクトの属性に応じて、第1の接触音の音色(再生状況の一例)を変化させるようにしてもよい。例えば音制御部112が、第1の接触音として、地面オブジェクト(オブジェクトの一例)の種類に対応して設定される地面別音成分と、複数種類の地面オブジェクトに共通に設定される複数種類の共通音成分とを、複数種類の共通音成分のそれぞれの合成比率が地面オブジェクトの属性に応じた合成比率となるように再生させる。すなわち音制御部112は、地面オブジェクトの属性に応じて複数種類の共通音成分のそれぞれの音量を設定するとともに、地面オブジェクトの属性に応じて地面別音成分を設定することにより、地面オブジェクト毎に第1の接触音の音色を変化させるようにしてもよい。
【0102】
また音制御部112が、キャラクタを構成する構成部分の属性に応じて、第2の接触音の音色(再生状況の一例)を変化させるようにしてもよい。本実施形態では、複数種類の構成部分のそれぞれに異なる属性(重量、材質、可動範囲など)が設定されており、音制御部112は、第2の接触音として、構成部分の種類に対応して設定される構成部分別音成分と、複数種類の構成部分に共通に設定される複数種類の共通音成分とを、複数種類の共通音成分のそれぞれの合成比率が構成部分の属性に応じた合成比率となるように再生させるようにしてもよい。すなわち音制御部112は、構成部分の属性に応じて複数種類の共通音成分のそれぞれの音量を設定するとともに、構成部分の属性に応じて構成部分別音成分を設定することにより、構成部分毎あるいは構成部分同士の組み合わせに応じて第2の接触音の音色を変化させるようにしてもよい。
【0103】
すなわち音制御部112が、接触する複数のオブジェクトの少なくとも一方の属性に応じて、第1の接触音および第2の接触音の少なくとも一方の再生状況を変化させるようにしてもよい。
【0104】
また本発明は、据え置き型の家庭用ゲームシステムの他に、携帯型のゲームシステム、業務用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード、携帯電話等の種々の画像生成システムに適用できる。
【図面の簡単な説明】
【0105】
【図1】本実施形態のゲームシステムの外観を示す図。
【図2】本実施形態のゲームシステムの機能ブロック図。
【図3】本実施形態の音データのリストを示す図。
【図4】本実施形態のキャラクタの重量に応じた音量を示す図。
【図5】本実施形態のキャラクタの状態と音の再生状況とを示す図。
【図6】本実施形態の各チャンネルに設定される音量を示す図。
【図7】本実施形態の地面オブジェクトの種類に応じた音量を示す図。
【図8】本実施形態のキャラクタの状態と音の再生状況とを示す図。
【図9】本実施形態のキャラクタの状態と音の再生状況とを示す図。
【図10】本実施形態のゲームシステムの処理の流れを示すフローチャート図。
【図11】本実施形態のゲームシステムの処理の流れを示すフローチャート図。
【図12】変形実施形態の地面オブジェクトの種類に応じた音量を示す図。
【符号の説明】
【0106】
10 ゲームシステム、12 コントローラ、14 本体装置、16 ディスプレイ、
18 スピーカ、20 左グリップ、22 右グリップ、24 方向キー、
26 左アナログスティック、28 第1ボタン、30 第2ボタン、
32 第3ボタン、34 第4ボタン、36 右アナログスティック、40 操作部、
42 表示部、44 音出力部、70 情報記憶媒体、80 記憶部、82 主記憶部、
84 描画バッファ、86 オブジェクトデータ記憶部、88 音データ記憶部、
90 通信部、
100 処理部、102 ゲーム処理部、104 表示制御部、
106 オブジェクト空間設定部、108 仮想カメラ制御部、
110 移動・動作制御部、112 判定部、114 通信制御部
【技術分野】
【0001】
本発明は、プログラム、情報記憶媒体および画像生成システムに関する。
【背景技術】
【0002】
従来から、オブジェクトが配置されたオブジェクト空間を仮想カメラから見た画像を生成する画像生成システムが知られている。このような画像生成システムには、オブジェクト同士が衝突したことにより発生する音に対応する複数の音データを予め用意しておき、オブジェクト同士が衝突した時に演算したオブジェクトの状態などに応じて、読み出す音データを決定するものがある。
【特許文献1】特開2007−212635号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかし従来の画像生成システムでは、リアリティが高い効果音を出力させようとすると、予め用意しておくべき音データの量が増加してしまい、音データを作成するコストや必要となる記憶容量が増加してしまうという問題があった。
【0004】
本発明はこのような問題に鑑みてなされたものであり、その目的は、オブジェクトが接触する際の様子を少ない量の音データで適切に表現することができる画像生成システムを提供することにある。
【課題を解決するための手段】
【0005】
(1)本発明は、
キャラクタを含む複数のオブジェクトをオブジェクト空間に設定するオブジェクト空間設定部と、
前記キャラクタの移動および動作の少なくとも一方の制御を行う移動・動作制御部と、
前記キャラクタと他のオブジェクトとが接触する場合に、前記キャラクタと前記他のオブジェクトとが接触することにより発生する音に相当する第1の接触音を再生させるとともに、前記キャラクタを構成する構成部分同士が接触することにより発生する音に相当する第2の接触音を再生させる音制御部と、
前記オブジェクト空間を画像として描画する描画部と、
前記第1の接触音および前記第2の接触音を再生する音処理部とを含み、
前記音制御部は、
前記キャラクタが接触する前記他のオブジェクトの属性に応じて、前記第1の接触音および前記第2の接触音の再生状況を変化させることを特徴とする画像生成システムに関係する。
【0006】
また本発明は、上記各部としてコンピュータを機能させるプログラムに関係する。また本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶(記録)した情報記憶媒体に関係する。
【0007】
本発明では、キャラクタと他のオブジェクトとが接触する場合に、第1の接触音および第2の接触音を再生させるが、キャラクタが接触する他のオブジェクトの属性に応じて、第1の接触音だけでなく第2の接触音の再生状況をも変化させる。これにより本発明によれば、キャラクタと他のオブジェクトとが接触する場合に、キャラクタを構成する部分同士が接触することにより発生する音も、キャラクタが接触する他のオブジェクトの属性に影響を受けて変化することを表現することができる。従って本発明によれば、予め用意する音のデータ量を増加させなくとも、音の再生状況を変化させることにより、キャラクタと他のオブジェクトとが接触する際の様子を適切に表現することができる。
【0008】
(2)また本発明は、
前記音制御部は、
前記キャラクタが接触する前記他のオブジェクトの属性に応じて、前記第1の接触音および前記第2の接触音の音量を変化させるようにしてもよい。
【0009】
このようにすれば、第1の接触音および第2の接触音の音量を変化させることにより、キャラクタを構成する部分同士が接触することにより発生する音が、キャラクタが接触する他のオブジェクトの属性に影響を受けて変化することを表現することができる。
【0010】
(3)また本発明は、
前記音制御部は、
前記キャラクタが前記他のオブジェクトの表面を移動する場合に、前記第1の接触音として、前記キャラクタが前記他のオブジェクトの表面を移動することにより発生する音に相当する音を再生させるようにしてもよい。
【0011】
このようにすれば、キャラクタが他のオブジェクトの表面を移動する場合に、キャラクタを構成する部分同士が接触することにより発生する音も、キャラクタが移動する他のオブジェクトの属性に影響を受けて変化することを表現することができる。
【0012】
(4)また本発明は、
前記オブジェクト空間設定部は、
複数種類のキャラクタのうち少なくとも1つの種類のキャラクタをオブジェクト空間に設定し、
前記音制御部は、
前記第1の接触音として、前記キャラクタの種類に対応して設定されるキャラクタ別音成分と、前記複数種類のキャラクタに共通に設定される複数種類の共通音成分とを、前記複数種類の共通音成分のそれぞれの合成比率が前記キャラクタの属性に応じた合成比率となるように再生させるようにしてもよい。
【0013】
このようにすれば、キャラクタに応じてキャラクタ別音成分を変化させるとともに、複数の共通音成分のそれぞれの合成比率を変化させることにより、キャラクタの属性に応じた第1の接触音の変化を表現することができる。
【0014】
(5)また本発明は、
複数種類のオブジェクトをオブジェクト空間に設定するオブジェクト空間設定部と、
少なくとも1種類の前記オブジェクトの移動および動作の少なくとも一方の制御を行う移動・動作制御部と、
前記オブジェクト同士が接触する場合に、前記オブジェクト同士が接触することにより発生する音に相当する接触音を再生させる音制御部と、
前記オブジェクト空間を画像として描画する描画部と、
前記接触音を再生する音処理部とを含み、
前記音制御部は、
前記接触音として、前記オブジェクトの種類に対応して設定されるオブジェクト別音成分と、前記複数種類のオブジェクトに共通に設定される複数種類の共通音成分とを、前記複数種類の共通音成分のそれぞれの合成比率が前記オブジェクトの属性に応じた合成比率となるように再生させることを特徴とする画像生成システムに関係する。
【0015】
また本発明は、上記各部としてコンピュータを機能させるプログラムに関係する。また本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶(記録)した情報記憶媒体に関係する。
【0016】
本発明によれば、オブジェクトに応じてオブジェクト別音成分を変化させるとともに、複数の共通音成分のそれぞれの合成比率を変化させることにより、オブジェクトの属性に応じた接触音の変化を表現することができる。
【0017】
(6)また本発明は、
前記オブジェクト空間設定部は、
キャラクタを含む複数種類のオブジェクトをオブジェクト空間に設定し、
前記移動・動作制御部は、
前記キャラクタの移動および動作の少なくとも一方の制御を行い、
前記音制御部は、
前記キャラクタと他のオブジェクトとが接触する場合に、前記接触音として、前記キャラクタと前記他のオブジェクトとが接触することにより発生する音に相当する第1の接触音を再生させ、前記第1の接触音として、前記キャラクタの種類に対応して設定されるキャラクタ別音成分と、前記複数種類のキャラクタに共通に設定される複数種類の共通音成分とを、前記複数種類の共通音成分のそれぞれの合成比率が前記キャラクタの属性に応じた合成比率となるように再生させるようにしてもよい。
【0018】
このようにすれば、キャラクタに応じてキャラクタ別音成分を変化させるとともに、複数の共通音成分のそれぞれの合成比率を変化させることにより、キャラクタの属性に応じた第1の接触音の変化を表現することができる。
【0019】
(7)また本発明は、
前記オブジェクト空間設定部は、
キャラクタを含む複数種類のオブジェクトをオブジェクト空間に設定し、
前記移動・動作制御部は、
前記キャラクタの移動および動作の少なくとも一方の制御を行い、
前記音制御部は、
前記キャラクタを構成する構成部分同士が接触する場合に、前記接触音として、前記構成部分同士が接触することにより発生する音に相当する第2の接触音を再生させ、前記第2の接触音として、前記構成部分の種類に対応して設定される構成部分別音成分と、前記複数種類の構成部分に共通に設定される複数種類の共通音成分とを、前記複数種類の共通音成分のそれぞれの合成比率が前記構成部分の属性に応じた合成比率となるように再生させるようにしてもよい。
【0020】
このようにすれば、接触する構成部分に応じて構成部分別音成分を変化させるとともに、複数の共通音成分のそれぞれの合成比率を変化させることにより、構成部分の属性に応じた第2の接触音の変化を表現することができる。
【発明を実施するための最良の形態】
【0021】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【0022】
1.システム全体の概略
図1は、本実施形態のゲームシステム10(画像生成システム)の外観図である。本実施形態のゲームシステム10は、プレーヤが操作情報を入力するコントローラ12と、コントローラ12からの操作情報に基づいてゲーム画像やゲーム音を生成する本体装置14と、本体装置14で生成したゲーム画像を表示するディスプレイ16と、本体装置14で生成したゲーム音を出力するスピーカ18とを含む。
【0023】
図1に示すように、コントローラ12は、プレーヤが左手で握る左グリップ20と、右手で握る右グリップ22とを有している。そしてコントローラ12の正面の左側には、左グリップ20を左手で握ったプレーヤが左手の親指で操作することができる十字型の方向キー24と、左アナログスティック26とが設けられている。この方向キー24は、方向キー24を押下した位置に応じて異なる信号が出力されるように構成され、左アナログスティック26は、左アナログスティック26が倒された角度と方向に応じて異なる信号が出力されるように構成されている。またコントローラ12の正面の右側には、右グリップ22を右手で握ったプレーヤが右手の親指で操作することができる第1ボタン28〜第4ボタン34と、右アナログスティック36とが設けられている。この第1ボタン28〜第4ボタン34は、押下したボタンに応じて異なる信号が出力されるように構成され、右アナログスティック36は、右アナログスティック36が倒された角度と方向に応じて異なる信号が出力されるように構成されている。
【0024】
本体装置14は、プレーヤが操作するプレーヤキャラクタと、コンピュータが操作するコンピュータキャラクタとが格闘を行う格闘ゲームを実行する。そして本体装置14は、コントローラ12からの操作情報や種々のデータやプログラムなどに基づいて、オブジェクト空間においてプレーヤキャラクタおよびコンピュータキャラクタがリアルタイムに移動・動作する3次元画像を生成してディスプレイ16に表示させるとともに、ゲーム状況に応じたゲーム音を生成してスピーカ18に出力させる。特に本実施形態の本体装置14は、左アナログスティック26が倒された方向にプレーヤキャラクタが歩行あるいは走行(接触の一例)する画像をディスプレイ16に表示させるとともに、プレーヤキャラクタの足音をスピーカ18に出力させたり、第1ボタン28が押下されたタイミングでプレーヤキャラクタがジャンプする画像をディスプレイ16に表示させるとともに、プレーヤキャラクタが着地(接触の一例)するタイミングでプレーヤキャラクタの着地音をスピーカ18に出力させる。
【0025】
2.機能ブロック
図2は、本実施形態におけるゲームシステムの機能ブロック図の一例である。なお、本実施形態のゲームシステムは、図2の構成要素(各部)の一部を省略した構成としてもよい。
【0026】
操作部40は、プレーヤが操作情報を入力するためのものであり、その機能は、図1で示した方向キー24、左アナログスティック26、第1ボタン28〜第4ボタン34、右アナログスティック36の他、アナログパッド、レバー、ステアリングなどにより実現できる。
【0027】
表示部42は、ゲームシステムにより生成された画像を出力するものであり、その機能は、CRTディスプレイ、液晶ディスプレイ、プラズマディスプレイ、プロジェクタ、ヘッドマウントディスプレイなどにより実現できる。
【0028】
音出力部44は、ゲームシステムにより生成された音を出力するものであり、その機能は、図1に示したスピーカ18の他、ヘッドフォンなどにより実現できる。
【0029】
情報記憶媒体70(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、メモリカード、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープなどにより実現できる。
【0030】
この情報記憶媒体70には、処理部100において種々の処理を行うためのプログラムやデータが記憶されている。即ち、この情報記憶媒体70には、本実施形態の各部としてコンピュータを機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶されている。また情報記憶媒体70には、キャラクタなどの種々のオブジェクトのモデルデータや属性パラメータ、効果音や楽曲音などの種々の音データなど、各種データが格納されている。本実施形態では音データとして、PCM方式やADPCM方式などで符号化されたデジタルデータが情報記憶媒体70に格納されている。
【0031】
記憶部80は、処理部100や通信部90などのワーク領域となるもので、その機能はRAMやVRAMなどにより実現できる。そして、本実施形態の記憶部80は、処理部100のワーク領域として使用される主記憶部82と、表示部42に表示させる画像が描画される描画バッファ84と、オブジェクトのモデルデータや属性パラメータなどのオブジェクトに関するデータが読み込まれるオブジェクトデータ記憶部86と、音出力部44に出力させる音データが読み込まれる音データ記憶部88とを含む。
【0032】
通信部90は、外部(例えばサーバや他の携帯端末)との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用の集積回路(ASIC)などのハードウェアや、プログラムなどにより実現できる。
【0033】
なお、本実施形態の各部としてコンピュータを機能させるためのプログラム(データ)は、ホスト装置(サーバ)が有する情報記憶媒体70からネットワーク及び通信部90を介して情報記憶媒体70(記憶部80)に配信してもよい。このようなホスト装置(サーバ)の情報記憶媒体70の使用も本発明の範囲内に含めることができる。
【0034】
処理部100(プロセッサ)は、操作部40からの操作情報やプログラムなどに基づいて、ゲーム処理、画像生成処理、音生成処理などの処理を行う。この処理部100は、記憶部80をワーク領域として各種処理を行い、その機能は各種プロセッサ(CPU、DSP等)、各種集積回路(IC、ASIC)などのハードウェアや、プログラムにより実現できる。
【0035】
特に、本実施形態の処理部100は、ゲーム処理部102、表示制御部104、オブジェクト空間設定部106、仮想カメラ制御部108、移動・動作制御部110、音制御部112、通信制御部114、描画部120、音処理部130を含む。なお、これらの一部を省略する構成としてもよい。
【0036】
ゲーム処理部102は、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などを行う。
【0037】
表示制御部104は、表示部42に表示される画像(オブジェクト画像)の表示制御を行う。具体的には、表示すべきオブジェクト(キャラクタ(特定オブジェクトの一例)、移動体(特定オブジェクトの一例)、コース、建物、樹木、柱、壁、マップ、背景)を発生させたり、オブジェクトの表示や表示位置を指示したり、オブジェクトを消滅させたりするなどの表示制御を行う。即ち発生したオブジェクトをオブジェクトリストに登録したり、オブジェクトリストを描画部120等に転送したり、消滅したオブジェクトをオブジェクトリストから削除したりするなどの表示制御を行う。
【0038】
また表示制御部104は、プレーヤからの操作情報やプログラムなどにより、オブジェクトの移動や動作が発生した場合に、発生した移動や動作の様子を示す画像を表示するための制御を行う。特に本実施形態のゲームシステム10では、3次元のオブジェクト空間にオブジェクトを設定するようになっており、表示制御部104は、オブジェクト空間設定部106と仮想カメラ制御部108とを含む。
【0039】
オブジェクト空間設定部106は、キャラクタ、移動体、コース、建物、樹木、柱、壁、マップ、背景などの表示物を表す各種オブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブで構成されるオブジェクト)をオブジェクト空間に配置設定する処理を行う。即ちワールド座標系でのオブジェクトの位置や回転角度(向き、方向と同義)を決定し、その位置(X、Y、Z)にその回転角度(X、Y、Z軸回りでの回転角度)でオブジェクトを配置する。
【0040】
仮想カメラ制御部108は、オブジェクト空間内の所与(任意)の視点から見える画像を生成するための仮想カメラ(視点)の制御処理を行う。具体的には、仮想カメラの位置(X、Y、Z)又は回転角度(X、Y、Z軸回りでの回転角度)を制御する処理(視点位置、向きあるいは画角を制御する処理)を行う。
【0041】
例えば仮想カメラによりキャラクタを撮影する場合には、仮想カメラの向きを規定する注視点(特定オブジェクトの位置情報の一例)をキャラクタに設定し、キャラクタの位置又は回転の変化に応じて変化する注視点を仮想カメラが向くように、仮想カメラの位置又は回転角度(仮想カメラの向き)を制御する。この場合には、後述する移動・動作制御部110で求められたキャラクタ(注視点)の位置、回転角度又は速度などの情報に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた回転角度で回転させたり、予め決められた移動経路で移動させる制御を行ってもよい。この場合には、仮想カメラの位置(移動経路)又は回転角度を特定するための予め決められた制御情報に基づいて仮想カメラを制御する。
【0042】
移動・動作制御部110は、キャラクタの移動・動作演算(移動・動作シミュレーション)を行う。すなわち操作部40からの操作情報や、プログラム(移動・動作アルゴリズム)や、各種データ(モーションデータ)などに基づいて、キャラクタをオブジェクト空間内で移動させたり、キャラクタを動作(モーション、アニメーション)させたりする処理を行う。具体的には、キャラクタの移動情報(位置、回転角度、速度、或いは加速度)や動作情報(移動体を構成する各パーツの位置、或いは回転角度)を、1フレーム(1/60秒)毎に順次求めるシミュレーション処理を行う。なおフレームは、キャラクタの移動・動作処理(シミュレーション処理)や描画処理を行う時間の単位である。
【0043】
特に本実施形態では、複数のキャラクタのそれぞれに属性パラメータや行動パターンデータなどが設定されているとともに、各キャラクタに移動・動作アルゴリズムやモーションデータが設定されている。そして移動・動作制御部110は、操作部40からの操作情報や、属性パラメータや行動パターンデータなどに基づいてキャラクタを移動・動作させる制御を開始し、フレーム単位での移動量(移動体の移動速度)を算出するとともにフレーム単位でのキャラクタの回転量(キャラクタの回転速度)を算出して移動体の座標変換マトリクスMを求める。そして第K−1のフレームでの移動体の頂点座標PK−1に座標変換マトリクスMを乗算して第Kのフレームでの移動体の頂点座標PK(=PK−1×M)を求めている。
【0044】
音制御部112は、操作部40からの操作情報や、プログラムや、各種データなどに基づいて、音データ記憶部88の音データのうちゲーム状況に応じた音データを音処理部130に再生させる処理を行う。特に音制御部112は、キャラクタと他のオブジェクトとが接触する場合に、キャラクタと他のオブジェクトとが接触することにより発生する音に相当する第1の接触音を音処理部130に再生させるとともに、キャラクタと他のオブジェクトとが接触することを起因としてキャラクタを構成する部分同士が接触することにより発生する音に相当する第2の接触音を音処理部130に再生させる。例えば音制御部112は、キャラクタが他のオブジェクトの表面を移動(接触の一例)する移動イベントが発生すると、キャラクタの足音(第1の接触音の一例)に相当する音データを音処理部130に再生させるとともに、キャラクタを構成する部品(構成部分の一例)同士やキャラクタが身に付ける装身具の部品(構成部分の一例)同士、あるいはキャラクタを構成する部品と当該キャラクタが身に付ける装身具(構成部分の一例)とが接触する部品音(第2の接触音の一例)に相当する音データを音処理部130に再生させる。
【0045】
詳細には音制御部112は、キャラクタが地面オブジェクトの表面を歩く歩行イベントが発生すると、歩行イベントに対応するシーケンスデータを設定し、当該シーケンスデータに従ったタイミングで、歩く足音に相当する音データと、部品音に相当する音データとを音処理部130に再生させる。また音制御部112は、キャラクタが地面オブジェクトの表面を走る走行イベントが発生すると、走行イベントに対応するシーケンスデータを設定し、当該シーケンスデータに従ったタイミングで、走る足音に相当する音データと、部品音に相当する音データとを音処理部130に再生させる。
【0046】
具体的には、ゲーム画像においてキャラクタAの足が地面オブジェクトに接地(接触の一例)するタイミングと同期して、キャラクタAの足音が出力されるとともにキャラクタAの部品音が出力されるように、第1の接触音用のシーケンスデータと第2の接触音用のシーケンスデータとが構成されている。すなわち音制御部112は、キャラクタと地面オブジェクトとが接触するタイミングと同期させて、第1の接触音および第2の接触音が出力されるように第1の接触音および第2の接触音を再生させる。
【0047】
そして音制御部112は、キャラクタが接触する他のオブジェクトの属性に応じて、第1の接触音および第2の接触音の再生状況を変化させる。本実施形態では、複数種類の地面オブジェクト(他のオブジェクトの一例)のそれぞれに異なる硬さ(属性の一例)が設定されており、音制御部112は、キャラクタが表面を移動する地面オブジェクトの硬さに応じて、第1の接触音および第2の接触音の音量(再生状況の一例)を設定することにより、音処理部130による音の再生状況を変化させる。
【0048】
例えば、硬い地面オブジェクトの表面をキャラクタが移動する場合には、第1の接触音および第2の接触音の音量を相対的に大きな音量に設定し、軟らかい地面オブジェクトの表面をキャラクタが移動する場合には、第1の接触音および第2の接触音の音量を相対的に小さな音量に設定する。すなわち音制御部112は、キャラクタが接触する地面オブジェクトの硬さに応じて、第1の接触音および第2の接触音の再生状況を同様の態様で変化させる。
【0049】
また音制御部112は、キャラクタの属性に応じて、第1の接触音の音色(再生状況の一例)を変化させる。本実施形態では、複数種類のキャラクタのそれぞれに異なる重量(属性の一例)が設定されており、音制御部112は、第1の接触音として、キャラクタの種類に対応して設定されるキャラクタ別音成分と、複数種類のキャラクタに共通に設定される複数種類の共通音成分とを、複数種類の共通音成分のそれぞれの音量の比(合成比率の一例)がキャラクタの重量に応じた比となるように再生させる。すなわち音制御部112は、キャラクタの重量に応じて複数種類の共通音成分のそれぞれの音量を設定するとともに、キャラクタの種類に応じてキャラクタ別音成分を設定することにより、キャラクタ毎に第1の接触音の音色を変化させる。
【0050】
また音制御部112は、第1の接触音および第2の接触音とともに、キャラクタと他のオブジェクトとが接触することを起因とせずに、キャラクタを構成する構成部分同士が接触することにより発生する音に相当する第3の接触音を、キャラクタと他のオブジェクトとが接触するタイミングとは異なるタイミングで(同期させずに)再生させる。具体的には、ゲーム画像においてキャラクタAが歩行あるいは走行するために手足を動かす(移動するための動作の一例)タイミングと同期してキャラクタAの部品音が出力されるように、第3の接触音用のシーケンスデータが構成されている。すなわち音制御部112は、キャラクタが地面オブジェクトの表面を移動するために行う動作のタイミングと同期させて、第3の接触音を再生させる。
【0051】
通信制御部114は、他のゲームシステム10に送信するパケットを生成する処理、パケット送信先のゲームシステム10のネットワークアドレスを指定する処理、受信したパケットを記憶部80に保存する処理、受信したパケットを解析する処理、その他のパケットの送受信に関する通信部90の制御処理等を行う。特に本実施形態では、育成ゲームをネットワーク(例えば、インターネット)を利用して実行するために必要なデータパケット及びコマンドパケットを生成する制御や、通信部90を介してデータパケット及びコマンドパケットを送受信させる制御を行う。
【0052】
描画部120は、処理部100で行われる種々の処理(ゲーム処理)の結果に基づいて描画処理を行い、これにより画像を生成し表示部42に出力する。いわゆる3次元ゲーム画像を生成する場合には、まず表示物(オブジェクト、モデル)を定義する各頂点の頂点データ(頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)を含む表示物データ(オブジェクトデータ、モデルデータ)が入力され、入力された表示物データに含まれる頂点データに基づいて、頂点処理が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理(テッセレーション、曲面分割、ポリゴン分割)を行うようにしてもよい。頂点処理では、頂点の移動処理や、座標変換(ワールド座標変換、カメラ座標変換)、クリッピング処理、透視変換、あるいは光源処理等のジオメトリ処理が行われ、その処理結果に基づいて、表示物を構成する頂点群について与えられた頂点データを変更(更新、調整)する。そして、頂点処理後の頂点データに基づいてラスタライズ(走査変換)が行われ、ポリゴン(プリミティブ)の面とピクセルとが対応づけられる。そしてラスタライズに続いて、画像を構成するピクセル(表示画面を構成するフラグメント)を描画するピクセル処理(フラグメント処理)が行われる。ピクセル処理では、テクスチャの読出し(テクスチャマッピング)、色データの設定/変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定し、透視変換されたオブジェクトの描画色を、ピクセル単位で画像情報を記憶できる描画バッファ84(VRAM、レンダリングターゲット)に出力(描画)する。すなわち、ピクセル処理では、画像情報(色、法線、輝度、α値等)をピクセル単位で設定あるいは変更するパーピクセル処理を行う。
【0053】
なお描画部120が行う頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、ポリゴン(プリミティブ)の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ(頂点シェーダやピクセルシェーダ)により実現されてもよい。プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、ハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。
【0054】
そして描画部120は、表示物を描画する際に、ジオメトリ処理、テクスチャマッピング、隠面消去処理、αブレンディング等を行う。
【0055】
ジオメトリ処理では、表示物に関して、座標変換、クリッピング処理、透視投影変換、或いは光源計算等の処理が行われる。そして、ジオメトリ処理後(透視投影変換後)の表示物データ(表示物の頂点の位置座標、テクスチャ座標、色データ(輝度データ)、法線ベクトル、或いはα値等)は、主記憶部82に保存される。
【0056】
テクスチャマッピングは、記憶部80に記憶されるテクスチャ(テクセル値)を表示物にマッピングするための処理である。具体的には、表示物の頂点に設定(付与)されるテクスチャ座標等を用いて記憶部80からテクスチャ(色(RGB)、α値などの表面プロパティ)を読み出す。そして、2次元の画像であるテクスチャを表示物にマッピングする。この場合に、ピクセルとテクセルとを対応づける処理や、テクセルの補間としてバイリニア補間などを行う。
【0057】
隠面消去処理としては、描画ピクセルのZ値(奥行き情報)が格納されるZバッファ(奥行きバッファ)を用いたZバッファ法(奥行き比較法、Zテスト)による隠面消去処理を行うことができる。すなわちオブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Zバッファに格納されるZ値を参照する。そして参照されたZバッファのZ値と、プリミティブの描画ピクセルでのZ値とを比較し、描画ピクセルでのZ値が、仮想カメラから見て手前側となるZ値(例えば小さなZ値)である場合には、その描画ピクセルの描画処理を行うとともにZバッファのZ値を新たなZ値に更新する。
【0058】
αブレンディング(α合成)は、α値(A値)に基づく半透明合成処理(通常αブレンディング、加算αブレンディング又は減算αブレンディング等)のことである。例えば、通常αブレンディングでは、α値を合成の強さとして線形補間を行うことにより2つの色を合成した色を求める処理を行う。
【0059】
なお、α値は、各ピクセル(テクセル、ドット)に関連づけて記憶できる情報であり、例えばRGBの各色成分の輝度を表す色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度(透明度、不透明度と等価)、バンプ情報などとして使用できる。
【0060】
音処理部130は、処理部100で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部44に出力する。詳細には音処理部130は、音制御部112からの制御情報に基づいて、24チャンネルの各チャンネルで、シーケンスデータに従ったタイミングで音データ記憶部88の音データを復号化しながら読み出す。そして音処理部130は、各チャンネルで音量調整処理や、リバーブ処理・変調処理などのエフェクト処理(音色調整処理の一例)などを行った後に、各チャンネルの音データを合成し、アナログ信号に変換する。すなわち音処理部130は、複数のチャンネルのチャンネル毎に、ゲーム音の音量や音色などの再生状況を変化させながらゲーム音を再生する。
【0061】
なお、本実施形態の画像生成システムは、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末(ゲーム機、携帯電話)を用いて分散処理により生成してもよい。
【0062】
3.本実施形態の手法
以下、本実施形態のゲームシステム10の手法について詳細に説明する。本実施形態のゲームシステム10は、キャラクタが地面オブジェクトの表面を移動する場合に、キャラクタの足音およびキャラクタの部品同士が接触することにより発生する部品音を再生させる。
【0063】
3−1.キャラクタに応じた接触音の再生
図3は、本実施形態のゲームシステム10の情報記憶媒体70に格納されている音データのリストを示す図である。図3に示すように本実施形態では、キャラクタの足音に相当する足音データと、部品音に相当する部品音データとが情報記憶媒体70に格納されており、必要な音データが情報記憶媒体70から音データ記憶部88に読み込まれる。
【0064】
本実施形態では、対戦を行うキャラクタとしてキャラクタA〜キャラクタD(複数種類のキャラクタの一例)が用意されており、各キャラクタは、キャラクタ自体の材質、衣装、履き物などの装身具の材質、体重、身長、歩幅などのキャラクタ属性が異なるものとされている。従って本実施形態では、キャラクタの種類に対応させて、互いに波形が異なる複数種類のキャラクタ別足音データ(キャラクタ別音成分の一例)が情報記憶媒体70に格納されている。
【0065】
そして本実施形態では、キャラクタA〜キャラクタDの中から、格闘を行うプレーヤキャラクタとコンピュータキャラクタとが選択されると、選択されたキャラクタの種類に対応するキャラクタ別足音データが情報記憶媒体70から音データ記憶部88に読み込まれる。例えばプレーヤキャラクタとしてキャラクタAが、コンピュータキャラクタとしてキャラクタBが選択されると、キャラクタA用足音データとキャラクタB用足音データとが音データ記憶部88に読み込まれる。
【0066】
また本実施形態では、キャラクタA〜キャラクタDに共通に設定される複数種類の共通足音データ(共通音成分の一例)が用意されており、この複数種類の共通足音データは、選択されたキャラクタの種類に関わらず情報記憶媒体70から音データ記憶部88に読み込まれる。この複数種類の共通足音データは、高音成分に相当する高音データと、低音成分に相当する低音データと、超低音成分に相当する超低音データとを含む。
【0067】
そして本実施形態では、各キャラクタの足音データについて4つのチャンネルが割り当てられており、歩行あるいは走行したキャラクタの種類に応じて、1つのチャンネルにおいてキャラクタA用足音データ〜キャラクタD用足音データのいずれかが読み出され、3つのチャンネルにおいて高音データと低音データと超低音データとが読み出される。例えばキャラクタAが歩行すると、キャラクタAの足音データとして、キャラクタA用足音データと高音データと低音データと超低音データとが読み出され、キャラクタBが歩行すると、キャラクタBの足音データとして、キャラクタB用足音データと高音データと低音データと超低音データとが読み出される。
【0068】
そしてキャラクタ毎にこれら4つの足音成分データが合成され、1つのキャラクタの足音として再生される。ここで本実施形態では、高音データと低音データと超低音データの音量が、それぞれの音量の比が各キャラクタの重量に応じた比となるように設定される。
【0069】
図4は、キャラクタの重量に対する高音データと低音データと超低音データの音量を示す図である。図4では、縦軸に音量が示され、横軸にキャラクタの重量が示されている。図4に示すように本実施形態では、高音データに関しては、キャラクタの重量が軽い範囲では、キャラクタの重量の増加に対する音量の増加率が相対的に高くなっているが、キャラクタの重量が中程度から重い範囲では、キャラクタの重量の増加に対する音量の増加率が相対的に低くなっている。また、低音データに関しては、キャラクタの重量が軽い範囲から重い範囲まで、キャラクタの重量の増加に対する音量の増加率はほぼ一定となっている。一方、超低音データに関しては、キャラクタの重量が軽い範囲では音量が0となっており、キャラクタの重量が中程度となる範囲から、キャラクタの重量の増加に対する増加率がほぼ一定となるように音量が増加している。
【0070】
従って図4の例では、重量が50キログラムとされているキャラクタAについては、高音データの音量は0.7に設定され、低音データの音量は0.3に設定され、超低音データの音量は0.0に設定される。一方、重量が100キログラムとされているキャラクタBについては、高音データの音量は0.9に設定され、低音データの音量は0.85に設定され、超低音データの音量は0.6に設定される。
【0071】
すなわち本実施形態では、キャラクタの重量が大きい方が音量が大きくなるように各共通足音データの音量が設定されるが、キャラクタの重量が軽い範囲では高音データの音量の比率が相対的に高く、キャラクタの重量が重い範囲では超低音データの音量の比率が相対的に高くなるように、各共通足音データの音量が設定される。これにより本実施形態では、各キャラクタについて共通の音データを用いつつも、キャラクタの重量に応じて足音の音色を変化させることができる。なお、キャラクタA用足音データ〜キャラクタD用足音データは各キャラクタ用に予め音量が設定されているので、キャラクタの重量に応じたこれらの音量は、等倍を示す1.0に設定される。
【0072】
また本実施形態では、キャラクタの種類に対応させて、互いに波形が異なる複数種類の部品音データが情報記憶媒体70に格納されている。そして本実施形態では、キャラクタA〜キャラクタDの中から、対戦を行うプレーヤキャラクタとコンピュータキャラクタとが選択されると、選択されたキャラクタの種類に対応する部品音データが情報記憶媒体70から音データ記憶部88に読み込まれる。例えばプレーヤキャラクタとしてキャラクタAが、コンピュータキャラクタとしてキャラクタBが選択されると、キャラクタA用部品音データとキャラクタB用部品音データとが音データ記憶部88に読み込まれる。
【0073】
そして本実施形態では、各キャラクタの部品音データについて1つのチャンネルが割り当てられており、歩行あるいは走行したキャラクタの種類に応じて、1つのチャンネルにおいてキャラクタA用部品音データ〜キャラクタD用部品音データのいずれかが読み出される。例えばキャラクタAが歩行すると、キャラクタA用部品音データが読み出され、キャラクタBが歩行すると、キャラクタB用部品音データが読み出される。なお、キャラクタA用部品音データ〜キャラクタD用部品音データは各キャラクタ用に予め音量が設定されているので、キャラクタの重量に応じたこれらの音量は、等倍を示す1.0に設定される。
【0074】
このように本実施形態では、4つのチャンネルにおいて4つの足音成分データが1つのキャラクタの足音データとして読み出され、1つのチャンネルにおいて1つのキャラクタの部品音データが読み出される。そして、各チャンネルの音データが合成されて、1つのキャラクタの足音および部品音として再生される。
【0075】
3−2.地面オブジェクトに応じた接触音の再生
図5は、オブジェクト空間におけるキャラクタの状態と音の再生状況とを示す図である。図5の例では、キャラクタが表面を移動する地面オブジェクトとして石の面が配置されており、この石の面は「硬い」ものとされている。そして現実世界においては、このような石の面の上を人間が歩行あるいは走行すると、大きな衝撃が発生するため大きな足音が発生する。そこで本実施形態では、図5に示すように、地面オブジェクトとして石の面が配置される場合には、上述した4つの足音成分データから構成される足音データの全体としての音量が、その最大値である1.0に設定される。
【0076】
詳細には本実施形態では、4つの足音成分データが読み出される各チャンネルに設定されるキャラクタの重量に応じた音量に、足音データ全体としての音量(1.0)を乗算した音量が、最終的な各チャンネルの音量として設定される。例えば地面オブジェクトとして石の面が配置される場合には、図6(A)に示すように、キャラクタAの足音データに関して、キャラクタA用足音データのチャンネルの音量は、1.0×1.0=1.0となり、高音データのチャンネルの音量は、0.7×1.0=0.7となり、低音データのチャンネルの音量は、0.3×1.0=0.3となり、超低音データのチャンネルの音量は、0.0×1.0=0.0となる。
【0077】
ここで、石の面の上を歩行あるいは走行することにより大きな衝撃が発生すると、その大きな衝撃がキャラクタを構成する部品にも伝達するので、部品同士が接触することにより発生する部品音も大きくなると考えられる。そこで本実施形態では、図5に示すように、地面オブジェクトとして石の面が配置される場合には、地面オブジェクトの硬さに応じた部品音データの音量もその最大値である1.0に設定される。従って図6(A)に示すように、キャラクタAの部品音データに関して、キャラクタA用部品音データのチャンネルの音量は、1.0×1.0=1.0となる。
【0078】
そして図5に示すように、キャラクタAが石の面の上で移動を開始すると、地面オブジェクトの硬さに応じた足音データの音量が1.0に設定された状態で、キャラクタAの足音データがキャラクタAの移動時のシーケンスデータに従ったタイミングで読み出される。それとともに、地面オブジェクトの硬さに応じた部品音データの音量が1.0に設定された状態で、キャラクタAの部品音データがキャラクタAの移動時のシーケンスデータに従ったタイミングで読み出される。
【0079】
図7は、地面オブジェクトの種類に対応する足音データおよび部品音データの音量を示す図である。本実施形態では、石の面の他に、木の面、土の面が地面オブジェクトとして配置される。そして現実世界においては、木の面は石の面よりも軟らかいため衝撃吸収性が高く、木の面の上を人間が歩行あるいは走行した場合に発生する衝撃は、石の面を歩行あるいは走行した場合の衝撃よりも小さくなるので、発生する足音も小さくなる。そこで本実施形態では、図7に示すように、地面オブジェクトとして木の面が配置される場合には、地面オブジェクトの硬さに応じた足音データの音量は、石の面が配置される場合よりも小さい0.8に設定される。
【0080】
そして、歩行あるいは走行した場合に発生する衝撃が小さくなると、キャラクタを構成する部品に伝達する衝撃も小さくなるので、部品同士が接触することにより発生する部品音も小さくなると考えられる。そこで本実施形態では、図7に示すように、地面オブジェクトとして木の面が配置される場合には、地面オブジェクトの硬さに応じた部品音データの音量も、石の面が配置される場合よりも小さい0.8に設定される。
【0081】
更に、土の面は木の面よりも軟らかいため衝撃吸収性がより高く、土の面の上を人間が歩行あるいは走行した場合に発生する衝撃は、木の面を歩行あるいは走行した場合の衝撃よりも更に小さくなる。そこで本実施形態では、図7に示すように、地面オブジェクトとして土の面が配置される場合には、地面オブジェクトの硬さに応じた足音データの音量は、木の面が配置される場合よりも小さい0.6に設定され、地面オブジェクトの硬さに応じた部品音データの音量も、木の面が配置される場合よりも小さい0.6に設定される。このように本実施形態では、地面オブジェクトが硬いものである場合には、足音データおよび部品音データの音量が相対的に大きな音量に設定され、地面オブジェクトが軟らかいものである場合には、足音データおよび部品音データの音量が相対的に小さな音量に設定される。
【0082】
従って、図8に示すように、キャラクタAが土の面の上で移動を開始すると、地面オブジェクトの硬さに応じた足音データの音量が0.6に設定された状態で、キャラクタAの足音データがキャラクタAの移動時のシーケンスデータに従ったタイミングで読み出される。それとともに、地面オブジェクトの硬さに応じた部品音データの音量が0.6に設定された状態で、キャラクタAの部品音データがキャラクタAの移動時のシーケンスデータに従ったタイミングで読み出される。
【0083】
詳細には、地面オブジェクトとして土の面が配置される場合には、図6(B)に示すように、キャラクタAの足音データに関して、キャラクタA用足音データのチャンネルの音量は、1.0×0.6=0.6となり、高音データのチャンネルの音量は、0.7×0.6=0.42となり、低音データのチャンネルの音量は、0.3×0.6=0.18となり、超低音データのチャンネルの音量は、0.0×0.6=0.0となる。また、キャラクタAの部品音データに関して、キャラクタA用部品音データのチャンネルの音量は、1.0×0.6=0.6となる。
【0084】
また本実施形態では、キャラクタAが移動することによりキャラクタAが存在(接触の一例)する地面オブジェクトの硬さが変化する場合には、地面オブジェクトの硬さが変化したタイミングで、キャラクタAが存在している地面オブジェクトの硬さに応じて足音データの音量および部品音データの音量が変更される。例えば図9に示すように、キャラクタAが石の面から土の面に移動する場合には、キャラクタAの足音データおよび部品音データが連続的に読み出されつつ、キャラクタAの足音データおよび部品音データの地面オブジェクトの硬さに応じた音量が、地面オブジェクトが石の面から木の面に変化したタイミングで1.0から0.6に変更される。
【0085】
また本実施形態では、キャラクタAが存在する地面オブジェクトの硬さとキャラクタBが存在する地面オブジェクトの硬さとが異なる場合には、各キャラクタの足音データおよび部品音データの地面オブジェクトの硬さに応じた音量が、各キャラクタが存在する地面オブジェクトの硬さに応じて設定される。例えば、キャラクタAが石の面の上に存在し、キャラクタBが土の面の上に存在する場合には、キャラクタAの足音データおよび部品音データの地面オブジェクトの硬さに応じた音量が1.0に設定され、キャラクタBの足音データおよび部品音データの地面オブジェクトの硬さに応じた音量が0.6に設定される。
【0086】
このように本実施形態のゲームシステム10は、各キャラクタが存在する地面オブジェクトがいかなる地面オブジェクトであるかが判別し、各キャラクタが存在する地面オブジェクトの硬さに応じて、足音だけでなく部品音が再生される際の音量をも変化させる。これによりゲームシステム10は、キャラクタが地面オブジェクトの表面を移動する場合に、キャラクタを構成する部品同士が接触することにより発生する音も、キャラクタが移動する地面オブジェクトの硬さに影響を受けて変化することを表現することができる。従ってゲームシステム10は、予め用意する音のデータ量を増加させなくとも、音の再生音量を変化させることにより、キャラクタが地面オブジェクトの表面を移動する際の様子を適切に表現することができる。
【0087】
4.本実施形態の処理の流れ
図10は、本実施形態のゲームシステム10において行われる処理の流れを示すフローチャートである。図10に示すようにゲームシステム10は、まず、キャラクタA〜キャラクタDの中からプレーヤキャラクタおよびコンピュータキャラクタが選択されると(ステップS10でY)、選択されたキャラクタに対応する足音データおよび部品音データを情報記憶媒体70から音データ記憶部88に読み込む(ステップS12)。するとゲームシステム10は、選択された各キャラクタについて、それぞれの重量に応じて高音データの音量と低音データの音量と超低音データの音量とを設定する(ステップS14)。そして格闘が開始されると、格闘中処理が行われる(ステップS16)。
【0088】
図11は、図10のステップS16において行われる格闘中処理の詳細を示すフローチャートである。図11に示すように、格闘中処理ではゲームシステム10は、まず、各キャラクタが存在する地面オブジェクトがいかなる地面オブジェクトであるかを判別し、各キャラクタが存在する地面オブジェクトの硬さに応じて、各キャラクタについて足音データの音量および部品音データの音量を設定する(ステップS100)。そしていずれかのキャラクタが歩行あるいは走行を開始すると(ステップS102でY)、歩行あるいは走行を開始したキャラクタについて設定された音量で、当該キャラクタの足音データおよび部品音データを読み出す(ステップS104)。
【0089】
そして、キャラクタが存在する地面オブジェクトの種類が変化すると(ステップS106でY)、キャラクタが存在する地面オブジェクトの硬さに応じて、当該キャラクタの足音データおよび部品音データの音量を変更する(ステップS108)。一方、キャラクタが存在する地面オブジェクトの種類が変化しないと(ステップS106でN)、当該キャラクタの足音データおよび部品音データの音量を変更しない。
【0090】
そして歩行あるいは走行をしていたキャラクタが歩行あるいは走行を停止すると(ステップS110でY)、処理を終了し、歩行あるいは走行を継続すると(ステップS110でN)、ステップS104からステップS110までの処理を繰り返す。
【0091】
5.変形例
上記実施形態で説明した手法は、一例を示したに過ぎず、上記実施形態の手法と同様の効果を奏する均等な手法を採用した場合においても本発明の範囲に含めることができる。また本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。そして上記実施形態の手法や、変形例として後述する各種の手法は、本発明を実現する手法として適宜組み合わせて採用することができる。
【0092】
例えば上述した実施形態では、格闘ゲームを行うゲームシステムへの適用例を挙げて説明したが、ロールプレイングゲームや、アクションゲーム、シューティングゲーム、レースゲームなど、キャラクタが移動および動作の少なくとも一方を行う種々のゲームを行うゲームシステムや、各種のシミュレータに適用することができる。
【0093】
また上述した実施形態では、キャラクタとして人間をシミュレートしたものを例に挙げて説明したが、キャラクタとは、動物、モンスター、ロボット、車、飛行機など、移動および動作の少なくとも一方を行う種々のものをシミュレートしたものとすることができる。
【0094】
また、「キャラクタ」とは、キャラクタの一部としてもよく、例えばキャラクタが用いる武器や道具などとしてもよい。
【0095】
また、「キャラクタと他のオブジェクトとが接触すること」とは、キャラクタが他のオブジェクト上に倒れたり、他のオブジェクトと衝突したりすることなども含む。すなわち「キャラクタと他のオブジェクトとが接触することにより発生する音に相当する第1の接触音」とは、足音のみならず種々の接触音とすることができる。
【0096】
また、「他のオブジェクト」とは、地面オブジェクトの他に、壁、天井、橋、他のキャラクタなど、種々のオブジェクトとすることができる。
【0097】
また、「キャラクタを構成する部分」とは、キャラクタの移動・動作とともに移動・動作するものとすることができ、この場合には移動・動作制御部110は、キャラクタおよびキャラクタを構成する部分の移動および動作の少なくとも一方の制御を行うようにしてもよい。
【0098】
また上述した実施形態では、各キャラクタの足音データについて4つのチャンネルが割り当てられている例を挙げて説明したが、第1の接触音や第2の接触音に割り当てられているチャンネルは任意の数とすることができ、例えば、各キャラクタの足音データについて1つのチャンネルを割り当てるようにしてもよい。この場合には、各キャラクタの重量に応じて音色が異なる足音データをキャラクタ毎に予め用意しておき、選択されたキャラクタに対応する足音データを音データ記憶部88に読み込む。そして、キャラクタが接触する他のオブジェクトの属性に応じて、足音データを読み出す1つのチャンネルの音量を設定する。
【0099】
また上述した実施形態では、図7に示したように、第1の接触音および第2の接触音の音量が他のオブジェクトの属性に応じて同一の値で変化する例を挙げて説明したが、図12に示すように、他のオブジェクトの各属性に対応する第1の接触音の音量と第2の接触音の音量とが異なる値となるようにしてもよい。例えば、第1の接触音の音量よりも第2の接触音の音量の方が小さくなるように各値を設定してもよい。
【0100】
そして、他のオブジェクトの各属性に対応する第1の接触音の音量の変化率と、第2の接触音の音量の変化率とが異なるようにしてもよい。例えば図12に示すように、地面オブジェクトが土の面である場合には地面オブジェクトが石の面である場合に比して、第1の接触音の音量は6割程度に減少するが、第2の接触音の音量は2割程度に減少するようにしてもよい。すなわち第1の接触音の音量と第2の接触音の音量とが、他のオブジェクトの属性に応じて同様の態様で変化するように、任意の値が設定される。
【0101】
また上述した実施形態では、キャラクタが接触する地面オブジェクトの属性に応じて、第1の接触音および第2の接触音の音量を同様の態様で変化させる例を挙げて説明したが、キャラクタが接触する地面オブジェクトの属性に応じて、第1の接触音の音色(再生状況の一例)を変化させるようにしてもよい。例えば音制御部112が、第1の接触音として、地面オブジェクト(オブジェクトの一例)の種類に対応して設定される地面別音成分と、複数種類の地面オブジェクトに共通に設定される複数種類の共通音成分とを、複数種類の共通音成分のそれぞれの合成比率が地面オブジェクトの属性に応じた合成比率となるように再生させる。すなわち音制御部112は、地面オブジェクトの属性に応じて複数種類の共通音成分のそれぞれの音量を設定するとともに、地面オブジェクトの属性に応じて地面別音成分を設定することにより、地面オブジェクト毎に第1の接触音の音色を変化させるようにしてもよい。
【0102】
また音制御部112が、キャラクタを構成する構成部分の属性に応じて、第2の接触音の音色(再生状況の一例)を変化させるようにしてもよい。本実施形態では、複数種類の構成部分のそれぞれに異なる属性(重量、材質、可動範囲など)が設定されており、音制御部112は、第2の接触音として、構成部分の種類に対応して設定される構成部分別音成分と、複数種類の構成部分に共通に設定される複数種類の共通音成分とを、複数種類の共通音成分のそれぞれの合成比率が構成部分の属性に応じた合成比率となるように再生させるようにしてもよい。すなわち音制御部112は、構成部分の属性に応じて複数種類の共通音成分のそれぞれの音量を設定するとともに、構成部分の属性に応じて構成部分別音成分を設定することにより、構成部分毎あるいは構成部分同士の組み合わせに応じて第2の接触音の音色を変化させるようにしてもよい。
【0103】
すなわち音制御部112が、接触する複数のオブジェクトの少なくとも一方の属性に応じて、第1の接触音および第2の接触音の少なくとも一方の再生状況を変化させるようにしてもよい。
【0104】
また本発明は、据え置き型の家庭用ゲームシステムの他に、携帯型のゲームシステム、業務用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード、携帯電話等の種々の画像生成システムに適用できる。
【図面の簡単な説明】
【0105】
【図1】本実施形態のゲームシステムの外観を示す図。
【図2】本実施形態のゲームシステムの機能ブロック図。
【図3】本実施形態の音データのリストを示す図。
【図4】本実施形態のキャラクタの重量に応じた音量を示す図。
【図5】本実施形態のキャラクタの状態と音の再生状況とを示す図。
【図6】本実施形態の各チャンネルに設定される音量を示す図。
【図7】本実施形態の地面オブジェクトの種類に応じた音量を示す図。
【図8】本実施形態のキャラクタの状態と音の再生状況とを示す図。
【図9】本実施形態のキャラクタの状態と音の再生状況とを示す図。
【図10】本実施形態のゲームシステムの処理の流れを示すフローチャート図。
【図11】本実施形態のゲームシステムの処理の流れを示すフローチャート図。
【図12】変形実施形態の地面オブジェクトの種類に応じた音量を示す図。
【符号の説明】
【0106】
10 ゲームシステム、12 コントローラ、14 本体装置、16 ディスプレイ、
18 スピーカ、20 左グリップ、22 右グリップ、24 方向キー、
26 左アナログスティック、28 第1ボタン、30 第2ボタン、
32 第3ボタン、34 第4ボタン、36 右アナログスティック、40 操作部、
42 表示部、44 音出力部、70 情報記憶媒体、80 記憶部、82 主記憶部、
84 描画バッファ、86 オブジェクトデータ記憶部、88 音データ記憶部、
90 通信部、
100 処理部、102 ゲーム処理部、104 表示制御部、
106 オブジェクト空間設定部、108 仮想カメラ制御部、
110 移動・動作制御部、112 判定部、114 通信制御部
【特許請求の範囲】
【請求項1】
キャラクタを含む複数のオブジェクトをオブジェクト空間に設定するオブジェクト空間設定部と、
前記キャラクタの移動および動作の少なくとも一方の制御を行う移動・動作制御部と、
前記キャラクタと他のオブジェクトとが接触する場合に、前記キャラクタと前記他のオブジェクトとが接触することにより発生する音に相当する第1の接触音を再生させるとともに、前記キャラクタを構成する構成部分同士が接触することにより発生する音に相当する第2の接触音を再生させる音制御部と、
前記オブジェクト空間を画像として描画する描画部と、
前記第1の接触音および前記第2の接触音を再生する音処理部としてコンピュータを機能させ、
前記音制御部は、
前記キャラクタが接触する前記他のオブジェクトの属性に応じて、前記第1の接触音および前記第2の接触音の再生状況を変化させることを特徴とするプログラム。
【請求項2】
請求項1において、
前記音制御部は、
前記キャラクタが接触する前記他のオブジェクトの属性に応じて、前記第1の接触音および前記第2の接触音の音量を変化させることを特徴とするプログラム。
【請求項3】
請求項1または2において、
前記音制御部は、
前記キャラクタが前記他のオブジェクトの表面を移動する場合に、前記第1の接触音として、前記キャラクタが前記他のオブジェクトの表面を移動することにより発生する音に相当する音を再生させることを特徴とするプログラム。
【請求項4】
請求項1〜3のいずれかにおいて、
前記オブジェクト空間設定部は、
複数種類のキャラクタのうち少なくとも1つの種類のキャラクタをオブジェクト空間に設定し、
前記音制御部は、
前記第1の接触音として、前記キャラクタの種類に対応して設定されるキャラクタ別音成分と、前記複数種類のキャラクタに共通に設定される複数種類の共通音成分とを、前記複数種類の共通音成分のそれぞれの合成比率が前記キャラクタの属性に応じた合成比率となるように再生させることを特徴とするプログラム。
【請求項5】
複数種類のオブジェクトをオブジェクト空間に設定するオブジェクト空間設定部と、
少なくとも1種類の前記オブジェクトの移動および動作の少なくとも一方の制御を行う移動・動作制御部と、
前記オブジェクト同士が接触する場合に、前記オブジェクト同士が接触することにより発生する音に相当する接触音を再生させる音制御部と、
前記オブジェクト空間を画像として描画する描画部と、
前記接触音を再生する音処理部としてコンピュータを機能させ、
前記音制御部は、
前記接触音として、前記オブジェクトの種類に対応して設定されるオブジェクト別音成分と、前記複数種類のオブジェクトに共通に設定される複数種類の共通音成分とを、前記複数種類の共通音成分のそれぞれの合成比率が前記オブジェクトの属性に応じた合成比率となるように再生させることを特徴とするプログラム。
【請求項6】
請求項5において、
前記オブジェクト空間設定部は、
キャラクタを含む複数種類のオブジェクトをオブジェクト空間に設定し、
前記移動・動作制御部は、
前記キャラクタの移動および動作の少なくとも一方の制御を行い、
前記音制御部は、
前記キャラクタと他のオブジェクトとが接触する場合に、前記接触音として、前記キャラクタと前記他のオブジェクトとが接触することにより発生する音に相当する第1の接触音を再生させ、前記第1の接触音として、前記キャラクタの種類に対応して設定されるキャラクタ別音成分と、前記複数種類のキャラクタに共通に設定される複数種類の共通音成分とを、前記複数種類の共通音成分のそれぞれの合成比率が前記キャラクタの属性に応じた合成比率となるように再生させることを特徴とするプログラム。
【請求項7】
請求項5において、
前記オブジェクト空間設定部は、
キャラクタを含む複数種類のオブジェクトをオブジェクト空間に設定し、
前記移動・動作制御部は、
前記キャラクタの移動および動作の少なくとも一方の制御を行い、
前記音制御部は、
前記キャラクタを構成する構成部分同士が接触する場合に、前記接触音として、前記構成部分同士が接触することにより発生する音に相当する第2の接触音を再生させ、前記第2の接触音として、前記構成部分の種類に対応して設定される構成部分別音成分と、前記複数種類の構成部分に共通に設定される複数種類の共通音成分とを、前記複数種類の共通音成分のそれぞれの合成比率が前記構成部分の属性に応じた合成比率となるように再生させることを特徴とするプログラム。
【請求項8】
コンピュータにより読み取り可能な情報記憶媒体であって、請求項1〜7のいずれかに記載されたプログラムを記憶することを特徴とする情報記憶媒体。
【請求項9】
キャラクタを含む複数のオブジェクトをオブジェクト空間に設定するオブジェクト空間設定部と、
前記キャラクタの移動および動作の少なくとも一方の制御を行う移動・動作制御部と、
前記キャラクタと他のオブジェクトとが接触する場合に、前記キャラクタと前記他のオブジェクトとが接触することにより発生する音に相当する第1の接触音を再生させるとともに、前記キャラクタを構成する構成部分同士が接触することにより発生する音に相当する第2の接触音を再生させる音制御部と、
前記オブジェクト空間を画像として描画する描画部と、
前記第1の接触音および前記第2の接触音を再生する音処理部とを含み、
前記音制御部は、
前記キャラクタが接触する前記他のオブジェクトの属性に応じて、前記第1の接触音および前記第2の接触音の再生状況を変化させることを特徴とする画像生成システム。
【請求項10】
複数種類のオブジェクトをオブジェクト空間に設定するオブジェクト空間設定部と、
少なくとも1種類の前記オブジェクトの移動および動作の少なくとも一方の制御を行う移動・動作制御部と、
前記オブジェクト同士が接触する場合に、前記オブジェクト同士が接触することにより発生する音に相当する接触音を再生させる音制御部と、
前記オブジェクト空間を画像として描画する描画部と、
前記接触音を再生する音処理部とを含み、
前記音制御部は、
前記接触音として、前記オブジェクトの種類に対応して設定されるオブジェクト別音成分と、前記複数種類のオブジェクトに共通に設定される複数種類の共通音成分とを、前記複数種類の共通音成分のそれぞれの合成比率が前記オブジェクトの属性に応じた合成比率となるように再生させることを特徴とする画像生成システム。
【請求項1】
キャラクタを含む複数のオブジェクトをオブジェクト空間に設定するオブジェクト空間設定部と、
前記キャラクタの移動および動作の少なくとも一方の制御を行う移動・動作制御部と、
前記キャラクタと他のオブジェクトとが接触する場合に、前記キャラクタと前記他のオブジェクトとが接触することにより発生する音に相当する第1の接触音を再生させるとともに、前記キャラクタを構成する構成部分同士が接触することにより発生する音に相当する第2の接触音を再生させる音制御部と、
前記オブジェクト空間を画像として描画する描画部と、
前記第1の接触音および前記第2の接触音を再生する音処理部としてコンピュータを機能させ、
前記音制御部は、
前記キャラクタが接触する前記他のオブジェクトの属性に応じて、前記第1の接触音および前記第2の接触音の再生状況を変化させることを特徴とするプログラム。
【請求項2】
請求項1において、
前記音制御部は、
前記キャラクタが接触する前記他のオブジェクトの属性に応じて、前記第1の接触音および前記第2の接触音の音量を変化させることを特徴とするプログラム。
【請求項3】
請求項1または2において、
前記音制御部は、
前記キャラクタが前記他のオブジェクトの表面を移動する場合に、前記第1の接触音として、前記キャラクタが前記他のオブジェクトの表面を移動することにより発生する音に相当する音を再生させることを特徴とするプログラム。
【請求項4】
請求項1〜3のいずれかにおいて、
前記オブジェクト空間設定部は、
複数種類のキャラクタのうち少なくとも1つの種類のキャラクタをオブジェクト空間に設定し、
前記音制御部は、
前記第1の接触音として、前記キャラクタの種類に対応して設定されるキャラクタ別音成分と、前記複数種類のキャラクタに共通に設定される複数種類の共通音成分とを、前記複数種類の共通音成分のそれぞれの合成比率が前記キャラクタの属性に応じた合成比率となるように再生させることを特徴とするプログラム。
【請求項5】
複数種類のオブジェクトをオブジェクト空間に設定するオブジェクト空間設定部と、
少なくとも1種類の前記オブジェクトの移動および動作の少なくとも一方の制御を行う移動・動作制御部と、
前記オブジェクト同士が接触する場合に、前記オブジェクト同士が接触することにより発生する音に相当する接触音を再生させる音制御部と、
前記オブジェクト空間を画像として描画する描画部と、
前記接触音を再生する音処理部としてコンピュータを機能させ、
前記音制御部は、
前記接触音として、前記オブジェクトの種類に対応して設定されるオブジェクト別音成分と、前記複数種類のオブジェクトに共通に設定される複数種類の共通音成分とを、前記複数種類の共通音成分のそれぞれの合成比率が前記オブジェクトの属性に応じた合成比率となるように再生させることを特徴とするプログラム。
【請求項6】
請求項5において、
前記オブジェクト空間設定部は、
キャラクタを含む複数種類のオブジェクトをオブジェクト空間に設定し、
前記移動・動作制御部は、
前記キャラクタの移動および動作の少なくとも一方の制御を行い、
前記音制御部は、
前記キャラクタと他のオブジェクトとが接触する場合に、前記接触音として、前記キャラクタと前記他のオブジェクトとが接触することにより発生する音に相当する第1の接触音を再生させ、前記第1の接触音として、前記キャラクタの種類に対応して設定されるキャラクタ別音成分と、前記複数種類のキャラクタに共通に設定される複数種類の共通音成分とを、前記複数種類の共通音成分のそれぞれの合成比率が前記キャラクタの属性に応じた合成比率となるように再生させることを特徴とするプログラム。
【請求項7】
請求項5において、
前記オブジェクト空間設定部は、
キャラクタを含む複数種類のオブジェクトをオブジェクト空間に設定し、
前記移動・動作制御部は、
前記キャラクタの移動および動作の少なくとも一方の制御を行い、
前記音制御部は、
前記キャラクタを構成する構成部分同士が接触する場合に、前記接触音として、前記構成部分同士が接触することにより発生する音に相当する第2の接触音を再生させ、前記第2の接触音として、前記構成部分の種類に対応して設定される構成部分別音成分と、前記複数種類の構成部分に共通に設定される複数種類の共通音成分とを、前記複数種類の共通音成分のそれぞれの合成比率が前記構成部分の属性に応じた合成比率となるように再生させることを特徴とするプログラム。
【請求項8】
コンピュータにより読み取り可能な情報記憶媒体であって、請求項1〜7のいずれかに記載されたプログラムを記憶することを特徴とする情報記憶媒体。
【請求項9】
キャラクタを含む複数のオブジェクトをオブジェクト空間に設定するオブジェクト空間設定部と、
前記キャラクタの移動および動作の少なくとも一方の制御を行う移動・動作制御部と、
前記キャラクタと他のオブジェクトとが接触する場合に、前記キャラクタと前記他のオブジェクトとが接触することにより発生する音に相当する第1の接触音を再生させるとともに、前記キャラクタを構成する構成部分同士が接触することにより発生する音に相当する第2の接触音を再生させる音制御部と、
前記オブジェクト空間を画像として描画する描画部と、
前記第1の接触音および前記第2の接触音を再生する音処理部とを含み、
前記音制御部は、
前記キャラクタが接触する前記他のオブジェクトの属性に応じて、前記第1の接触音および前記第2の接触音の再生状況を変化させることを特徴とする画像生成システム。
【請求項10】
複数種類のオブジェクトをオブジェクト空間に設定するオブジェクト空間設定部と、
少なくとも1種類の前記オブジェクトの移動および動作の少なくとも一方の制御を行う移動・動作制御部と、
前記オブジェクト同士が接触する場合に、前記オブジェクト同士が接触することにより発生する音に相当する接触音を再生させる音制御部と、
前記オブジェクト空間を画像として描画する描画部と、
前記接触音を再生する音処理部とを含み、
前記音制御部は、
前記接触音として、前記オブジェクトの種類に対応して設定されるオブジェクト別音成分と、前記複数種類のオブジェクトに共通に設定される複数種類の共通音成分とを、前記複数種類の共通音成分のそれぞれの合成比率が前記オブジェクトの属性に応じた合成比率となるように再生させることを特徴とする画像生成システム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2010−22646(P2010−22646A)
【公開日】平成22年2月4日(2010.2.4)
【国際特許分類】
【出願番号】特願2008−188655(P2008−188655)
【出願日】平成20年7月22日(2008.7.22)
【出願人】(000134855)株式会社バンダイナムコゲームス (1,157)
【Fターム(参考)】
【公開日】平成22年2月4日(2010.2.4)
【国際特許分類】
【出願日】平成20年7月22日(2008.7.22)
【出願人】(000134855)株式会社バンダイナムコゲームス (1,157)
【Fターム(参考)】
[ Back to top ]