見出し画像

UE5 MetaSound プロシージャルな音を作る 06 ~4つのジェネレータと合成~ #UE5 #MetaSounds

【今回のポジティブワード】
ピラミッドは頂上から作られはしない
ロマン・ロラン

始まりは、どんなものでも小さい
~キケロ~

1つ1つのノードを調べながら、コツコツ積み上げてようやくプロシージャルの基礎的な組み方が分かってきました。
されどまだ土台なので、ピラミッドの頂はまだ遠いです。

色々なポジティブワードを見ていても、
「継続」「まずは行動する」「失敗しても何度でもやり直す」
共通的な内容に気付きます。

失敗だろうが、積み上げていくうちに山となって、山の上に立った時に「まだまだ全然頂上にたどり着かない」と本人は思っていても、周りからは「高いところに立っている」と見られるのでしょう。

今日でプロシージャルな音作りについては一旦おしまいにして、次からは具体的な音(ファンの音、波の音)を作る方にシフトしていきます。

賽の河原のように、積み上げては壊していきながら、出来ることを増やしていきます!

【前回】

前回は【DelayでFX(エフェクト)をかける】について書きました。
今回は【4つのジェネレータと合成】について書いてみます。
前回からの続きです。

1. 4つのジェネレータと合成

1.1. 4つのジェネレータ

前回作成した MetaSoundを複製して、[MS_Procedual06]を作成します。

MS_Procedual05を右クリック > Dupulicate

同じMIDI Note Noが再生されるように、Randomの接続を解除します。

同じMIDI Note Noが再生されるようにRandomの接続を解除する

4つのジェネレータを追加します

  • [Saw]

  • [Sine]

  • [Square]

  • [Triangle]

[Saw] [Sine] [Square] [Triangle]を追加する

各ジェネレータのFrequencyに[MIDI To Frequency(Int32):Out Frequency]を接続します。
Ladder Filterの下あたりを右クリックし、[Switch]を追加します。

各ジェネレータのFrequencyに接続 > 右クリック > Switch

SwitchのInputピンに各ジェネレータのAudioを接続します。
・Input0:Sine
・Input1:Saw
・Input2:Square
・Input3:Triangle
[Switch:Selector]をInput化します。
[Switch:Selector]をドラッグ&ドロップし、[Promote To Graph Input]を選択します。

各ジェネレータのAudioをSwitchのInputに接続 > [Switch:Selector]からドラッグ&ドロップ > Promote To Graph Input

Input Nameを[Generateor Type 01]に設定します。

Input Name:Generator Type 01

[Play]ボタンを押してから、[Generator Type 01]の値を変更することで、各ジェネレータの音の違いを確認することが出来ます。

[Play]をクリック > Gererator Type 01のDefault Valueを変更

1.2. ジェネレータを合成する(Add)

ジェネレータを合成するように編集します。
Generatorの切り替え処理をすべて選択して、コピー&ペーストします。
SwitchのSelectorを変更していたInputは作り直します。Input Nameは[Generator Type 02]に設定します。

Generatorの切り替え処理をすべて選択して、コピー&ペースト
SwitchのSelectorを変更していたInputは作り直します。Input Nameは[Generator Type 02]

右側の[Switch:Output]からドラッグ&ドロップし、[Add(Audio)]を追加します。

右側の[Switch:Output]からドラッグ&ドロップ > [Add(Audio)]を追加

左側のGeneratorのFrequencyを少し高くしてFrequencyをずらします。
左側の[MIDI To Frequncy(Int32):MIDI In]からドラッグ&ドロップし、[Add(Int32)]を追加します。

MIDI To Frequncy(Int32):MIDI Inからドラッグ&ドロップ > Add(int32)

デフォルト値:60にし、AddのB側をInput化します。

Add(Audio) A:60 > Bからドラッグ&ドロップ > Promote To Grapth Input

Input Nameを[Detune]に設定し、Default Valueを[6]に設定します。

Input Name:Detune、Default Value:6

PlayしてGenerator Typeを1,2で変えてみると音に厚みが出ます。

1.3. 2つのジェネレータ合成をCrossfadeでずらす

Crossfadeで2つの合成音をずらしてみます。
音の合成処理をコピー&ペーストします。

音の合成処理をコピー&ペースト

コピー&ペーストした側の[Switch:Selector]を設定するInputを作り直します。
右側を[Generator Type 03]、左側を[Generator Type 04]になるように作り直します。

右側を[Generator Type 03]、左側を[Generator Type 04]になるように作り直す。

上側の合成処理(Add)から[Crossfade(Audio,2)]を追加します。

Add(Audio)のOutからドラッグ&ドロップ > Crossfade(Audio,2)

[Crossfade(Audio,2):Crossfade Value]をInput化します。

Crossfade(Audio,2):Crossfade Value > ドラッグ&ドロップ

Input Nameを[Crossfade]、Defaultを[0.1]に設定します。

Input Name:Crossfade、Default:0.1

二つの合成処理をCrossfadeで出力するように接続し直します。

二つの合成処理をCrossfadeで出力するように接続し直す

[Play]ボタンで再生し、Generator TypeやCrossfadeの値を変更して音を確認します。

1.4.ランダムなMIDI Note Noを送受信する

今までが単音だったので、MIDI Note Noをランダムになるように編集します。
今回は SendノードとReceiveノードで値を受け渡しします。

[Random(int)]の右側くらいを右クリックし、[Send Int32]を追加します。

Random(int)の右側くらいを右クリック > Send Int32

[Random(Int):Value]と[Send Int32:Int32]を接続します。
[Send Int32:Address]を[MIDI Note]に設定します。

Random(Int):ValueとSend Int32:Int32を接続 > Send Int32:MIDI Note

上側の合成処理の左側で右クリックし、[Receive Int32]を追加します。

右クリック > Receive Int32

[Receive Int32:Default]を[60]に設定し、[Receive Int32:Address]を[MIDI Note]に設定します。
[Receive Int32:Out]を[MIDI to Frequency(Int32):MIDI In]が変更されるように接続します。

[Receive Int32:Default]を[60]、[Receive Int32:Address]を[MIDI Note]に設定
[Receive Int32:Out]を[MIDI to Frequency(Int32):MIDI In]が変更されるように接続

[Receive Int32:Default]を下側の合成処理側にコピー&ペーストし、同様に接続します。

[Receive Int32:Default]を下側の合成処理側にコピー&ペーストし、同様に接続

[Play]ボタンをクリックし、再び1小節ごとに音がランダムに再生されることを確認します。
ここまでがプロシージャルの音作りになります。

2. Generatorノードについて

4つのGeneratorノードについて解説していきます。(パラメータについては随時加筆していきます。)

  • [Saw]

  • [Sine]

  • [Square]

  • [Triangle]

Generatorの4つの波形タイプ

この4つのノードの違いは「波形の形」が違います。

波形の違い

【Bi Polarについて】

オーディオ周波数を -1.0 から 1.0 の間で出力します。False の場合、 0.0 から 1.0 の間の単極の値を出力します。

MetaSound の参照ガイド
Generator ノードの入力
Bi PolarのON/OFF

その他のパラメータは随時分かり次第加筆します。
以下のURLの音の説明が分かりやすかったです。

3. Crossfadeノード

Crossfadeノードは0.0~1.0でIn(入力値)の出力を変更するノードです。

MetaSound は指定の入力間をブレンドするさまざまな Crossfade ノードを備えています。このノードは Crossfade Value (クロスフェード値) を使用して入力をブレンドします。例えば、入力値が 24Crossfade Value0.5 にすると、出力は 3 になります。
現時点では、このノードはブロック レートの浮動小数点パラメータによる線形クロスフェードのみに対応しています。将来的に、開発チームは一定パワーやカーブなどの非線形クロスフェードやオーディオ レート クロスフェードを追加する予定です。

MetaSound の参照ガイド
Crossfade ノード


まとめ

調べ切れていないノードのパラメータは随時分かり次第加筆していきます。
MetaSoundクイックスタートガイドで使用しているノードについてはある程度まで説明できるようになりました。

次回からは、[MetaSoundの組み方のテクニック][具体的な音の作り方]がお伝え出来るように書いていきます。

この記事が気に入ったらサポートをしてみませんか?