Unity 2019.3以降、「Unity as a Library」というAndroidやiOSのネイティブアプリに、Unityで作成したアプリをライブラリとして埋め込む機能が提供されています。
この中にはWindowsアプリケーションも含まれています。Windows では以下の3つの方法が紹介されています。
- UWP
- Unityを外部プロセスとして起動する
- Unityをdllとしてビルドし、直接ロードする
今回はこの中からUWPでの流れを紹介します。
手順
Unity で UWP 向けのアプリを作る
[Build Type] を [XAML Project] を指定してビルドする
生成されたソリューションを開く
C++でXAMLアプリを編集する Unity が生成した UWP アプリは、
SwapChainPanel
と呼ばれる DirectX でレンダリングしたコンテンツを XAML に埋め込めるコントロールが使用されています。実行する
Unity 2019 から、.NET スクリプティングバックエンドは削除されており IL2CPP のみ利用できるようになりました。つまり、ビルド結果は C++ であり、UWPアプリも C++ でしか編集できません。 また、Unity が出力したソリューションに手を加えることになるので、バージョン管理など一工夫しないといけない雰囲気が漂っています。