LoginSignup
2
1

More than 1 year has passed since last update.

【UE4】UnrealEngineでLive2Dを動かすまで【1日目】

Posted at

1. はじめに

UnityでLive2Dを使うことは容易にできるが、UnrealEngineでLive2Dをサポートしているわけでもなく、プラグインも数少ない。しかし、UnrealEngineでどうしてもLive2Dを動かしたいと考え、試行錯誤した奮闘記をここに残します。

この記事を読んだところでUnrealEngineでLive2Dを動かせるわけではないので注意

2.現在の開発環境

  • UnrealEngine: ver.4.27.2
  • Plugin: UE-Live2D
  • Live2D Cubism SDK: Cubism 4 SDK for Native R5_1

3.UnrealEngineのバージョンについて

UnrealEngineは4.27.2を使用します。
このバージョンを使用する経緯は以下の通りです。

まず始めにUnrealEngine5.0.3を使用していましたが、2つの壁が立ちはだかりました。
1つ目の壁は下記の箇所でビルドエラー

Live2DBatchedElements.cpp
Line61: SHADER_PARAMETER(FVector2D, InMaskSize)

SHADER_PARAMETERマクロの第1引数で指定してあるFVector2Dが使用できないというビルドエラーが発生。SHADER_PARAMETER以外の適したマクロを使用するようShaderparameteMacros.hで確認したところ、見つからない。なので、FVector2DをFVector2fに変更することでビルドエラーを回避。

とりあえず、エディタを起動できたので実際にLive2Dのファイルをインポート
成功!
これで作品作れると思い、インポートしたLive2DModelをダブルクリック
・・・
・・・・・・
・・・・・・・・・
エディタが強制終了・・・
これが2つ目の壁
インポートしたLive2DModelを開かなければいいんだと思い、Widgetを作成し、Panelの中にImageを追加し、preConstructerにSetBrushFromLive2DModelMotionを使い、Live2DModelMotionファイルを指定、エディタ強制終了
エディタを再起動して、生成したWidgetをダブルクリック
・・・
・・・・・・
・・・・・・・・・
エディタが強制終了

Live2Dの公式がリンクを貼っているPluginのGithubページがこんなポンコツなわけないと思い、ここでUnrealEngine5に対応していないということに気が付きダウングレードを決行。

4.27と4.26はそこまで変わらないよね、と思い、ここで4.26を選択。
これが間違い。
GetResource()という関数をFTexture2Dが所持していないというビルドエラー
UE5ではこのようなエラーは出ていなかった。
ということは、Plugin製作者のUnrealEngine開発環境は4.27ということが判明
(そもそも書いておいてよという感想しかないが)

UnrealEngine4.27を使用することで、一つもビルドエラー出ずにエディタ起動

4.現在の壁

image.png
Live2D公式のサンプルモデルのライスグラスフィールドをインポートしたところ、↑のような結果に

  • 目が表示されていない
  • 前髪がおかしい

最低でもこの2つ。所持している個人のLive2Dモデルを入れても正常に表示されていない。
原因はわからず。

怪しいのはLive2D Cubism SDKのバージョン。
UE5ではNGであるならば、2022年9月15日に更新されたSDKで動作確認していない可能性があるため、少なくとも1年前のCubism 4 SDK for native R4でdllファイルを作り、動作確認をしてみるつもりです。

5.最後に

Pluginを公開してもらえるのはとてもありがたいことですが、最小限すぎるReadme。せめても動作確認した環境の記載だけはしてほしい。自分が作ったらちゃんとそこら辺を記載しておこうと思いました。

2日目は進捗があり次第書きます。
では。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1