UE5 Stack O Botプロジェクトで少し面白い部分を解説
UE5 早期アクセス版に"Stack O Bot"という新しいサンプルプロジェクトが公式から提供されました。
www.unrealengine.com
unrealengine.com
シンプルながらもUE5最新の機能を使っていたり、少し特殊な実装をしている部分もあって非常に興味深いので、今回は少し趣向を変えて比較的軽めにサンプルについてを解説してみたいと思います。
プロシージャルミュージック
Stack O BotはUE5新機能であるMetaSoundsによる完全なプロシージャルミュージックによる動的楽曲生成が入ったサンプルになっています。説明によればソージェネレーター、エンヴェロープ、トリガーカウンター、リピート、スケールを使って作っているとのことです。MetaSoundsで曲を作れるようになってみたいという方にはちょうどいい規模のサンプルです。単純な楽曲であればこれだけで十分な楽曲生成ができるはずです。MetaSoundsで作曲してみたいという人の入門に丁度いいサンプルでしょう。
ファイルはAudioフォルダー以下にある"SFX_Music"という名前になっています。
以下は実際にMetaSoundsを触ってプロシージャルに曲を変化させているところ。
UE5 新サンプルプロジェクト「Stack O Bot」で使われているMetaSoundsによる完全プロシージャルなBGM。MetaSoundsを使って曲作りをしてみたい人に丁度いいサンプルになりそう。#UE5 #UE5Study pic.twitter.com/rzJeIvRy62
— alwei (@aizen76) 2022年1月23日
VTによる背景メッシュの馴染ませ
Stack O Botでは背景にランドスケープが使われており、その上に置かれている岩にはバーチャルテクスチャーによる馴染ませのブレンドが行われています。特にわかりやすいのはこういった岩ですね。
UE5 新サンプルプロジェクト「Stack O Bot」で使われているバーチャルテクスチャーによるランドスケープ上にある岩の馴染ませ。簡単な実装ながらも非常に綺麗にブレンドされていて、これもよいサンプル。#UE5 #UE5Study pic.twitter.com/eOvOLmn6D8
— alwei (@aizen76) 2022年1月23日
ベースマテリアルに"M_Rock"というマテリアルがあり、その中を覗くとどのような実装になっているのかがわかります。
ランドスケープさえ使っていればバーチャルテクスチャーを使っての馴染ませブレンドは難しくないので、参考に実装してみるのもよいと思います。
コントロールリグで動く床制御
最後にちょっと特殊な例として、Stack O Botには動く床が実装されています。この動く床はBPによる制御で、動き自体は"InterpTo"コンポーネントでつけられていて、動く範囲を"Spline"コンポーネントで決めています。ここでは普通ですが、動きの中にちょっと振動による回転の動きも入っています。
UE5 新サンプルプロジェクト「Stack O Bot」で使われている動く床の制御はなんとコントロールリグによる物理計算で動いてる。基本の動きをInterpToコンポーネントで動かしてリアルな揺れはコントロールリグ制御。当然スケルタルメッシュではなくスタティックメッシュ。これは面白いぞ。#UE5 #UE5Study pic.twitter.com/FZhDBhnpxK
— alwei (@aizen76) 2022年1月23日
もっと面白いのはこの動きはコントロールリグでつけられているということです。この床自体はただのスタティックメッシュなので、ボーンは持っていませんが、コントロールリグがボーンの動きをプロシージャルにつけてそれをメッシュ上に反映させているということです。ちょっと本来の用途とは違うかもしれませんが、あえてスケルタルメッシュじゃないものに動きをつけているというのが面白いです。
"CR_MovingPlatform"というコントロールリグ内で動きをつけています。
更にその動きを"BP_MovingPlatform"内でControlRigコンポーネントからイベントを取得して、スタティックメッシュへと反映。
コントロールリグは色々な使い道があると思っていますが、こういった動きを手軽につけられるのも色々な部分に役立ちそうで、特殊な使い方を覚えておくと非常に応用がききそうです。