【UE4】軟体や流体、布表現が楽しいNVIDIAのFleX導入方法

ソフトボディや布などの物理挙動が軽快に動作するNVIDIAのFleXをUE4で動作させるまでの手順になります。
FleXに関して
Blender等の3DCGソフトでソフトボディやクロスシミュレーションを行った事があると感じるかもしれませんが、現状では基本的に処理が重く実装した動作の検証も大変です。
NVIDIAが提供するミドルウェア、「FleX」では複数の柔らかいオブジェクトや布等が軽快に動作しているのが確認できます。
Blenderのソフトボディ等の物理シミュレーションが重すぎて悲しくなったので、UE4でNVIDIAのFleXを試してみる。サンプルの柔らかベーコン達に若干の狂気を感じる・・・。#UE4 #FleX #NVIDIA pic.twitter.com/vIASwbH5c4
— ビントロリン (@binto_red) October 23, 2019
これなら、Blender上でソフトボディやクロスの物理シミュレーションの動作結果を検証するよりも、作成したモデルをUE4にインポートしてFleXで色々揺らして動作確認する方が効率的で楽しそうです。
「Flex」はUnity用のプラグインと、Flex仕様になったUE4がGitHubに公開されていますが、今回はFleX仕様のUE4導入に関する内容です。
FleX仕様のUE4を実行するまでの手順
Flex仕様のUE4入手から実行までに必要なものは下記になります。
- VisualStudio 2015 Update 3
- Epic GamesアカウントとGitHubアカウントの接続
- GitHub Desktop
- UE4 FleX-4.19.2
VisualStudio 2015のインストールと設定
GitHubに公開されているFleX仕様のUE4はソースコードなので、コンパイラーが必要になります。導入で使用するバッチファイルがVisual Studio 2015を要求してくるので、自分はVisual Studio Community 2015の Update 3をインストールしました。
しかし、現在古いバージョンにあたる2015をダウンロードするには中々めんど臭く、マイクロソフトのVisual Stuidoのページでは執拗に2019のダウンロードを進めてきます。
さらに古いバージョンをインストールするにはマイクロソフトアカウントが必要だったり、 「Visual Studio(MSDN)のサブクリプションにログインするか、無料のDev Essential プログラムに参加して、以前のバージョンにアクセスしてください。」 といった手続きが必要だったりします。
自分は無料のDev Essential プログラム参加の方にしました。
ー 古いバージョンのVisual Studio ダウンロードページへ ー
Visual Studio 2015をダウンロードしてきて、特に何もせずにインストールしたならば後の手順でバッチファイルを実行する際にエラーがでます(汗
初期状態のインストールではC++関係の開発ツールが含まれてないため、インストール済みならばWindows10の場合「アプリと機能」でインストール済みのVisual Studio 2015を選択して「変更」からC++関係の機能を追加する事ができます。

Epic GamesアカウントにGitHubアカウント接続
GitHubにあるUE4のC++ソースにアクセスするためには、Epic Gamesアカウントの設定にある「接続済みアカウント」のGitHubアカウントを接続状態にする必要があります。
詳しいやり方はこちらのUE4公式ページにあるGitHub接続方法で説明されてます。
下記画像のようになればOKです。

GitHub DeskTopのインストール
GitHubに公開されているUE4のソースをローカルのリポジトリに落とす方法の一つとして、簡単なのがGitHub DeskTopを使う方法です。
こちらのページからダウンロードしてインストールします。
UE4 FleXの入手とサンプルの実行
Flex入りのUE4が公開されているGitHubのページへ行きます。
ちなみに、Epic GamesアカウントとGitHubアカウントの接続が上手く行っていないと、ページが404になって表示すらされません。
ページを表示して、「Branch」の部分が「NVIDIA – README」になっている場合があるので、とりあえず現状の最新バージョンっぽい「FleX-4.19.2」に切り替えます。
FleX-4.19.2になっている事を確認したら、「Clone or download」を押して「Open in Desktop」を選択します。

「Open in Desktop」を選択すると、インストールしたGitHub Desktopが起動してローカルのリポジトリを作成する場所を聞いてくるので、お好みの場所を設定して「Clone」ボタンを押します。

Cloneが完了したらGitHub Desktop側の画面を開きます。プラウザ側のbranchを「FleX-4.19.2」にしたものの、GitHub Desktop側のbranchは「NVIDIA-README」になっていたのでこの時点ではtxtファイルしか落ちて来てませんでした(汗
GitHub Desktop側のbranchを「FleX-4.19.2」に切り替えます。

切り替える事でローカルのリポジトリにファイルが落ちてくるので、その中の「Setup.bat」を実行します。途中ユーザーに許可を求めてくるので、許可するようにします。
Setup.batが完了したら、次に「GenerateProjectFiles.bat」を実行します。

GenerateProjectFiles.batが完了すると、「UE4.sln」というVisual Studioのプロジェクトファイルが生成されるので、起動します。
起動すると下の方に青帯で「ソリューションのファイルを解析しています」となり、この解析が結構時間かかりますが「準備完了」となるまで待ちます。
準備完了となったら、ソリューション構成が「Development Editor」、ソリューションプラットフォームが「Win64」(64bitOSなので)、スタートアッププロジェクトが「UE4」になっている事を確認します。恐らく初期状態でなってると思います。
確認できたらソリューションエクスプローラーの「UE4」を右クリックして「ビルド」を行います。
これまたビルドは時間が掛かりますが、辛抱強く待ちましょう。

ビルドが完了したら「F5」キーでデバック実行し、UE4エディターを起動します。
UE4エディター起動時の「初期化しています」表示でパーセントが45%から全く進まず長時間待たされる事があり、たいそう不安な気持ちになるかもしれませんが、Visual Studioのログが進んでる事で確認できるように動いてるので辛抱強く待ちます。
UE4エディターのマイプロジェクトが起動するので、「FlexProject」があれば今までの作業は成功です。FlexProjectを起動してみましょう。

FlexProjectを起動すると、大量の柔らかベーコンやタコ、輪っかに紐のオブジェクトが用意されたサンプルプロジェクトを実行する事ができます。

以上がUE4でFleXを実行する手順となっています。
ディスカッション
コメント一覧
まだ、コメントがありません