1時間でUnreal Engine 4を何となく分かった気になってみる

日本語ドキュメントのワンストップでぬるりと完了するものがあると、便利かなーの気持ちで、何となく分かった気になってみる記事を書いてみました。

# 前提環境
* Windows10
* Unreal Engine 4.27.1

残念なことにダウンロードとインストールに時間がかかるので、思い立ったらインストールをかけて放置、次の日にさあやるぞーと開始するのがお勧めですね。

# サンプルプロジェクト
最初に様々な公式チュートリアル動画でも使われている、3人称視点アクションゲームのテンプレートで開始してみます。
ゲームじゃなくて映像制作が目的なのだという場合も、感覚をつかむ気持ちで、何も考えずにこちらを導入してみましょう。
公式チュートリアルで再会したときに、見たことある風景だなあという気持ちになれます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/673394/2c14c190-6969-19b8-b7cc-7b54ffc5cc1c.png)
ゲームを選択し、次へ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/673394/c89d03e8-d069-5479-1b45-609ce5a59890.png)
サードパーソンを選択し、次へ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/673394/7cdca24c-baab-5ab6-36fe-82b59465e68c.png)
保存フォルダと、プロジェクト名を設定し、プロジェクト作成
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/673394/05927165-3b75-1b02-21d4-dae90f0a17a1.png)
プロジェクトが作成されました

# まずはプレイ
の前にマウスカーソルの逃がし方を覚えましょう、キーボードのESCキーです。
プレイボタンを押して開始します。ウィンドウが小さいと見えないので、》をクリックして展開するか、ウィンドウを最大化しましょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/673394/1167401d-a7e7-5ad3-73be-305c7f24089a.png)

プレイをクリックした後、画面中央のゲーム画面を一度クリックすると、操作モードに入ります。操作は、PCゲームに慣れていると、おそらく使ったことがあるであろう、WASDで移動、スペースキーでジャンプ、マウスカーソルで視点移動です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/673394/3f4acaa4-f5c9-0286-173e-4e1c4058ba5e.png)
確認出来たら、ESCでマウスカーソルを逃がし、停止していない場合停止ボタンを押すと停止します。

停止すると、カメラがそのままの位置に残されることがありますが、プレイを押さずともその状態で画面内を左クリック＆ドラッグすると動かせます。右クリック中にプレイ中と同様にカメラの角度のみ変更でき、左クリックもしくは右クリック中に、WASDで前後左右に移動できます。他にも、中ボタンクリック＆ドラッグ、スクロールなどでカメラを移動できます。
基本的な操作なので、うまく使えるようにしておくと便利です。
迷子になってしまった場合は、もう一度プレイをクリック、停止をクリックで元に戻れます。

# オブジェクトを動かしてみる
マップ内のオブジェクトを動かしてみましょう。
人型のオブジェクトを一度左クリックして選択状態にして、矢印で動かすと、スタート位置が変更されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/673394/495ec180-cece-408f-e6b2-5521ca9ff2f9.png)
右下に出るのは、ゲームプレイ中にプレイヤーキャラクターに追従する3人称視点のカメラです。

目の前の階段を選択して動かすと、影がそのまま残ります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/673394/6a7b587a-09fc-9aa9-69d3-ab11a8220372.png)

ビルドの▽をクリックして、ライティングのみビルドを実行すると
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/673394/525c66ba-1a88-c230-a249-c2db2bbddf3d.png)

影が更新されます
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/673394/e08277cf-a745-854e-28e5-f5248420de78.png)

# イベントを作る
プレイヤーが衝突すると、反応が返ってくるイベントを書いてみましょう。

左にある立方体を右クリックし
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/673394/f8344ea4-0d97-b9e4-1f5e-f9a8ec1292d4.png)

イベントを追加 > OnActorHit
を選択します
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/673394/767dc52e-f30c-f00f-b1b8-bca906d71e4e.png)

レベルブループリントが表示され、イベントのノードが追加されているのがわかります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/673394/e8880cf0-17b1-a22f-743a-fc0c45c80494.png)

OnActionHitのノードの一番上の右向きの五角形アイコンを左クリックし、ドラッグすると接続先のノードを検索する窓が表示されます
そこに「setactorlocation」を入力して、SetActorLocationを選択します
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/673394/91f9e15d-7828-e9ac-8250-4404c4cbc2ba.png)

SetActorLocationノードが表示されるので、ターゲットにSetActorLocationからOtherActorをつなげ、NewLocationには、キューブのXとY、Zには3000を入力します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/673394/b9261690-7a6b-49fb-b913-913d74e3b291.png)

上記設定が出来たら、コンパイルボタンを押します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/673394/150381cc-8613-27fe-3654-9d08b6856d32.png)

以上でお試しブループリントの作成が完了です。
元の画面に戻って、プレイをクリック、プレイヤーが立方体に触れると、上空にワープするようになりました。
![イベント確認.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/673394/d57071ee-3648-dc10-b5e1-8a59a3302fac.gif)



# 終わり
何となく分かった気がしてきましたね。

うまく動かせたら、LGTMをつけておいてもらえると、うまく動かせた人がいたんだなあと私は思います。
ここが変だよという場合は、コメントで次にチャレンジする人へお知らせください。