説明

ビデオゲーム処理装置、およびビデオゲーム処理プログラム

【課題】聴取位置の移動時に聴取方向の急激な変化が発生しないようにする。
【解決手段】ビデオゲーム処理装置100が、仮想空間における聴取音を複数の音声出力部14により出力するための音響情報に含めて管理する音響情報管理テーブル12aと、仮想空間に存在する音源オブジェクトに関する音源オブジェクト情報を記憶する音源オブジェクト情報記憶部12bとを備え、音源オブジェクトが発する音の可聴領域内に聴取位置Pが位置するか否かを判定し、聴取位置Pが可聴領域内に位置すると判定されたことに応じて、可聴領域に対応する音源オブジェクトの存在位置から聴取位置Pまでの複数の伝播経路をそれぞれ示す経路別伝播経路情報を導出し、導出した各伝播経路の経路別伝播経路情報を用いて、複数の音声出力部14それぞれに対応した出力別聴取音により構成される聴取音を導出し、音響情報に含まれる聴取音を導出した聴取音に更新する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プレイヤが操作するプレイヤキャラクタが存在する仮想空間を表示画面上に表示してビデオゲームの進行を制御するための技術に関する。
【背景技術】
【0002】
従来のビデオゲーム処理装置におけるサウンドシステム(ゲームの進行に応じて音声を出力するためのシステム)では、仮想空間に音響遮蔽物(以下、遮蔽物と呼ぶ。)が存在する場合、仮想空間における音源により発生する音に対する遮蔽物の影響を考慮して、聴取位置(例えば、プレイヤキャラクタの位置)で聴き取られる音(聴取音)を決定するための処理(音響処理)を実行している。
【0003】
このようなビデオゲーム処理装置には、例えば、3次元仮想空間における壁等の物体の情報と、音源の情報と、ゲームの進行とに基づいて、プレイヤの位置に到達する音を演算算出し、演算結果により得られた音を出力するために複数のスピーカに音を割り振るものがある(例えば、特許文献1)。ここで、一般的に使用される音の演算算出方法としては、音源位置から聴取位置に対して直線的に伝わる直接音と、音源位置から仮想空間に配置された壁などに反射(または、回折など)して聴取位置に伝わる音(反射音)との伝播経路を特定し、特定した直接音と反射音とを数値化して所定の数式に代入する方法が用いられている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平06−149275号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上述した従来のビデオゲーム処理装置では、聴取位置の移動時に、聴取位置に対する音源位置の方向が急激に変化してしまう場合があるという問題があった。
【0006】
すなわち、例えば図7(A)に示すように、音源A1と聴取位置Pとの間に音を遮蔽する領域101が配置されている場合に、音源A1にて発生する音の聴取位置Pへの伝播経路L1,L2が算出されるとする。このとき、一般的な音の演算では、伝播経路が短いもの(すなわち、聴取位置での音圧が大きいもの)を音の演算対象として採用していた。そのため、図7(A)に示す場合にあっては、聴取音は、聴取位置Pから音源A1の位置に向かって左側(すなわち、伝播経路L1側)から聴こえるように出力されていた。そして、この状態から図7(B)に示すように聴取位置Pが右方向に移動し、最短の伝播経路がL1からL2に変化すると、聴取音は、聴取位置Pから音源A1の位置に向かって右側(すなわち、伝播経路L2側)から聴こえるように出力されるようになっていた。そのため、聴取位置がわずかにずれただけで、同一音源から発生する聴取方向が急激に変換してしまう場合があった。
【0007】
本発明は、上記の問題を解決すべく、聴取位置の移動時に聴取方向の急激な変化が発生しないようにすることを目的とする。
【課題を解決するための手段】
【0008】
本発明のビデオゲーム処理装置は、プレイヤが操作するプレイヤキャラクタが存在する仮想空間を表示画面上に表示してビデオゲームの進行を制御するビデオゲーム処理装置であって、前記仮想空間における前記プレイヤキャラクタの存在位置である聴取位置にて当該プレイヤキャラクタによって聴き取られる聴取音を複数の音声出力手段により出力するための音響情報に含めて管理する音響情報管理テーブルと、前記仮想空間に存在する音源オブジェクトに関する音源オブジェクト情報を記憶する音源オブジェクト情報記憶手段と、前記音源オブジェクトが発する音の可聴領域内に前記聴取位置が位置するか否かを判定する可聴判定手段と、該可聴判定手段により前記聴取位置が前記可聴領域内に位置すると判定されたことに応じて、該可聴領域に対応する前記音源オブジェクトの存在位置から前記聴取位置までの複数の伝播経路をそれぞれ示す経路別伝播経路情報を導出する経路情報導出手段と、該経路情報導出手段によって導出された各伝播経路の経路別伝播経路情報を用いて、前記複数の音声出力手段それぞれに対応した出力別聴取音により構成される前記聴取音を導出する聴取音導出手段と、前記音響情報に含まれる聴取音を前記聴取音導出手段により導出された聴取音に更新する音響情報更新手段とを含むことを特徴とする。
【0009】
上記の構成としたことで、聴取位置の移動時に聴取方向の急激な変化が発生しないようにすることができるようになる。
【0010】
前記経路別伝播経路情報は、各伝播経路について、前記音源オブジェクトにより発せられた音の前記聴取位置への伝播方向を示す伝播ベクトルと、前記音源オブジェクトが発した音の前記聴取位置までの伝播経路長と、前記音源オブジェクトが発した音の屈折角度とを含む構成とされていてもよい。
【0011】
前記聴取音導出手段は、各伝播経路の伝播ベクトルと、各伝播経路の伝播経路長によりそれぞれ特定される伝播音圧と、各伝播経路の屈折角度によりそれぞれ特定されるフィルタ係数とを用いて、前記複数の音声出力手段それぞれに対応した出力別聴取音により構成される前記聴取音を導出する構成とされていてもよい。
【0012】
前記聴取音導出手段は、各伝播経路についてのフィルタ係数を伝播音圧の比率に従って統合するフィルタ係数統合手段と、予め定められた複数の音声出力手段の配置位置及び音声出力方向と、各伝播経路についての伝播ベクトルと、各伝播経路についての伝播音圧とに従って、前記複数の音声出力手段によりそれぞれ出力する出力別聴取音の出力音圧比率を算出する出力音圧比率算出手段と、該出力音圧比率算出手段によって算出された出力音圧比率と、各伝播経路についての伝播音圧と、前記フィルタ係数統合手段によって導出されたフィルタ係数の統合値とを用いて、前記複数の音声出力手段それぞれに対応した出力別聴取音を導出する構成とされていてもよい。
【0013】
さらに、本発明のビデオゲーム処理プログラムは、プレイヤが操作するプレイヤキャラクタが存在する仮想空間を表示画面上に表示させてビデオゲームの進行を制御させるビデオゲーム処理プログラムであって、コンピュータに、前記音源オブジェクトに関する音源オブジェクト情報を記憶する音源オブジェクト情報記憶手段を参照して、前記仮想空間に存在する音源オブジェクトが発する音の可聴領域内に前記仮想空間における前記プレイヤキャラクタの存在位置である聴取位置が位置するか否かを判定する可聴判定ステップと、該可聴判定ステップにて前記聴取位置が前記可聴領域内に位置すると判定してことに応じて、該可聴領域に対応する前記音源オブジェクトの存在位置から前記聴取位置までの複数の伝播経路をそれぞれ示す経路別伝播経路情報を導出する経路情報導出ステップと、該経路情報導出ステップにて導出した各伝播経路の経路別伝播経路情報を用いて、複数の音声出力手段それぞれに対応した出力別聴取音により構成される前記聴取音を導出する聴取音導出ステップと、前記聴取位置にて当該プレイヤキャラクタによって聴き取られる聴取音を前記複数の音声出力手段により出力するための音響情報に含めて管理する音響情報管理テーブルに記憶された当該音響情報に含まれる聴取音を前記聴取音導出ステップにて導出した聴取音に更新する音響情報更新ステップとを実行させるためのものである。
【発明の効果】
【0014】
本発明によれば、聴取位置の移動時に聴取方向の急激な変化が発生しないようにすることができるようになる。
【図面の簡単な説明】
【0015】
【図1】ビデオゲーム処理装置の構成例を示すブロック図である。
【図2】音響情報の格納状態の例を示す説明図である。
【図3】音源オブジェクト情報の格納状態の例を示す説明図である。
【図4】伝播経路情報の格納状態の例を示す説明図である。
【図5】調整マージ情報の格納状態の例を示す説明図である。
【図6】音響情報更新処理の例を示すフローチャートである。
【図7】音の伝播経路の例について説明するための説明図である。
【図8】調整マージ処理の例を示すフローチャートである。
【図9】他の音の伝播経路の例について説明するための説明図である。
【発明を実施するための形態】
【0016】
以下、本発明の一実施の形態について図面を参照して説明する。
【0017】
図1は、本発明の一実施の形態を示すビデオゲーム処理装置100の構成例を示すブロック図である。図1に示すように、ビデオゲーム処理装置100は、ゲームプログラム読取部10、制御部11、記憶部12、表示部13、音声出力部14、およびプレイヤ操作受付部15を含む。
【0018】
ゲームプログラム読取部10は、ゲームプログラムが格納された記憶媒体を内蔵するゲームカートリッジ20を着脱可能に受け付ける。ゲームプログラム読取部10は、挿入されたゲームカートリッジ20の記憶媒体から必要なゲームプログラムを読み出す。なお、この実施形態では、ゲームカートリッジ20に内蔵される記憶媒体には、RPGに分類されるビデオゲームプログラムが記憶されているものとする。ただし、ゲームカートリッジ20に内蔵される記憶媒体に記憶されるビデオゲームプログラムが属するジャンルはRPGに限定されず、例えばシミュレーションゲームなど種々のジャンルのものに適用できる。
【0019】
制御部11は、ゲームプログラム読取部10により読み取られたゲームプログラムを実行し、プレイヤの操作に応じてビデオゲームを進行するための各種の制御を実行する機能を有する。特に、本例における制御部11は、所定の聴取位置が音源オブジェクトに応じた可聴領域内に位置するか否かの判定、音の伝播経路を示す情報の導出、聴取音の導出、フィルタ係数の算出、複数の音声出力手段に対する出力音圧比率の算出、キャラクタ毎の音響情報の更新、および記憶部12が備えた各種管理テーブルや記憶部にて管理される各種情報の更新処理などに必要な制御を行う。
【0020】
記憶部12は、ビデオゲームを進行する際に必要なゲームプログラムや各種のデータを記憶する記憶媒体である。記憶部12は、例えばRAMなどの不揮発性のメモリによって構成される。記憶部12には、ゲームの進行に従って登録・更新される各種の情報や、ゲームカートリッジ20に内蔵される記憶媒体から読み出されたゲームにおいて使用される各種の情報が格納される。
【0021】
本例では、記憶部12には、音響情報管理テーブル12aと、音源オブジェクト情報記憶部12bと、伝播経路情報管理テーブル12cと、調整マージ情報管理テーブル12dとが含まれる。情報の記憶媒体であるテーブルや記憶部に格納される各種情報については、後で詳しく説明する。
【0022】
表示部13は、制御部11の制御に従って、ゲーム進行やプレイヤ操作に応じたゲーム画面を表示する表示装置である。表示部13は、例えば、液晶表示装置によって構成される。なお、本例においては、仮想空間を表すゲーム画面が表示され、音響空間は表示されない。ただし、音響空間がゲーム画面として表示される構成とされていてもよい。
【0023】
音声出力部14は、制御部11の制御に従って、ゲーム進行やプレイヤ操作に応じて更新される音響情報管理テーブル12aに格納された音響情報などに基づいて音声などの音を出力する。本例においては、音声出力部14として、公知の5.1chサラウンドシステムを用いる場合を例に説明を行なう。すなわち、ビデオゲーム処理装置100は、複数の音声出力部14を含む。なお、音声出力部14の数は5.1chに対応する数に限定されず、5.1ch未満(例えば、ステレオ)や7.1ch以上のサラウンドシステムに対応する数など、他の数であってもよい。
【0024】
プレイヤ操作受付部15は、複数のボタンやマウスなどによって構成されるコントローラからのプレイヤ操作に応じた操作信号を受け付け、その結果を制御部11に通知する。
【0025】
次に、ビデオゲーム処理装置100の記憶部12に格納される各種情報について説明する。
【0026】
図2は、音響情報管理テーブル12aにて管理される音響情報の格納状態の例を示す説明図である。ここで、「音響情報」とは、仮想空間におけるプレイヤキャラクタの存在位置である聴取位置にてプレイヤキャラクタによって聴き取られる聴取音を複数の音声出力部14により出力するための情報である。すなわち、予め聴取位置として決められた位置において、仮想空間に存在する発音物体(音源オブジェクト)が発生する音がどのように聴こえるかを示す情報である。図2に示すように、本例においては、音響情報は、キャラクタを一意に特定するためのキャラクタIDと、プレイヤの操作対象であるキャラクタ(プレイヤキャラクタ)を示す操作フラグと、聴取位置を示す聴取位置座標と、聴取位置が音源オブジェクトの可聴領域内に位置する場合に可聴領域に対応する音源オブジェクトを示す音源オブジェクトIDと、聴取音とを含む。
【0027】
ここで、「操作フラグ」とは、複数のキャラクタのうち、プレイヤの操作対象となっているキャラクタを特定するためのフラグである。本例においては、操作フラグが「1」に設定されたキャラクタを「プレイヤキャラクタ」とし、プレイヤキャラクタの位置を聴取位置とする。
【0028】
また、「聴取音」とは、仮想空間におけるプレイヤキャラクタの存在位置である聴取位置にてプレイヤキャラクタによって聴き取られる音を示す情報である。本例においては、5.1chサラウンド環境に対応する聴取音が登録される場合の例について説明を行なう。なお、5.1chのうち、台詞用センターと低周波用ウーファースピーカについての説明は省略し、これらを除いた4つのスピーカ(7.1chサラウンドシステムの場合は6つのスピーカ)がプレイヤの位置を中心とする360度の周回を表現するスピーカとなるものとして説明を行なう。
【0029】
本例においては、聴取音に関連して、5.1chのサラウンド環境に対応するスピーカ4台それぞれの配置角が記憶される。ここで、「配置角」とは、「プレイヤの位置を中心としてゲーム画面が表示される表示装置が配置される方向を示す角度」を0度(0°)とした場合の、「スピーカが置かれる方向を示す角度」を意味する。
【0030】
本例においては、配置角として、スピーカRに「45°」、スピーカRSに「120°」、スピーカLSに「−120°(240度)」、スピーカLに「−45°(315°)」が設定されている場合を例に説明を行なう。
【0031】
また、図示しないが、音響情報管理テーブル12aには、現実空間におけるプレイヤの位置や各スピーカの出力方向(本例においては、各スピーカの配置位置からプレイヤの位置に向かう方向)など、5.1chのサラウンド環境を実現するために必要な情報が格納されているものとする。なお、こうした情報は固定ではなく、例えばユーザにより変更可能である構成としても良い。
【0032】
聴取方向(または、音源方向)によって、音(聴取音)を出力するスピーカ(出力スピーカ)が選択される構成とすることにより、プレイヤに対して、仮想空間における聴取位置で聴き取られる音をリアルに体験可能な音響環境を提供することができるようになる。なお、出力スピーカおよび出力スピーカにて出力する聴取音の内容は、後述する調整マージ処理において導出される「スピーカ音圧」と「音データ」と「フィルタ係数」とに基づいて決定される。調整マージ処理については後で詳しく説明する(図8参照)。
【0033】
なお、プレイヤキャラクタが変更した場合に、出力する聴取音を素早く変更するために、制御部11は、後述する音響情報更新処理(図6参照)において、プレイヤキャラクタ以外の各キャラクタに対応する音響情報を適宜更新する構成としてもよい。また、この場合、例えばプレイヤキャラクタになる頻度が低いキャラクタの音響情報を更新する優先度を、他のキャラクタに比べて低くする構成としてもよい。
【0034】
図3は、音源オブジェクト情報記憶部12bにおける音源オブジェクト情報の格納状態の例を示す説明図である。ここで、「音源オブジェクト情報」とは、仮想空間において音を発する(すなわち、音を発しているように表示される)三次元オブジェクトである音源オブジェクトに関する情報である。図3に示すように、本例においては、音源オブジェクト情報は、音源オブジェクトを一意に特定するための音源オブジェクトIDと、音源オブジェクトから発生する音を示す音データと、仮想空間における音源オブジェクトの存在する位置(存在位置)を示す存在位置座標と、音の可聴領域と、音の伝播特性とを含む。
【0035】
ここで、「可聴領域」は、仮想空間において音源オブジェクトが発する音が聴こえる領域として予め設定された領域を示す。可聴領域の指定方法としては、例えば、「座標(D1,E2,F1)を中心とする半径Rの円の内側」など、種々の指定方法が考えられる。また、1つの音源オブジェクトに対して複数の可聴領域が設定された構成としてもよいし、可聴領域が所定の条件に従って仮想空間内を移動する構成としてもよい。
【0036】
また、「伝播特性」とは、音データが示す音がどのように伝播するかを示す情報である。すなわち、例えば伝播特性として「直線」が設定されている場合、音の伝播経路は存在位置座標と聴取位置座標とを結ぶ直線となる。この場合、例えば存在位置座標と聴取位置座標とを結ぶ直線状に音を遮蔽するオブジェクト(遮蔽オブジェクト)があると、音は伝播しないものとみなされる。なお、本例においては、音が回折して伝播することを示す「回折」や、音が他の物体に反射して伝播することを示す「回折」など、種々の伝播特性のうちいずれ1つ以上が音源オブジェクトに対応付けされているものとする。また、複数の伝播特性が対応付けされた音源オブジェクトも含まれるものとする。
【0037】
なお、音響オブジェクト情報の構成はこれに限定されず、音の伝播経路を導出可能な構成であればよい。すなわち、例えば本例における「伝播特性」含まれていなく、音の伝播経路が一般的な演算処理(音響シミュレーション)により導出される構成であればよい。
【0038】
図4は、伝播経路情報管理テーブル12cにおける伝播経路情報の格納状態の例を示す説明図である。ここで、「伝播経路情報」とは、可聴領域に対応する音源オブジェクトの存在位置(すなわち、音源位置)から聴取位置までの複数の伝播経路をそれぞれ示す情報である。図4に示すように、本例においては、伝播経路情報は、聴取位置までの伝播経路が導出された音源位置に対応する音源オブジェクトIDと、伝播経路毎に付番される伝播番号と、伝播経路の位置を示す伝播経路座標と、伝播経路の長さ(伝播経路長)と、伝播ベクトルと、屈曲角度を含む。
【0039】
ここで、「伝播ベクトル」とは、音源オブジェクトにより発せられた音の聴取位置への伝播方向を示すベクトルである。本例においては、伝播ベクトルは、聴取位置に設定された所定の基準方向(例えば、プレイヤキャラクタの正面方向)に対する伝播経路の入射角(伝播角度)に基づいて導出される。
【0040】
また、「屈曲角度」とは、音源オブジェクトが発した音の屈折角度を示す。なお、例えば遮蔽オブジェクトにより音が回折する場合は、音源位置と、遮蔽オブジェクトの位置と、聴取位置とを用いた所定の規則に従って、屈折角度の近似値が算出される。
【0041】
図5は、調整マージ情報管理テーブル12dにおける調整マージ情報の格納状態の例を示す説明図である。ここで、「調整マージ情報」とは、音源位置から聴取位置までの音の伝播経路が複数導出された場合に、各伝播経路が示す情報をマージ(統合)してスピーカ音圧(出力スピーカと出力音圧)を導出するために一時的に蓄積される情報である。図5に示すように、本例においては、調整マージ情報は、音源オブジェクトIDと、伝播番号と、フィルタ係数と、伝播音圧と、実角度と、出力音圧比率と、スピーカ音圧とを含む。
【0042】
ここで、「フィルタ係数」とは、伝播経路の屈折角度によりそれぞれ特定される数値であり、聴取音を導出するためのローパスフィルタとしての役割を果たすものである。本例においては、各伝播経路についてのフィルタ係数は伝播音圧の比率に従って統合される。
【0043】
また、「伝播音圧」とは、出力する聴取音の音圧(すなわち、聴取位置での音圧)を示す値であり、伝播経路長と音データが示す基礎音圧などにより算出される。本例においては、記憶部12に、伝播経路長に応じた音の減衰率が予め記憶されており、伝播経路長に応じた減衰率と基礎音圧との積を伝播音圧として用いる。
【0044】
また、「実角度」とは、例えばプレイヤキャラクタの正面方向とプレイヤの正面方向(プレイヤ位置からゲーム画面に向かう方向)とをリンクさせる場合に、「伝播角度」を現実世界における「角度」に変換したものである。本例においては、実角度に基づいて聴取音を出力するスピーカが特定される。スピーカの特定方法については、後で詳しく説明する(図8参照)。
【0045】
また、「出力音圧比率」とは、予め定められた複数の音声出力部14の配置位置及び音声出力方向と、各伝播経路についての伝播ベクトルと、各伝播経路についての伝播音圧とに従って、複数の音声出力部14によりそれぞれ出力する出力別聴取音の比率を示すものである。本例においては、4つのスピーカのいずれかに割り当てる音圧の比率であり、後述する調整マージ処理により算出される(図8参照)。
【0046】
また、「スピーカ音圧」とは、音声情報が示す複数のスピーカのうち、どのスピーカにどの程度の音量で聴取音を出力させるかを示すものである。本例においては、各伝播経路の伝播音圧と出力音圧比率とに基づいてスピーカ音圧が導出される。
【0047】
次に、本例のビデオゲーム処理装置100の動作について説明する。
【0048】
図6は、音響処理の1つとして、ビデオゲーム処理装置100が実行する音響情報更新処理の例を示すフローチャートである。音響情報更新処理では、音源位置から聴取位置までの音の伝播経路を導出し、複数の伝播経路が示す情報をマージして聴取音として音響情報管理テーブル12aに登録するための処理(すなわち、音響情報を更新するための処理)が実行される。なお、本発明に特に関係しない処理については、その内容を省略している場合がある。
【0049】
音響情報更新処理は、例えば、ゲームの進行中、制御部11が、音源オブジェクトが発する音の可聴領域内に聴取位置が位置すると判定した場合に開始される。
【0050】
音響情報更新処理において、制御部11は、先ず、音源オブジェクトが発する音の可聴領域内に聴取位置が位置すると判定してから(例えば、聴取位置が可聴領域に侵入してから)所定の単位時間が経過したか否かを判定する(ステップS101)。ここで、単位時間が経過したと判定すると(ステップS101のY)、制御部11は、音源位置(音源オブジェクトの存在位置座標)、聴取位置(聴取位置座標)、および遮蔽オブジェクトの位置(遮蔽領域)とを特定する(ステップS102)。
【0051】
音源位置、聴取位置、および遮蔽オブジェクトの位置を特定すると、制御部11は、特定した音源位置に対応する音源オブジェクトに設定された伝播特性などから、音源位置から発生する音の伝播経路を導出する(ステップS103)。
【0052】
図7は、音の伝播経路の例について説明するための説明図である。図7(A)に示すように、伝播特性として「直線」と「回折」が設定された音源オブジェクトA1と、聴取位置Pとの間に遮蔽オブジェクトC1が配置されていたとする。この場合に、制御部11は、遮蔽オブジェクトC1を通らずに音源オブジェクトA1と聴取位置Pとを結ぶ伝播経路L1,L2を導出する。また、本例においては、制御部11は、図7(A)に示すように、音の回折をベクトルで近似することにより、伝播ベクトルの基礎となる伝播角度D1,D2と、屈曲角度R1,R2を求める。
【0053】
伝播経路を導出すると、制御部11は、導出した伝播経路をそれぞれ示す経路別伝播経路情報を伝播経路情報管理テーブル12cに登録する(ステップS104)。具体的には、制御部11は、各伝播経路に応じた音源オブジェクトIDと、伝播番号と、伝播経路座標と、伝播経路長と、伝播角度に応じた伝播ベクトルと、屈曲角度とを登録する。
【0054】
経路別伝播経路情報を登録すると、制御部11は、全ての伝播経路の導出を終えたか否かを判定する(ステップS105)。ここで、全ての伝播経路の導出を終えていないと判定すると(ステップS105のN)、制御部11は、ステップS103の処理に移行する。
【0055】
一方、全ての伝播経路の導出を終えたと判定すると(ステップS105のY)、制御部11は、伝播経路情報管理テーブル12cに登録した伝播経路情報に基づいて聴取音を導出するための調整マージ処理を実行する(ステップS106)。
【0056】
聴取音を導出すると、制御部11は、音響情報に含まれる聴取音を導出された聴取音に更新し(ステップS107)、ステップS101の処理に移行する。なお、音響情報を更新すると、制御部11は、更新した音響情報に応じた音を、聴取音に対応する音声出力部14を用いて出力するための処理を行う。
【0057】
音響情報更新処理は、例えば、制御部11が、聴取位置が可聴領域外に位置すると判定したことに応じて終了する。
【0058】
次いで、ビデオゲーム処理装置100が実行する調整マージ処理について説明する。
【0059】
図8は、ビデオゲーム処理装置100が実行する調整マージ処理の例を示すフローチャートである。
【0060】
調整マージ処理において、先ず、制御部11は、各伝播経路における屈曲角に応じたフィルタ係数を算出する(ステップS201)。
【0061】
フィルタ係数を算出すると、制御部11は、算出したフィルタ係数と、各伝播経路に応じた音圧の比率とに従って、フィルタ係数のマージを行う(ステップS202)。なお、本例においては、伝播経路数(すなわち、要素数)をNとすると、以下の式を用いてフィルタ係数のマージを行う。
【0062】
【数1】

【0063】
フィルタ係数のマージを行うと(すなわち、フィルタ係数の統合値を算出して調整マージ情報管理テーブル12dに登録すると)、制御部11は、伝播経路長にから伝播音圧を算出する(ステップS203)。
【0064】
伝播音圧を算出すると、制御部11は、伝播角度に応じた実角度を算出する(ステップS204)。本例においては、伝播ベクトルが示す方向と実角度とは等しいものとする。
【0065】
実角度を算出すると、制御部11は、算出した実角度に応じた出力スピーカを選択する(ステップS205)。本例においては、制御部11は、実角度に近い角度が設定された2つのスピーカ(すなわち、実角度が示す位置から見て左右に位置するスピーカ)を出力スピーカとして選択する。すなわち、例えば実角度が「3°」の場合、制御部11は、音響情報管理テーブル12aを参照して、スピーカR(45°)とスピーカL(−45°)とを出力スピーカとして選択する(図2参照)。なお、実角度がスピーカに設定さえた角度と等しい場合、制御部111は、角度が等しいスピーカのみを出力スピーカとして選択する。
【0066】
出力スピーカを選択すると、制御部11は、所定の数式を用いて、出力スピーカに対する出力音圧比率を算出する(ステップS206)。なお、例えば本例におけるスピーカRとスピーカLとが出力スピーカとして選択された場合、制御部11は、以下の数式を用いて出力音圧比率を算出する。
【0067】
【数2】

【0068】
出力音圧比率を算出すると、制御部11は、各伝播経路に応じた伝播音圧と出力音圧比率とから、聴取位置が位置する可聴領域に応じたスピーカ音圧を算出する(ステップS207)。なお、本例においては、制御部11は、調整マージ情報管理テーブル12dにおいて同一の音源オブジェクトIDに対応づけされている各伝播経路に応じた伝播音圧と出力音圧比率とから、スピーカ音圧を算出する。すなわち、例えば図5に示すように、聴取位置が位置する可聴領域に応じた音源オブジェクトID「S1」に対応付けされた伝播経路が2本あり、それぞれの伝播音圧が「0.4」と「0.3」、出力音圧比率が「スピーカL=p1、スピーカR=p2」と「スピーカL=p3、スピーカR=p4」である場合、制御部11は、スピーカ音圧として、「スピーカL=0.4×p1+0.3×p3、スピーカR=0.4×p2+0.3×p4」を算出する。
【0069】
スピーカ音圧を算出すると、制御部11は、スピーカ音圧の値が「1.0」を超えているか否か判定する(ステップS208)。なお、本例においては、制御部11は、スピーカ音圧が複数の出力スピーカを示す場合には、各出力スピーカに対応付けされた音圧の値が「1.0」を超えているか否かを判定する。ここで、スピーカ音圧の値が「1.0」を超えていないと判定すると(ステップS208のY)、制御部11は、スピーカ音圧に基づいて聴取音を導出し(ステップS209)、音響情報更新処理におけるステップS107の処理に移行する(図6参照)。
【0070】
なお、本例においては、制御部11は、スピーカ音圧と、可聴領域に応じた音データ、およびフィルタ係数の統合値とに基づいて、4つのスピーカそれぞれに対応した(または、4つのスピーカの少なくとも1つに対応した)出力別聴取音により構成される聴取音を導出する。
【0071】
一方、スピーカ音圧の値が「1.0」を超えていると判定すると(ステップS208のN)、制御部11は、クリッピング処理を行い(ステップS210)、ステップS209の処理に移行する。なお、本例においては、制御部11は、各伝播音圧の割合を変更しない範囲でスピーカ音圧が「1.0」を超えないように、出力音圧比率の値を減少させる。
【0072】
以上に説明したように、上述した一実施の形態では、プレイヤが操作するプレイヤキャラクタが存在する仮想空間を表示画面上に表示してビデオゲームの進行を制御するビデオゲーム処理装置100が、仮想空間におけるプレイヤキャラクタの存在位置である聴取位置Pにてプレイヤキャラクタによって聴き取られる聴取音を複数の音声出力部14(例えば、4つのスピーカ)により出力するための音響情報に含めて管理する音響情報管理テーブル12aと、仮想空間に存在する音源オブジェクトに関する音源オブジェクト情報を記憶する音源オブジェクト情報記憶部12bとを備え、音源オブジェクトが発する音の可聴領域内に聴取位置Pが位置するか否かを判定し、聴取位置Pが可聴領域内に位置すると判定されたことに応じて、可聴領域に対応する音源オブジェクトの存在位置(例えば、存在位置座標が示す位置)から聴取位置Pまでの複数の伝播経路をそれぞれ示す経路別伝播経路情報を導出し、導出した各伝播経路の経路別伝播経路情報を用いて、複数の音声出力部14それぞれに対応した出力別聴取音により構成される聴取音を導出し、音響情報に含まれる聴取音を導出した聴取音に更新する構成としているので、聴取位置の移動時に聴取方向の急激な変化が発生しないようにすることができるようになる。
【0073】
すなわち、複数の伝播経路を統合して聴取音を導出しているので、聴取位置の変化に応じて適切な聴取音を導出することができるようになる。
【0074】
また、音源オブジェクトによる1つの発音でありながら、同時複数方向(または、略同時複数方向)からの音の伝播と同じ効果が得られるようになるため、発音数の増加を抑制するができるようになる。
【0075】
また、上述した実施の形態では、経路別伝播経路情報(例えば、伝播経路情報管理テーブル12cにて管理される伝播経路情報)は、各伝播経路について、音源オブジェクトにより発せられた音の聴取位置Pへの伝播方向を示す伝播ベクトルと、音源オブジェクトが発した音の聴取位置までの伝播経路長と、音源オブジェクトが発した音の屈折角度とを含む構成としているので、少ない情報でリアルな音響効果を得ることができるようになり、処理速度を向上させることができるようになる。
【0076】
また、上述した実施の形態では、ビデオゲーム処理装置100が、各伝播経路の伝播ベクトルと、各伝播経路の伝播経路長によりそれぞれ特定される伝播音圧と、各伝播経路の屈折角度によりそれぞれ特定されるフィルタ係数とを用いて、複数の音声出力部14(例えば、4つのスピーカ)それぞれに対応した出力別聴取音により構成される聴取音を導出する構成としているので、よりリアルな聴取音を導出することができるようになる。
【0077】
また、上述した実施の形態では、ビデオゲーム処理装置100が、各伝播経路についてのフィルタ係数を伝播音圧の比率に従って統合し、予め定められた複数の音声出力部14(例えば、4つのスピーカ)の配置位置(例えば、配置角)及び音声出力方向と、各伝播経路についての伝播ベクトルと、各伝播経路についての伝播音圧とに従って、複数の音声出力部14によりそれぞれ出力する出力別聴取音の出力音圧比率を算出し、算出した出力音圧比率と、各伝播経路についての伝播音圧と、導出されたフィルタ係数の統合値とを用いて、複数の音声出力部14それぞれに対応した出力別聴取音を導出する構成としているので、より効率的にサラウンドシステムを実現することができるようになる。
【0078】
なお、上述した実施の形態では音源が1座標で示される点音源である場合を例に説明を行なった(図3,7参照)。しかし、音源の構成はこれに限定されない。以下、音源が点音源でない場合のナビゲーション装置100の動作について図を参照して説明する。
【0079】
図9は、他の音の伝播経路の例について説明するための説明図である。図9(A)に示すように、聴取位置Pが位置する可聴領域F1に対応する音源オブジェクトA2が「ポリラインで構成された音源(線音源)」である場合、制御部11は、音源オブジェクトA2に対する垂線であって聴取位置Pに伸びる直線L1を伝播経路として特定する。この場合、制御部11は、例えば音響情報更新処理から調整マージ処理に移行する際に、伝播経路が1つであると判定し、適宜調整マージ処理の一部を省略して聴取音を導出する。
【0080】
一方、図9(B)に示すように、聴取位置Pが可聴領域F1とF2との重複部分に位置すると判定すると、制御部11は、音源オブジェクトS2に対する垂線であって聴取位置Pに伸びる垂線L1,L2を伝播経路として特定する。この場合、制御部11は、伝播経路L1,L2に関して、音響情報更新処理と調整マージ処理を実行して、音響情報を更新する。
【0081】
以上に説明したように、ナビゲーション装置100は、種々の音源に対して、音響情報更新処理および調整マージ処理を実行して、聴取位置の移動時に聴取方向の急激な変化が発生しないようにすることができる。
【0082】
なお、上述した実施の形態では、1つの音源オブジェクトに対して2本の伝播経路が導出された場合について説明を行なったが、導出する伝播経路の数が3つ以上の場合であっても同様に適用可能である。なお、上述した実施の形態では、調整マージ情報管理テーブル12dにおいて同一の音源オブジェクトIDに対応付けされた伝播音圧と出力音圧比率とから、まとめてスピーカ音圧を算出する場合について説明した。しかし、1つの音源オブジェクトに対して3本以上の伝播経路が導出された場合、スピーカ音圧の算出方法はこれに限定されず、例えば、予め定められた規則に従った累積処理によりスピーカ音を算出する構成としてもよい。以下、スピーカ音圧の算出を累積処理により実行する場合の例について説明する。
【0083】
例えば、1つの音源オブジェクトIDに対して5本の伝播経路(以下、各伝播経路をルート1、ルート2、・・・ルート5と呼ぶ。)が導出されたとする。この場合、制御部11は、先ず、各ルートに優先度を設定する。優先度の設定方法としては、例えば、伝播経路長が短い程高い優先度を設定するなど、種々の方法が考えられる。また、伝播経路の導出順であってもよい。ここでは、ルート1、ルート2、・・・ルート5の順で高い優先度が設定されたものとする。
【0084】
優先度を設定すると、制御部11は、ルート1を通る音とルート2を通る音とをマージする(図8、ステップS203〜S207)。次いで、ルート1とルート2とをマージして得た結果(すなわち、スピーカ音圧)に対して、制御部11は、ルート3を通る音をマージする。
【0085】
そして、優先度に従って音をマージする処理を要素がなくなるまで(本例においては、ルート1〜ルート4をマージして得た結果に対してルート5をマージするまで)繰り返す累積処理を実行する。
【0086】
スピーカ音圧の算出処理を伝播経路毎の累積処理により実行する構成とすることにより、例えば、優先度の低い伝播経路に関する処理を省略することなどができるようになる。
【0087】
なお、上述した実施形態では、ビデオゲーム処理装置100がゲームカートリッジ20から読み取ったゲームプログラムに基づいて上述したゲーム処理などの各種の処理を実行する構成としていたが、ゲームサーバからインターネットなどの通信ネットワークを介してゲームプログラムを取得するようにしてもよい。また、ビデオゲーム処理装置100がゲームサーバとして機能し、通信ネットワークを介してゲームプログラムをゲーム端末に提供するようにしてもよい。
【0088】
なお、上述した実施の形態では、ビデオゲーム処理装置100は、自己が備える記憶装置(記憶部12)に記憶されている制御プログラム(ビデオゲーム処理プログラム)に従って、上述した各種の処理を実行する。
【産業上の利用可能性】
【0089】
本発明によれば、聴取位置の移動時に聴取方向の急激な変化が発生しないようにすることができるビデオゲームを提供するのに有用である。
【符号の説明】
【0090】
10 ゲームプログラム読取部
11 制御部
12 記憶部
13 表示部
14 音声出力部
15 プレイヤ操作受付部
100 ビデオゲーム処理装置

【特許請求の範囲】
【請求項1】
プレイヤが操作するプレイヤキャラクタが存在する仮想空間を表示画面上に表示してビデオゲームの進行を制御するビデオゲーム処理装置であって、
前記仮想空間における前記プレイヤキャラクタの存在位置である聴取位置にて当該プレイヤキャラクタによって聴き取られる聴取音を複数の音声出力手段により出力するための音響情報に含めて管理する音響情報管理テーブルと、
前記仮想空間に存在する音源オブジェクトに関する音源オブジェクト情報を記憶する音源オブジェクト情報記憶手段と、
前記音源オブジェクトが発する音の可聴領域内に前記聴取位置が位置するか否かを判定する可聴判定手段と、
該可聴判定手段により前記聴取位置が前記可聴領域内に位置すると判定されたことに応じて、該可聴領域に対応する前記音源オブジェクトの存在位置から前記聴取位置までの複数の伝播経路をそれぞれ示す経路別伝播経路情報を導出する経路情報導出手段と、
該経路情報導出手段によって導出された各伝播経路の経路別伝播経路情報を用いて、前記複数の音声出力手段それぞれに対応した出力別聴取音により構成される前記聴取音を導出する聴取音導出手段と、
前記音響情報に含まれる聴取音を前記聴取音導出手段により導出された聴取音に更新する音響情報更新手段とを含む
ことを特徴とするビデオゲーム処理装置。
【請求項2】
前記経路別伝播経路情報は、各伝播経路について、前記音源オブジェクトにより発せられた音の前記聴取位置への伝播方向を示す伝播ベクトルと、前記音源オブジェクトが発した音の前記聴取位置までの伝播経路長と、前記音源オブジェクトが発した音の屈折角度とを含む
請求項1記載のビデオゲーム処理装置。
【請求項3】
前記聴取音導出手段は、各伝播経路の伝播ベクトルと、各伝播経路の伝播経路長によりそれぞれ特定される伝播音圧と、各伝播経路の屈折角度によりそれぞれ特定されるフィルタ係数とを用いて、前記複数の音声出力手段それぞれに対応した出力別聴取音により構成される前記聴取音を導出する
請求項2記載のビデオゲーム処理装置。
【請求項4】
前記聴取音導出手段は、
各伝播経路についてのフィルタ係数を伝播音圧の比率に従って統合するフィルタ係数統合手段と、
予め定められた複数の音声出力手段の配置位置及び音声出力方向と、各伝播経路についての伝播ベクトルと、各伝播経路についての伝播音圧とに従って、前記複数の音声出力手段によりそれぞれ出力する出力別聴取音の出力音圧比率を算出する出力音圧比率算出手段と、
該出力音圧比率算出手段によって算出された出力音圧比率と、各伝播経路についての伝播音圧と、前記フィルタ係数統合手段によって導出されたフィルタ係数の統合値とを用いて、前記複数の音声出力手段それぞれに対応した出力別聴取音を導出する
請求項3記載のビデオゲーム処理装置。
【請求項5】
プレイヤが操作するプレイヤキャラクタが存在する仮想空間を表示画面上に表示させてビデオゲームの進行を制御させるビデオゲーム処理プログラムであって、
コンピュータに、
前記音源オブジェクトに関する音源オブジェクト情報を記憶する音源オブジェクト情報記憶手段を参照して、前記仮想空間に存在する音源オブジェクトが発する音の可聴領域内に前記仮想空間における前記プレイヤキャラクタの存在位置である聴取位置が位置するか否かを判定する可聴判定ステップと、
該可聴判定ステップにて前記聴取位置が前記可聴領域内に位置すると判定してことに応じて、該可聴領域に対応する前記音源オブジェクトの存在位置から前記聴取位置までの複数の伝播経路をそれぞれ示す経路別伝播経路情報を導出する経路情報導出ステップと、
該経路情報導出ステップにて導出した各伝播経路の経路別伝播経路情報を用いて、複数の音声出力手段それぞれに対応した出力別聴取音により構成される前記聴取音を導出する聴取音導出ステップと、
前記聴取位置にて当該プレイヤキャラクタによって聴き取られる聴取音を前記複数の音声出力手段により出力するための音響情報に含めて管理する音響情報管理テーブルに記憶された当該音響情報に含まれる聴取音を前記聴取音導出ステップにて導出した聴取音に更新する音響情報更新ステップとを
実行させるためのビデオゲーム処理プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2012−54698(P2012−54698A)
【公開日】平成24年3月15日(2012.3.15)
【国際特許分類】
【出願番号】特願2010−194647(P2010−194647)
【出願日】平成22年8月31日(2010.8.31)
【出願人】(308033283)株式会社スクウェア・エニックス (173)
【Fターム(参考)】