物理コンストレイント プロファイルの適用方法

ブループリントによる物理コンストレイント プロファイルのスケルタルメッシュ コンポーネントへの適用方法の説明です。

Windows
MacOS
Linux
前提トピック

このページは以下のトピックへの知識があることを前提にしています。まず以下のトピックの内容についてご確認をお願いします。

このページ中

ポーンSkeletal Mesh Component物理コンストレイント プロファイル を有効にするためのシンプルなグラフの作成ステップを説明します。

ステップ

  1. ブループリントを Skeletal Mesh Component で開く、あるいは作成します。

    • ブループリントに Skeletal Mesh Component がない場合は、 [Components] パネル を使って追加します。

    addSkelMeshComp.png

  2. Skeletal Mesh Component の [Collision] 設定を調整します。

    • Skeletal Mesh Component[Collision Enabled] を選択してポーンとはインタラクトしないように、[Collision Preset] を変更します。もし Pawn カプセル (他のジオメトリ) が存在する場合は、コリジョン設定に互換性があることを確認してください。例えば、ポーン のカプセルを使って、ポーン のコリジョンが無視されることを確認します。

      collisionSettings.png

      [Object Type][Pawn] に設定され、コリジョン チャネルでは ポーン が無視されるようになったことが分かります。こうすることで、スケルタルメッシュ がコリジョン カプセルから 出ようとする問題が修正されます。ただし、スケルタルメッシュ を別の ポーン と衝突させたい場合、自分の スケルタルメッシュObject Type を調整して、 その [Object Type] との カプセル の衝突方法を変更します。カスタム コリジョン チャネル の詳細は、カスタム仕様のオブジェクト タイプをプロジェクトに追加する を参照してください。

  3. Physical Animation Component[Components] パネル を使ってブループリントに追加します。

    addPhysAnimComp.png

  4. 変数を追加し 「Bone Name」 と名前を付けます。

    variableName.png

  5. コンパイルして Bone Name 変数に値を設定できるようにします。

    compile.png

  6. Bone Name のデフォルト値をターゲットにする Bone に変更します。ここでは [spine_01] です。

    boneName.png

  7. イベントグラフ に切り替えます。

  8. Event BeginPlay イベントノードを検索、または作成します。

    eventBP.png

  9. Skeletal Mesh Component に参照を追加します。

    addSKMPref.png

  10. Skeletal Mesh Component の青いピンを引き出して Set Constraint を検索します。

    createSetAll.png

  11. Set Constraint Profile for All ノードを追加します。

    • TargetSkeletal Mesh Component です。

    • Profile Name は、物理アセットツール (PhAT) で作成した (する) コンストレイント プロファイル の名前です。

    • (オプションの) Default if Not Found は、プロファイルにボーンが存在しない場合、現在の設定を維持します。

    constraintProfNodeSettings.png

  12. Set All Bodies Below Simulate Physics Node を Apply Physcial Animation Profile Below ノードに接続します。

    • TargetSkeletal Mesh Component です。

    • In Bone NameBone Name 変数を入力として受け取ります。

    • New SimulateTrue に設定します。

    • ターゲット ボーンとして「spine_01」を使用しているので、ここでもまた Include Self にチェックマークを入れます。

  13. 最終的なグラフ:

    Copy Node Graph

    fullGraph.png

    グラフには表示されない情報

    変数

    説明

    Bone Name

    spine_01

    スケルタルメッシュのシミュレーション部分を定義するために Set All Bodies Below Simulate Physics で使用します。

    コンポーネント

    説明

    Skeletal Mesh Component

    Constraint Profile を適用させる Skeletal Mesh Component です。Character の派生である場合、名前は Mesh になります。

結果

ゲームをプレイすると、コンストレイント プロファイル に引き継がれます。設定に応じて、キャラクターがばらばらになったり、組み込まれているモーターが腕を振り回したりします。

result.png

このエフェクトを出すには、上腕のコンストレイントの [Linear Limits][Free] に設定します。

achievedBy.png

追加の資料

Select Skin
Light
Dark

新しい Unreal Engine 4 ドキュメントサイトへようこそ!

あなたの声を私たちに伝えるフィードバックシステムを含め、様々な新機能について開発をおこなっています。まだ広く使える状態にはなっていないので、準備ができるまでは、ドキュメントフィードバックフォーラムで、このページについて、もしくは遭遇した問題について教えていただけると助かります。

新しいシステムが稼働した際にお知らせします。

フィードバックを送信