Flutter×Unityのハイブリットモバイルアプリを作る①

1 min read読了の目安(約1200字

3Dのモバイルアプリ作りたいけど、UnityはちょっとUIの手触りが気持ち良くないなっと思ってしまいます。
そこで今回は、UI部分をFlutterに任せちゃってヌルヌル気持ちのいいアプリの作り方を紹介します。

メインの部分はこちらの flutter_unity_widget プラグインを使います。

https://github.com/juicycleff/flutter-unity-view-widget

1. flutter_unity_widgetをクローンして、sampleディレクトリを開いてみる

sampleの中にunityディレクトリがあってこの中にUnityプロジェクトが内包されています。

2. Unityのデモをビルドしてみる

DemoAppを開いて、メニューバーから Flutter/Export Android を選択するとビルドが開始されます。(iOSの場合は Flutter/Export IOS )

と思ったら、ビルドがコケてしまったので、スクリプトを修正します。
Unity2019以降に BuildOptions.AcceptExternalModificationsToPlayer が使えなくなったようです。

Build.cs
+EditorUserBuildSettings.exportAsGoogleAndroidProject = true;
-var options = BuildOptions.AcceptExternalModificationsToPlayer;
+var options = BuildOptions.None;

これで再度ビルドします。
無事ビルドが終わるとDemoApp/Buildsにapkが生成されるのが確認できます。

3. Flutterをビルドする

これでビルドするとデモアプリが実行できます。

ひとまず、サンプルの動かしてみるのは以上です。
次回以降、プラグインのアーキテクチャや画面回転などのつまずきポイントなどより詳細にやって行こうと思います。