アセット触ってみたシリーズ:エディタ内でサウンドファイル加工!「FC Audio Tools」

ゲームでサウンド素材を作るとき、いつもどうしていますか?
私はDTMツールや効果音生成ソフトウェアで元となる音を作ってから、波形編集ツールでサウンドファイルを調整したのち、Unityにインポートしていました。
Unityエディタの中では、ステレオ→モノラルへの変換や、圧縮設定やサンプリングレートを設定できます。しかし、サウンドファイルの不要な部分をカットたり、波形データの音量を直接変更することはできません。Unityの中でのサウンドフィルタなどは、基本的にはスマートフォンやゲーム機で実際に再生されるタイミングでリアルタイム処理されるものだからです。
できればUnityエディタで波形データの加工をしたい…と思ったかたもいるかと思います。
そこで!Unityにサウンドファイルの編集機能を追加する「FC Audio Tools」を今回はご紹介します。
https://www.assetstore.unity3d.com/jp/#!/content/34561
エディタ内でサクッと波形編集「FC Audio Tools」
開発元のFuture Cartographerさん (@DEARNA) は日本の個人開発者さんです。
https://www.futurecartographer.com/
FC Audio Toolsはひとつのアセットとして配信されていますが、中には2つのツールが含まれています
- Wave Editor: 波形編集ツール
- Level Adjuster: 音量均一化ツール
アセットをインポートすると、この2つのツールがすぐ使用できるようになります。
「Wave Editor」はその名の通り、Waveファイルを加工するツールです
「Level Adjuster」は音声の均一化ツールです。
さて、サウンドファイルの加工は大きく分けて2つのアプローチがあります。
波形データそのものを加工する
wavファイルを上書きする形で、ボリューム調整や無音カット、フェードインアウトの処理を加えるものです。本アセットではこちらの加工を行います。
Unityでゲームを実行する際はサウンドを単純再生するだけなので、処理が軽くて済みます。
再生時にリアルタイムでエフェクトをかける
wavファイルはオリジナルデータのまま、Unityで実際にゲームを十個する際にリアルタイムでエフェクトをかけるアプローチです。
一つの音データから多様な表現が可能な一方、リアルタイム処理なので処理は重くなってしまいます。
波形加工か、リアルタイム処理か?
たとえばマイクのリバーブエフェクトは、波形データを加工することで実現すれば、再生時の負荷は加工前と同一です。しかし、表現は1つのパターンのみになります。
波形データを加工せず、再生時にエフェクトをかける場合は、1つの波形データからリバーブのかかり具合を変えた複数の表現ができます。しかし、処理は端末うえでリアルタイムに処理するため、重くなります。
モバイルゲームの場合はなるべく波形データの加工で対処し、どうしても容量やバリエーションを作る必要がある箇所にはリアルタイムの処理による演出を行う仕組みが良いでしょう。
波形編集ツール「Wave Editor」
はじめに、「Wave Editor」を見ていきましょう。こちらは音声素材ファイルを加工するツールになります。
Window -> FC Audio Tools -> Wave Editorから編集ウィンドウを開きます。
ウィンドウはこうなります。
さて、ここに何か適当な効果音ファイルを入れてみましょう。
手元にツールから出力したままの効果音データがありましたので、Unityにインポートしてからこのツールに読み込ませてみます。
波形のトリミング
こちら、単発の音声ファイルです。さる効果音ツールから出力したばかりの状態ですが、少々余白が長すぎます。これを切ってみましょう。
ドラッグで切り出したい範囲だけ選択します。選択範囲は緑色になります。
この状態で、「編集」-> 「トリミング」を実行します。
すると選択範囲だけ切り出された状態になります。
「保存」をクリックすると、波形ファイルが上書きされます。
エディタのインスペクター内でも、波形の無音部分が切り詰められているのが確認できると思います。
今回は単音のSEなので、インスペクターで「Force to Mono」にチェックを入れ、ビルド後のデータがモノラルファイルになるよう設定します。
元のデータは153KBだったのですが、これで91KBまで減らすことができました。Unityの内部的にはモノラル化されるので、ビルド後は45.5KBのデータになります。
波形の加工(フェードイン・アウト)
続いて、波形データを大幅に加工して短い音を作ってみましょう。
まず、前半部分を選択して削除します。「編集」-> 「切り取り」で削除できます。
前半部分を切り取りましたが、このままでは鳴り始めが不自然なので、フェードインを少しかけてあげます。
同様に、音の後半部分もカットした後に、すこしフェードアウトをかけます。
短い別の効果音が作成できました。「ファイル」->「名前を付けて保存」を選び、別名で保存しておきましょう。
こうすると、効果音の聞こえ方の印象がかなり変わります。
「Wave Editor」を使うことで、ちょっとしたサウンド加工であればUnityエディタ上でさくさくっと行うことができるようになります。
音量均一化ツール「Level Adjuster」
ゲームのサウンド素材はアセットストアからインポートしてきたり、ほかのツールから出力したり、ボイスデータなら複数の人から波形データが集まることもあるでしょう。それらの音量は、えてしてバラバラです。
音量を均一化する調整作業はとても面倒なのですが、Level Adjusterを使えばUnityエディタの中で一挙に処理することができます。
先ほどのツール同様、Window -> FC Audio Toolsから「Level Adjuster」を開きます。
音声を均一化したいサウンドファイルをすべてドラッグアンドドロップして、「解析ボタン」を押すだけです。
システムが自動的に音量を判定して、揃えてくれます。
ツールに表示されたサウンドデータを順番にすべて再生する機能もありますので、通しで聴いて不自然なところがあれば、手で音量を調整することもできます。
ちなみにこのスライダーバーを触っているときは自動で繰り返し再生になりますので、調整がすごく楽です。
すべての音量調整が終わったら、「ファイル」->「全て保存」を実行します。
素材が上書きされる旨のワーニングが出ますので、OKを押して保存しましょう。
加工したサウンドファイルのライセンスについて
FC Audio Toolsのウェブサイトには、このツール上で加工した波形ファイルにはロイヤルティが発生しない、とあります。
https://www.futurecartographer.com/fcaudiotools-ja(ページ下部)
元になるサウンド素材はもちろん用意する必要はありますが、ツールを使ってよい素材が生成できたら、それを配布したり販売したりすることも可能です。
その他の機能
FC Audio Toolには、波形ファイルの編集機能のほか、イントロ付きループ再生のデータを作る機能や、3Dゲームにおいての遮蔽音処理を行うサンプルが同梱されています。
まとめ
サウンドデータの加工と管理がとても便利になる「FC Audio Tools」、音が多いアドベンチャーゲームや、アクションゲームなどに向いていそうです。Unityプロジェクトの中でサウンドファイルが増えてきたら、ぜひ導入を検討してみて下さい。
https://www.assetstore.unity3d.com/jp/#!/content/34561
この記事を書いた人
一條貴彰株式会社ヘッドハイ 代表取締役
ゲーム作家・Game DevRel。小規模ゲーム開発者がもっと活躍できる世の中作りを目指して、ゲーム開発ツール・サービス専門のDeveloper Relation事業を行っています。ゲーム作家としての代表作は『Back in 1995』(Steam)。