(57)【特許請求の範囲】
【請求項１】
プレイヤが操作するプレイヤキャラクタが存在する仮想空間を表示画面上に表示してビデオゲームの進行を制御するビデオゲーム処理装置であって、
前記仮想空間における前記プレイヤキャラクタの存在位置である聴取位置にて当該プレイヤキャラクタによって聴き取られる聴取音を複数の音声出力手段により出力するための音響情報に含めて管理する音響情報管理テーブルと、
前記仮想空間に存在する音源オブジェクトに関する音源オブジェクト情報を記憶する音源オブジェクト情報記憶手段と、
前記音源オブジェクトが発する音の可聴領域内に前記聴取位置が位置するか否かを判定する可聴判定手段と、
該可聴判定手段により前記聴取位置が前記可聴領域内に位置すると判定されたことに応じて、該可聴領域に対応する前記音源オブジェクトの存在位置から前記聴取位置までの複数の伝播経路をそれぞれ示す経路別伝播経路情報を導出する経路情報導出手段と、
該経路情報導出手段によって導出された各伝播経路の経路別伝播経路情報を用いて、前記複数の音声出力手段それぞれに対応した出力別聴取音により構成される前記聴取音を導出する聴取音導出手段と、
前記音響情報に含まれる聴取音を前記聴取音導出手段により導出された聴取音に更新する音響情報更新手段とを含み、
前記聴取音導出手段は、前記経路別伝播経路情報が所定数以上導出された場合に、所定規則に従った累積処理により前記聴取音を導出する
ことを特徴とするビデオゲーム処理装置。
【請求項２】
前記経路別伝播経路情報が複数導出された場合に、各経路別伝播経路情報を統合して前記聴取音を導出するための調整マージ情報を記憶する調整マージ情報記憶手段を含み、
前記聴取音導出手段は、前記調整マージ情報記憶手段に記憶された調整マージ情報に基づいて前記経路別伝播経路情報が所定数以上導出されたか否かを判定する
請求項１記載のビデオゲーム処理装置。
【請求項３】
前記聴取音導出手段は、
導出された複数の前記経路別伝播経路情報が示す伝播経路に対して優先度を設定する優先度設定手段を有し、
前記累積処理は、前記優先度に従って少なくとも伝播経路に関する一部の処理を省略する処理である
請求項１または請求項２記載のビデオゲーム処理装置。
【請求項４】
前記経路別伝播経路情報は、各伝播経路について、前記音源オブジェクトにより発せられた音の前記聴取位置への伝播方向を示す伝播ベクトルと、前記音源オブジェクトが発した音の前記聴取位置までの伝播経路長と、前記音源オブジェクトが発した音の屈折角度とを含む
請求項１から請求項３のうち何れかに記載のビデオゲーム処理装置。
【請求項５】
プレイヤが操作するプレイヤキャラクタが存在する仮想空間を表示画面上に表示させてビデオゲームの進行を制御させるビデオゲーム処理プログラムであって、
コンピュータに、
前記仮想空間に存在する音源オブジェクトに関する音源オブジェクト情報を記憶する音源オブジェクト情報記憶手段を参照して、前記音源オブジェクトが発する音の可聴領域内に前記仮想空間における前記プレイヤキャラクタの存在位置である聴取位置が位置するか否かを判定する可聴判定ステップと、
該可聴判定ステップにて前記聴取位置が前記可聴領域内に位置すると判定してことに応じて、該可聴領域に対応する前記音源オブジェクトの存在位置から前記聴取位置までの複数の伝播経路をそれぞれ示す経路別伝播経路情報を導出する経路情報導出ステップと、
該経路情報導出ステップにて導出した各伝播経路の経路別伝播経路情報を用いて、複数の音声出力手段それぞれに対応した出力別聴取音により構成される前記聴取音を導出する聴取音導出ステップと、
前記聴取位置にて当該プレイヤキャラクタによって聴き取られる聴取音を前記複数の音声出力手段により出力するための音響情報に含めて管理する音響情報管理テーブルに記憶された当該音響情報に含まれる聴取音を前記聴取音導出ステップにて導出した聴取音に更新する音響情報更新ステップとを実行させ、
前記聴取音導出ステップにて、前記経路別伝播経路情報が所定数以上導出された場合に、所定規則に従った累積処理により前記聴取音を導出するステップを
実行させるためのビデオゲーム処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プレイヤが操作するプレイヤキャラクタが存在する仮想空間を表示画面上に表示してビデオゲームの進行を制御するための技術に関する。
【背景技術】
【０００２】
従来のビデオゲーム処理装置におけるサウンドシステム（ゲームの進行に応じて音声を出力するためのシステム）では、仮想空間に音響遮蔽物（以下、遮蔽物と呼ぶ。）が存在する場合、仮想空間における音源により発生する音に対する遮蔽物の影響を考慮して、聴取位置（例えば、プレイヤキャラクタの位置）で聴き取られる音（聴取音）を決定するための処理（音響処理）を実行している。
【０００３】
このようなビデオゲーム処理装置には、例えば、３次元仮想空間における壁等の物体の情報と、音源の情報と、ゲームの進行とに基づいて、プレイヤの位置に到達する音を演算算出し、演算結果により得られた音を出力するために複数のスピーカに音を割り振るものがある（例えば、特許文献１）。ここで、一般的に使用される音の演算算出方法としては、音源位置から聴取位置に対して直線的に伝わる直接音と、音源位置から仮想空間に配置された壁などに反射（または、回折など）して聴取位置に伝わる音（反射音）との伝播経路を特定し、特定した直接音と反射音とを数値化して所定の数式に代入する方法が用いられている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平０６−１４９２７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述した従来のビデオゲーム処理装置では、聴取位置の移動時に、聴取位置に対する音源位置の方向が急激に変化してしまう場合があるという問題があった。
【０００６】
すなわち、例えば図７（Ａ）に示すように、音源Ａ１と聴取位置Ｐとの間に音を遮蔽する領域１０１が配置されている場合に、音源Ａ１にて発生する音の聴取位置Ｐへの伝播経路Ｌ１，Ｌ２が算出されるとする。このとき、一般的な音の演算では、伝播経路が短いもの（すなわち、聴取位置での音圧が大きいもの）を音の演算対象として採用していた。そのため、図７（Ａ）に示す場合にあっては、聴取音は、聴取位置Ｐから音源Ａ１の位置に向かって左側（すなわち、伝播経路Ｌ１側）から聴こえるように出力されていた。そして、この状態から図７（Ｂ）に示すように聴取位置Ｐが右方向に移動し、最短の伝播経路がＬ１からＬ２に変化すると、聴取音は、聴取位置Ｐから音源Ａ１の位置に向かって右側（すなわち、伝播経路Ｌ２側）から聴こえるように出力されるようになっていた。そのため、聴取位置がわずかにずれただけで、同一音源から発生する聴取方向が急激に変換してしまう場合があった。
【０００７】
本発明は、上記の問題を解決すべく、聴取位置の移動時に聴取方向の急激な変化が発生しないようにすることを目的とする。
【課題を解決するための手段】
【０００８】
本発明のビデオゲーム処理装置は、プレイヤが操作するプレイヤキャラクタが存在する仮想空間を表示画面上に表示してビデオゲームの進行を制御するビデオゲーム処理装置であって、前記仮想空間における前記プレイヤキャラクタの存在位置である聴取位置にて当該プレイヤキャラクタによって聴き取られる聴取音を複数の音声出力手段により出力するための音響情報に含めて管理する音響情報管理テーブルと、前記仮想空間に存在する音源オブジェクトに関する音源オブジェクト情報を記憶する音源オブジェクト情報記憶手段と、前記音源オブジェクトが発する音の可聴領域内に前記聴取位置が位置するか否かを判定する可聴判定手段と、該可聴判定手段により前記聴取位置が前記可聴領域内に位置すると判定されたことに応じて、該可聴領域に対応する前記音源オブジェクトの存在位置から前記聴取位置までの複数の伝播経路をそれぞれ示す経路別伝播経路情報を導出する経路情報導出手段と、該経路情報導出手段によって導出された各伝播経路の経路別伝播経路情報を用いて、前記複数の音声出力手段それぞれに対応した出力別聴取音により構成される前記聴取音を導出する聴取音導出手段と、前記音響情報に含まれる聴取音を前記聴取音導出手段により導出された聴取音に更新する音響情報更新手段とを含み、前記聴取音導出手段は、前記経路別伝播経路情報が所定数以上導出された場合に、所定規則に従った累積処理により前記聴取音を導出することを特徴とする。
【０００９】
上記の構成としたことで、聴取位置の移動時に聴取方向の急激な変化が発生しないようにすることができるようになる。
【００１０】
前記経路別伝播経路情報が複数導出された場合に、各経路別伝播経路情報を統合して前記聴取音を導出するための調整マージ情報を記憶する調整マージ情報記憶手段を含み、前記聴取音導出手段は、前記調整マージ情報記憶手段に記憶された調整マージ情報に基づいて前記経路別伝播経路情報が所定数以上導出されたか否かを判定する構成とされていてもよい。
【００１１】
前記聴取音導出手段は、導出された複数の前記経路別伝播経路情報が示す伝播経路に対して優先度を設定する優先度設定手段を有し、前記累積処理は、前記優先度に従って少なくとも伝播経路に関する一部の処理を省略する処理である構成とされていてもよい。
【００１２】
前記経路別伝播経路情報は、各伝播経路について、前記音源オブジェクトにより発せられた音の前記聴取位置への伝播方向を示す伝播ベクトルと、前記音源オブジェクトが発した音の前記聴取位置までの伝播経路長と、前記音源オブジェクトが発した音の屈折角度とを含む構成とされていてもよい。
【００１３】
さらに、本発明のビデオゲーム処理プログラムは、プレイヤが操作するプレイヤキャラクタが存在する仮想空間を表示画面上に表示させてビデオゲームの進行を制御させるビデオゲーム処理プログラムであって、コンピュータに、前記仮想空間に存在する音源オブジェクトに関する音源オブジェクト情報を記憶する音源オブジェクト情報記憶手段を参照して、前記音源オブジェクトが発する音の可聴領域内に前記仮想空間における前記プレイヤキャラクタの存在位置である聴取位置が位置するか否かを判定する可聴判定ステップと、該可聴判定ステップにて前記聴取位置が前記可聴領域内に位置すると判定してことに応じて、該可聴領域に対応する前記音源オブジェクトの存在位置から前記聴取位置までの複数の伝播経路をそれぞれ示す経路別伝播経路情報を導出する経路情報導出ステップと、該経路情報導出ステップにて導出した各伝播経路の経路別伝播経路情報を用いて、複数の音声出力手段それぞれに対応した出力別聴取音により構成される前記聴取音を導出する聴取音導出ステップと、前記聴取位置にて当該プレイヤキャラクタによって聴き取られる聴取音を前記複数の音声出力手段により出力するための音響情報に含めて管理する音響情報管理テーブルに記憶された当該音響情報に含まれる聴取音を前記聴取音導出ステップにて導出した聴取音に更新する音響情報更新ステップとを実行させ、前記聴取音導出ステップにて、前記経路別伝播経路情報が所定数以上導出された場合に、所定規則に従った累積処理により前記聴取音を導出するステップを実行させるためのものである。
【発明の効果】
【００１４】
本発明によれば、聴取位置の移動時に聴取方向の急激な変化が発生しないようにすることができるようになる。
【図面の簡単な説明】
【００１５】
【図１】ビデオゲーム処理装置の構成例を示すブロック図である。
【図２】音響情報の格納状態の例を示す説明図である。
【図３】音源オブジェクト情報の格納状態の例を示す説明図である。
【図４】伝播経路情報の格納状態の例を示す説明図である。
【図５】調整マージ情報の格納状態の例を示す説明図である。
【図６】音響情報更新処理の例を示すフローチャートである。
【図７】音の伝播経路の例について説明するための説明図である。
【図８】調整マージ処理の例を示すフローチャートである。
【図９】他の音の伝播経路の例について説明するための説明図である。
【発明を実施するための形態】
【００１６】
以下、本発明の一実施の形態について図面を参照して説明する。
【００１７】
図１は、本発明の一実施の形態を示すビデオゲーム処理装置１００の構成例を示すブロック図である。図１に示すように、ビデオゲーム処理装置１００は、ゲームプログラム読取部１０、制御部１１、記憶部１２、表示部１３、音声出力部１４、およびプレイヤ操作受付部１５を含む。
【００１８】
ゲームプログラム読取部１０は、ゲームプログラムが格納された記憶媒体を内蔵するゲームカートリッジ２０を着脱可能に受け付ける。ゲームプログラム読取部１０は、挿入されたゲームカートリッジ２０の記憶媒体から必要なゲームプログラムを読み出す。なお、この実施形態では、ゲームカートリッジ２０に内蔵される記憶媒体には、ＲＰＧに分類されるビデオゲームプログラムが記憶されているものとする。ただし、ゲームカートリッジ２０に内蔵される記憶媒体に記憶されるビデオゲームプログラムが属するジャンルはＲＰＧに限定されず、例えばシミュレーションゲームなど種々のジャンルのものに適用できる。
【００１９】
制御部１１は、ゲームプログラム読取部１０により読み取られたゲームプログラムを実行し、プレイヤの操作に応じてビデオゲームを進行するための各種の制御を実行する機能を有する。特に、本例における制御部１１は、所定の聴取位置が音源オブジェクトに応じた可聴領域内に位置するか否かの判定、音の伝播経路を示す情報の導出、聴取音の導出、フィルタ係数の算出、複数の音声出力手段に対する出力音圧比率の算出、キャラクタ毎の音響情報の更新、および記憶部１２が備えた各種管理テーブルや記憶部にて管理される各種情報の更新処理などに必要な制御を行う。
【００２０】
記憶部１２は、ビデオゲームを進行する際に必要なゲームプログラムや各種のデータを記憶する記憶媒体である。記憶部１２は、例えばＲＡＭなどの不揮発性のメモリによって構成される。記憶部１２には、ゲームの進行に従って登録・更新される各種の情報や、ゲームカートリッジ２０に内蔵される記憶媒体から読み出されたゲームにおいて使用される各種の情報が格納される。
【００２１】
本例では、記憶部１２には、音響情報管理テーブル１２ａと、音源オブジェクト情報記憶部１２ｂと、伝播経路情報管理テーブル１２ｃと、調整マージ情報管理テーブル１２ｄとが含まれる。情報の記憶媒体であるテーブルや記憶部に格納される各種情報については、後で詳しく説明する。
【００２２】
表示部１３は、制御部１１の制御に従って、ゲーム進行やプレイヤ操作に応じたゲーム画面を表示する表示装置である。表示部１３は、例えば、液晶表示装置によって構成される。なお、本例においては、仮想空間を表すゲーム画面が表示され、音響空間は表示されない。ただし、音響空間がゲーム画面として表示される構成とされていてもよい。
【００２３】
音声出力部１４は、制御部１１の制御に従って、ゲーム進行やプレイヤ操作に応じて更新される音響情報管理テーブル１２ａに格納された音響情報などに基づいて音声などの音を出力する。本例においては、音声出力部１４として、公知の５．１ｃｈサラウンドシステムを用いる場合を例に説明を行なう。すなわち、ビデオゲーム処理装置１００は、複数の音声出力部１４を含む。なお、音声出力部１４の数は５．１ｃｈに対応する数に限定されず、５．１ｃｈ未満（例えば、ステレオ）や７．１ｃｈ以上のサラウンドシステムに対応する数など、他の数であってもよい。
【００２４】
プレイヤ操作受付部１５は、複数のボタンやマウスなどによって構成されるコントローラからのプレイヤ操作に応じた操作信号を受け付け、その結果を制御部１１に通知する。
【００２５】
次に、ビデオゲーム処理装置１００の記憶部１２に格納される各種情報について説明する。
【００２６】
図２は、音響情報管理テーブル１２ａにて管理される音響情報の格納状態の例を示す説明図である。ここで、「音響情報」とは、仮想空間におけるプレイヤキャラクタの存在位置である聴取位置にてプレイヤキャラクタによって聴き取られる聴取音を複数の音声出力部１４により出力するための情報である。すなわち、予め聴取位置として決められた位置において、仮想空間に存在する発音物体（音源オブジェクト）が発生する音がどのように聴こえるかを示す情報である。図２に示すように、本例においては、音響情報は、キャラクタを一意に特定するためのキャラクタＩＤと、プレイヤの操作対象であるキャラクタ（プレイヤキャラクタ）を示す操作フラグと、聴取位置を示す聴取位置座標と、聴取位置が音源オブジェクトの可聴領域内に位置する場合に可聴領域に対応する音源オブジェクトを示す音源オブジェクトＩＤと、聴取音とを含む。
【００２７】
ここで、「操作フラグ」とは、複数のキャラクタのうち、プレイヤの操作対象となっているキャラクタを特定するためのフラグである。本例においては、操作フラグが「１」に設定されたキャラクタを「プレイヤキャラクタ」とし、プレイヤキャラクタの位置を聴取位置とする。
【００２８】
また、「聴取音」とは、仮想空間におけるプレイヤキャラクタの存在位置である聴取位置にてプレイヤキャラクタによって聴き取られる音を示す情報である。本例においては、５．１ｃｈサラウンド環境に対応する聴取音が登録される場合の例について説明を行なう。なお、５．１ｃｈのうち、台詞用センターと低周波用ウーファースピーカについての説明は省略し、これらを除いた４つのスピーカ（７．１ｃｈサラウンドシステムの場合は６つのスピーカ）がプレイヤの位置を中心とする３６０度の周回を表現するスピーカとなるものとして説明を行なう。
【００２９】
本例においては、聴取音に関連して、５．１ｃｈのサラウンド環境に対応するスピーカ４台それぞれの配置角が記憶される。ここで、「配置角」とは、「プレイヤの位置を中心としてゲーム画面が表示される表示装置が配置される方向を示す角度」を０度（０°）とした場合の、「スピーカが置かれる方向を示す角度」を意味する。
【００３０】
本例においては、配置角として、スピーカＲに「４５°」、スピーカＲＳに「１２０°」、スピーカＬＳに「−１２０°（２４０度）」、スピーカＬに「−４５°（３１５°）」が設定されている場合を例に説明を行なう。
【００３１】
また、図示しないが、音響情報管理テーブル１２ａには、現実空間におけるプレイヤの位置や各スピーカの出力方向（本例においては、各スピーカの配置位置からプレイヤの位置に向かう方向）など、５．１ｃｈのサラウンド環境を実現するために必要な情報が格納されているものとする。なお、こうした情報は固定ではなく、例えばユーザにより変更可能である構成としても良い。
【００３２】
聴取方向（または、音源方向）によって、音（聴取音）を出力するスピーカ（出力スピーカ）が選択される構成とすることにより、プレイヤに対して、仮想空間における聴取位置で聴き取られる音をリアルに体験可能な音響環境を提供することができるようになる。なお、出力スピーカおよび出力スピーカにて出力する聴取音の内容は、後述する調整マージ処理において導出される「スピーカ音圧」と「音データ」と「フィルタ係数」とに基づいて決定される。調整マージ処理については後で詳しく説明する（図８参照）。
【００３３】
なお、プレイヤキャラクタが変更した場合に、出力する聴取音を素早く変更するために、制御部１１は、後述する音響情報更新処理（図６参照）において、プレイヤキャラクタ以外の各キャラクタに対応する音響情報を適宜更新する構成としてもよい。また、この場合、例えばプレイヤキャラクタになる頻度が低いキャラクタの音響情報を更新する優先度を、他のキャラクタに比べて低くする構成としてもよい。
【００３４】
図３は、音源オブジェクト情報記憶部１２ｂにおける音源オブジェクト情報の格納状態の例を示す説明図である。ここで、「音源オブジェクト情報」とは、仮想空間において音を発する（すなわち、音を発しているように表示される）三次元オブジェクトである音源オブジェクトに関する情報である。図３に示すように、本例においては、音源オブジェクト情報は、音源オブジェクトを一意に特定するための音源オブジェクトＩＤと、音源オブジェクトから発生する音を示す音データと、仮想空間における音源オブジェクトの存在する位置（存在位置）を示す存在位置座標と、音の可聴領域と、音の伝播特性とを含む。
【００３５】
ここで、「可聴領域」は、仮想空間において音源オブジェクトが発する音が聴こえる領域として予め設定された領域を示す。可聴領域の指定方法としては、例えば、「座標（Ｄ１，Ｅ２，Ｆ１）を中心とする半径Ｒの円の内側」など、種々の指定方法が考えられる。また、１つの音源オブジェクトに対して複数の可聴領域が設定された構成としてもよいし、可聴領域が所定の条件に従って仮想空間内を移動する構成としてもよい。
【００３６】
また、「伝播特性」とは、音データが示す音がどのように伝播するかを示す情報である。すなわち、例えば伝播特性として「直線」が設定されている場合、音の伝播経路は存在位置座標と聴取位置座標とを結ぶ直線となる。この場合、例えば存在位置座標と聴取位置座標とを結ぶ直線状に音を遮蔽するオブジェクト（遮蔽オブジェクト）があると、音は伝播しないものとみなされる。なお、本例においては、音が回折して伝播することを示す「回折」や、音が他の物体に反射して伝播することを示す「回折」など、種々の伝播特性のうちいずれ１つ以上が音源オブジェクトに対応付けされているものとする。また、複数の伝播特性が対応付けされた音源オブジェクトも含まれるものとする。
【００３７】
なお、音響オブジェクト情報の構成はこれに限定されず、音の伝播経路を導出可能な構成であればよい。すなわち、例えば本例における「伝播特性」含まれていなく、音の伝播経路が一般的な演算処理（音響シミュレーション）により導出される構成であればよい。
【００３８】
図４は、伝播経路情報管理テーブル１２ｃにおける伝播経路情報の格納状態の例を示す説明図である。ここで、「伝播経路情報」とは、可聴領域に対応する音源オブジェクトの存在位置（すなわち、音源位置）から聴取位置までの複数の伝播経路をそれぞれ示す情報である。図４に示すように、本例においては、伝播経路情報は、聴取位置までの伝播経路が導出された音源位置に対応する音源オブジェクトＩＤと、伝播経路毎に付番される伝播番号と、伝播経路の位置を示す伝播経路座標と、伝播経路の長さ（伝播経路長）と、伝播ベクトルと、屈曲角度を含む。
【００３９】
ここで、「伝播ベクトル」とは、音源オブジェクトにより発せられた音の聴取位置への伝播方向を示すベクトルである。本例においては、伝播ベクトルは、聴取位置に設定された所定の基準方向（例えば、プレイヤキャラクタの正面方向）に対する伝播経路の入射角（伝播角度）に基づいて導出される。
【００４０】
また、「屈曲角度」とは、音源オブジェクトが発した音の屈折角度を示す。なお、例えば遮蔽オブジェクトにより音が回折する場合は、音源位置と、遮蔽オブジェクトの位置と、聴取位置とを用いた所定の規則に従って、屈折角度の近似値が算出される。
【００４１】
図５は、調整マージ情報管理テーブル１２ｄにおける調整マージ情報の格納状態の例を示す説明図である。ここで、「調整マージ情報」とは、音源位置から聴取位置までの音の伝播経路が複数導出された場合に、各伝播経路が示す情報をマージ（統合）してスピーカ音圧（出力スピーカと出力音圧）を導出するために一時的に蓄積される情報である。図５に示すように、本例においては、調整マージ情報は、音源オブジェクトＩＤと、伝播番号と、フィルタ係数と、伝播音圧と、実角度と、出力音圧比率と、スピーカ音圧とを含む。
【００４２】
ここで、「フィルタ係数」とは、伝播経路の屈折角度によりそれぞれ特定される数値であり、聴取音を導出するためのローパスフィルタとしての役割を果たすものである。本例においては、各伝播経路についてのフィルタ係数は伝播音圧の比率に従って統合される。
【００４３】
また、「伝播音圧」とは、出力する聴取音の音圧（すなわち、聴取位置での音圧）を示す値であり、伝播経路長と音データが示す基礎音圧などにより算出される。本例においては、記憶部１２に、伝播経路長に応じた音の減衰率が予め記憶されており、伝播経路長に応じた減衰率と基礎音圧との積を伝播音圧として用いる。
【００４４】
また、「実角度」とは、例えばプレイヤキャラクタの正面方向とプレイヤの正面方向（プレイヤ位置からゲーム画面に向かう方向）とをリンクさせる場合に、「伝播角度」を現実世界における「角度」に変換したものである。本例においては、実角度に基づいて聴取音を出力するスピーカが特定される。スピーカの特定方法については、後で詳しく説明する（図８参照）。
【００４５】
また、「出力音圧比率」とは、予め定められた複数の音声出力部１４の配置位置及び音声出力方向と、各伝播経路についての伝播ベクトルと、各伝播経路についての伝播音圧とに従って、複数の音声出力部１４によりそれぞれ出力する出力別聴取音の比率を示すものである。本例においては、４つのスピーカのいずれかに割り当てる音圧の比率であり、後述する調整マージ処理により算出される（図８参照）。
【００４６】
また、「スピーカ音圧」とは、音声情報が示す複数のスピーカのうち、どのスピーカにどの程度の音量で聴取音を出力させるかを示すものである。本例においては、各伝播経路の伝播音圧と出力音圧比率とに基づいてスピーカ音圧が導出される。
【００４７】
次に、本例のビデオゲーム処理装置１００の動作について説明する。
【００４８】
図６は、音響処理の１つとして、ビデオゲーム処理装置１００が実行する音響情報更新処理の例を示すフローチャートである。音響情報更新処理では、音源位置から聴取位置までの音の伝播経路を導出し、複数の伝播経路が示す情報をマージして聴取音として音響情報管理テーブル１２ａに登録するための処理（すなわち、音響情報を更新するための処理）が実行される。なお、本発明に特に関係しない処理については、その内容を省略している場合がある。
【００４９】
音響情報更新処理は、例えば、ゲームの進行中、制御部１１が、音源オブジェクトが発する音の可聴領域内に聴取位置が位置すると判定した場合に開始される。
【００５０】
音響情報更新処理において、制御部１１は、先ず、音源オブジェクトが発する音の可聴領域内に聴取位置が位置すると判定してから（例えば、聴取位置が可聴領域に侵入してから）所定の単位時間が経過したか否かを判定する（ステップＳ１０１）。ここで、単位時間が経過したと判定すると（ステップＳ１０１のＹ）、制御部１１は、音源位置（音源オブジェクトの存在位置座標）、聴取位置（聴取位置座標）、および遮蔽オブジェクトの位置（遮蔽領域）とを特定する（ステップＳ１０２）。
【００５１】
音源位置、聴取位置、および遮蔽オブジェクトの位置を特定すると、制御部１１は、特定した音源位置に対応する音源オブジェクトに設定された伝播特性などから、音源位置から発生する音の伝播経路を導出する（ステップＳ１０３）。
【００５２】
図７は、音の伝播経路の例について説明するための説明図である。図７（Ａ）に示すように、伝播特性として「直線」と「回折」が設定された音源オブジェクトＡ１と、聴取位置Ｐとの間に遮蔽オブジェクトＣ１が配置されていたとする。この場合に、制御部１１は、遮蔽オブジェクトＣ１を通らずに音源オブジェクトＡ１と聴取位置Ｐとを結ぶ伝播経路Ｌ１，Ｌ２を導出する。また、本例においては、制御部１１は、図７（Ａ）に示すように、音の回折をベクトルで近似することにより、伝播ベクトルの基礎となる伝播角度Ｄ１，Ｄ２と、屈曲角度Ｒ１，Ｒ２を求める。
【００５３】
伝播経路を導出すると、制御部１１は、導出した伝播経路をそれぞれ示す経路別伝播経路情報を伝播経路情報管理テーブル１２ｃに登録する（ステップＳ１０４）。具体的には、制御部１１は、各伝播経路に応じた音源オブジェクトＩＤと、伝播番号と、伝播経路座標と、伝播経路長と、伝播角度に応じた伝播ベクトルと、屈曲角度とを登録する。
【００５４】
経路別伝播経路情報を登録すると、制御部１１は、全ての伝播経路の導出を終えたか否かを判定する（ステップＳ１０５）。ここで、全ての伝播経路の導出を終えていないと判定すると（ステップＳ１０５のＮ）、制御部１１は、ステップＳ１０３の処理に移行する。
【００５５】
一方、全ての伝播経路の導出を終えたと判定すると（ステップＳ１０５のＹ）、制御部１１は、伝播経路情報管理テーブル１２ｃに登録した伝播経路情報に基づいて聴取音を導出するための調整マージ処理を実行する（ステップＳ１０６）。
【００５６】
聴取音を導出すると、制御部１１は、音響情報に含まれる聴取音を導出された聴取音に更新し（ステップＳ１０７）、ステップＳ１０１の処理に移行する。なお、音響情報を更新すると、制御部１１は、更新した音響情報に応じた音を、聴取音に対応する音声出力部１４を用いて出力するための処理を行う。
【００５７】
音響情報更新処理は、例えば、制御部１１が、聴取位置が可聴領域外に位置すると判定したことに応じて終了する。
【００５８】
次いで、ビデオゲーム処理装置１００が実行する調整マージ処理について説明する。
【００５９】
図８は、ビデオゲーム処理装置１００が実行する調整マージ処理の例を示すフローチャートである。
【００６０】
調整マージ処理において、先ず、制御部１１は、各伝播経路における屈曲角に応じたフィルタ係数を算出する（ステップＳ２０１）。
【００６１】
フィルタ係数を算出すると、制御部１１は、算出したフィルタ係数と、各伝播経路に応じた音圧の比率とに従って、フィルタ係数のマージを行う（ステップＳ２０２）。なお、本例においては、伝播経路数（すなわち、要素数）をＮとすると、以下の式を用いてフィルタ係数のマージを行う。
【００６２】
【数１】
0005456622.tif 000002
【００６３】
フィルタ係数のマージを行うと（すなわち、フィルタ係数の統合値を算出して調整マージ情報管理テーブル１２ｄに登録すると）、制御部１１は、伝播経路長にから伝播音圧を算出する（ステップＳ２０３）。
【００６４】
伝播音圧を算出すると、制御部１１は、伝播角度に応じた実角度を算出する（ステップＳ２０４）。本例においては、伝播ベクトルが示す方向と実角度とは等しいものとする。
【００６５】
実角度を算出すると、制御部１１は、算出した実角度に応じた出力スピーカを選択する（ステップＳ２０５）。本例においては、制御部１１は、実角度に近い角度が設定された２つのスピーカ（すなわち、実角度が示す位置から見て左右に位置するスピーカ）を出力スピーカとして選択する。すなわち、例えば実角度が「３°」の場合、制御部１１は、音響情報管理テーブル１２ａを参照して、スピーカＲ（４５°）とスピーカＬ（−４５°）とを出力スピーカとして選択する（図２参照）。なお、実角度がスピーカに設定さえた角度と等しい場合、制御部１１１は、角度が等しいスピーカのみを出力スピーカとして選択する。
【００６６】
出力スピーカを選択すると、制御部１１は、所定の数式を用いて、出力スピーカに対する出力音圧比率を算出する（ステップＳ２０６）。なお、例えば本例におけるスピーカＲとスピーカＬとが出力スピーカとして選択された場合、制御部１１は、以下の数式を用いて出力音圧比率を算出する。
【００６７】
【数２】
0005456622.tif 000003
【００６８】
出力音圧比率を算出すると、制御部１１は、各伝播経路に応じた伝播音圧と出力音圧比率とから、聴取位置が位置する可聴領域に応じたスピーカ音圧を算出する（ステップＳ２０７）。なお、本例においては、制御部１１は、調整マージ情報管理テーブル１２ｄにおいて同一の音源オブジェクトＩＤに対応づけされている各伝播経路に応じた伝播音圧と出力音圧比率とから、スピーカ音圧を算出する。すなわち、例えば図５に示すように、聴取位置が位置する可聴領域に応じた音源オブジェクトＩＤ「Ｓ１」に対応付けされた伝播経路が２本あり、それぞれの伝播音圧が「０．４」と「０．３」、出力音圧比率が「スピーカＬ＝ｐ１、スピーカＲ＝ｐ２」と「スピーカＬ＝ｐ３、スピーカＲ＝ｐ４」である場合、制御部１１は、スピーカ音圧として、「スピーカＬ＝０．４×ｐ１＋０．３×ｐ３、スピーカＲ＝０．４×ｐ２＋０．３×ｐ４」を算出する。
【００６９】
スピーカ音圧を算出すると、制御部１１は、スピーカ音圧の値が「１．０」を超えているか否か判定する（ステップＳ２０８）。なお、本例においては、制御部１１は、スピーカ音圧が複数の出力スピーカを示す場合には、各出力スピーカに対応付けされた音圧の値が「１．０」を超えているか否かを判定する。ここで、スピーカ音圧の値が「１．０」を超えていないと判定すると（ステップＳ２０８のＹ）、制御部１１は、スピーカ音圧に基づいて聴取音を導出し（ステップＳ２０９）、音響情報更新処理におけるステップＳ１０７の処理に移行する（図６参照）。
【００７０】
なお、本例においては、制御部１１は、スピーカ音圧と、可聴領域に応じた音データ、およびフィルタ係数の統合値とに基づいて、４つのスピーカそれぞれに対応した（または、４つのスピーカの少なくとも１つに対応した）出力別聴取音により構成される聴取音を導出する。
【００７１】
一方、スピーカ音圧の値が「１．０」を超えていると判定すると（ステップＳ２０８のＮ）、制御部１１は、クリッピング処理を行い（ステップＳ２１０）、ステップＳ２０９の処理に移行する。なお、本例においては、制御部１１は、各伝播音圧の割合を変更しない範囲でスピーカ音圧が「１．０」を超えないように、出力音圧比率の値を減少させる。
【００７２】
以上に説明したように、上述した一実施の形態では、プレイヤが操作するプレイヤキャラクタが存在する仮想空間を表示画面上に表示してビデオゲームの進行を制御するビデオゲーム処理装置１００が、仮想空間におけるプレイヤキャラクタの存在位置である聴取位置Ｐにてプレイヤキャラクタによって聴き取られる聴取音を複数の音声出力部１４（例えば、４つのスピーカ）により出力するための音響情報に含めて管理する音響情報管理テーブル１２ａと、仮想空間に存在する音源オブジェクトに関する音源オブジェクト情報を記憶する音源オブジェクト情報記憶部１２ｂとを備え、音源オブジェクトが発する音の可聴領域内に聴取位置Ｐが位置するか否かを判定し、聴取位置Ｐが可聴領域内に位置すると判定されたことに応じて、可聴領域に対応する音源オブジェクトの存在位置（例えば、存在位置座標が示す位置）から聴取位置Ｐまでの複数の伝播経路をそれぞれ示す経路別伝播経路情報を導出し、導出した各伝播経路の経路別伝播経路情報を用いて、複数の音声出力部１４それぞれに対応した出力別聴取音により構成される聴取音を導出し、音響情報に含まれる聴取音を導出した聴取音に更新する構成としているので、聴取位置の移動時に聴取方向の急激な変化が発生しないようにすることができるようになる。
【００７３】
すなわち、複数の伝播経路を統合して聴取音を導出しているので、聴取位置の変化に応じて適切な聴取音を導出することができるようになる。
【００７４】
また、音源オブジェクトによる１つの発音でありながら、同時複数方向（または、略同時複数方向）からの音の伝播と同じ効果が得られるようになるため、発音数の増加を抑制するができるようになる。
【００７５】
また、上述した実施の形態では、経路別伝播経路情報（例えば、伝播経路情報管理テーブル１２ｃにて管理される伝播経路情報）は、各伝播経路について、音源オブジェクトにより発せられた音の聴取位置Ｐへの伝播方向を示す伝播ベクトルと、音源オブジェクトが発した音の聴取位置までの伝播経路長と、音源オブジェクトが発した音の屈折角度とを含む構成としているので、少ない情報でリアルな音響効果を得ることができるようになり、処理速度を向上させることができるようになる。
【００７６】
また、上述した実施の形態では、ビデオゲーム処理装置１００が、各伝播経路の伝播ベクトルと、各伝播経路の伝播経路長によりそれぞれ特定される伝播音圧と、各伝播経路の屈折角度によりそれぞれ特定されるフィルタ係数とを用いて、複数の音声出力部１４（例えば、４つのスピーカ）それぞれに対応した出力別聴取音により構成される聴取音を導出する構成としているので、よりリアルな聴取音を導出することができるようになる。
【００７７】
また、上述した実施の形態では、ビデオゲーム処理装置１００が、各伝播経路についてのフィルタ係数を伝播音圧の比率に従って統合し、予め定められた複数の音声出力部１４（例えば、４つのスピーカ）の配置位置（例えば、配置角）及び音声出力方向と、各伝播経路についての伝播ベクトルと、各伝播経路についての伝播音圧とに従って、複数の音声出力部１４によりそれぞれ出力する出力別聴取音の出力音圧比率を算出し、算出した出力音圧比率と、各伝播経路についての伝播音圧と、導出されたフィルタ係数の統合値とを用いて、複数の音声出力部１４それぞれに対応した出力別聴取音を導出する構成としているので、より効率的にサラウンドシステムを実現することができるようになる。
【００７８】
なお、上述した実施の形態では音源が１座標で示される点音源である場合を例に説明を行なった（図３，７参照）。しかし、音源の構成はこれに限定されない。以下、音源が点音源でない場合のナビゲーション装置１００の動作について図を参照して説明する。
【００７９】
図９は、他の音の伝播経路の例について説明するための説明図である。図９（Ａ）に示すように、聴取位置Ｐが位置する可聴領域Ｆ１に対応する音源オブジェクトＡ２が「ポリラインで構成された音源（線音源）」である場合、制御部１１は、音源オブジェクトＡ２に対する垂線であって聴取位置Ｐに伸びる直線Ｌ１を伝播経路として特定する。この場合、制御部１１は、例えば音響情報更新処理から調整マージ処理に移行する際に、伝播経路が１つであると判定し、適宜調整マージ処理の一部を省略して聴取音を導出する。
【００８０】
一方、図９（Ｂ）に示すように、聴取位置Ｐが可聴領域Ｆ１とＦ２との重複部分に位置すると判定すると、制御部１１は、音源オブジェクトＳ２に対する垂線であって聴取位置Ｐに伸びる垂線Ｌ１，Ｌ２を伝播経路として特定する。この場合、制御部１１は、伝播経路Ｌ１，Ｌ２に関して、音響情報更新処理と調整マージ処理を実行して、音響情報を更新する。
【００８１】
以上に説明したように、ナビゲーション装置１００は、種々の音源に対して、音響情報更新処理および調整マージ処理を実行して、聴取位置の移動時に聴取方向の急激な変化が発生しないようにすることができる。
【００８２】
なお、上述した実施の形態では、１つの音源オブジェクトに対して２本の伝播経路が導出された場合について説明を行なったが、導出する伝播経路の数が３つ以上の場合であっても同様に適用可能である。なお、上述した実施の形態では、調整マージ情報管理テーブル１２ｄにおいて同一の音源オブジェクトＩＤに対応付けされた伝播音圧と出力音圧比率とから、まとめてスピーカ音圧を算出する場合について説明した。しかし、１つの音源オブジェクトに対して３本以上の伝播経路が導出された場合、スピーカ音圧の算出方法はこれに限定されず、例えば、予め定められた規則に従った累積処理によりスピーカ音を算出する構成としてもよい。以下、スピーカ音圧の算出を累積処理により実行する場合の例について説明する。
【００８３】
例えば、１つの音源オブジェクトＩＤに対して５本の伝播経路（以下、各伝播経路をルート１、ルート２、・・・ルート５と呼ぶ。）が導出されたとする。この場合、制御部１１は、先ず、各ルートに優先度を設定する。優先度の設定方法としては、例えば、伝播経路長が短い程高い優先度を設定するなど、種々の方法が考えられる。また、伝播経路の導出順であってもよい。ここでは、ルート１、ルート２、・・・ルート５の順で高い優先度が設定されたものとする。
【００８４】
優先度を設定すると、制御部１１は、ルート１を通る音とルート２を通る音とをマージする（図８、ステップＳ２０３〜Ｓ２０７）。次いで、ルート１とルート２とをマージして得た結果（すなわち、スピーカ音圧）に対して、制御部１１は、ルート３を通る音をマージする。
【００８５】
そして、優先度に従って音をマージする処理を要素がなくなるまで（本例においては、ルート１〜ルート４をマージして得た結果に対してルート５をマージするまで）繰り返す累積処理を実行する。
【００８６】
スピーカ音圧の算出処理を伝播経路毎の累積処理により実行する構成とすることにより、例えば、優先度の低い伝播経路に関する処理を省略することなどができるようになる。
【００８７】
なお、上述した実施形態では、ビデオゲーム処理装置１００がゲームカートリッジ２０から読み取ったゲームプログラムに基づいて上述したゲーム処理などの各種の処理を実行する構成としていたが、ゲームサーバからインターネットなどの通信ネットワークを介してゲームプログラムを取得するようにしてもよい。また、ビデオゲーム処理装置１００がゲームサーバとして機能し、通信ネットワークを介してゲームプログラムをゲーム端末に提供するようにしてもよい。
【００８８】
なお、上述した実施の形態では、ビデオゲーム処理装置１００は、自己が備える記憶装置（記憶部１２）に記憶されている制御プログラム（ビデオゲーム処理プログラム）に従って、上述した各種の処理を実行する。
【産業上の利用可能性】
【００８９】
本発明によれば、聴取位置の移動時に聴取方向の急激な変化が発生しないようにすることができるビデオゲームを提供するのに有用である。
【符号の説明】
【００９０】
１０        ゲームプログラム読取部
１１        制御部
１２        記憶部
１３        表示部
１４        音声出力部
１５        プレイヤ操作受付部
１００      ビデオゲーム処理装置
【図１】
0005456622.tif 000004
【図２】
0005456622.tif 000005
【図３】
0005456622.tif 000006
【図４】
0005456622.tif 000007
【図５】
0005456622.tif 000008
【図６】
0005456622.tif 000009
【図７】
0005456622.tif 000010
【図８】
0005456622.tif 000011
【図９】
0005456622.tif 000012