UE4 事始めってことで、ちょっとやってみました。
とりあえず今回は UE4 上で表示して、アイドルモーションさせるだけです。
#必要なもの
- Unreal Engine 4
これがないと始まりません。ダウンロードはこちらから。
今回は、4.7.6 を使っています。
* ユニティちゃんリソース
これがないと始まりません。ダウンロードは[こちら](http://unity-chan.com/)から。
今回は ver.1.0 を使っています。
* Unity
ユニティちゃんリソースの入っている unitypackage から fbx と tga を取り出すのに必要です。
ダウンロードは[こちら](https://unity3d.com/jp/5)から。
* FBX Converter
取り出した fbx を新しいフォーマットに変換するのに必要です。
ダウンロードは[こちら](http://usa.autodesk.com/adsk/servlet/pc/item?siteID=123112&id=22694909)から。
#ユニティちゃんをセットアップする
まずは、新規プロジェクトを作成し、ユニティちゃんをアセットとして使用できるようにします。
その為には、以下のことを行う必要があります。
- unitypackage から .fbx, .tga を取り出す。
- .fbx を新しいフォーマットにコンバートする。
- .fbx, .tga を UE4 にインポートする。
- マテリアルをセットアップする。
これらについては、こちらのサイトに書かれていますので、これを参考にしてセットアップを行ってください。
今回、使用するアセットは以下の様な名前になっています。
ファイル名 | 概要 |
---|---|
UnityChan | スケルタルメッシュ |
UnityChan_Skeleton | スケルトン |
unitychan_WAIT00 | アイドルモーション |
#ユニティちゃんをシーンに配置してみる
アクターを作って、シーン上に配置する
まずは、アクターを作ってシーン上に配置します。
1. 「親クラスを選択」で「Pawn」クラスを選びます。
![UnityChan01_02.png](https://qiita-image-store.s3.amazonaws.com/0/43814/debb49ed-f084-1bfd-f640-eeeaf16db914.png)
1. コンテンツブラウザにアセットが追加されます。
名前は BP_UnityChan とします。
![UnityChan01_01.png](https://qiita-image-store.s3.amazonaws.com/0/43814/c4b02624-b92c-f04d-339b-27f0595351c7.png)
1. 作った BP_UnityChan をシーン上にドラッグ&ドロップして、シーン上に配置します。
(この時点ではまだ白い球が表示されるだけです。)
![UnityChan01_03.png](https://qiita-image-store.s3.amazonaws.com/0/43814/9390768f-4327-7062-4b45-5db9db9298b5.png)
##ユニティちゃんモデルを表示させる
配置したアクターにユニティちゃんモデルを関連付けして、ユニティちゃんモデルが表示されるようにします。
1. 「詳細」から「Mesh」を探しだして、「なし」をクリックします。
すると、以下のようなウィンドウが選択されるので、インポートしたユニティちゃんのスケルタルメッシュを選択します。
![UnityChan01_05.png](https://qiita-image-store.s3.amazonaws.com/0/43814/e5afae88-3e31-3be0-76a0-fc8ce4a58168.png)
これでようやくユニティちゃんがシーンに表示されました。
![UnityChan01_06.png](https://qiita-image-store.s3.amazonaws.com/0/43814/5e22cd1d-99b2-88d8-7705-497b13f3e5b8.png)
#ユニティちゃんにアイドルモーションをさせてみる
では、いよいよユニティちゃんにモーションさせてみます。
##アニメーションブループリントを作って、アクターと関連付ける
まずは、アニメーション関連の処理を記述するためのブループリントを作って、アクターと関連付けます。
1. 以下のようなウィンドウが表示されるので、インポートしたスケルトンを選択して OK を押します。
![UnityChan01_08.png](https://qiita-image-store.s3.amazonaws.com/0/43814/77bbe2e4-0b53-b534-3448-3067a4aae77c.png)
1. 「コンテンツブラウザ」にアセットが追加されるので、「BP_UnityChan_Anim」という名前にします。
![UnityChan01_09.png](https://qiita-image-store.s3.amazonaws.com/0/43814/87eff395-262c-d607-843e-7e04d3ccdbde.png)
1. シーン上の「BP_UnityChan」を選択して、「詳細」から「Animation」を探し出します。 探し出したら、「Anim Blueprint Generated Class」をクリックして、先ほど追加した「BP_UnityChan_Anim」を選択します。
![UnityChan01_10.png](https://qiita-image-store.s3.amazonaws.com/0/43814/9dec967c-6a64-3bd8-0e06-08c8e741db3f.png)
##アニメーションステートマシーンを作って、結果に応じたポーズを取らせる。 モーションを再生させる前にステートマシーンを作って、その結果に応じてユニティちゃんの取るポーズを変えるようにします。 ちなみにこの「ステートマシーン」とは、「アイドル」「歩き」などのアニメーションの状態と状態遷移を管理するものです。
1. グリッド上で右クリックして、「新規のステートマシーンを追加」を選びます。
![UnityChan01_12.png](https://qiita-image-store.s3.amazonaws.com/0/43814/5c71e13a-f174-18bc-6283-c4d5da921238.png)
選んだら、「ステートマシーン」というノードが作られるので、「SM_Anim」という名前にします。
![UnityChan01_13.png](https://qiita-image-store.s3.amazonaws.com/0/43814/ea9384e2-6653-d4a0-51c9-1a8fe563a949.png)
1. グリッド上にある2つのノードを以下のように接続します。
![UnityChan01_14.png](https://qiita-image-store.s3.amazonaws.com/0/43814/22578227-ed85-713d-ffc5-4516349e11f5.png)
これでステートマシーンの結果次第でユニティちゃんの取るポーズが変わるようになりました。
##アイドル状態を作って、アイドルモーションを再生させる
では、ステートマシーンにアイドル状態を追加して、アイドルモーションを取らせるようにします。
1. 右クリックから「ステートを追加」を選択します。
![UnityChan01_16.png](https://qiita-image-store.s3.amazonaws.com/0/43814/1039623e-427c-6bfc-d90f-14be1a47a912.png)
すると、新しいノードが作られるので、名前を「IDLE」にします。
![UnityChan01_17.png](https://qiita-image-store.s3.amazonaws.com/0/43814/5eded0a7-bf91-5cf9-8bf2-bdb97df7962b.png)
これがアイドルモーションを示す状態となります。
1. 先ほど作った「IDLE」ノードを選択して、ダブルクリックします。
すると、新しいグリッド画面に切り替わり、アイドル状態の内部処理が表示されます。
初期状態では、以下のノードしかありません。
![UnityChan01_18.png](https://qiita-image-store.s3.amazonaws.com/0/43814/29bf65e0-8c46-fb3f-463f-c108098b575d.png)
1. 右クリックから「再生 unitychan_WAIT00」を選択して、ノードを作ります。
![UnityChan01_19.png](https://qiita-image-store.s3.amazonaws.com/0/43814/d3cb1f8e-c34f-5f3b-01fc-c812d84222c3.png)
これは、アイドルモーションを再生し続けるためのノードです。
1. グリッド上にある2つのノードを以下のように接続します。
![UnityChan01_20.png](https://qiita-image-store.s3.amazonaws.com/0/43814/c9425b37-6df3-8565-d60c-452c41acf1f9.png)
これで「プレイ」すると、ついにユニティちゃんがアイドルモーションするようになりました!
![UnityChan01_21.png](https://qiita-image-store.s3.amazonaws.com/0/43814/c4a718cf-200f-f77f-aaee-14f3d0a8c75d.png)
#参考サイト
-
UE4でゼロからユニティちゃんを表示させるまで
http://unrealengine.hatenablog.com/entry/2014/04/15/184432 -
UE4でアニメーションブループリントを使ってステートマシンを組む
http://unrealengine.hatenablog.com/entry/2014/05/14/000828