Language:
Page Info
Skill Level:
Engine Version:

ブレンドスペースを作成する

ブレンドスペース は 2 つの入力値に基づいたアニメーションのブレンドを可能にする AnimGraph でサンプリングできる特殊なアセットです。 単一の入力に基づいた 2 つのアニメーションの単純なブレンドは、Animation ブループリントで利用可能な標準の ブレンド ノード の一つを使用して行うことができます。 ブレンドスペースは、複数の値 (現在は 2 に限定) に基づいた複数のアニメーション間で一段と複雑なブレンドを可能にします。

このガイドでは、キャラクターの移動の速度と方向に基づき歩行とジョギングのアニメーション間でブレンドするためにブレンドスペースを使用します。

このガイドでは Blueprint Third Person プロジェクトを使用し、Animation Starter Pack をプロジェクトに追加しました。

AnimationAssetPack.png

Animation Starter Pack はエピックのランチャーの マーケットプレイス から無料でダウンロードすることができます。

ステップ

  1. プロジェクトの「 Content/ThirdPersonBP/Blueprints 」フォルダで ThirdPersonGameMode を開き、Default Pawn ClassUe4ASP_Character に設定します。

    BlendSpace1.png

    これで Animation Starter Pack プロジェクトと共に作成されたプレイ可能なキャラクターを使用することができます。

  2. レベルで ThirdPersonCharacter を選択し、レベルから削除します。

    BlendSpace2.png

    前のステップからのキャラクターとしてスポーンするためには、レベルからこのキャラクターを削除する必要があります。

  3. 「Content/AnimStarterPack/UE4_Mannequin/Mesh」 フォルダで UE4_Mannequin 上で 右クリック[Create][Blend Space] を選択します。

    BlendSpace3.png

    Blend Space アセットは参照する Skeleton アセットが必要です。ここではショートカットを使ってこの Skeleton アセットからブレンドスペースを作成します。

  4. [Parameters] セクションで、以下の値を適用し、[Apply Parameter Changes] ボタンを押します。

    BlendSpace4.png

    • X Axis LabelDirection に設定します。

    • X Axis Range-180 から 180 に設定します。

    • Y Axis LabelSpeed に設定します。

    • Y Axis Range150 - 260 に設定します。

    DirectionSpeed のパラメータを使うブレンドスペースは、どのポーズを使用し、ブレンドするかを判断します。

  5. アセットブラウザWalk_Fwd_Rifle_Ironsights アニメーションをグリッド上の下部中央にドラッグします。

    BlendSpace5.png

    このアニメーションをここに配置すると、 Speed が 150 で、方向は右でも左でもない場合に、アイアンサイト レベルでライフルを構えて前進することを示しています。

  6. 以下のように Walk_Lt_Rifle_Ironsights アニメーションを位置 1 に Walk_Rt_Rifle_Ironsights アニメーションを位置 2 にドラッグします。

    BlendSpace6.png

    ここでは左右に動き、スピードが 150 のときに使用するアニメーションを配置します。

  7. 以下のように Walk_Bwd_Rifle_Ironsights アニメーションを位置 1 と位置 2 にドラッグします。

    BlendSpace7.png

    ここでは後方に動き、スピードが 150 のときに使用するアニメーションを配置します。

  8. アセットブラウザJog_Fwd_Rifle アニメーションをグリッド上の上部中央にドラッグします。

    BlendSpace8.png

    これでスピードが最高限度 270 で、左右に動いていないときに前方向にジョギングする別のアニメーションを使用することができます。

  9. 以下のように Jog_Lt_Rifle アニメーションを位置 1Jog_Rt_Rifle アニメーションを位置 2 にドラッグします。

    BlendSpace9.png

  10. 以下のように Jog_Bwd_Rifle アニメーションを位置 1 と位置 2 にドラッグします。

    BlendSpace10.png

  11. 「Content/AnimStarterPack」 フォルダで UE4ASP_HeroTPP_AnimBlueprint を開いて、[MyBlueprint] パネルで Locomotion グラフを ダブルクリック します。

    BlendSpace11.png

  12. Jog ステートを ダブルクリック してグラフを開きます。

    BlendSpace12.png

    ステートマシン には既に Jog State があり、その中に別の Jogging モーションのためのブレンドスペースがあります。

  13. [アセットブラウザ] から、Walk_Jog_BS をグラフにドラッグし、 BS_Jog ブレンドスペースを以下のように置き換えます。

    BlendSpace13.png

    デフォルトのブレンドスペースには Walking ステートはありませんが、作成したブレンドスペースにはあるので置き換えてみましょう!

  14. 「Content/AnimStarterPack」 フォルダで、Ue4ASP_Character を開きます。

  15. グラフで Crouch セクションを見つけて、InputAction Crouch ノードを C Key Event に置き換えます。

    BlendSpace14.png

    デフォルトで Animation Starter Pack には crouch (かがむ) のために作成されたバインディングがあります。これは、通常の C 押下 (または crouch で使う任意のキー) と置き換えます。

  16. グラフ内を 右クリック して、Left Shift Key Event を追加します。次に [Components] タブから CharacterMovement をグラフにドラッグします。

    BlendSpace15.png

    [Left Shift] ボタンを押して保持すると、歩行からジョギングに切り替わります。

  17. B キーを押してグラフ内で 左クリック して、Branch ノードを 2 つ作成します。Crouch Button Down 変数をドラッグして以下のように接続します。

    BlendSpace16.png

    シフトキーを押している間、かがまないようにチェックする必要があります (例えば、かがんでいないときだけ、全速力で走ることができるからです)。

  18. 両方の Branch ノードに対して、CharacterMovement ノードと Set Max Walk Speed (最高歩行速度の設定) をドラッグし、それぞれの値を 260150 にします。

    BlendSpace17.png

    左シフトを保持しているかに基づき移動速度を変更しており、ゲーム内のキャラクターの移動速度が変わります。

  19. グラフ内で 右クリック して、Event Begin Play ノードを追加し、CharacterMovement コンポーネントを接続し、Set Max Walk Speed150 にします。

    BlendSpace20.png

    ゲームを開始するために、キャラクターのデフォルトの移動速度を更新し、歩行を開始するようにします。

  20. [Components] タブで CapsuleComponent をクリックします。次に [Details (詳細)] パネルの [Hidden in Game (ゲーム内で非表示)] オプションにチェックを入れます。

    BlendSpace18.png

    これでゲーム内のコリジョンのカプセルのデバッグ表示がオフになります。

  21. [CharacterMovement] コンポーネントをクリックします。次に、 [Details (詳細)] パネルで Max Walk Speed260 に変更します。

    BlendSpace19.png

    ここで移動速度の最高限度を定め、ブレンドスペースにあるものを反映します。

  22. コンパイル をクリックし、ツールバーで [Play in editor ] ボタンをクリックします。

最終結果

エディタでプレイする場合、 WASD を使用して移動すると、キャラクターがデフォルトで歩行し、方向を変えるときに歩行のアニメーション間でブレンドします。 立った状態で、WASD を使用しながら Left Shift を押して保持すると、キャラクターは歩行 / 照準のアニメーションから身を低くして / 照準して走るアニメーションにブレンドし、基本的にキャラクターを「スプリント」 (すばやく走ること) させます。 C を押して保持すると、Animation Starter Pack プロジェクトの一部として作成したブレンドスペースを使って、かがんで歩行するアニメーション間でブレンドし、かがみながら歩行することができます。