ドアの設定

Matinee を使って自動的に開閉するドアを設定する

Choose your operating system:

Windows

macOS

Linux

以下の手順に従って、トリガー ボリュームに出入りする際に開閉する単純なドアを作成します。

プロジェクトを作成する

このセクションでは、プロジェクトを設定します。

  1. [Unreal Project Browser] ウィンドウから 新規プロジェクト を作成し、 ブループリント サードパーソン テンプレートを使用します。

    MatineeHowTo.jpg

  2. [Include starter content (スターター コンテンツ有り)] を必ず有効にしてください。

  3. プロジェクトに名前を付けます。

  4. 上記をそれぞれ定義して、 [Create Project] をクリックして新規プロジェクトを作成します。

ドアとトリガーを配置する

このステップでは、ドアを配置し、ドアのトリガーを追加します。

  1. コンテンツ ブラウザ 「Props」 フォルダを探して選択し、 SM_DoorFrame スタティックメッシュを見つけます。

    MHT1_DoorFrame.png

    注記: Props フォルダが見つからない場合、 プロジェクト作成 のステップを参照し、 [Include starter content] が有効になっているかを確認してください。

  2. SM_DoorFrame スタティックメッシュ上で クリック して、 レベル ビューポート にドラッグ&ドロップします。

    MHT_DoorFrameDragIn.jpg

  3. また、「Props」 フォルダで SM_Door スタティックメッシュを探して、レベル ビューポートにドラッグ&ドロップします。

    MHT_DoorDragIn.jpg

  4. コンテンツ ブラウザで再度 SM_Door スタティックメッシュを探し、その上で ダブルクリック し、 スタティックメッシュ ビューアで開きます。

  5. [Details (詳細)] パネルの検索フィールドで Collision と入力し、 [Collision Complexity] 設定を [Use Complex Collision as Simple] に設定します。

    MHT_CollisionComplexity.jpg

    上記のステップでは、ドアにコリジョンを確実に適用させるようにします。

  6. レベル ビューポートで SM_Door が選択されている状態で [Details] パネルを探します。 Transform の下の Rotation 設定の Z 値を -180 に設定します。

    MHT1_RotateDoor.png

    これは -179.99 に自動調整されますが、問題ありません。

  7. Translation (平行移動) ウィジェットを使用して、ドアフレーム内にドアを配置します。

    MHT1_MoveDoor.png MHT1_MoveDoor2.png

  8. [モード] メニュー内の [Basic] タブで Box Trigger を探し、レベル ビューポートのドアフレーム内にドラッグ&ドロップします。

    MHT_DragInBoxTrigger.jpg

  9. [TriggerBox (トリガーボックス)] を選択し、 [Details (詳細)] パネルの [Shape] セクションで、 [Box Extent] X 値を、 140 に変更します。

    MHT1_TriggerBoxSize.png

    注記:ドアは内側に開くため、 Trigger Box は、(プレイヤーが近づく前に) 早く開くようにドアフレームを超えて内側に延びます。

    ブループリント を使用して、プレイヤーが TriggerBox に入る方向によってドアの開き方を変える例については、「2.4 - Door With Trigger(トリガーのあるドア)」の機能別サンプルを参照してください。

  10. これでドアとトリガーが配置されました。次はドアを開閉するために Matinee アクタを追加します。

Matinee アクタを追加する

このステップでは Matinee アクタを追加し、 キーフレーム を設定しドアを開閉します。

  1. ツールバー メニューから [Matinee] を選択し、 [Add Matinee (マチネ追加)] ボタンをクリックします。

    MHT_AddMatinee.jpg

  2. マチネ の undo 警告メッセージが表示されます。 [Continue (続ける)] ボタンをクリックします。

    MHT1_MatineeWarning.png

  3. [Matinee Editor] ウィンドウが開きます。

    クリックしてフルサイズで表示

  4. [Tracks] ウィンドウの All の下の空のセクションで 右クリック し、コンテキストメニューから [Add New Empty Group (空のグループを追加)] を選択します。

    MHT1_TrackContextMenu.png

  5. グループの New Group Name の入力を促すウィンドウが表示されたら、グループの名前を入力します (この例では Door という名前を使用します)。

  6. Matinee ウィンドウを最小化します。次に メイン エディタ ワールド アウトライナー ウィンドウを探し、 SM_Door を選択してハイライトさせます。

    MHT1_SelectDoor.png

  7. Matinee ウィンドウに戻り、Group (Door) 上で 右クリック してコンテキスト メニューを表示します。次に、 アクタ を選択し、 [Add Selected Actors (選択したアクタを追加)] を選択します。

    MHT1_AddDoorToGroup.png

    これで、 SM_Door アクタが Door グループに追加されます。

  8. 再度、Group (Door) 上で 右クリック してコンテキスト メニューを表示します。次に、 [Add New Movement Track (新規移動トラックを追加)] を選択します。

    MHT1_AddMovementTrack.png

  9. Movement Track を追加すると、新規 キーフレーム がトラックに沿ってタイム 0.00 (以下 1 を参照) に自動的に追加されます。

    MHT1_TrackExplained.png

    注記:セクション 2 には、開始/終了マーカー (赤い三角形)、ループセクション (緑の三角形) と タイムバー (黒いバー) があります。

  10. タイムバー 上で クリック して、それをタイム 0.50 にドラッグします。次に Enter キーを押して新規 キーフレーム を追加します。

    MHT1_AddKey.png

  11. Matinee ウィンドウを最小化して、レベル ビューポートに戻ります。 SM_Door を選択したままの状態で、 E キーを押して [Rotation] モードにします。

    MHT1_RotateWidget.png

  12. 回転 ウィジェットの 青い 円弧を クリック して (ウィジェットが変化します)、それを右に -90.0 度回転させます。

    MHT1_DoorOpen.png

  13. Matinee ウィンドウに戻り、赤い矢印の End Marker 上で クリック して、それを左に 0.50 動かします。

    MHT1_EndPointMoved.png

  14. Matinee シーケンスのセットアップが完了しました。次のステップでは、Matinee を トリガー に接続して終了します。

Matinee を TriggerBox に接続する

このステップでは、 Matinee TriggerBox に接続し、トリガーに入ると開き、トリガーを出ると閉じるようにします。

  1. [ツールバー] メニューから、 ブループリント を選択し、 [Open Level Blueprint] ボタンをクリックします。

    MHT_OpenLvlBlueprint.jpg

  2. Level ブループリント を最小化し、 レベル ビューポート または ワールド アウトライナー で、 Matinee アクタ をクリックして選択します。

    MHT1_MatineeSceneOutliner.png

  3. Level ブループリント ウィンドウを開き、 イベントグラフ 右クリック し、コンテキスト メニューで [Add Reference to MatineeActor (Matinee アクタへの参照を追加)] オプションを選択します。

    MHT_MatineeReference.jpg

  4. これで、 Matinee アクタ Level ブループリント イベントグラフ に追加されます。

    MHT1_MatineeAddedToBP.png

  5. Level ブループリント を最小化し、 レベル ビューポート または ワールド アウトライナー で、 トリガー ボックス をクリックして選択します。

    MHT1_TriggerBoxSceneOutliner.png

  6. Level ブループリント ウィンドウを開き、 イベントグラフ 右クリック します。次に、 Add Event for TriggerBox コリジョン の下にあるコンテキスト メニューで [Add OnActorBeginOverlap] オプションを選択します。

    MHT1_AddOnBeginOverlap.png

  7. 再度 イベントグラフ 内で 右クリック して、 Add OnActorEndOverlap を選択する以外の上記のステップを繰り返します。

    MHT1_AddOnEndOverlap.png

  8. イベントグラフ MatineeActor ノードを探し、 クリック して、出力ピン (青い円) から ドラッグ してコンテキスト メニューを表示します。次に、検索欄に Play と入力し、 [Play] オプションを選択します。

    MHT1_DragOffPlay.png

  9. MatineeActor ノードを再度ドラッグして、コンテキスト メニューの検索欄で Reverse と入力し、 Reverse オプションを選択します。

    MHT1_DragOffReverse.png

  10. OnActorBeginOverlap ノードを探し、 Execute 出力ピンをドラッグし、それを Play ノードの入力ピンに接続します。

    MHT1_ConnectOverlapToPlay.png

  11. 上記のプロセスを繰り返し、 OnActorEndOverlap ノードの出力ピンを Reverse ノードの入力ピンに接続します。

    MHT1_BlueprintConnected.png

  12. Level ブループリントのツールバー メニューで Compile ボタンをクリックします。

    MHT1_ClickCompile.png

  13. これでブループリントが完成し、 TriggerBox が Matinee アクタに接続されました。

  14. Level ブループリントを最小化し、メインツールバーにある Play ボタンをクリックして、エディタで再生します。

Unreal Engine のドキュメントを改善するために協力をお願いします!どのような改善を望んでいるかご意見をお聞かせください。
調査に参加する
キャンセル