ヘア アート指示可能性機能により、アーティストは Unreal Engine で髪の束を直接シェイプし、アニメーション化できます。 ジョイントベースの変形とペイントを使用して、髪のガイドと束を作成および制御し、シミュレートされたヘア物理とアートディレクションされたアニメーションをシームレスにブレンドします。
アセット
属性の設定が必要なアセットが主に 3 つあります。Groom asset (グルーム アセット)、Character Blueprint (キャラクター ブループリント)、Deformer Graph asset (デフォーマー グラフ アセット) です。これらのアセットは全て、意図したとおりに動作させるために、それぞれの設定を調整する必要があります。
グルームアセット
既成のグルームを使用することも、新しいグルームを作成することもできます。 開始するには、まずプロジェクトに追加する必要があります。
グルームをダブルクリックして開きます。
[Asset Details (アセット詳細)] タブの下にある [Hair Data Flow (ヘア データ フロー)] セクションを見つけます。
[Create Groom Dataflow (グルーム データフローを作成)] ボタンをクリックします。
ダイアログのポップアップで、使用するテンプレートを選択します。
クリックすると、テンプレート グラフによって、必要な全てのノードを含む基本的なデータフロー グラフが作成されて割り当てられます。これにより、迅速に設定することができます。 作成されると、自動的にエディタが開いて、新しいデータフロー グラフが表示されます。
[Asset Details (アセット詳細)] タブの [Hair Physics (ヘア物理)] セクションで、リグで変形させるグループ ID を見つけます。 [Deformation (変形)] チェックボックスをオンにします。 これにより、シミュレーション システムだけでなく、リグによって髪を変形させることができます。 グルーム指向性を有効にするには、このチェックボックスをオンにする必要があります。
[Enable Simulation (シミュレーションを有効化)] が無効であることを確認します。 無効になっていないと、シミュレーションも実行され、アート ディレクションの影響がオーバーライドされます。
キャラクター ブループリント
キャラクターのブループリントで、グルームにデフォーマー グラフと、変形 rig.joints を含むスケルタルメッシュを追加する必要があります。
まず、グルーム コンポーネントを見つけて、グルームのデータフロー グラフで設定したデフォーマー型のデフォーマー グラフを追加します。
例:
ガイドを使用してグルームを変形させるには、
DG_GuidesSkinningデフォーマーを選択します。束を使用して変形するようにデータフロー グラフを設定するには、
DB_StrandsSkinningを選択します。スプライン デフォーマーでも同様です。
次に、作成したジョイント階層に合わせてスケルタル メッシュを追加し、グルームを変形できるようにします。そのためには、スケルタル メッシュ コンポーネントを追加し、適切なスケルタル メッシュを選択します。
機能別サンプル プロジェクトでは、この機能の例を示すレベルが作成されています。 スケルタル メッシュは、グルーム内に隠された小さな三角メッシュとともに使用されています。髪のジョイント チェーンの最後のジョイントにスキンされています。 この三角形メッシュを使用することで、ヘルメット メッシュを使ってスキン ウェイトを転送できます。これはキャラクター BP 内でヘルメットを使う必要がなく、グルームが隠れてしまう問題を避けられます。
キャラクターにこのコンポーネントを追従させるには、AnimationBP (アニメーション ブループリント) を追加し、以下のノードを接続します。
Copy Pose from Mesh
出力ポーズ
Copy Pose from Mesh (メッシュからポーズをコピー) ノードの [Use Attached Parent (アタッチされた親を使用)] ボックスにチェックを入れます。 必要に応じて、Rigid Body (剛体) ノードや Modify Transform (トランスフォームを変更) ノードなどの他のノードをここに追加することができます。
詳細は、「UE コントロール リグ」ドキュメントを参照してください。
独自のテンプレートを作成する
以下の場所にデータフロー アセットを追加することで、独自のテンプレート ファイルを作成できます。
Engine/Plugins/HairStrands/Dataflow/Templates
一度追加すると、次回データフロー テンプレート ウィザードを実行するときに、表示されます。