(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-10-12
(45)【発行日】2022-10-20
(54)【発明の名称】プログラム、画像処理方法、及び情報処理装置
(51)【国際特許分類】
A63F 13/54 20140101AFI20221013BHJP
H04S 7/00 20060101ALI20221013BHJP
【FI】
A63F13/54
H04S7/00 350
(21)【出願番号】P 2018054334
(22)【出願日】2018-03-22
【審査請求日】2021-02-25
(73)【特許権者】
【識別番号】595000427
【氏名又は名称】株式会社コーエーテクモゲームス
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(72)【発明者】
【氏名】中尾 真志
【審査官】鈴木 智之
(56)【参考文献】
【文献】特開2006-254166(JP,A)
【文献】特開2000-267675(JP,A)
【文献】米国特許出願公開第2018/0077514(US,A1)
【文献】米国特許出願公開第2017/0171685(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
A63F 9/24
A63F 13/00-13/98
H04S 1/00ー 7/00
(57)【特許請求の範囲】
【請求項1】
情報処理装置に、
ゲームの仮想3次元空間におけるユーザの位置と、前記ゲームにおいて出力される音の発生源の位置との距離を算出する処理と、
前記距離が所定の閾値以下の場合、前記音の初期反射音の音量を、前記音の後期残響音の音量以上の音量に決定し、前記距離が所定の閾値よりも大きい場合、前記初期反射音の音量を、前記後期残響音の音量よりも小さい音量に決定する処理と、
を実行させるプログラム。
【請求項2】
前記算出する処理は、
前記ユーザの位置と、前記ゲームにおいて出力される複数の音の発生源の位置との距離をそれぞれ算出し、
前記決定する処理は、
前記複数の音のそれぞれについて、前記距離が所定の閾値以下の場合、前記初期反射音の音量を、前記後期残響音の音量以上の音量に決定し、前記距離が所定の閾値よりも大きい場合、前記初期反射音の音量を、前記後期残響音の音量よりも小さい音量に決定する、
請求項1に記載のプログラム。
【請求項3】
前記決定する処理は、
前記音、前記ゲームにおいて音が発生する仮想3次元空間上の空間、または前記ゲームにおいて音が発生する仮想3次元空間上の空間の種別に応じて設定された、前記距離に応じた前記初期反射音の音量の設定データ、及び前記距離に応じた前記後期残響音の音量の設定データに基づいて、前記距離に応じた前記初期反射音の音量と前記後期残響音の音量とをそれぞれ決定する、
請求項1
又は2に記載のプログラム。
【請求項4】
前記情報処理装置に、
前記決定する処理により決定された前記初期反射音の音量に応じて前記音の直接音の振幅を調整し、調整した第1の振幅の直接音に基づいて、前記初期反射音を生成する処理と、
前記決定する処理により決定された前記後期残響音の音量に応じて前記音の直接音の振幅を調整し、調整した第2の振幅の直接音に基づいて、前記後期残響音を生成する処理と、
生成された前記初期反射音と、前記後期残響音とを合成して出力する処理と、
を実行させる、請求項1乃至
3のいずれか一項に記載のプログラム。
【請求項5】
情報処理装置が、
ゲームの仮想3次元空間におけるユーザの位置と、前記ゲームにおいて出力される音の発生源の位置との距離を算出する処理と、
前記距離が所定の閾値以下の場合、前記音の初期反射音の音量を、前記音の後期残響音の音量以上の音量に決定し、前記距離が所定の閾値よりも大きい場合、前記初期反射音の音量を、前記後期残響音の音量よりも小さい音量に決定する処理と、
を実行する情報処理方法。
【請求項6】
前記算出する処理は、
前記ユーザの位置と、前記ゲームにおいて出力される複数の音の発生源の位置との距離をそれぞれ算出し、
前記決定する処理は、
前記複数の音のそれぞれについて、前記距離が所定の閾値以下の場合、前記初期反射音の音量を、前記後期残響音の音量以上の音量に決定し、前記距離が所定の閾値よりも大きい場合、前記初期反射音の音量を、前記後期残響音の音量よりも小さい音量に決定する、
請求項5に記載の情報処理方法。
【請求項7】
ゲームの仮想3次元空間におけるユーザの位置と、前記ゲームにおいて出力される音の発生源の位置との距離を算出する算出部と、
前記距離が所定の閾値以下の場合、初期反射音の音量を、後期残響音の音量以上の音量に決定し、前記距離が所定の閾値よりも大きい場合、前記初期反射音の音量を、前記後期残響音の音量よりも小さい音量に決定する決定部と、
を有する情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラム、画像処理方法、及び情報処理装置に関する。
【背景技術】
【0002】
従来、コンピュータゲーム等において、ゲームの状況に応じて音を出力する場合、エフェクタ(残響エフェクタ、リバーブレータ)を用いて、直接音に応じた残響音を出力する技術が知られている(例えば、特許文献1を参照)。このエフェクタにおいて、ゲームの設計者は、残響音を生成するための各種のパラメータを、例えば、ゲームにおける部屋の大きさ、形状、壁材質、聴取者と音源の位置関係を想定して指定することができる。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来技術においては、例えば、同時に発音される複数の音源に対してエフェクタを共有させる場合、ユーザに違和感を覚えさせる場合があるという問題がある。
【0005】
そこで、一側面では、より違和感が低い残響音を出力することができる技術を提供することを目的とする。
【課題を解決するための手段】
【0006】
一つの案では、情報処理装置に、ゲームの仮想3次元空間におけるユーザの位置と、前記ゲームにおいて出力される音の発生源の位置との距離を算出する処理と、前記距離が所定の閾値以下の場合、前記音の初期反射音の音量を、前記音の後期残響音の音量以上の音量に決定し、前記距離が所定の閾値よりも大きい場合、前記初期反射音の音量を、前記後期残響音の音量よりも小さい音量に決定する処理と、を実行させるプログラムである。
【発明の効果】
【0007】
一側面によれば、より違和感が低い残響音を出力することができる。
【図面の簡単な説明】
【0008】
【
図1】実施形態に係る情報処理装置のハードウェア構成例を示す図である。
【
図2】実施形態に係る情報処理装置の機能ブロック図である。
【
図3】実施形態に係るリバーブ設定データの一例を示す図である。
【
図4】実施形態に係る情報処理装置の処理の一例を示すフローチャートである。
【
図5】実施形態に係る減衰曲線データの一例を示す図である。
【
図6】初期反射音の減衰量の曲線を示すデータ、及び後期残響音の減衰量の曲線を示すデータの一例について説明する図である。
【
図7】初期反射音の一例について説明する図である。
【
図8】後期残響音の一例について説明する図である。
【
図9】実施形態に係る情報処理装置の処理の一例について説明する図である。
【発明を実施するための形態】
【0009】
以下、図面に基づいて本発明の実施形態を説明する。
【0010】
<ハードウェア構成>
図1は、実施形態に係る情報処理装置10のハードウェア構成例を示す図である。
図1に示す情報処理装置10は、それぞれバスBで相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、CPU104、インタフェース装置105、表示装置106、及び入力装置107等を有する。
【0011】
情報処理装置10での処理を実現するゲームプログラムは、記録媒体101によって提供される。ゲームプログラムを記録した記録媒体101がドライブ装置100にセットされると、ゲームプログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、ゲームプログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたゲームプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【0012】
メモリ装置103は、例えば、DRAM(Dynamic Random Access Memory)、またはSRAM(Static Random Access Memory)等のメモリであり、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従って情報処理装置10に係る機能を実現する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。表示装置106はプログラムによるGUI(Graphical User Interface)等を表示する。入力装置107は、コントローラ等、キーボード及びマウス等、またはタッチパネル及びボタン等で構成され、様々な操作指示を入力させるために用いられる。
【0013】
なお、記録媒体101の一例としては、CD-ROM、DVDディスク、ブルーレイディスク、又はUSBメモリ等の可搬型の記録媒体が挙げられる。また、補助記憶装置102の一例としては、HDD(Hard Disk Drive)、SSD(Solid State Drive)、又はフラッシュメモリ等が挙げられる。記録媒体101及び補助記憶装置102のいずれについても、コンピュータ読み取り可能な記録媒体に相当する。
【0014】
<機能構成>
次に、
図2を参照し、情報処理装置10の機能構成について説明する。
図2は、実施形態に係る情報処理装置10の機能ブロック図である。
【0015】
情報処理装置10は、記憶部11を有する。記憶部11は、例えば、補助記憶装置102等を用いて実現される。記憶部11は、リバーブに関する設定データであるリバーブ設定データ111、及び減衰曲線データ112等を記憶する。減衰曲線データ112については後述する。
【0016】
図3は、実施形態に係るリバーブ設定データ111の一例を示す図である。
図3の例では、リバーブ設定データ111は、マルチメディアオーディオの業界団体であるIASIG(Interactive Audio Special Interest Group)により定義されたI3DL2(Interactive 3-D Audio, Level 2)の使用に準拠した設定項目を有する。
図3の例では、リバーブ設定データ111は、初期反射に影響する項目として、初期反射の音量(レベル)を示す「Reflections」、及び初期反射の遅延時間を示す「ReflectionsDelay」等の項目を有する。また、後期残響に影響する項目として、後期残響の音量を示す「Reverb」、初期反射を基準とした後期残響の遅延時間を示す「ReverbDelay」、減衰時間を示す「DecayTime」、低周波数の減衰時間に対する高周波数の減衰時間の比率を示す「DecayHFRatio」、エコー密度(拡がり)を示す「Diffusion」、モーダル密度(響き方)を示す「Density」等の項目を有する。また、全体に影響する項目として、全体レベルを示す「Room」、全体の高周波数減衰量を示す「RoomHF」、全体の高周波数減衰の基準周波数を示す「HFReference」等の項目を有する。リバーブ設定データ111の各項目には、ゲームの音を設計するアーティスト等により調整された値が予め設定されている。
【0017】
また、情報処理装置10は、受付部12、制御部13、算出部14、決定部15、残響音生成部16、及び出力制御部17を有する。これら各部は、情報処理装置10にインストールされた1以上のプログラムが、情報処理装置10のCPU104に実行させる処理により実現される。
【0018】
受付部12は、プレイヤーキャラクターを仮想3次元空間上で移動させる等の操作をユーザから受け付ける。制御部13は、ゲームの進行等を制御する。
【0019】
算出部14は、ゲームの仮想3次元空間におけるユーザの位置と、ゲームにおいて出力される音の発生源の位置との距離を算出する。ここで、ゲームの仮想3次元空間におけるユーザの位置は、例えば、当該ユーザにより操作されるプレイヤーキャラクター等の位置でもよいし、仮想3次元空間上のユーザの視点(仮想的なカメラ、仮想カメラ)等の位置でもよい。なお、制御部13は、仮想カメラにより撮影される仮想3次元空間を、3次元コンピュータグラフィックスにより画面に表示する。仮想カメラの位置は、例えば、プレイヤーキャラクターの中心位置から仮想3次元空間上で所定の距離離れた球面上の位置であり、ユーザの操作により当該球面上で移動されてもよい。
【0020】
決定部15は、ゲームにおいて出力される音の初期反射音(初期反射による残響音)の音量と、当該音の後期残響音(後期残響による残響音)の音量との比が、算出部14により算出された距離に応じて異なるように、当該距離に応じた初期反射音の音量と後期残響音の音量とをそれぞれ決定する。
【0021】
残響音生成部16は、ゲームにおいて出力される音の残響音を生成する。
【0022】
出力制御部17は、制御部13からの指示に従い、ゲームにおける画像を画面に表示させる。また、出力制御部17は、制御部13からの指示に従い、ゲームにおける音をスピーカに出力させる。
【0023】
<処理>
次に、
図4乃至
図9を参照して、情報処理装置10の処理について説明する。
図4は、実施形態に係る情報処理装置10の処理の一例を示すフローチャートである。
【0024】
ステップS1において、残響音生成部16は、情報処理装置10の電源が起動されると、初期反射用のリバーブのオブジェクト(インスタンス)を生成する。なお、初期反射音とは、発生した音が、仮想3次元空間上のオブジェクトにより比較的少ない回数(例えば、1回)だけ反射され、仮想3次元空間におけるユーザの位置に到達する残響音である。
【0025】
ここで、残響音生成部16は、例えば、上述した「Reverb」の値をゼロ(0)に指定し、他の項目については
図3におけるリバーブ設定データ111に予め設定されている値を用いて、I3DL2仕様に準拠したリバーブの第1オブジェクトを、初期反射用のリバーブのオブジェクトとして生成してもよい。
【0026】
初期反射用のリバーブは、例えば、マルチタップディレイにより、直接音の信号(データ)に対して遅延時間の異なるディレイを並列に生成し、生成した信号を当該直接音に対する初期反射音として出力してもよい。これにより、比較的限られた計算資源(リソース)においても、リアルタイムで初期反射音を出力できる。なお、初期反射音を生成する手法として、他の公知の手法を用いてもよい。
【0027】
続いて、残響音生成部16は、後期残響用のリバーブのオブジェクトを生成する(ステップS2)。なお、後期残響音とは、発生した音が、仮想3次元空間上のオブジェクトにより比較的多い回数反射され、仮想3次元空間におけるユーザの位置に到達する残響音である。
【0028】
ここで、残響音生成部16は、例えば、上述した「Reflections」の値をゼロ(0)に指定し、他の項目については
図3におけるリバーブ設定データ111に予め設定されている値を用いて、I3DL2仕様に準拠したリバーブの第2オブジェクトを、後期残響用のリバーブのオブジェクトとして生成してもよい。
【0029】
後期残響用のリバーブは、例えば、直接音を遅延させた信号に1より小さいゲインを掛けてフィードバックすることで入力信号(直接音の信号)を減衰させながら一定周期で繰り返し出力するコムフィルタ等により生成された信号を、当該直接音に対する後期残響音として出力してもよい。なお、後期残響音を生成する手法として、他の公知の手法を用いてもよい。
【0030】
続いて、制御部13は、ゲームにおいて、仮想3次元空間上の1以上の所定のオブジェクト(音の発生源)により音が生じるイベントを発生させる(ステップS3)。続いて、算出部14は、仮想3次元空間におけるユーザの位置と、当該音を生じさせる当該1以上の所定のオブジェクトとの間の距離を算出する(ステップS4)。
【0031】
続いて、決定部15は、当該1以上の所定のオブジェクトとの間の距離に応じて、当該音の直接音、当該音の初期反射音、及び当該音の後期残響音の各音量をそれぞれ決定する(ステップS5)。ここで、決定部15は、複数のオブジェクトによる音を同時に発生させる場合、当該複数のオブジェクトの各々に対して、直接音、初期反射音、及び後期残響音の各音量をそれぞれ決定する。
図5は、実施形態に係る減衰曲線データ112の一例を示す図である。
図5の減衰曲線データ112では、音源IDに対応付けて、初期反射音の減衰量の曲線を示すデータ、及び後期残響音の減衰量の曲線を示すデータが設定されている。音源IDは、例えば、ゲームにて出力される音の識別情報である。音源IDは、音を生じさせるオブジェクトが位置する仮想3次元空間上の空間の識別情報でもよい。また、音源IDは、音を生じさせるオブジェクトが位置する仮想3次元空間上の空間(場所)の種別の識別情報でもよい。この場合、当該空間の種別としては、例えば、比較的狭い部屋内、比較的広い部屋内、森、及び洞窟等、残響の物理的な特性が同様である空間の種別でもよい。
【0032】
図5の減衰曲線データ112に記憶される初期反射音の減衰量の曲線を示すデータ、及び後期残響音の減衰量の曲線を示すデータには、音源IDに対応付けて、例えば、ゲームの仮想3次元空間上の空間に応じたデータが予め設定されている。これらの曲線を示すデータは、例えば、ゲームの音を設計するアーティスト等により調整された値が設定されてもよいし、ゲームの空間を設計する設計者等により調整された値が設定されてもよい。
【0033】
次に、
図5の減衰曲線データ112に記憶される初期反射音の減衰量の曲線を示すデータ、及び後期残響音の減衰量の曲線を示すデータについて、
図6を参照して説明する。
図6は、初期反射音の減衰量の曲線を示すデータ、及び後期残響音の減衰量の曲線を示すデータの一例について説明する図である。
図6の例では、仮想3次元空間におけるユーザと音の発生源との間の距離を横軸とし、音量を縦軸とした、直接音の減衰量の曲線601、初期反射音の減衰量の曲線602、及び後期残響音の減衰量の曲線603が示されている。なお、直接音の減衰量の曲線601は、音の発生源から放射される直接音の音量(振幅レベル)が当該距離に反比例する曲線でもよい。
【0034】
図6の例では、初期反射音の減衰量の曲線602として、当該距離が近い程音量が大きく、当該距離が所定の値を超えると、比較的急に音量が小さくなる曲線が設定されている。これは、初期反射音の減衰量の曲線602が対応付けられているゲームの仮想3次元空間上の空間が、例えば、6面で囲われた所定の大きさの箱型の部屋であるためである。なお、当該空間が所定の大きさの箱型の部屋である場合、現実の残響音は、音を聞く人と音の発生源との間の距離が遠くなる程、当該人とその背後の壁との距離、及び音の発生源とその背後の壁との距離は近くなる。そのため、直接音と初期反射音の到達時間の差(遅延)が小さくなるため、当該距離が所定の値を超えると、いわゆるハース効果により、初期反射音が知覚されにくくなると考えられる。なお、初期反射音の減衰量の曲線602の代わりに、直接音の減衰量の曲線601に乗算する初期反射音の減衰量の係数の曲線を用いるようにしてもよい。この場合、決定部15は、当該距離に対する直接音の減衰量の曲線601上の値に、当該距離に対する当該係数の曲線上の値を乗算することにより、初期反射音の減衰量の曲線602の値を算出してもよい。
【0035】
図6の例では、後期残響音の減衰量の曲線603として、当該距離の増加による減衰量の減少が比較的緩やかで、かつ比較的小さい音量となる曲線が設定されている。これは、現実の後期残響音は、複数回の反射により遅延が大きくなるため、いわゆるハース効果は生じず、音量は小さいながらも遠距離になっても減衰しにくいものとして減衰量の曲線を設定するのが自然であると考えられるためである。
図6の例では、当該距離が距離604(「所定の閾値」の一例。)以下の場合、初期反射音の音量が、後期残響音の音量以上の大きさに設定されており、当該距離が距離604よりも大きい場合、初期反射音の音量が、後期残響音の音量よりも小さくなるように設定されている。また、距離604よりも大きい距離605において、初期反射音の音量は、後期残響音の音量の約半分と設定されている。なお、後期残響音の減衰量の曲線603の代わりに、直接音の減衰量の曲線601に乗算する後期残響音の減衰量の係数の曲線を用いるようにしてもよい。この場合、決定部15は、当該距離に対する直接音の減衰量の曲線601上の値に、当該距離に対する当該係数の曲線上の値を乗算することにより、後期残響音の減衰量の曲線603の値を算出してもよい。
【0036】
続いて、残響音生成部16は、初期反射用のリバーブのオブジェクトにより、当該音における初期反射音のデータを生成する(ステップS6)。ここで、残響音生成部16は、例えば、ステップS5で決定した初期反射音の音量に応じた係数を、当該音の直接音の振幅に乗算して、初期反射音を算出するための直接音の振幅(「第1の振幅」)を算出し、算出した振幅の直接音の信号データを初期反射用のリバーブのオブジェクトに入力する。
【0037】
図7は、初期反射音の一例について説明する図である。
図7の例では、音が生じるイベントが発生してから音が出力されるまでの時間を横軸とし、音量を縦軸とした、入力信号701に対する初期反射音702が示されている。
図7の例では、入力信号701は、当該音における初期反射音を生成するために、上述した距離に応じて振幅が調整された直接音の信号であり、初期反射用のリバーブのオブジェクトに入力される短い矩形波の信号データである。また、初期反射音702は、所定のアルゴリズムにより、入力信号701に基づいて生成された複数の矩形波である。
【0038】
続いて、残響音生成部16は、後期残響用のリバーブのオブジェクトにより、当該音における後期残響音のデータを生成する(ステップS7)。ここで、残響音生成部16は、例えば、ステップS5で決定した後期残響音の音量に応じた係数を、当該音の直接音の振幅に乗算して、後期残響音を算出するための直接音の振幅(「第2の振幅」)を算出し、算出した振幅の直接音の信号データを後期残響用のリバーブのオブジェクトに入力する。
【0039】
図8は、後期残響音の一例について説明する図である。
図8の例では、音が生じるイベントが発生してから音が出力されるまでの時間を横軸とし、音量を縦軸とした、入力信号801に対する後期残響音802が示されている。
図8の例では、入力信号801は、当該音における後期残響音を生成するために、上述した距離に応じて振幅が調整された直接音の信号であり、後期残響用のリバーブのオブジェクトに入力される短い矩形波の信号データである。後期残響音802は、所定のアルゴリズムにより、入力信号801に基づいて生成された複数の矩形波である。
図7、及び
図8の例は、
図6の例における距離605の場合の例であり、
図7の入力信号701の振幅は、
図8の入力信号801の振幅の約半分に調整されている。
【0040】
続いて、出力制御部17は、決定した各音量で、当該音の直接音、当該音の初期反射音、及び当該音の後期残響音を合成して出力する(ステップS8)。ここで、出力制御部17は、上述した距離に応じて減衰させた音量の直接音、
図7の初期反射音702、及び
図8の後期残響音802が、当該イベントが発生してからの各時点において合成されてスピーカ等より出力される。
【0041】
続いて、制御部13は、ゲームを終了するか否かを判定し(ステップS9)、ゲームを終了しない場合(ステップS9でNO)は、ステップS3の処理を進む。ゲームを終了する場合(ステップS9でYES)は、処理を終了する。
【0042】
図9は、実施形態に係る情報処理装置10の処理の一例について説明する図である。
図9の例では、音源A901乃至音源D904の4つの音が同時に発生した場合の例が示されている。
図9の例では、出力制御部17は、処理901Aにより、音源A901の直接音の信号の音量に対して、仮想3次元空間におけるユーザの位置と音源A901との距離に応じた減衰量を乗算して後段の処理911に出力する。ここで、出力制御部17は、例えば、音源A901の直接音の信号の音量を、当該距離に反比例するように減衰させる。また、出力制御部17は、処理902A、処理903A、及び処理904Aにより、それぞれ、音源B902、音源C903、及び音源D904に対して、処理901Aと同様に、各音源の直接音の信号の音量に対して、ユーザの位置と各音源との距離にそれぞれ応じた減衰量を乗算して後段の処理911に出力する。
【0043】
また、出力制御部17は、処理901Bにより、音源A901の直接音の信号の音量に対して、
図4のステップS5の処理により決定部15により決定された、
図6の初期反射音の減衰量の曲線を示すデータにおける当該距離に応じた減衰量を乗算して後段の処理921に出力する。また、出力制御部17は、処理902B、処理903B、及び処理904Bにより、それぞれ、音源B902、音源C903、及び音源D904に対して、処理901Bと同様に、各音源の直接音の信号の音量に対して、決定部15により初期反射音に対してそれぞれ決定された、ユーザの位置と各音源との距離にそれぞれ応じた減衰量を乗算して後段の処理921に出力する。
【0044】
また、出力制御部17は、処理901Cにより、音源A901の直接音の信号の音量に対して、
図4のステップS5の処理により決定部15により決定された、
図6の後期残響音の減衰量の曲線を示すデータにおける当該距離に応じた減衰量を乗算して後段の処理931に出力する。また、出力制御部17は、処理902C、処理903C、及び処理904Cにより、それぞれ、音源B902、音源C903、及び音源D904に対して、処理901Cと同様に、各音源の直接音の信号の音量に対して、決定部15により後期残響音に対してそれぞれ決定された、ユーザの位置と各音源との距離にそれぞれ応じた減衰量を乗算して後段の処理931に出力する。
【0045】
また、出力制御部17は、処理911により、処理901A、処理902A、処理903A、及び処理904Aにより出力された各音源の直接音の信号を合成して後段の処理941に出力する。
【0046】
また、出力制御部17は、処理921により、処理901B、処理902B、処理903B、及び処理904Bにより出力された各音源の直接音の信号を合成して後段の処理922に出力する。そして、残響音生成部16は、処理922において、
図4のステップS6の処理により、当該音における初期反射音の信号のデータを初期反射用のリバーブのオブジェクトに生成させ、後段の処理941に出力する。
【0047】
また、出力制御部17は、処理931により、処理901C、処理902C、処理903C、及び処理904Cにより出力された各音源の直接音の信号を合成して後段の処理932に出力する。そして、残響音生成部16は、処理932において、
図4のステップS7の処理により、当該音における後期残響音の信号のデータを後期残響用のリバーブのオブジェクトに生成させ、後段の処理941に出力する。
【0048】
そして、出力制御部17は、処理941において、
図4のステップS8の処理により、直接音の信号、初期反射音の信号、及び後期残響音の信号を合成して出力する。これにより、例えば、ゲームの状況に応じて複数の音源の音を同時に発生させる場合に、リバーブを共有化することにより、処理コストを低減しながら、より違和感が低い残響音を出力することができる。
【0049】
<実施形態の効果>
実空間と同様の残響音を物理法則に従って正確に算出すると、膨大な計算コストが生じるため、実際のゲーム機等でそのような処理を行うことは困難である。そのため、従来、所定のパラメータが設定されたエフェクタにより、直接音に応じた残響を生成していた。 コンピュータゲーム等においては、同時に発音される音源(サウンド)の数が比較的多くなる場合がある。そのため、各音源に対して、聴取者と音源の位置関係に応じたパラメータが設定されたリバーブを用いる場合、処理コストが比較的大きくなる。そこで、同時に発音される複数の音源の各々の音量を調整して、共有された所定数(例えば、5個以下)のリバーブを用いて、当該複数の音源の各々に対する残響音を生成することが考えられる。この場合、処理コストは低減できるが、部屋の大きさ、形状、壁材質による違和感は比較的小さいとしても、聴取者と各音源の位置関係による違和感をユーザに覚えさせる場合がある。例えば、仮想3次元空間上におけるユーザと音の発生源との距離が比較的近い場合、または比較的遠い場合等において、聴取者と各音源の位置関係による違和感をユーザに覚えさせる場合がある。また、例えば、VR(Virtual Reality)のゲームで、BGM(Back Ground Music)等がなく、ユーザによる没入感が高い場合等において、ユーザに違和感を覚えさせる場合があるという問題がある。
【0050】
一方、上述した実施形態によれば、ゲームの仮想3次元空間におけるユーザの位置と、前記ゲームにおいて出力される音の発生源の位置との距離に応じて、前記音の初期反射音の音量と、前記音の後期残響音の音量との比が異なるように、前記距離に応じた前記初期反射音の音量と前記後期残響音の音量とをそれぞれ決定する。これにより、より違和感が低い残響音を出力することができる。また、物理法則に従って正確に算出する手法と比較して少ない計算コストで、違和感が比較的低い残響音を出力することができる。
【0051】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【0052】
情報処理装置10の各機能部は、例えば1以上のコンピュータにより構成されるクラウドコンピューティングにより実現されていてもよい。また、情報処理装置10は、ユーザの端末にゲームの画面を表示させる、オンラインゲーム用のサーバであってもよい。
【符号の説明】
【0053】
10 情報処理装置
11 記憶部
111 リバーブ設定データ
112 減衰曲線データ
12 受付部
13 制御部
14 算出部
15 決定部
16 残響音生成部
17 出力制御部