Language:
Page Info

4.レベル開始のスクリプト処理

レベル開始時に、以前配置した PlayerStart Actor の位置でプレイヤーが開始するようにします。そのためには、プレイヤーをその位置に移動し、正しい向きにする必要があります。

  1. レベル エディタのツールバーで [Blueprints] ボタンをクリックします。次に、ブループリント エディタで現在のレベルのスクリプトを開くには、[Open Level Blueprint] を選択します。

    level_blueprint.png

  2. イベントグラフで右クリックして、Add Event にある Event BeginPlay を選択します。

    begin_play.png

  3. イベントグラフで右クリックして、Get Game Mode を選択して現在の Game Mode インスタンスへの参照を取得 (get) します。Return Value ピンを引き出して、Cast to BP_OdinGameMode を選択します。BeginPlay event の exec 出力を Cast to BP_OdinGameMode ノードの exec 入力に接続します。

    game_mode.png

  4. As BP Odin Game Mode ピンからドラッグして、End Loading Sequence を選択します。これでレベル ロード後に必要なクリーンアップが行われます。

    end_loading.png

  5. As BP Odin Game Mode 出力からドラッグして、 (game カテゴリにある) Get Main Pawn を選択します。これで位置を設定するために使用可能なプレイヤーへの参照を取得します。

    player.png

  6. Main Pawn ピンを引き出して ( Utilities > Transformation カテゴリにある) Teleport を選択します。End Loading Sequence ノードの exec 出力を Teleport ノードの exec 入力に接続します。

    teleport.png

  7. レベル エディタのビューポートで、以前配置した Player Start アクタを選択します。ブループリント エディタに戻り、イベントグラフで右クリックして Create a Reference to [ActorName] を選択します。

    player_start.png

  8. Player Start reference の出力ピンを引き出して Get ActorLocation を選択します。Return Value 出力を Teleport ノードの Dest Location 入力に接続します。

    location.png

  9. Player Start reference の出力ピンを引き出して Get ActorRotation を選択します。Return Value 出力を Teleport ノードの Dest Rotation 入力に接続します。

    Copy Example

    rotation.png

    画像の左上隅のアイコンをクリックしてこのブループリント グラフをコピーしてプロジェクトにコピーします。

結果

レベル エディタのツールバーで Play をクリックすると、Player Start Actor の位置で向かってくるロボットの方を向いた状態で開始します。

test.png