11
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ADX + UE5でインタラクティブミュージック(AtomCraft編/新バージョン対応)

Last updated at Posted at 2019-11-27

はじめに

ADXアンバサダーとして執筆しておりますSigと申します。
この記事ではアンリアルエンジン5と、サウンドミドルウェア「ADX for UE」を連携させ、ゲームの状況によって変化するBGMをセットアップします。
ゲームの臨場感づくりに一役買うでしょう。
UE5.2+「ADX LE UE SDK(2.00.00.00)」を使用します。

前提

「ADX for UE LE」を使用します。導入や簡単な使い方は以下の記事にあります。
ADX for UEの導入で、一歩上のサウンド表現を(導入編/UE5/ADX新バージョン改訂版)

ADX for UEの導入で、一歩上のサウンド表現を(実践編)

やること

  • AtomCraftで動的に操作可能なBGMを作成
  • UE5にインポート
  • ブループリントでパラメータを操作
  • BGMのトラックごとにフェードイン・フェードアウトができるようにする
  • テストプレイ

AtomCraftでのセットアップ

まず、ひとつのBGMを3つに分割したwavファイルを用意しました。こちらをダウンロードしてください。
https://drive.google.com/open?id=1TJqtemlYZxxnt0n5Kj-cNYHFJtVLd35W
展開すると以下のようなファイルが入っています。
A01.png

これはひとつの楽曲を3つのパートに分割したもので、最初は静かなAパートのみ、ゲーム中でBパート、Cパートが加わると段々と賑やかな構成になるよう設計します。

AtomCraftでプロジェクトを作成

AtomCraftを起動し、新規プロジェクトを作成します。
A02.png

ワークユニットを作成します。
A03.png

ファイルを読み込む

先程ダウンロードした3つのwavファイルをAtomCraftにインポートします。
マテリアルツリーの「マテリアルルートフォルダ」にドラッグアンドドロップ。
A04.png
A05.png

AtomCueの作成

これらを同時に再生するAtom Cueを作りたいので、新規にキューを作成します。
「ワークユニットツリー」の「CueSheet_0」を右クリックし、キュー「ポリフォニック」を作成します。
A06.png

キュー内に、3つの音声をドラッグアンドドロップします。
A07.png
3つのトラックが作成されました。
すべての音声データを0秒の位置に揃えます。
A08.png

この状態で再生すると、3つのトラックが同時に流れ、完成形のBGMが流れます。
トラックのミュートボタンを押して、各トラック単体でも聞いてみましょう。
A09.png

##ループの設定
これらのサウンドはBGMとして扱いたいので、ゲーム中ではループ再生するよう設定してあげる必要があります。
マテリアルツリーで波形データをクリックして選択します。
A23.png
エディタ右側にある「インスペクター」で、**「ループ情報の上書き」を「True」**にします。
A24.png
のこり2つの波形データにも、同じようにループ設定をします。

##Aisacのセットアップ
UE5からAtomCue内のサウンドを動的に操作するのにあたって必要なのが**「Aisacコントロール」**です。
サウンドのボリュームなどをパラメータ化し、UE5側でfloat値を渡すことで任意に設定したカーブにしたがって変化させられます。
A27.png

まずはパートAのトラックを右クリックして「AISACの作成」を選びます。
A10.png
AISAC名はわかりやすいものを、AISACコントロールには**「Aisacコントロール_00」**を指定します。AISACグラフタイプは、今回はボリュームを変化させたいので「ボリューム」にします。
A11.png

新たなAisacコントロールが作成され、編集可能になりました。
A12.png
AISACの編集から今までのタイムライン編集に戻るには、下のタブをクリックして切り替えます。
A13.png
AISACリストの「ボリューム」を選択します。
A14.png
ボリュームを表す黄色いグラフが操作できるようになるので、線をドラッグして任意の形にしてみましょう。音量が左端で0、右端で1になるようにしてください。ポイント上で右クリックするとカーブの形状が変えられます。
A15.png
再生中に上部の数値をドラッグして動かすと、ゲーム内で数値が動いたときの変化を確認できます。0に近づくほどAパートの音量が小さくなるはずです。
A16.png
音が鳴らない場合、トラックがミュートされていないか確認してみてください。

パートBのトラックパートCのトラックも同様にしてAisacコントロールを作成します。
各トラックを個別のコントロールで操作したいのでパートBには**「AisacControl_01」を、パートCには「AisacControl_02**」を割り当てます。
A17.png
A18.png

トラックAと同様にカーブを編集します。
A19.png

すべて完了したら、上部のバーでAisacコントロール00,01,02の値を動かして、各パートのボリュームが変動するか試してみましょう。
A20.png

キューシートのビルド

UE5にインポートできるよう、キューシートをビルドします。

UE5で判別できるようキューの名前を変えます。
A25.png

あとはツールバーからビルドするだけです。
A21.png
A22.png

UE5側での実装は後編、「ADX for UEでインタラクティブミュージック(ブループリント編)」に続きます。

11
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?