Choose your operating system:
Windows
macOS
Linux
Character、 Vehicle、または Flying Spaceship のアセットをインポートまたは作成したら、プレイヤーの入力にどのように反応するかを定義する必要があります。入力の定義は主にユーザー定義の アクション マッピング (キーの押下と解放用) と 軸マッピング (連続範囲を持つ入力用) のバインディングで行われます。
マッピングを定義したら、それらをブループリントまたは C++ のビヘイビアにバインドできます。
実装ガイド
このガイドでは、単純なキャラクターを作成し、入力を受けとるようにセットアップします。その後、キャラクターを GameMode に割り当て、ゲームプレイ中にデフォルトのポーンになるようにします。キャラクターのセットアップに慣れている場合、または入力を設定するキャラクターを持っている場合 (およびそのキャラクターを使用するために GameMode をセットアップしている場合)、キャラクター作成のセクションはスキップして、新規入力の作成とその実装の手順に進むことができます。
単純なキャラクターを作成する
このセクションでは、入力を割り当てることができるキャラクターを作成します (既に Character ブループリント を持っている場合、この手順をスキップすることができます)。
この例では、 Starter Content を有効にした状態で Blank プロジェクトのテンプレートを使用しています。
-
プロジェクト内の Shapes の Shape_NarrowCapsule 形状上で 右クリック して [Asset Actions] - [Create Blueprint Using] の順に選択します。
これは、制御する単純なキャラクターになります。
-
「 Blueprints 」フォルダー内で、新規作成したブループリントを開きます。 [File (ファイル)] をクリックし、 [Reparent Blueprint (親ブループリントを変更)] オプションをクリックします。
ブループリントのクラスを Actor から Character に変更する必要があります。
-
表示されるポップアップ ウィンドウで [Character] オプションを選択します。
-
ブループリント ウィンドウの右上にある [Components] タブをクリックします。
-
[Components] ウィンドウの [Components] タブで、 [Add Component] をクリックし、 Spring Arm を追加します。
Spring Arm コンポーネントは親から固定距離で子供たちを保持しようと試みますが、コリジョンがあった場合は子供たちを取り消して、コリジョンがない場合は復活します。この場合の子は カメラ であり、サードパーソンの視点を持つようにします。
-
Spring Arm を選択した状態で、 Details で rotation を検索します。
-
Camera Settings で Use Pawn Controller Rotation ボックスにチェックを入れます。
-
[Add Component] ボタンを再度クリックして Camera を追加します。次に、それを Spring Arm コンポーネントにドラッグ アンド ドロップします。
これで、 Spring Arm の子ができます。
-
Camera を選択した状態で Transform にある Location と Rotation の値を 0 に設定します。
-
StaticMesh1 コンポーネントを選択します。次に Details で、 Location の Z 値を -90.0 に設定します。
-
コンパイル し 保存 してから、ブループリントを閉じます。
ゲームモードを作成して単純なキャラクターを使用する
単純なキャラクターを作成したので、 GameMode を作成し、この新しいキャラクターを使用するように設定します。
-
コンテンツ ブラウザ で、 [New] ボタンをクリックし、 [ブループリント] オプションをクリックします。
-
表示されるポップアップ ウィンドウで [Game Mode] ボタンをクリックします。
-
名前を付けて、その GameMode ブループリントを開き、 [Defaults] タブをクリックします。
-
[Defaults] タブの Class セクションで Default Pawn Class ドロップダウンをクリックして新規のキャラクターを開きます。
-
コンパイル し 保存 してから、ブループリントを閉じます。
-
メイン エディタ ウィンドウで、メニューバーから [Edit (編集)] ボタンをクリックして [Project Settings] を選択します。
この新規作成した GameMode を使用するようにプロジェクトに対して指示します。
-
[Project Settings] で、 [Maps & Modes] オプションをクリックします。
-
[Maps & Modes] の [Default Modes] で、 [Default GameMode] のドロップダウンをクリックして、 GameMode を選択します。
新規入力を作成する (アクション / 軸マッピング)
以下の手順では、キャラクターに割り当てることができる新規の アクション と 軸マッピング をプロジェクトに追加する手順について説明します。
-
プロジェクト設定 メニューの Engine で Input オプションをクリックします。
-
Bindings で Action Mappings と Axis Mappings の隣にある + 記号をクリックし、以下のセットアップを再作成します。
-
以下のように空のマッピングに入力します。
ここでは、各マッピングに名前を付け、そのマッピングに対する入力を割り当てます。 Scale としてハイライトされている スケール 値を -1.0 に設定するようにします。これは軸の値を合計するときにキーの値の乗数として機能します (逆方向にすることができます)。
ブループリントでアクション / 軸のマッピングを実装する
Project Settings で入力を作成すると、こうした入力を ブループリント 内から呼び出すことができます。このセクションでは単純なキャラクター (または独自のキャラクターを使用する場合はそのキャラクター) の入力設定を実装します。
-
プロジェクト内で、入力を割り当てる Character ブループリント ( Shape_NarrowCapsule ) を開きます。
-
ブループリント内のグラフの任意の場所で 右クリック して Turn を検索して Turn Axis Event を追加します。
-
Axis Value からドラッグして Yaw を検索し、 Add Controller Yaw Input ノードを追加します。
-
グラフ内を 右クリック して、 LookUp Axis Event を追加します。
-
Axis Value からドラッグして Pitch を検索し、 Add Controller Pitch Input ノードを追加します。
-
グラフ内を 右クリック して、 Jump Axis Event を追加します。
-
Pressed ピンをドラッグし、 Jump 関数を検索します。
-
グラフ内を 右クリック して、 MoveForward Axis イベントを追加します。
-
Axis Value からドラッグして Add Movement Input ノードを追加します。
-
グラフ内を 右クリック して、 MoveRight Axis イベントを追加します。
-
Axis Value からドラッグして Add Movement Input ノードを追加します。
イベントが追加されましたが、それぞれに対して方向を指定する必要があります。
-
グラフ内を 右クリック して、 Get Control Rotation を検索します。
-
Return Value からドラッグして Break Rot ノードを追加します (回転をピッチ (上下動) 、ヨー (左右回転) 、ロール (進行軸回転) に分けるため)。
-
Yaw ピンからドラッグして Make Rot ノードを追加します (ピッチ (上下動) 、ヨー (左右回転) 、ロール (進行軸回転)から回転を作るため)。
-
Make Rot ノード上で 右クリック して、 [Break link to Break Rot (Yaw)] を選択します。
Pitch と Roll をゼロに設定し、 Yaw のみを維持します。
-
Break Rot の Yaw を、 Make Rot の Yaw に接続します。
-
Make Rot の Return Value からドラッグして、 Get Forward Vector と Get Right Vector ノードを追加します。
-
Get Forward Vector を、 MoveForward Event に結合された World Direction に接続します。
-
Get Right Vector を、 MoveRight Eventに結合された World Direction に接続します。
シーケンスは上の画面のようになります。
-
コンパイル し 保存 してから、ブループリントを終了します。
-
エディタで再生します。
これでシーン内で移動し、作成したカプセルのキャラクター (またはご自身で使用することを選択したキャラクター) がジャンプします。