(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-05-11
(45)【発行日】2022-05-19
(54)【発明の名称】音声制御プログラム、および音声制御装置
(51)【国際特許分類】
A63F 13/54 20140101AFI20220512BHJP
【FI】
A63F13/54
(21)【出願番号】P 2019104570
(22)【出願日】2019-06-04
【審査請求日】2020-03-19
(73)【特許権者】
【識別番号】000129149
【氏名又は名称】株式会社カプコン
(74)【代理人】
【識別番号】110001427
【氏名又は名称】特許業務法人前田特許事務所
(72)【発明者】
【氏名】五十嵐 佑樹
【審査官】松山 紗希
(56)【参考文献】
【文献】特開2018-130281(JP,A)
【文献】特開2013-017568(JP,A)
【文献】『NieR:Automata』における空間音響表現と多様なゲーム性に対応するWwise制御[前編],NieR:Automata 開発ブログ,2018年12月14日,第9頁-12頁,https://www.platinumgames.co.jp/dev-nier-automata/article/291,[検索日:2021年3月29日]
(58)【調査した分野】(Int.Cl.,DB名)
A63F 9/24、13/00-13/98
G10K 15/00
(57)【特許請求の範囲】
【請求項1】
コンピュータを、
仮想の聴取者が移動可能な仮想空間を生成する仮想空間生成手段と、
前記仮想空間内の音として音声データを再生する再生手段と、
前記聴取者の周囲の空間の開け具合に応じて、再生される前記音声データに対して所定のエフェクトが付されるように、前記再生手段を制御する音声制御手段と、
として機能させ、
前記聴取者の近傍点または前記聴取者の位置から、鉛直方向に所定のオブジェクトに当たるまで延びる仮想のベクトルを第1ベクトル、前記第1ベクトルに対して傾斜した方向に所定のオブジェクトに当たるまで延びる仮想ベクトルを第2ベクトルとすると、
前記開け具合は、
互いに異なるM個(Mは自然数)の前記第2ベクトルのうちの、長さが大きい上位N個(Nは自然数かつN<M)のベクトルの各長さと、前記第1ベクトルの長さとを平均することによって平滑化した値に相当する情報である
ことを特徴とする音声制御プログラム。
【請求項2】
請求項1において、
前記音声制御プログラムは、前記仮想空間の所定位置における座標値と、前記所定位置における前記開け具合とを対応付ける情報を含んだ特徴点情報を、前記聴取者が移動可能な範囲内の複数の位置について保持し、
前記音声制御手段は、前記聴取者の座標値に最も近い座標値を含む前記特徴点情報が有する開け具合を用いて、前記再生手段を制御することを特徴とする音声制御プログラム。
【請求項3】
請求項1
または請求項2の音声制御プログラムを記憶した記憶部と、
前記音声制御プログラムを実行する制御部と、
を備えたことを特徴とする音声制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、音声制御プログラム、および音声制御装置に関する。
【背景技術】
【0002】
近年のゲームでは、ゲーム空間において、プレイヤキャラクタと、音の遮蔽物となるオブジェクトとの距離に応じて、リバーブ(残響)等のエフェクトを加えるものがある(例えば特許文献1を参照)。特許文献1の例では、真上、真上から所定角度前方、真上から所定角度後方、真上から所定角度右方、および真上から所定角度左方等、複数の方向における距離を取得し、これらの方向における距離を平均して1つの高さ(距離)の情報としている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
前記特許文献の例では、壁際の位置(ここでは評価位置と呼ぶ)で遮蔽物との距離を評価したとすれば、評価位置と壁との距離に影響されて、平均値が小さく計算されうる。すなわち、空間の開け具合が小さく算出されうる。そうすると、前記文献の例では、評価位置において真上の空間が開けていても、真上に遮蔽物があるものと判断されて、不自然なエフェクトが付される可能性がある。
【0005】
そこで、本発明の目的は、音声制御プログラム、および音声制御装置において、空間の開け具合を適切に判断できるようにすることを提供することを目的とする。
【課題を解決するための手段】
【0006】
第1の発明は、コンピュータを、
仮想の聴取者が移動可能な仮想空間を生成する仮想空間生成手段と、
前記仮想空間内の音として音声データを再生する再生手段と、
前記聴取者の周囲の空間の開け具合に応じて、再生される前記音声データに対して所定のエフェクトが付されるように、前記再生手段を制御する音声制御手段と、
として機能させ、
前記聴取者の近傍点または前記聴取者の位置から、鉛直方向に所定のオブジェクトに当たるまで延びる仮想のベクトルを第1ベクトル、前記第1ベクトルに対して傾斜した方向に所定のオブジェクトに当たるまで延びる仮想ベクトルを第2ベクトルとすると、
前記開け具合は、
互いに異なるM個(Mは自然数)の前記第2ベクトルのうちの、長さが大きい上位N個(Nは自然数かつN<M)のベクトルの各長さと、前記第1ベクトルの長さとを平滑化した値に相当する情報である
ことを特徴とする音声制御プログラムである。
【0007】
第1発明において、
前記音声制御プログラムは、前記仮想空間の所定位置における座標値と、前記所定位置における前記開け具合とを対応付ける情報を含んだ特徴点情報を、前記聴取者が移動可能な範囲内の複数の位置について保持し、
前記音声制御手段は、前記聴取者の座標値に最も近い座標値を含む前記特徴点情報が有する開け具合を用いて、前記再生手段を制御してもよい。
【0008】
前記発明においては、前記M個の第2ベクトルは、仮想の円錐面上に等ピッチで並んだベクトルとしてもよい。
【0009】
第2の発明は、前記発明の何れかの音声制御プログラムを記憶した記憶部と、
前記音声制御プログラムを実行する制御部と、
を備えたことを特徴とする音声制御装置である。
【発明の効果】
【0010】
本発明によれば、音声制御プログラム、および音声制御装置において、空間の開け具合を適切に判断できる。
【図面の簡単な説明】
【0011】
【
図1】本実施形態のゲームシステムの機能的構成を示すブロック図である。
【
図2】仮想空間の一部分(エリア)を例示する図である。
【
図3】空間の開け具合の算出概念を説明する図である。
【発明を実施するための形態】
【0012】
[実施形態]
本発明の実施形態にかかる音声制御プログラム、および音声制御装置について、図面を参照して説明する。なお、本発明の音声制御プログラムは、ゲームプログラムとして実装されている。音声制御装置は、ゲームシステム(ゲーム装置)として実現されている。
【0013】
〈ゲームの説明〉
図1は、本実施形態のゲームシステム1の機能的構成を示すブロック図である。
図1に示すように、ゲームシステム1では、サーバ装置2とゲーム装置5とが、通信ネットワーク6を介して互いに通信可能に接続されている。
【0014】
本実施形態で説明するゲームは、三次元のゲーム空間(仮想空間)が舞台となっている。ゲーム空間は、画像としてディスプレイに表示される。このゲーム空間には、岩壁、洞窟、川といった地形を表すオブジェクトが設けられている。更に、地形のオブジェクト上には、建物や樹木などの様々なオブジェクトも設けられている。
【0015】
本ゲームは、ユーザの操作を受けて、プレイヤキャラクタを三次元のゲーム空間で活動させたり、プレイヤキャラクタ同士でグループを編成してノンプレイヤキャラクタである敵キャラクタと戦闘したりするアクションゲームである。ユーザは、通信ネットワーク6を介して他のユーザとオンラインにてゲームを進めることができる。ユーザは、通信ネットワーク6を介さずに個人でゲームを進めることもできる。
【0016】
本ゲームでは、ゲーム空間にて繰り広げられる各キャラクタの動作、および、各キャラクタの位置などに応じて、各場面に適した楽曲(BGM)、効果音、環境音などの音声が出力される。この音声の出力に際して、本ゲームでは、仮想の聴取者とゲーム空間内オブジェクトとの位置関係に応じてリバーブなどのエフェクトが音声に付される。
【0017】
このような音声出力を実現するため、本ゲームプログラムでは、複数の特徴点(画面には非表示)が、仮想空間内に配置されている。特徴点のそれぞれには、その地点における音響効果の情報、座標値、特徴点が属するエリアなどの情報(以下、特徴点情報という)が対応づけられている。
【0018】
本ゲームプログラムでは、音声を出力する際に、プレイヤキャラクタに最も近い特徴点に対応した特徴点情報を用いる。特徴点情報には、「空間の開け具合」(後述)を示す指標も含まれている。
【0019】
前記ゲームは、プレイステーション(登録商標)、パーソナルコンピュータ、PlayStation Vita(登録商標)などのゲーム装置5において実行される。
【0020】
〈ゲームシステム1の概要〉
図1に示すように、ゲームシステム1は、サーバ装置2およびゲーム装置5にて構成される。
【0021】
サーバ装置2は、ゲームプログラムの提供およびゲームデータの管理を行う。
【0022】
ゲーム装置5は、ユーザの操作に基づいて前記ゲームプログラムに応じたゲームを実行する。そのために、ゲーム装置5は、通信ネットワーク6を介してサーバ装置2からゲームプログラム、ゲームデータ、およびこれらのアップデート版を受信(具体的にはダウンロードおよびインストール)することが可能である。
【0023】
なお、ゲーム装置5は、ゲームを進行するにあたり、先ずはサーバ装置2にログインすることができる。ユーザには、アカウント情報が割り当てられており、アカウント情報には、ユーザの識別情報(ユーザID)およびパスワードが含まれる。
【0024】
サーバ装置2は、ログイン時にゲーム装置5から送信されたアカウント情報に基づき、アクセスのあったゲーム装置5に対してユーザ認証を行う。ユーザ認証が完了したゲーム装置5は、ゲーム進行に必要なデータがサーバ装置2から送られると、ユーザの操作に基づいてゲーム画像や音声をディスプレイ61およびスピーカ62に出力しながら、ゲームを進行させる。
【0025】
なお、ゲーム進行に必要なデータは、ログイン時の他、ゲーム進行の所定タイミング(例えばプレイヤキャラクタがクリアする課題(以下「クエスト」)をユーザが選択した時)においても、サーバ装置2から送られる。
【0026】
このように、サーバ装置2とゲーム装置5とが相互に通信を行うことにより、サーバ装置2とゲーム装置5とで同期を取りながらゲームを進行させることもできる。
【0027】
〈ハードウェア構成〉
以下、サーバ装置2のハードウェア構成、および、ゲーム装置5のハードウェア構成について説明する。
【0028】
〈サーバ装置2の構成〉
サーバ装置2は、ネットワークインターフェース21、記憶部22および制御部23を有する。ネットワークインターフェース21および記憶部22は、バス29を介して制御部23と電気的に接続されている。
【0029】
ネットワークインターフェース21は、インターネットやLANなどの通信ネットワーク6を介してゲーム装置5と通信可能に接続される。ネットワークインターフェース21を介して、ゲーム装置5へのゲームデータやゲームプログラムの送信、およびアカウント情報のゲーム装置5からの受信が行われる。
【0030】
記憶部22は、HDD、SSD、RAMおよびROMなどで構成される。記憶部22には、ユーザを照合するためのアカウント情報、ユーザのログイン履歴、ゲームプログラム、ゲームデータ、ゲームプログラム以外の各種プログラムなどが格納されている。
【0031】
制御部23は、CPUおよび半導体メモリを含むマイクロコンピュータで構成され、サーバ装置2自身の動作を制御する。
【0032】
〈サーバ装置2における制御部23の機能的構成〉
制御部23は、各種プログラムを実行することにより、情報処理手段231、照合手段232および配信手段233として機能する。
【0033】
情報処理手段231は、ゲームプログラムの配信に必要なデータを、ゲーム装置5との間で送受信する。情報処理手段231が受信する前記データとしては、ゲームプログラムのダウンロード要求情報が挙げられる。情報処理手段231が送信する前記データとしては、例えばゲームプログラムをゲーム装置5が受信したかを確認するための情報が挙げられる。
【0034】
照合手段232は、ゲーム装置5から受信したアカウント情報を用いて、ユーザの認証処理を行う。
【0035】
配信手段233は、ゲームプログラムのダウンロード要求情報およびユーザのアカウント情報を情報処理手段231が受信した後、ゲームプログラムおよび受信したアカウント情報に対応するゲームデータを、ゲーム装置5に配信(送信)する。
【0036】
〈ゲーム装置5の構成〉
ゲーム装置5には、ディスプレイ61、スピーカ62およびゲームコントローラ63が外部接続または内蔵される。ゲーム装置5では、サーバ装置2から受信したゲームプログラムおよびゲームデータに基づいてゲームが進行される。
【0037】
ゲーム装置5は、ネットワークインターフェース51、グラフィック処理部52、オーディオ処理部53、操作部54、記憶部55および制御部56を有する。ネットワークインターフェース51、グラフィック処理部52、オーディオ処理部53、操作部54および記憶部55は、バス59を介して制御部56と電気的に接続されている。
【0038】
ネットワークインターフェース51は、ゲーム装置5とサーバ装置2との間で各種データを送受信するために、通信ネットワーク6に通信可能に接続される。
【0039】
グラフィック処理部52は、制御部56から出力されるゲーム画像情報に従って、仮想ゲーム空間に関する各種オブジェクトを含むゲーム画像を、動画形式で描画する。グラフィック処理部52は、例えば液晶型であるディスプレイ61と接続されており、動画形式に描画されたゲーム画像は、ゲーム画面としてディスプレイ61上に表示される。
【0040】
ゲーム画像の表示をよりリアルなものとするため、このゲームプログラムでは、ユーザの視点として仮想のカメラが仮想空間に設定されている。グラフィック処理部52は、あたかも、その仮想カメラで仮想空間内を撮影したかのように、3Dの映像(動画像)を構成してディスプレイ61に表示する。
【0041】
オーディオ処理部53は、制御部56の指示に従って楽曲を含むゲーム音声を再生および合成する。オーディオ処理部53は、スピーカ62と接続されている。オーディオ処理部53によって再生および合成された音声は、スピーカ62から出力される。
【0042】
操作部54は、ゲームコントローラ63と接続され、操作入力に関するデータをゲームコントローラ63との間で送受信する。例えば、ユーザは、ゲームコントローラ63の各種ボタンを押下することで、ゲーム装置5に操作信号を入力する。
【0043】
記憶部55は、HDD、SSD、RAMおよびROMなどで構成される。記憶部55は、サーバ装置2からダウンロードしたゲームプログラムおよびゲームデータを記憶することができる。本実施形態において、記憶部55に記憶されるゲームデータには、前記ゲーム音声のデータが含まれる。
【0044】
制御部56は、CPUおよび半導体メモリを含むマイクロコンピュータで構成され、ゲーム装置5の動作を制御する。
【0045】
〈ゲーム装置5における制御部56の機能的構成〉
制御部56は、前記ゲームプログラムを実行することにより、通信手段561、ゲーム空間生成手段562、プレイヤキャラクタ動作制御手段563、敵キャラクタ動作制御手段564、再生手段565、および音声制御手段567として機能する。
【0046】
このうち、主にゲーム空間生成手段562およびプレイヤキャラクタ動作制御手段563は、ゲーム進行手段としての役割を担う。ゲーム進行手段は、ゲームデータに含まれるゲーム空間オブジェクトおよびテクスチャなどのデータを記憶部55から読み出して、ゲーム画像情報を生成する。ゲーム画像情報がグラフィック処理部52によって処理されることにより、ディスプレイ61には処理後のゲーム画像が表示される。
【0047】
通信手段561は、ネットワークインターフェース51を介してサーバ装置2との通信を行う機能である。通信手段561は、アカウント情報、および、ユーザの操作に基づく新たなゲームデータのダウンロード要求情報を、サーバ装置2に送信する。通信手段561は、サーバ装置2から送られてきた新たなゲームデータなどを受信する。
【0048】
ゲーム空間生成手段562(仮想空間生成手段)は、三次元のゲーム空間を生成する。
図2に、ゲーム空間(以下では、仮想空間VSともいう)の一部分(エリア)を例示する。仮想空間VSでは、ユーザによるゲームコントローラ63の操作により、プレイヤキャラクタPC1が動作する。
【0049】
プレイヤキャラクタ動作制御手段563は、仮想空間VSにプレイヤキャラクタPC1を配置する。プレイヤキャラクタ動作制御手段563は、ゲームコントローラ63を介してユーザが行う操作に基づいて、そのプレイヤキャラクタPC1を仮想空間VS内で動作させる。
【0050】
敵キャラクタ動作制御手段564は、ゲームの進行やクエストに応じた敵キャラクタ(図示は省略)を仮想空間VSに配置する。敵キャラクタ動作制御手段564は、その敵キャラクタに対し、ゲームやクエストの進行状況に応じて予めある程度設定された動作を行わせる。また、敵キャラクタ動作制御手段564は、プレイヤキャラクタPC1の動作に応じた動作を、敵キャラクタに行わせる。
【0051】
再生手段565は、ゲームの進行状況やクエストの内容、プレイヤキャラクタPC1および敵キャラクタの動作などに応じて、音声データを記憶部55内から逐次読み出し、オーディオ処理部53を介してスピーカ62から音声を出力させる。前記音声には、各キャラクタのボイスや足音、咆哮音などの効果音、敵キャラクタ固有の楽曲などが含まれる。
【0052】
再生手段565は、前記音声を再生するに際して、仮想空間VSに仮想のマイク(以下、仮想マイクL)を設定する。また、このゲームプログラムでは、仮想空間VS内に音源(すなわち仮想の音源)として取り扱われるオブジェクト(以下、音源オブジェクトという)が存在する。
【0053】
再生手段565は、音源オブジェクトから発せられた音声を、あたかも仮想マイクLで集音したかのような音響表現で、スピーカ62に出力する。すなわち、仮想マイクLは、仮想の聴取者であり、仮想マイクLの位置は、音像定位の基準点である。本実施形態では、仮想マイクLは、プレイヤキャラクタPC1の位置に設定されている。こうすることで、臨場感のよい音響表現が可能になる。
【0054】
再生手段565は、臨場感のよい音響表現を行うために、再生する前記音声に対して、リバーブ(残響)などのエフェクトを付加するエフェクト処理を行う。再生手段565は、音声制御手段567の指示に従ってエフェクト処理を行う。
【0055】
例えば、音声制御手段567は、リバーブの程度(音量や長さなど)を再生手段565に対して指示する。その際、音声制御手段567は、仮想の聴取者(仮想マイクL)の周囲の空間の開け具合に応じて、リバーブの程度を決定する。
【0056】
〈空間の開け具合の算出〉
本実施形態では、空間の開け具合を示す指標値が、ゲームプログラムの開発時などに予め算出されている。以下では、空間の開け具合の算出工程について、
図2、および
図3を用いて説明する。
【0057】
図2に示したエリアには、プレイヤキャラクタPC1の身長よりも、はるかに高い崖Clfがある。プレイヤキャラクタPC1は、崖Clfの壁面Wの真横に立っている。
【0058】
仮想空間VS内には、複数の特徴点Nが配置されている。
図2に特徴点Nを黒丸で示す。ただし、これらの特徴点Nは、実際には、ディスプレイ61には表示されない。仮想空間VSにおいて、特徴点Nが配置されるのは、プレイヤキャラクタPC1や敵キャラクタの移動可能な領域上である。
図2の例では、プレイヤキャラクタPC1等は、地面G、崖Clfの壁面W、および上面Tを移動できる。したがって、複数の特徴点Nが、地面G、崖Clfの壁面W、および上面Tに配置されている。
【0059】
図3は、空間の開け具合の算出概念を説明する図である。
図3には、
図2に示したエリアと同じエリアを示している。以下では、特徴点Nの1つである特徴点NNに対応した、空間の開け具合の算出工程を説明する。
【0060】
図3には、仮想のベクトルである第1ベクトルV1が定義されている。第1ベクトルV1は、空間の開け具合の算出の概念を説明するものであり、ゲーム中に直接的に使用されることはないし、ゲーム画面に表示されることもない。
【0061】
第1ベクトルV1は、特徴点NNを始点とし、所定のオブジェクトにぶつかるまで、鉛直方向(仮想空間VSの真上方向)に延びている。ここで、「所定のオブジェクト」とは、音を遮断する性質をもつオブジェクトである。そのため、「所定のオブジェクト」には、煙や雲、水などのオブジェクトは、含まれない。
【0062】
本実施形態では、特徴点NNを起点としたレイキャストを鉛直方向について行うことで第1ベクトルV1の終点を決定している。具体的には、特徴点NNから伸ばした仮想の直線がぶつかる最初のオブジェクト(上記「所定のオブジェクト」)を探索し、このオブジェクトと仮想の直線とがぶつかった点を第1ベクトルV1の終点としている。
【0063】
図3には、互いに異なるM個(Mは自然数)の第2ベクトルV2も定義されている。この例では、M=8である。
図3では、それぞれの第2ベクトルV2を区別するために、参照符号の末尾に枝番を付してある(例えばV2-1,V2-2等)。
【0064】
これらの第2ベクトルV2も仮想のベクトルであり、空間の開け具合の算出の概念を説明するものである。これらの第2ベクトルV2も、ゲーム中に直接的に使用されることはないし、ゲーム画面に表示されることもない。
【0065】
それぞれの第2ベクトルV2は、特徴点NNが始点である。これらの第2ベクトルV2が延びる方向は、上向きで、かつ第1ベクトルV1に対して傾斜した方向である。この例では、各第2ベクトルV2は、第1ベクトルV1と45°の角度をなしている。また、これらの第2ベクトルV2は、特徴点NNを頂点とした仮想の円錐の円錐面Co上に等ピッチで並んでいる。
【0066】
それぞれの第2ベクトルV2は、所定のオブジェクトにぶつかるまで延びている。ここでも「所定のオブジェクト」は、音を遮断する性質をもつオブジェクトである。したがって、「所定のオブジェクト」には、煙や雲、水などのオブジェクトは、含まれない。
【0067】
本実施形態では、特徴点NNを起点としたレイキャストを行うことで第2ベクトルV2の終点を決定している。具体的には、上向きで、かつ第1ベクトルV1に対して傾斜した方向に、特徴点NNから仮想直線を伸ばして、その仮想直線がぶつかる最初のオブジェクト(上記「所定のオブジェクト」)を探索する。このオブジェクトと仮想直線とがぶつかった点を第2ベクトルV2の終点としている。
【0068】
そして、本実施形態の空間の開け具合は、互いに異なるM個(Mは自然数)の第2ベクトルV2のうちの、長さが大きい上位N個(Nは自然数かつN<M)のベクトルの各長さと、第1ベクトルV1の長さとを平均することによって平滑化した値である。本実施形態では、N=4である。
【0069】
以上を具体的に
図2、および
図3で確認する。
図2では、プレイヤキャラクタPC1が立っている地面Gの上方、崖Clfの上面Tの上方には、何れのオブジェクトも存在しない。すなわち、
図2のエリアの上方は、開放空間である。
【0070】
特徴点NNの上方が開放空間の場合には、第1ベクトルV1は、理論上は、無限の長さを有することになる。しかし、本ゲームプログラムでは、コンピュータによる計算処理の便宜上、第1ベクトルV1は、十分に大きな有限の長さを有したベクトルとして定義している。
【0071】
第2ベクトルV2-1,V2-2,V2-3,V2-4を無限に伸ばしたとすると、これらのベクトルは、
図3に示すように、それぞれ点X1,X2,X3,X4において、壁面Wにぶつかる。したがって、これらのベクトルの終点は、それぞれ点X1,X2,X3,X4である。よって、これらのベクトルの長さは、特徴点NNからそれぞれ点X1,X2,X3,X4までの距離である。例えば、第2ベクトルV2-1の長さは、特徴点NNから点X1までの距離である。
【0072】
図3の例では、残りの第2ベクトルV2-5,V2-6,V2-7,V2-8が延びる方向には、何れのオブジェクトも存在しない。したがって、第2ベクトルV2-5,V2-6,V2-7,V2-8は、理論上は、無限の長さを有することになる。しかし、本ゲームプログラムでは、コンピュータによる計算処理の便宜上、これらの第2ベクトルV2は、十分に大きな有限の長さを有したベクトルとして定義されている。
【0073】
以上から、
図3の例では、互いに異なるM個(M=8)の第2ベクトルV2のうちの、長さが大きい上位N個(N=4)のベクトルは、第2ベクトルV2-5,V2-6,V2-7,V2-8である。よって、特徴点NNにおける「空間の開け具合」は、第2ベクトルV2-5,V2-6,V2-7,V2-8の各長さと、第1ベクトルV1の長さの平均値である。この平均値は、特徴点NNに対応した特徴点情報に含められる。
【0074】
既述の通り、仮想空間VS内には、複数の特徴点Nが配置されている。したがって、前記平均値は、それぞれの特徴点Nに対して算出されている。各特徴点Nに対応した特徴点情報は、例えば、リストやツリーといった形で、ゲームプログラムに実装される。特に、本実施形態では、特徴点情報は、特徴点を特定する情報(例えば、座標値や識別番号等)をキーとして探索できるように実装されている。
【0075】
〈制御部56の動作例〉
ゲーム中は、音声制御手段567は、適宜、プレイヤキャラクタPC1に最近傍の特徴点Nを探索する。なお、特徴点Nの位置とプレイヤキャラクタPC1の位置が一致する場合には、音声制御手段567は、一致した特徴点Nを探索結果とする。
【0076】
探索の結果、例えば、プレイヤキャラクタPC1(仮想マイクL)に最近傍の特徴点Nが、特徴点NNであるとする(
図2参照)。特徴点NNの上方は、開放空間である。
【0077】
最近傍の特徴点NNが求まると、音声制御手段567は、特徴点NNに対応した特徴点情報を探索する。次に、音声制御手段567は、探索して得た特徴点情報が含んでいる空間の開け具合を用いて、リバーブの程度を計算する。
【0078】
音声制御手段567は、その計算結果に基づいて、リバーブの程度を再生手段565に指示する。更に、音声制御手段567は、その他のエフェクトについても特徴点情報を用いて、再生手段565に対して指示を行う。
【0079】
再生手段565は、音声制御手段567の指示に応じて、再生する音声に対して、リバーブ等のエフェクトを付加する。
図2の例では、各特徴点Nの開け具合の指標値は、全ての第2ベクトルV2を空間の開け具合の算出に用いる場合と比べ、より大きな値となる。そのため、
図2の例では、比較的、弱いリバーブで音声(例えば、敵キャラクタの咆哮音や環境音など)が再生される。特徴点NNの上方は開放空間なので、これは自然なエフェクトである。
【0080】
以上をまとめると、本件発明は、コンピュータを、仮想の聴取者が移動可能な仮想空間を生成する仮想空間生成手段(ゲーム空間生成手段562)と、前記仮想空間内の音として音声データを再生する再生手段と、前記聴取者の周囲の空間の開け具合に応じて、再生される前記音声データに対して所定のエフェクトが付されるように、前記再生手段を制御する音声制御手段と、として機能させ、前記聴取者の近傍点または前記聴取者の位置から、鉛直方向に所定のオブジェクトに当たるまで延びる仮想のベクトルを第1ベクトル、前記第1ベクトルに対して傾斜した方向に所定のオブジェクトに当たるまで延びる仮想ベクトルを第2ベクトルとすると、前記開け具合は、互いに異なるM個(Mは自然数)の前記第2ベクトルのうちの、長さが大きい上位N個(Nは自然数かつN<M)のベクトルの各長さと、前記第1ベクトルの長さとを平滑化した値に相当する情報であることを特徴とする音声制御プログラムである。
【0081】
〈本実施形態の効果〉
以上の構成により、本実施形態では、壁面Wの存在に影響されて「空間の開け具合」が不要に低く算出されることがない。したがって、本実施形態によれば、音声制御プログラム、および音声制御装置において、空間の開け具合を適切に判断できる。
【0082】
[その他の実施形態]
前記ゲームは、アクションゲームに限定されない。前記ゲームは、オブジェクトの周囲空間の開け具合に応じて音声の再生が制御されるゲームであれば、どのような種類のゲームにも適用できる。
【0083】
ゲームは、オンラインのゲームには限定されない。すなわち、ゲームは、ゲーム装置5のみで実行されるものでもよい。
【0084】
ゲーム装置5の制御部56で行っていた処理は、それに代わってサーバ側で行ってもよいし、サーバ側とクライアント(ゲーム装置5)側とで分担してもよい。
【0085】
本発明は、ゲーム以外の分野でも利用可能である。例えば、本発明は、仮想空間をシミュレーションするプログラムに適用したり、映画やアニメーションの音響効果の作成などに利用したりできる。
【0086】
第2ベクトルV2の総数(Mの値)や平均値の計算に用いる第2ベクトルV2の数(Nの値)は、例示である。
【0087】
空間の開け具合を示す指標は、前記ベクトル長の平均値そのものでなくても、平均値に相当(相関)する情報であればよい。例えば、平均値に対して所定の倍率をかけたり、所定のオフセットを設けたりするなど、平均値に加工を加えた値も、空間の開け具合を示す指標として利用できる。
【0088】
第1および第2ベクトルV1,V2の終点を決める手法は、レイキャストには限定されない。
【0089】
第1ベクトルV1の始点は、特徴点Nに対して、多少のずれが許容される。第2ベクトルV2の始点は、第1ベクトルV1の始点に対して、多少のずれが許容される。
【0090】
第2ベクトルV2と第1ベクトルV1とがなす角度は45°には限定されない。
【0091】
第2ベクトルV2の配置は、円錐面上には限定されない。第2ベクトルV2は、第1ベクトルV1と何らかの角度をなすベクトルでよい。
【0092】
空間の開け具合は、ゲーム中にリアルタイムに計算してもよい。
【0093】
空間の開け具合は、リバーブ以外のエフェクト付加に利用してもよい。
【0094】
これらの他の実施形態を採用した場合においても、本発明の作用効果は発揮される。また、本実施形態と他の実施形態、および他の実施形態同士を適宜組み合わせることも可能である。
【符号の説明】
【0095】
5 ゲーム装置(音声制御装置)
562 ゲーム空間生成手段(仮想空間生成手段)
565 再生手段
567 音声制御手段
V1 第1ベクトル
V2 第2ベクトル