■2014/4/21

 UnrealEngine4で今話題のUnityChanを使用した横スクロールアクション(SideScrollerBP基本デモ)への移植対応の仕方の詳細です。

1.Unreal Editerを起動します。

2.「New Project」タブを開いて「TP_SideScrollerBP」を選択し、Nameに「UnityChanAction1」と入力し、「Create Project」ボタンを押します。

UnityChanAction UnrealEngine4 (1)

3.「Content Browser」から「Game」フォルダを右クリックして「New Folder」で「UnityChan」フォルダを作成します。

4.「UnityChan」フォルダの中身を開いて、右側のウィンドウで右クリックして「New Folder」で「Animation」「Model」「Blueprint」の3つのフォルダを作成します。

UnityChanAction UnrealEngine4 (2)

5.3ds max / Maya を開いて、Unityから持ってきた「unitychan.fbx」を読み込みます。

6.マテリアルを編集してテクスチャを登録します。

7.FBXフォーマットで「UnityChan.fbx」ファイルを出力します。(出力フォーマットを「2013」にする)
  ※(追記)FBX Converterを使うことにより、3ds max / Mayaがなくてもモーフィング対応のコンバートができます。
    コンバートの際に出力フォーマットを「2013」に設定してください)

8.「Content Browser」の「UnityChan」フォルダの「Model」フォルダ内に「UnityChan.fbx」をドラッグ&ドロップします。

9.下記の画像のオプションで読み込みします。

Unity-Chan UnrealEngine4 (3)

10.「Content Browser」の「UnityChan」のモデルを削除します。

11.再度、「Content Browser」の「UnityChan」フォルダの「Model」フォルダ内に「UnityChan.fbx」をドラッグ&ドロップします。

12.下記の画像のオプションで読み込みします。

Unity-Chan UnrealEngine4 (4)

13.「Content Browser」にある「Cheek」テクスチャを使っているマテリアルをダブルクックして、下記の画像のように編集します。

Unity-Chan UnrealEngine4 (5)

14.「Material」の「Blend Mode」を「Translucent」に変更します。

15.「Texture Sample」の「灰色○」をドラッグして、「○Opacity」に接続します。


16.「Apply」ボタンを押して、「Save」ボタンを押します。

17.数分シェーダーコンパイルをしばらく待つと、UnityChanの頬が透過されて綺麗なCheekになります。

18.「Content Browser」の「UnityChan」フォルダの「Blueprint」フォルダを開いて、右側のウィンドウ上で右クリックして、「Blueprint」を選択します。すると下記の画像のウィンドウが表示されるので、「Game Mode」をクリックしてください。作成したら名前を「UnityChan-GameMode」にしてください。

UnityChanAction UnrealEngine4 (3)


19.「Content Browser」の「UnityChan」フォルダの「Blueprint」フォルダを開いて、右側のウィンドウ上で右クリックして、「Blueprint」を選択します。すると下記の画像のウィンドウが表示されるので、「Character」をクリックしてください。作成したら名前を「UnityChan-Character」にしてください。

UnityChanAction UnrealEngine4 (3)


20.「Content Browser」フォルダの「UnityChan」フォルダの「Animation」フォルダを開いて、右側のウィンドウに「unitychan_JUMP00.fbx」「unitychan_RUN00_F.fbx」
「unitychan_WAIT00.fbx」
「unitychan_WALK00_F.fbx」
をドラッグ&ドロップで入れます。そのときのオプションは下記の画像を参考にしてください。「Animation」ラジオボタンをクリックしてから、「Select Skeleton」に「UnityChan_Skeleton」を選択して、「Import」ボタンを押してください。

UnityChanAction UnrealEngine4 (4)


21.「Content Browse」の「UnityChan」フォルダの「Blueprint」フォルダ内を開いて、右側のウィンドウで右クリックして「Other Asset」の「Animation」の「Animation Blueprint」を選択すると下記のウィンドウが出てくるので、「UnityChan_Skeleton」を選択して、「OK」ボタンを押します。作成したら名前を「UnityChan-AnimBlueprint」にしてください。

UnityChanAction UnrealEngine4 (5)


22.「Content Browse」の「Chracter」の「HeroTPP_AnimBlueprint」をダブルクリックして、開きます。「Graph」タブをアクティブにして、「EventGraph」タブを選択して、その中身をすべて選択して、コピー(Cntl+Cキー)してください。

UnityChanAction UnrealEngine4 (6)


23.「Content Browse」の「UnityChan」フォルダの「Blueprint」フォルダを開き「UnityChan-AnimBlueprint」をダブルクリックします。「Graph」タブをアクティブにして、「EventGraph」タブを選択します。そして、ペースト(Cntl+Vキー)してください。

24.「HeroTPP_AnimBlueprint」タブを選択し、「Graph」をアクティブにして、「AnimGraph」タブを選択します。「Default」State Machineアイコンをダブルクリックします。その中身をまたすべて選択してコピーします。(※)

UnityChanAction UnrealEngine4 (7)

25.「UnityChan-AnimBluePrint」タブを開き、「Graph」をアクティブにして、「AnimGraph」タブを選択します。「Final Animation Pose」の「Result」をドラッグして離すと、下記の画像のウィンドウがでてきますので、Serchに「state」と入力して「Add New State Machine...」をクリックします。作成したら名前を「Default」にしてください。

UnityChanAction UnrealEngine4 (8)


26.「State Machine」をダブルクリックして、「Entry」ボタンを削除してから、24番(※)の内容をペーストします。

27.「Content Browse」の「UnityChan」フォルダの「Model」フォルダ内を開いて、右側のウィンドウで右クリックして「Other Asset」の「Animation」の「Blend Space 1D」を選択すると下記のウィンドウが出てくるので、「UnityChan-Skeleton」を選択します。作成したら名前を「UnityChan-BlendSpace1D」をしてください。

UnityChanAction UnrealEngine4 (9)


28.「UnityChan-BlendSpace1D」をダブルクリックして、「Asset Browse」内の「unitychan_WAIT00」をドラッグして「UnityChan-BlendSpace1D」ウィンドウ内のグラフの左側にドロップします。次に「unitychan_WALK00_F」をドラッグして、「UnityChan-BlendSpace1D」ウィンドウ内のグラフの中央側にドロップします。最後に「unitychan_RUN00_F」をドラッグして、「UnityChan-BlendSpace1D」ウィンドウ内のグラフの右側にドロップします。これで待機モーションと移動モーションを綺麗にブレンドできるようにります。(※「Asset Browse」内の「UnityChan-BlendSpace1D」を選択すると動作を確認できます。)

UnityChanAction UnrealEngine4 (10)

29.「Content Browse」の「UnityChan」フォルダの「Blueprint」フォルダを開き「UnityChan-AnimBlueprint」をダブルクリックします。「Graph」タブをアクティブにして、「AnimGraph」タブを選択します。「Default」State Machineをダブルクリックします。

30.「Compile」ボタンを押します。すると「Compiler Result」タブの中身にエラーが表示されるので、「Blendspace_Player 'IdleRun_TPP'」をクリックします。「Settings」の「(Ad pin) Blend Space」が「IdleRun_TPP」になってるので、これを「UnityChan-BlenSpace1D」に変更します。

UnityChanAction UnrealEngine4 (11)

31.「Compile」ボタンを再度押します。次は「Play_Jump_Start」「Play_Jump_Loop」「Play_Jump_End」にエラーがでてますので、すべての「(As pin) Sequence」の内容を「unitychan_JUMP00」に変更してください。※ループモーションや終了モーションがUnityChanの現在のアセットにはないため、仮ですべてジャンプモーションをいれておきます。もし、モーションが作成できたらあとで、それに直してください。)

32.「Compile」ボタンを再度押します。次は「Set IsInAir?」のエラーがでるので、それをクリックして、「ERROR!」の赤字のアイコンを右クリックします。「Create variable 'IsInAir?'」を選択して、「Compile」ボタンを押して変数を追加します。

33.「Compile」ボタンを再度押します。次は「Speed」のエラーがでてるので、これをクリックして、「ERROR!」の赤字のアイコンを右クリックします。「Create variable 'Speed'」を選択して、「Compile」ボタンを押して変数を追加します。すると下記の画像のように変数が登録されたらOKです。「Compile」ボタンを押してエラーがないことを確認してください。

UnityChanAction UnrealEngine4 (12)


34.「Content Browser」の「UnityChan」フォルダの「Blueprint」フォルダを開いて「UnityChan-Character」をダブルクリックします。「Animation」の「Anim Blueprint Generated Class」を「UnityChan-AnimBlueprint」に設定してください。あと、「Mesh」の「Skeletal Mesh」を「UnityChan」モデルに設定してください。※下記画像参考

UnityChanAction UnrealEngine4 (13)


35.「Content Browser」の「UnityChan」フォルダの「Blueprint」フォルダを開いて「UnityChan-GameMode」をダブルクリックします。「Game Mode」の「Default Pawn Class」を「UnityChan-Character」に変更してください。

UnityChanAction UnrealEngine4 (14)


36.「World Settings」ボタンを押して、「Game Mode」の「GameMode Override」を「None」から「UnityChan-GameMode」に変更してください。

UnityChanAction UnrealEngine4 (15)

37.「Content Browser」の「UnityChan」フォルダの「Blueprint」フォルダを開いて、「UnityChan-Chracter」をダブルクリックします。「Components」タブをアクティブにして、「Components」の「Add Component」ボタンを押して「Spring Arm」を追加します。「Add Component」ボタンを押して「Camera」を追加します。その後、「Components」の「Camera1」をドラッグして「SpringArm1」にアタッチして子供にします。「Components」の「Mesh」を選択して、「Transform」の「Location」の「Z」を「-80.0」に設定します。これで衝突判定が足元になると思います。

UnityChanAction UnrealEngine4 (16)


38.「Content Browser」の「Blueprints」フォルダの「My Chracter」をダブルクリクします。「Graph」タブをアクティブにして、「EventGraph」の中身をすべて選択してコピーします。

39.「Content Browser」の「UnityChan」フォルダの「Blueprint」フォルダの「UnityChan-Chracter」をダブルクリックして、「Graph」タブをアクティブにして、「EventGraph」の中身に36番の内容をペーストします。そうすると、「InpAxisEvt_MoveRight_K2Node_InputAxisEvent_91_Copy」というグラフをができるので、それを削除します。右クリックしてSerchに「MoveRight」と書き、「Axis Events」中の「MoveRight」を選択すると「InputAxis MoveRight」が作成されます。

UnityChanAction UnrealEngine4 (17)

40.「InputAxis MoveRight」のグラフを下記のように接続します。

UnityChanAction UnrealEngine4 (18)


41.ここまですべて準備ができたら「File」の「Save All」をします。

42.セーブが終わったら、「Play」ボタンを押してください。

43.ゲーム画面をクリックして「D」キーを押すと左右反対に移動してると思われますので、38番のグラフを見て「World Direction」のYの「-1.0」を「1.0」に変更してから「Play」してください。

44.ジャンプ力が小さいと思われるので、「Content Browser」の「UnityChan」フォルダの「Blueprint」フォルダの「UnityChan-Character」をダブルクリックして「Defaults」タブをアクティブにして、「Chracter Movement」の「Jump Z Velocity」を「420.0」から「1000.0」に変更してから「Play」してください。

45.あとはキャラクターが反転(回転)すれば完成なのですが、ここだけまだよくわかりません。予測ですが、「Chracter Movement」の「Rotation Rate」と「Orient Rotation to Movement」の設定だと思われるのですが、うまく機能しません><;デモと同じキャラクターの動作にしたいだけなのですが・・・。
もしわかったら教えてください。(ツイッターで返信くれると嬉しいです^^*)

UnityChanAction UnrealEngine4 (19)

46.以上Unreal Engine4上のUnityChanのSideScrollerBPへの移植チャレンジ編でした。
UnityChanAction UnrealEngine4 (19)
■2014/4/13

 UnrealEngine4で今話題のUnityChanを表示の仕方の詳細です。(モーフィング対応の仕方)

1.3ds max / Maya を開いて、Unityから持ってきた「unitychan.fbx」を読み込みます。

2.マテリアルを編集してテクスチャを登録します。

3.FBXファイルに出力します。(出力フォーマットを「2013」にする)
  ※(追記)FBX Converterを使うことにより、3ds max / Mayaがなくてもモーフィング対応のコンバートができます。
    コンバートの際に出力フォーマットを「2013」に設定してください)

4.Unreal Editerを起動します。

5.Content BrowserにUnityChanのFBXをドラッグ&ドロップします。

6.下記の画像のオプションで読み込みします。

Unity-Chan UnrealEngine4 (1)

7.Content BrowserのUnityChanのモデルを削除します。

8.再度、Content BrowserにUnityChanのFBXをドラッグ&ドロップします。

9.下記の画像のオプションで読み込みします。

Unity-Chan UnrealEngine4 (4)

10.Content BrowserのUnityChanのモデルをViwportにドラッグ&ドロップします。

11.Content Browserの「Save All」(ディスクアイコン)ボタンを押します。

12.数分シェーダーコンパイルをしばらく待つと、UnityChanのマテリアルとテクスチャが表示されます。

13.Content BrowserにあるCheekテクスチャを使っているマテリアルをダブルクックして、下記の画像のように編集します。

Unity-Chan UnrealEngine4 (5)


13.Applyボタンを押して、Saveボタンを押します。

14.数分シェーダーコンパイルをしばらく待つと、UnityChanの頬が透過されて綺麗なCheekになります。

15.以上、Unreal Engine 4上のモーフィング対応のUnityChanの表示の仕方でした。
Unity-Chan UnrealEngine4 (3dsmax)
Unity-Chan UnrealEngine4 (Maya)