髪のレンダリングとシミュレーションのクイック スタート

プロジェクトのキャラクターに髪のレンダリングとシミュレーションを適用するためのクイック スタート ガイドです。

Windows
MacOS
Linux

髪のレンダリングとシミュレーションに関する本ガイドでは、Unreal Engine 4 (UE4) でスキン メッシュ上の Hair Groom に対して作業を行う際の基本について説明します。

このチュートリアルでは、以下の習得を目指します。

  • 髪のレンダリングとシミュレーションを適用するプロジェクトの設定方法。

  • アニメートされたスケルタル メッシュで使用するための Groom の設定方法。

  • シンプルな Hair マテリアルの設定方法。

  • 髪用物理の有効化および調節方法。

1 - 必要な設定

  1. Unreal Project ブラウザ を使用して「Third Person (サードパーソン)」テンプレートで新しいプロジェクトを作成します。

  2. エディタのメイン メニューから [Edit (編集)] > [Project Settings (プロジェクト設定)] を選択して、[Project Settings (プロジェクト設定)] ウィンドウを開きます。[Rendering (レンダリング)] > [Optimizations (最適化)][Support Compute Skin Cache (スキンキャッシュの計算をサポート)] を有効にする

    1_1_ProjectSettings.png

    エディタのウィンドウの右下隅に [Restart Now (今すぐ再起動)] ポップアップが表示されますが、次の手順でもエディタの再起動が必要になるため、この時点では無視してもかまいません。

  3. メイン メニューに戻って [Edit (編集)] > [Plugins (プラグイン)] を選択し、[Plugins (プラグイン)] ブラウザ ウィンドウを開きます。

    1_2_Plugins_a.png

    検索バーで「Groom」を検索するか、左側のパネルで [Geometry (ジオメトリ)] カテゴリを選択し、次のプラグインを有効にします。

    • Alembic Groom Importer

    • Groom

  4. エディタを再起動して、プロジェクト設定とプラグインの変更を有効にします。

    1_3_Restart.png

2 - グルームを作成してインポートする

キャラクター向けのグルームには、シンプルなものであっても、さまざまなタイプの髪 (頭の毛、髭、眉毛など) が含まれます。これらのタイプの髪には、独自のマテリアルや物理設定を持つものもあります。また、シミュレーション時に使用される髪など、1 つのグループ内に複数のタイプの髪が含まれている場合もあります。この情報は DCC アプリケーションでのグルーミングの際に定義することができ、UE4 ではこの情報に基づいてガイドを定義します。

  1. お使いの DCC アプリケーションでグルームを作成し、Alembic (.abc) ファイル形式でエクスポートします。

    Alembic for Grooms の仕様 」を参照し、適切な命名規則に従ってグルームを UE4 向けに準備します。

  2. コンテンツ ブラウザの [Import (インポート] ボタンをクリックして、グルームを含む Alembic ファイルをインポートします。

    2_2_ImportGroom.png

  3. [Groom Import Options (グルーム インポート オプション)] ウィンドウで [Import (インポート)] をクリックします。

    2_3_GroomImportOptions.png

グルーム システムでは、インポート プロセス中に、「Alembic for Grooms の仕様 」ページで説明されている Alembic の命名規則に準拠する属性とグループを検出して、これらを新しグルーム アセットにインポートします。

3 - グルームでスケルタル メッシュを設定する

本ガイドのこのセクションでは、「サードパーソン」テンプレートに含まれる SK_Mannequin を使用します。これをお持ちでない場合は、コンテンツ ブラウザの [Add New (新規追加)] > [Add Feature or Content Pack (機能またはコンテンツ パックの追加)] をクリックして、ThirdPerson テンプレートを選択することでプロジェクトに追加することができます。

また、これと同じ設定をキャラクター ブループリント内にも適用できることに留意してください。

  1. コンテンツ ブラウザ内で SK_Mannequin スケルタル メッシュを選択し、シーン内にドラッグします。これは、「Mannequin」 > 「Character」 > 「Mesh」フォルダ内にあります。

  2. シーンでそのスケルタルメッシュを選択した状態で [Details] パネルの [Add Component] ボタンをクリックして Groom コンポーネントを探して追加します。

    3_2_AddGroomComponent.png

  3. Groom コンポーネントを選択します。次に、[Groom] セクションで Groom Asset を使ってインポートしたヘア グルームをこのスケルタルメッシュに割り当てます。

    3_3_AssignGroomToSkelMesh.png

  4. このセクションでフラグ Bind Groom to Skeletal Mesh を有効にします。有効にすると、グルームが配置されアタッチされたスケルタルメッシュの動きに従います。

    3_4_EnableBindingToSkelMesh.png

    このプロパティを有効にするには、Support Compute Skin Cache のプロジェクト設定を有効にする 必要があります。有効にしないと、このプロパティはグレーアウトされます。

バインディング アセット (オプション)

このスケルタルメッシュ用のグルームのプロジェクト データをキャッシュするために、バインディング アセットの作成および割り当てを行うことができます。バインディング アセットが提供されない場合、グルーム プロジェクションは起動時に GPU 負荷が追加された状態で実行時に行われます。

バインディング アセットを作成するには、以下の操作を行います。

  1. コンテンツ ブラウザで Groom アセットを探します。グルームを右クリックして、コンテンツ メニューを使って [Create Binding (バインディングを作成)] を選択します。

    3A_1_MenuCreateBinding.png

  2. [Groom Binding Options (グルーム バインディング オプション)] ウィンドウが表示されます。アセットを作成するには、ターゲット スケルタルメッシュ を割り当てて、類似するトポロジーを共有する ソース スケルタルメッシュ をオプションでターゲット スケルタルメッシュとして指定します。これらのスロットを割り当てたら [Create (作成する)] をクリックします。

    3A_2_GroomBindingOptions.png

  3. レベルでスケルタルメッシュを選択します。[Details (詳細)] パネルを使って [Components] パネルで Groom コンポーネントを選択します。[Groom] セクションで、フラグ [Bind Groom to Skeletal Mesh] が有効にされていることを確認し、[Binding Asset] スロットを使って作成したバインディング アセットを割り当てます。

    3A_3_AssignBindingAsset.png

バインディング アセットが Groom コンポーネントに割り当てられると、フラグ Bind Groom to Skeletal Mesh が自動的に設定され、バインディング アセットの配置中は無効にすることができません。

4 - Hair (ヘア) マテリアルを設定する

UE4 には、デフォルトでシンプルな Hair マテリアル、HairDefaultMaterial が用意されています。

UE4 にはデフォルトの Hair (ヘア) マテリアルが用意されているため、以下の手順は任意ですが、まだ Hair マテリアルを設定したことがなければ、以下の手順に従うことで、Hair マテリアルの設定に必要なプロパティや設定について学ぶことができます。

  1. コンテンツ ブラウザで [Add New (新規追加)] ボタンをクリックし、ドロップダウン メニューから [Material (マテリアル)] を選択して、アセットに名前を付けます。

    4_1_AddNewMaterial.png

  2. マテリアル エディタの [Details (詳細)] パネルで、次のように設定します。

    4_2_MatShadingModel1.png

    • Shading Model:Hair

    また、[Use with Hair Strands (髪ストランドで使用)] を有効にする必要もあります。マテリアルが Groom コンポーネントに適用されると、このチェックボックスが自動的にオン (有効) になり、マテリアルが再コンパイルされます。自動的に有効にならない場合は、マテリアル エディタの [Details (詳細)] パネルにある [Usage (使用方法)] カテゴリでこれを有効にすることができます。

  3. マテリアル グラフ内で、基本的な Hair マテリアル向けに次のようにノードを設定します。

    4_3_MatGraphSetup.png

    ベース カラーには Constant4Vector を使用し、ラフネスの制御には 定数 を使用します。

    より複雑な Hair マテリアルを設定する場合は、マテリアル グラフ内で HairAttribute 式を使用して、UV、Dimensions (寸法)、RootUV (ルート UV)、Seed (シード) などの髪の属性にアクセスします。

  4. マテリアル エディタを 保存して閉じます

  5. Hair マテリアルは、レベル内の [Details (詳細)] パネルまたはブループリントを通じてグルーム アセット コンポーネントに直接適用するか、コンテンツ ブラウザでグルーム アセットを開いて適用することができます。Hair マテリアルを [Material (マテリアル)] 要素スロットに割り当てます。

    4_5b_MatGroomActor.png

    4_5a_MatGroomActor.png

    Groom Asset アクタ ([Details (詳細)] パネル)

    Groom アセット (コンテンツ ブラウザ)

5 - 髪の物理を設定する

この手順では、グルーム アセットを使用して物理シミュレーションを追加します。

  1. コンテンツ ブラウザでグルーム アセットを探します。

  2. Hair Physics カテゴリで、[Enable Simulation (シミュレーションを有効にする)] の横のボックスにチェックを入れます。

    HairPhysicsGroomSettings.png

有効にすると、Hair Physics カテゴリ内のプロパティを使って、髪の物理プロパティを制御することができます。

これらのグルーム アセット プロパティの詳細については、「ヘア レンダリングとシミュレーション設定 」を参照してください。

有効にすると、エディタの作業中およびプレイ インエディタ (PIE) またはシミュレート インエディタ中に物理が髪に適用されていることが確認できます。

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback