Created on | Updated on

Unreal Engine の Apexで使用する粉砕モデルをHoudiniで作成する

UnrealEngineのPluginsウィンドウでApex Destructionが有効になっていることを確認します。

mceclip0.png

UnrealEngineに読み込んだメッシュデータを右クリック>Create Destructible Meshを選択します。

mceclip1.png

Destructible Meshが作成されます。

mceclip2.png

作成されたDMをダブルクリックで開き、Fractture Meshをクリックした後Explode Amountを使用してどのように粉砕されたのか確認可能です。

______1.png

Enable Impact Damgeを有効にし、衝撃でジオメトリが壊れるシミュレーションが実行できるようにします。

mceclip5.png

Saveをクリックし、ウィンドウを閉じます。

ビューポートにドラッグしてDMジオメトリを作成。

Simulate Physicsを有効にします。

mceclip4.png

Simulateを行うと

mceclip6.png

地面にぶつかって岩が壊れます。

mceclip7.png

壊れた後の形状の見栄えをよりよくするためにHoudiniの出番です!

Houdiniにジオメトリを読み込みます。(Houdiniの基本単位はメートルです。UnrealEngineとデータをやり取りする場合大きさに注意してください)

RBD Material Fractureを使用しこの岩を壊してみましょう!

mceclip9.png

RBD Material Fractureを接続するとすぐにジオメトリを粉砕することができます。
どのように分割されたのかを確認するにはRBD Explode Viewを接続すると便利です。

mceclip10.png

mceclip11.png

デフォルトでMaterial TypeはConcreteに設定されています。

mceclip12.png

その他、Wood、Glassと素材タイプを切り替えることが可能です。

Primary Fractureタブを確認すると、Fracture Levelが2に設定されており

mceclip13.png

1段階目で5個に分割し

mceclip14.png

2段階目でその5個に分割したものをさらに5分割しています。

mceclip15.png

今回はわかりやすくするために2段階目のFractureを削除し、1段階目のScatter Pointsを30にしました。

mceclip16.png

プリミティブアトリビュートを確認するとpiece0から

mceclip17.png

29までのちょうど30個のピースが作成されたことがわかります。

mceclip18.png

結果をみてみると、粉砕された断面があまりにもきれいすぎますね。

mceclip19.png

DetailタブでEdge Detailを有効にし、Detail Sizeを調整します。デフォルトは0.05ですが少し細かすぎたのでここでは0.2としました。

mceclip24.png

エッジが直線からランダムになり、断面にもディティールが追加されています。

mceclip25.png

この粉砕したデータをFBXとしてUnrealEngineに出力します。
正し、各ピースをそれぞれ塊として出力する必要があります。

つまり、各ピースを1つの連続した塊だと認識するアトリビュートが必要になります。

Connectivityノードを使用し、ConnectivityTypeをPrimitiveに変更します。

mceclip27.png

これで連続した塊ごとにClassが設定されます。

Attribute TypeをStringにすることで、Prefixにpieceと入力され

mceclip28.png

各塊ごとに1つの値が設定されました。

mceclip30.png

Class毎に色分けしてみました。

mceclip29.png

ConnectivityをROP Fbx Outputに接続し、出力します。

mceclip31.png

その際にBuild Hierarchy from Path Attributeを有効にし、Path Attributeをclassに設定します。

mceclip32.png

この機能は、プリミティブのStringアトリビュートを使用し、その値は、プリミティブが作成されるシェイプノードへのパスとして扱われます。

※出力する際にはメッシュの大きさに注意してください。

出力したFBXをHoudiniにロードしてみると各Class毎に異なるTransformとShapeが作成され、それぞれ独立したデータになっていることがわかります。

mceclip33.png

出力ができたら、UnrealEngineに戻ります。

Destructible Meshを開き、Import FBX Chunksをクリックします。

FBXが選択できるため、出力したFBXを読み込みます。

すると下記のようにエッジおよび断面にディティールが追加されたHoudiniの結果を読み込むことができました。

mceclip34.png

シミュレーションを行い結果を確認してください。

mceclip35.png

より複雑は設定は下記チュートリアルのステップ2をご確認ください。

https://www.sidefx.com/tutorials/real-time-destruction/

 

問題が解決しない場合は、Born Digital サポートまでお問い合わせ下さい。

※ 問い合わせ対応はBorn Digitalより製品をご購入頂きましたお客様のみのサービスとなります。ご了承下さい。
サポート問い合わせ