ゲームオーディオデータ環境の状況

CEDECアーカイブコナミの歴史的なサウンド制作環境の言及が有った: (PPSファイルはPowerPoint Viewerで開くことができる)

興味深い。

楽曲の環境

楽曲は別のCEDEC資料に見られるようなナムコフォーマット( http://cedil.cesa.or.jp/session/detail/38 )のように、単に発音すべき音をVごとに並べただけの簡素なものが暫く使われた後、↑のコナミの例のようにMIDIによるターゲットボードの発音等を経て、現代ではストリーミング - つまり"普通"のオーディオプロダクションで作られたADPCMなりVorbisフォーマットの音声をそのまま流す方式が殆どとなっている。
初期のゲームにはBGMがそもそも存在しなかったことは注目に値する。家庭用ゲーム機においても、ATARI VCS(2音しかない)等ではBGMが無いのが普通で、BGMがゲームに欠かせないものになっていくのは、それこそ、ファミコン以降の現象と言える。スーパーカセットビジョンのように明かにBGMのための考察が無い( http://homepage3.nifty.com/takeda-toshiya/scv/scv.pdf )ゲーム機も存在する。
汎用フォーマットの活用が行われるようになったのはかなり後期にあたる。例えばスタンダードMIDIファイル(*.mid)が標準化されたのは1991年で、ゲームSDKとして普通にサポートされたのがサターンやGBAくらいの世代のハードウェアになる。
MOD等Tracker系のフォーマットもそれなりに普及していた( http://togetter.com/li/521919 )。ゲーム機におけるPCM音源ハードウェアとMIDIフォーマットはほぼ同時にやってきたので、Trackerフォーマットを直接的にサポートしたゲーム機は無いように見える。SCEEはXMかS3Mのライブラリを出していた気がするが。。
BGMは既に現実的に考えられる範囲では十分な環境になってしまっている。いわゆるインタラクティブ・ミュージックの領域にはまだ余地は有るかもしれないが、純粋に表現/演出としての考察の段階を迎えているように思える。
PlaystationXboxでは、"カスタムサウンドトラック"としてゲーム中のBGMだけをミュートして再生させる機能を用意している。カスタムサウンドトラックとは、ゲーム中のBGMをユーザが用意したものに差し替える機能で、リッジレーサーのプレイ中にCDトレイを開けて音楽CDを入れるのと原理的には一緒である。ゲームはBGMと効果音を別々にレンダリングする必要がある。また、PS4やXboxOneではチャット音声のハンドリングも分離されているため、ゲームはBGM、効果音、チャットの3ストリームをレンダリングすることになる。(チャットは一般にヘッドセットにルーティングされる。多くのチーム対戦ゲームが自前の音声チャットフレームワークを持つためこのような配慮が必要になる。)
そのような意味では、ゲーム機は既に"BGMを聞かない"という選択肢まで提供していると言える。

効果音の環境

歴史的な"ゲームっぽい効果音"とは、矩形波のような単純な波形をスイープさせることで得られる。例えば、PC-9801DOS/Vのゲームでよく用いられたmaster.libに収録されているbgm.lib( http://www.vector.co.jp/soft/dos/prog/se004651.html )では、効果音として.EFSファイルを用いるが、これは周波数データをただ並べただけのテキストファイルとなっている。

  • 付属のドキュメント(BGM.MAN)

○ EFSファイル

 以下に述べる書式に準じた EFSファイルを読み込み、効果音
を出力させることができます。

1.データ

 4ms毎の出力周波数を数値データで指定します。 データは効
果音 1つにつき 256個(約 1秒)までで、データとデータの間は
スペースや改行(ようは数字ぢゃない文字)で区切ります。デー
タの範囲は 40〜無限大(嘘だよん unsigned long で取れる範
囲なのだ)で、0 で 1つの効果音データの終わりを表します。

文体に時代を感じる。
スペースインベーダにはデジタル的にプログラムできるオーディオハードウェアはなく、基本的にアナログ回路で構成されていた。これはいわゆるエレメカからの直線的な進化とも言える。プログラマブルビデオとプログラマブルオーディオのどちらが先に実装されたのかは判然としない。
効果音はまだまだ発展途上にある。サラウンドや3Dオーディオは未だにハードウェアも普及していない段階であり、今後も模索が続く領域と考えられる。多チャンネル化、オブジェクトオーディオ化はゲーム効果音にとっては重要なトレンドに見える。
↑のコナミの資料では、RSS(Roland Sound Scape)等が挙げられている。この資料は2006年のものなのでAC-3のリアルタイムエンコードは難しいとしているが、実際にはPS2でもDTSのリアルタイムエンコードタイトルは存在し、PS3/PS4ではシステム自体がAC-3エンコードに対応している。
HDMIは追加のエンコードに頼ることなく192kHz/24bits/8chまでのPCMオーディオの伝送をサポートしている。現状のPS4/XboxOneタイトルにはマルチチャンネルのものは普通に存在するが、48kHz以上のタイトルは存在しないように見える。

ショッキングなタイトルが付いたSQEXの資料では、自社製のオーディオ配置ツールについて解説している。OpenGLだけでは何も出来ずレンダリングエンジンが実際のゲーム制作に必要なのと同様、OpenALのような3DオーディオAPIだけでは何もできないため、適切なオーディオエンジンを開発する必要がある。
BGM表現のためのオーディオハードウェアと異なり、効果音のためのオーディオハードウェアは現在も発展を続けていると言える。Vita/PS4はオーディオDSPを搭載しているが3rd partyオーディオエンジンでの活用は圧縮音声のデコード程度に限られている。
Xboxは伝統的にかなり積極的なオーディオDSP戦略を取っており、例えばnVidiaのSoundstormは初代Xboxの開発成果と言われている。MSは3Dオーディオを熱心にサポートしているわけでは無いが、XboxOneでも強力なオーディオエンジンを専用の機能ブロックとして追加しており、Windows Driver Kitにもハードウェアオーディオオフロードを最近追加している

Windows8で追加されたハードウェアオフロードドライバは、従来のオーディオグラフを内包するハードウェアエンジンを表現することができるようになった。
これらの状況は、ハードウェア抽象化の悪い面を強調する。つまり、ハードウェア能力を活用しようと考えると、よい抽象化を行う必要が有る - そのような苦労はGPUだけでたくさんだが、相対的にCPUが弱体化している現状では、これを受け入れる必要がある。
興味深いことに、(FMODやWWiseのようなミドルウェアを見る限り、)ゲーム機の効果音フォーマットは、PlaystationXboxも、

  1. 低レイテンシ独自フォーマット(ADPCM)
  2. 中レイテンシ独自フォーマット(XMA/ATRAC)
  3. 一般的なオーディオフォーマット(MP3等)

のように2段階の独自フォーマットを持っている。低レイテンシフォーマットはいづれも独自のADPCMであり、中レイテンシフォーマットは周波数領域変換を伴うフォーマットが利用される。言うまでもなくADPCMはゲーム機におけるPCMオーディオの歴史の最初から存在するフォーマットであり、それが現代でも続いていると言うことができる。