Unity で Windows アプリをビルドしてみよう
こんにちは。
マイクロソフトの渡辺です。
「 Unity 開発者のための Windows ストア概要 」に続き前回は「 Unity で Windows アプリを開発する環境を整える 」ということで、Unity で Windows アプリをビルドするのに必要な環境を確認しました。
今回は、Unity Asset Store でダウンロードできるサンプルを利用して、実際に Windows アプリをビルドする流れをご紹介していきます。
準備
この記事では、Unity Asset Store で提供されているサンプル「 2D Platformer 」を例に、Windows アプリをビルド/デバッグしてみます。
まずは、準備として 2D Platformer を Asset Store からダウンロードし、インポートしてください。
Unity でビルドできる Windows アプリの種類
Unity からビルドできる Windows アプリには次の 4つがあります。これらは、Windows ストア アプリの Build Setting の " SDK "のプルダウンから選択できます。
- 8.0 ( Windows 8 の ランタイムで動く Windows ストア アプリ )
- 8.1 ( Windows 8.1 のランタイムで動く Windows ストア アプリ )
- Phone 8.1 ( Windows Phone ストア で公開するアプリ )
- Universal ( 1つのソリューションで、Windows 8.1 ストア アプリ & Windows Phone 8.1 アプリの両方をターゲットとすることができる ユニバーサル Windows アプリ )
Windows 8.1 および Windows Phone 8.1 へのアップグレードが順調に進んでいることを見ると ( 参考:「Windows & Windows Phone ストア アプリ ダウンロード数トレンド ( 2014年9月 ) 」)、今あえて 8.0 アプリとしてビルドする理由はほぼありません。
Windows 8.1 および Windows Phone 8.1 向けのストア アプリは、それぞれ別々にビルドすることもできます。
また、ユニバーサル Windows アプリとしてビルドすると、1つのソリューション内で共通コードを共有し、Windows 8.1 ストア アプリ、Windows Phone 8.1 ストア アプリの両方をターゲットしてビルドすることが出来ます。Windows 10 の発表でも言及されている通り、ユニバーサル Windows アプリの基盤は Windows 10 へと引き継がれます。より多くのユーザにリーチしながら、Windows 10 に備える最良の方法は、ユニバーサル Windows アプリの開発です。
また、Type として、XAML C# Solution と XAML C++ Solution を選択できます。特に C++ で書きたい!というわけでなければ、C# Solution を選びましょう ( C++ ソリューションには対応していないプラグインもあるので注意 )。
Windows アプリをビルド
ではいよいよ、Unity から Windows アプリをビルドしてみます。
File > Build Setting を開き、Windows Store にプラットフォームをスイッチ。
- Type:XAML C# Solution
- SDK:Universal 8.1
- Build and Run on:Local Machine
- Unity C# Projects:チェック
- Development Build:チェック
という設定で、Build ボタンを押します。保存先を聞かれますので指定しましょう。ここでは、Builds フォルダを作成し、その下に Universal フォルダを作り保存することにしました。
ビルドが進んで、
完了すると、Visual Studio のソリューションが生成されます。
Visual Studio でソリューションを開く
生成されたソリューションをダブルクリックして、開いてみます。まずはソリューションエクスプローラーからソリューションの中身を見ていきましょう。
今回は、Build Settings にて SDK を Universal としたので、ユニバーサル Windows アプリが生成されています。
1つのソリューションの中に、
- Windows ストア アプリをターゲットとするプロジェクト ( _2D v3.Windows (Windows8.1) )
- Windows Phone アプリをターゲットとするプロジェクト ( _2D v3.WindowsPhone (Windows Phone8.1) )
- 共有コードである Shared Project ( _2D v3.Shared )
の 3つが含まれているのが分かります。
※参考「 Windows と Windows Phone を対象とするユニバーサル Windows アプリの構築 」
Package.appxmanifest ( アプリの設定をするマニフェストファイル ) や、各種素材等のプラットフォーム固有ファイルは、Shared Project ではなく、それぞれのプロジェクトに含まれます。
Build Settings にで SDK を " 8.1 " または " Phone8.1 " とした場合は、Shared Project がなくなり、Windows 8.1 のプロジェクトまたは Windows Phone 8.1 のプロジェクトのいずれかがソリューション内に含まれる形となります。
Windows ストア アプリを実行してみる
さて、さっそくですが Windows ストア アプリを実行してみましょう。
まずご確認いただきたいのが、構成マネージャーです。
Unity でのビルドで生成されたソリューションは、デフォルトで ARM がアクティブソリューション プラットフォームが指定されています。x86 マシンでデバッグする場合は、こちらを x86 に変更する必要がありますのでお忘れなく。
構成マネージャーでの設定変更を行った後は、さっそくデバッグ ボタン ( または F5 ) を押して実行してみましょう。すると、ビルド & アプリの配置と進み、アプリが起動してきます。
ちなみに、デフォルトではローカルコンピューターでのデバッグが選択されていますが、シミュレータでデバッグすることもできます。
タッチ操作やセンサーの値等のシミュレート、画面のキャプチャー等を行う際はこちらをご利用ください。
Windows Phone アプリを実行してみる
続いて Windows Phone アプリも実行してみます。
Windows Phone 8.1 のプロジェクトを右クリックして、" スタートアップ プロジェクトに設定 "を選びます。ソリューションエクスプローラー内で太字表示されているプロジェクトが、現在のスタートアップ プロジェクトです。
Windows ストア アプリの実行時と同様にエミュレータで実行することができます。既定では Device ( 実機 ) が選択されている場合があるので、エミュレータを選択しましょう。
あとの流れは、Windows ストア アプリの時と同じです。Unity アプリが立ち上がり、
ゲームが始まります!!
このあとは
今回は、Unity から Windows アプリをビルドし、Visual Studio で実行するまでの流れをご覧いただきました。次回は、もう少し詳しく、ビルドで生成されたソリューションの中身やデバッグの流れについてご紹介していきます。
関連リソース
Unity 開発者のための Windows ストア概要 - Yuta Watanabe's Blog
Unity で Windows アプリを開発する環境を整える - Yuta Watanabe's Blog
- Unity Asset Store
- 2D Platformer
- Windows と Windows Phone を対象とするユニバーサル Windows アプリの構築 ( MSDN )
- Windows ストア アプリ デバッグとテスト ( MSDN )
- Windows Phone アプリのテスト ( MSDN )
- Windowws Store Apps: Getting Started ( Unity Documentation )
- Windows Store Apps : Project Types ( Unity Documentation )
- Windows Store Apps: Deployment ( Unity Documentation )