アルゴンUE4/UE5&アプリ開発日記

UE4/UE5の機能やプラグインを紹介します。初心者や中級者向けになってます!!

【UE4】4.23のプレビューでChaosを使ってみた(=゚ω゚)

Chaosを使ってみます。

今回はUE4のVer4.23からPreviewとして開始するChaosと呼ばれる、

新しい物理システムになります。

※どうやって設定してどのように動かすのかの一連の流れのみ説明してます。

 (備忘録みたいな感じです・・・・・)

UE4.23 Preview5を使ってみています。

※Windows10で試してください!!

(Windows7だとGeometoryColection生成時にクラッシュしました・・・)

参考にしたのは下記の公演になります(・∀・)

www.youtube.com

Chaosの細かい説明について

ここではChaosで何ができるのかや、

どういったものが対象で破砕できるか等紹介していきます。

※間違っていたらコメントいただけると幸いです・・・。

どういった事ができるのか?

スタティックメッシュに対してどのように破壊されるかを、

ジオメトリコレクションで設定して、

どのように破砕されるかの設定などが行なえます。

また、エフェクトや音と組み合わせて使用できます。

niagaraやマテリアルとしての対応などもあるようです。

どのようなものを使用して動作するのか?

Chaosを使って破砕表現を行う場合は、

どのような破砕表現にするかを設定するGeometlyColectionと、

デバックやフロア設定・当たり判定などの設定を行うChaosSolverを使用します。

それ以外にもChaosでniagaraを使用する場合の、

ChaosNiagaraなどのプラグインも使用します。

他にもどのような流れで破砕を促すのかを設定する、

ChaosFieldなど多岐に渡り設定が行なえます。

※プレビューではC++プロジェクトかつエンジンビルドする必要があります。

※もっと細かい説明はGDC2019に紹介されています。

www.youtube.com

エンジンビルドを行う

下記のリンクの場所からエンジンのデータをダウンロードします。

※プレビュー5のタグになっています。

https://github.com/EpicGames/UnrealEngine/tree/4.23.0-preview-5

Zipファイルを解凍します。

解凍が終わったら下記の画像の順番でbatファイルを起動します。

f:id:yoshikata1990:20190822211607p:plain

batファイルの起動

バッチファイルを動かすとUE4.slnが出来上がるため、

VisualStudioで起動します。

起動したら検索で「bCompileChaos」で検索すると二か所出てくるので、

TargetRulesのほうにある「bCompileChaos = true;」にします。

f:id:yoshikata1990:20190822211956p:plain

プロジェクト設定

上記の設定が終わったら、UE4Editorをビルドします。

ビルドが完了すると「Engine/Binaries/Win64」の中にUE4Editor.exeが出来ます。

これがChaosを使用するようにビルドしたEditorになります。

f:id:yoshikata1990:20190822213621p:plain

Chaos用のエディタの場所

UE4Editorを起動したら、C++のプロジェクトを追加します。

今回はFPSのテンプレートを使用して試してみます。

f:id:yoshikata1990:20190822215111p:plain

Chaosを試すプロジェクトを作成する。

プロジェクトを作成したらビルドしてデバッグして動作するか確認します。

デバッグで動作することを確認したら、

ドキュメントフォルダのuprojectから起動します。

これ以降はプロジェクトでChaosを使用する方法の説明になります。

実際にChaosを使ってみる。

ここからは実際にプロジェクトを設定して、Chaosの破砕を行っていきます。

プロジェクトのプラグイン設定で必要なプラグインを追加します。

まずChaosを使用するためにはChaosSolverとChaosEditorを追加します。

f:id:yoshikata1990:20190825164046p:plain

プラグインの追加(その1)

続いてGeometoryとPlanarCatプラグインを追加します。

f:id:yoshikata1990:20190825164156p:plain

Geometoryプラグイン

f:id:yoshikata1990:20190825164414p:plain

PlanarCatプラグイン

プラグインの追加の準備はこれで完了です。

ここから、GeometoryCollection(破砕させる物)の設定を行っていきます。

手順は下記の通りです。

1.モードタブ一番右のタブ(FractureEditor)を選択する。

2.破砕対象にしたいスタティックメッシュを選択する。

3.FractureEditorのSelect項目一番右のボタンを選択する。

f:id:yoshikata1990:20190825165857p:plain

GeometoryCollectionの追加手順

手順3のアイコンボタンを押すと下の画像のように、

どこにGeometoryCollectionファイルを保存するかのダイアログが表示されます。

f:id:yoshikata1990:20190825170129p:plain

GeometoryCollectionの保存

保存したい場所を選択してCreate Geometory Collectionを選択すると作成されます。

作成が完了すると下の画像のように、破砕する形を表示している枠線が出ます。

f:id:yoshikata1990:20190825171235p:plain

破砕する予定の線

注意点として、まだ破砕される準備が整っていません。

この状態から、モードタブのFractureEditorでどのように粉々にするか設定します。

今回は一旦この状態で分解されるようにします。

モードタブのFractureEditorのFracture項目の一番下のFractureボタンを押します。

f:id:yoshikata1990:20190825172258p:plain

Fractureボタンの場所

ボタンを押すと破片の部分がそれぞれ色がついて、

どのような破片になるのかわかるようになります。

f:id:yoshikata1990:20190825174237p:plain

Fracture後のメッシュ

ここまででGeometoryCollectionの設定は完了ですが、

GeometoryCollectonの物理設定の管理をするChaosSolverの設定を行います。

コンテンツブラウザを右クリックして、フィジックスのChaos Solverを選択します。

f:id:yoshikata1990:20190825174824p:plain

ChaosSolverファイルの追加

追加したらレベル上に配置します。

ChaosSolverでは地面の高さの位置や破砕のシミュレーションの一時停止

当たり判定のフィルターなど設定できます。

Floorを設定して指定した高さをすり抜けないように設定します。

f:id:yoshikata1990:20190825181726p:plain

ChaosSolverの地面あたり判定設定

ここまで完了したら実際に動作させてみましょう。

先ほど作成したブロックをコピーして、コピーしたものを置いてぶつけてみます。

どちらのブロックも指定されたパーツに合わせて砕けます。

実際に動かすとこんな感じです。

GeometoryColectionとChaosSolveの簡単な使い方は以上になります。