UE4はじめました。 -ブループリント入門編(1. "Hello world")-

# 概要
諸般の事情で UnrealEngine4 を触ることになったので、勉強と備忘録を兼ねてQiitaに投稿します。

まずは「[ブループリント](https://docs.unrealengine.com/latest/JPN/Engine/Blueprints/index.html)」についての勉強をしていこうかなと。

初回は、「プループリントによるHello world」について綴ります。

※検証環境は Unreal Engine 4.9.x です。

# ブループリントって？
どうやら、プログラムをグラフィカルに組む、UE4独自(?)のスクリプトのことみたい。(ざっくり！)

まぁまぁ。
次の項を読み進めれば、どんな感じなのかきっとわかるよ！

# 実践
## Hello world
### 1. まずは空のプロジェクトを作ってね！
![ue_01.png](https://qiita-image-store.s3.amazonaws.com/0/97611/f7433593-7c79-197a-eda2-be8867e83f98.png)
ブループリント(タブ) -> 空のプロジェクト -> 保存先を指定 -> プロジェクトを作成！

※ロードに結構時間が掛かるよ。

![ue_02.png](https://qiita-image-store.s3.amazonaws.com/0/97611/e9ea8b27-c620-d646-b47d-f2cf85a03e1d.png)
こんな画面が表示されたかな？
(空じゃないじゃん…!!)

### 2. ブループリントを編集する画面を開くよ！
![ue_03.png](https://qiita-image-store.s3.amazonaws.com/0/97611/395037c2-12b3-c995-c045-6244d6f55cd9.png)
ブループリント(ボタン) -> レベルブループリントを開く

![ue_04.png](https://qiita-image-store.s3.amazonaws.com/0/97611/8360a1ef-9b14-a76f-f7a8-d87d608f0930.png)
こんなウィンドウが表示されるよ！

次からガリガリ編集していくよ！

### 3. "Hello world"を格納するための変数を作るよ
![ue_05.png](https://qiita-image-store.s3.amazonaws.com/0/97611/f8e14d0d-89f4-041d-097f-8269b43ae60d.png)
ウィンドウの左側にあるメニューから、
変数 -> +変数
をクリックしてね！

![ue_06.png](https://qiita-image-store.s3.amazonaws.com/0/97611/f45d660d-8d42-c283-5c90-be3c01339e38.png)
好きな変数名を付けてね！

今度はウィンドウの右側。
![ue_08.png](https://qiita-image-store.s3.amazonaws.com/0/97611/ce8b485e-9bc2-ce15-ea84-28ac3d694c24.png)
変数の種類を `String` に変更してね！

できたかな？
![ue_09.png](https://qiita-image-store.s3.amazonaws.com/0/97611/7af91458-63a8-97f3-1374-5c84f70e73b2.png)

編集を進めるために、いったんコンパイルをするよ！
![ue_10.png](https://qiita-image-store.s3.amazonaws.com/0/97611/f163280d-cfa2-281f-1e8f-b0d2a7afe4f0.png)
ウィンドウの上側にある、「コンパイル」ボタンを押してね！
<br>
もう一度右側のメニューを見てね。
![ue_11.png](https://qiita-image-store.s3.amazonaws.com/0/97611/65dd0544-e668-7741-9587-e5c99b4e36c2.png)
変数の初期値となる「デフォルト値」の値を好きな文字列に編集してね！ ("Hello world"とか！)

### 4. スクリプトの開始地点を用意するよ
ウィンドウの真ん中辺りにある「イベントグラフ」に注目してね！
![ue_12.png](https://qiita-image-store.s3.amazonaws.com/0/97611/d9da193d-ce7e-0d1c-06f3-0ffff9c7236e.png)
右クリック -> 「イベント BeginPlay」
で、スクリプトの開始地点を作成してね！

![ue_13.png](https://qiita-image-store.s3.amazonaws.com/0/97611/7ff74258-d46a-5e4d-33b5-d7738bdf11ec.png)
こんな風になったらOK!

### 5. プリント関数を用意するよ
次は、C言語で言うところの「printf」みたいな関数を、イベントグラフ上に配置するよ！
![ue_14.png](https://qiita-image-store.s3.amazonaws.com/0/97611/8bbde531-4105-9f4e-8a16-139533bc2943.png)
右クリック -> 「Print String」
で、配置できるよ！

### 6. 開始地点とプリント関数を繋いでね
関数を配置しただけだと動かないから、開始地点とプリント関数を線で繋ぐよ。
![ue_15.png](https://qiita-image-store.s3.amazonaws.com/0/97611/693f3273-73fa-f2ac-bb7a-a8e40f08343a.png)
「イベント BeginPlay」の右三角と「Print String」の右三角をドラッグで繋いでね！

上の図のように、白い線でつながったかな？

### 7. プリント関数に引数を渡す
最後に、"Hello world"を渡さないといけないね。

まずは、最初に用意した文字列変数をイベントグラフ上に配置してね！
![ue_16.png](https://qiita-image-store.s3.amazonaws.com/0/97611/7cee8f52-4185-c6f2-dd56-beaf1f8330b8.png)
左側のメニューから、最初に用意した変数を、イベントグラフ上にドラッグ&ドロップ！

ドロップすると、「ゲット」か「セット」かを訊かれるので、今回は「ゲット」を選んでね！

あとは、
![ue_17.png](https://qiita-image-store.s3.amazonaws.com/0/97611/ec345d1f-d9f9-190f-7770-87b4e81a0637.png)
こんな風に、変数とプリント関数を繋いでね！

ブループリントの編集はこれで完了！

### 8. 実行！！
最初のウィンドウに戻ってね。
![ue_18.png](https://qiita-image-store.s3.amazonaws.com/0/97611/6edb85a1-5d08-631c-5a5d-b00d4121762e.png)
画面上方の「プレイ」ボタンをクリック！

![ue_19.png](https://qiita-image-store.s3.amazonaws.com/0/97611/57c861c8-b196-9501-9ba6-a722b66d0bd5.png)
ゲーム画面左上に "Hello world" が表示されたかな？？
<br>
とっても簡単ね！

今回はここまで。
次回は、変数の取り扱いと簡単な計算ついて、説明するよ！