「Flappy Daruma」を作ってみよう!⑦iOS編

今回の内容を整理しよう!

前回の内容を復習しよう

前回は Flappy Daruma を Unity を使って Android 向けにビルドして、 USB 接続した Android 端末にアプリをインストールし実行しました。
その過程として、 Unity でのビルドに必要な環境構築と設定、接続する Android 端末の設定などを中心に説明しました。

今回進める作業を確認しよう!

今回は、 Flappy Daruma を Unity を使って iOS 向けにビルドします。
そして、 Xcode の iOS シミュレーターを使って、iOS 版アプリとして実行し、動作を確認します。

使用した環境について

今回はすべて Mac OS X 環境で行っています。
Unity は 2018.2.15f1 は使用しています。
Mac OS X は OS X El Capitan (バージョン 10.11.6) で、それに伴い Xcode のバージョンも 8.2.1 と古いバージョンを使いましたが問題なく動作しました。

前提知識を学ぼう!

iOS 版は Unity と Xcode との2段階のビルドが必要

Unity の iOS 向けのビルドでは .xcodeproj ファイルを含む Xcode 用のファイル群がフォルダに作成されます。
作成された .xcodeproj ファイルを Xcode で開いてビルドすることで iOS 上で動作するアプリを作ることができます。

また、 Xcode では iOS 端末用のビルドだけではなく、 iOS シミュレーターによってさまざまな iOS 端末の環境をシミュレートして実行することができます。

さまざまな解像度で試すときは iOS シミュレーターが便利

前回は PC と USB 接続した Android 端末によるアプリの実行を紹介しましたが、iOS 版のアプリでも、 Xcode を使い Mac と USB 接続した iOS 端末でアプリを実行することができます。

しかし、さまざまな解像度で動作を確かめたい場合は、所有している iOS 端末だけでは難しいかもしれません。

さまざまな解像度で確認したい場合は Xcode の iOS シミュレーターを使ってアプリを実行すると良いでしょう。

iOS 向けのビルド環境を整えよう

iOS 版のビルドでは、次の2つをインストールする必要があります。

  • Unity の iOS Build Support コンポーネント
  • Xcode

これら2つのインストールをひとつずつ紹介していきます。

Unity の iOS Build Support コンポーネントのインストール

Unity で iOS 版をビルドするためには、 iOS Build Support コンポーネントが Unity にインストールされている必要があります。

iOS Build Support コンポーネントがインストールされているかどうかを確認するには、 [File]→[Build Settings…]メニューから Build Settings ダイアログを表示しましょう。
もしも、下図のように、 [Build] ボタンが押せず「No iOS module loaded.」と表示される場合は、 iOS Build Support コンポーネントを追加でインストールする必要があります。

コンポーネントの追加の方法としては、上図の[Open Download Page]ボタンをクリックしてダウンロードした実行ファイルを使ってコンポーネントを追加する方法もありますが、今回は Unity Hub を用いて iOS Build Support コンポーネントを追加してみましょう。

Unity Hub の詳細については、 【2018年最新版!】これで解決?簡単にUnityを最新版にアップデートしよう! をご覧下さい。

はじめに Unity Hub を起動します。
そして、 [Installs] タブ、 [Official Releases] タブを選択後、コンポーネントを追加したい Unity のバージョンの右側のポップアップメニューを開き、 [Add Component] メニューを選択します。

そうすると、追加できるコンポーネントのリストが表示されるので、 iOS Build Support コンポーネントにチェックを入れて、 [Done] ボタンをクリックしましょう。
[Done] ボタンをクリックした後は、 Unity Hub が自動的に必要なデータをダウンロードして Unity にコンポーネントをインストールしてくれます。

コンポーネントのインストールが完了してから、 Unity プロジェクトを開き直し、 Build Settings ダイアログを表示すると、下図のように iOS Build Support コンポーネントがインストールされた画面が表示されます。

しかし、上図を見ると「No Xcode automatically detected to run your project. Please check Xcode is installed and select it manually.」と警告メッセージが表示されています。

次は、この警告メッセージに対応し Xcode をインストールしていきましょう。

Mac OS X のバージョンに合った Xcode のインストール

Xcode は App Store から他のソフトウェアと同様にインストールできます。

しかし、バージョンが 古い Mac OS X 環境ではインストールできない場合があります。
これは、App Store で公開されている最新版の Xcode ではサポートされなくなったバージョンの Mac OS X 環境にインストールしようとしたことが原因です。

この場合は、古いバージョンの Mac OS X 環境をサポートしている古い Xcode をインストールしましょう。

以前のバージョンの Xcode は Apple 公式サイトの More Downloads for Apple Developers
で公開されています。
サイトにアクセスしたら、Apple ID でサインインしてから、Apple Development Agreement に同意します。

そうすると、 Xcode を含むさまざまなソフトウェアがリストに表示されるので、「Xcode 8」などで検索して、使っている Mac OS X のバージョンに対応した Xcode を選択しましょう。

ダウンロードされた .xip ファイルは Finder 上でダブルクリックなどをすると検証後、展開できます。
展開された Xcode.app はアプリケーションフォルダにコピーしましょう。

アプリケーションフォルダの Xcode.app を実行すると検証が行われ、その後同意を求めるダイアログが表示されるので [Agree] ボタンをクリックしてインストールを進めましょう。

その後インストールが完了すると、 Xcode が起動します。

この時点で、Unity プロジェクトを開き直して Build Settings ダイアログの [iOS] のタブを選択すると、先ほどの Xcode に関する警告メッセージが消えています。

これで iOS 版のビルド環境が整いました。
次は、いよいよ Unity プロジェクトをビルドして Flappy Daruma の iOS 版を実行します。

iOS 向けにビルドしてアプリを実行しよう

それでは、 Flappy Daruma を Unity と Xcode で iOS 向けにビルドして、 iOS シミュレーターでアプリを実行させましょう。

iOS 向けの設定をして Xcode 用のファイル群をビルドしよう

まずは、 Xcode の iOS シミュレーターで実行できるように Xcode 用のファイル群を Unity でビルドします。

[File]→[Build Settings…] メニューから Build Settings ダイアログを表示し、 [iOS] タブを選択して [Player Settings…] ボタンをクリックしましょう。

そうすると、 Inspector ウィンドウに PlayerSettings の情報が表示され、 iOS のビルド設定を行うことができます。

 Default Orientation の設定

Resolution and Presentation カテゴリでは、解像度や画面の向きを設定できます。
今回は、画面の向きは縦向きだけをサポートしているので、 Default Orientation に Portrait を指定しました。

Bundle Identifier の設定

Other Settings カテゴリの Identification の Bundle Identifier は既定では「com.Company.ProductName」となっています。
Company には会社名、 ProductName には製品名を当てはめます。
今回は行いませんが、アプリをリリースする場合は、 App ID の登録情報と合わせるようにしましょう。

Target SDK の設定

Xcode の iOS シミュレーター向けにビルドしたい場合は、 Other Settings の Configuration の Target SDK には Simulator SDK を指定します。
今回は行いませんが、アプリをリリースする場合は、Target SDK には Device SDK を指定しましょう。

Xcode 向けのビルド

PlayserSettings の設定が済んだら、 Build Settings ダイアログの iOS タブの [Build] ボタンをクリックして、Xcode 用のファイル群をビルドしましょう。

続いて、ファイル群の保存先フォルダを指定して[Save]ボタンをクリックします。

ビルドにはしばらく時間がかかるかもしれませんが、完了すると指定したフォルダに .xcodeproj ファイルを含む Xcode 用のファイル群が出力されます。

続いて、作成された .xcodeproj ファイルを Xcode で開きましょう。

Xcode の iOS シミュレーターでアプリを実行しよう

Unity でビルドしたファイル群の中の .xcodeproj ファイルをXcodeで開きます。

アプリをビルド・実行する前に、下図のように Xcode のウィンドウの左上にある機種(iOS Simulator)の選択で、任意の機種を選びます。
筆者の環境では、 iPhone SE を選択しました。

その後、[Product]→[Run]メニューでアプリを実行しましょう。

もしも、Developer Mode を有効にする許可を求めるダイアログが表示されたら [Enable] ボタンをクリックして許可しましょう。

Xcode のビルドが完了すると、自動的に iOS シミュレーターが起動します。
そして、しばらくするとアプリが起動し Flappy Daruma をプレイすることができました。

クリックでタップ操作ができ、下図の [SHARE] ボタンをクリックすると、 iOS シミュレーターのウィンドウ内でツイートの画面も表示されました。

もしも iOS シミュレーターのサイズを変えたい場合は iOS シミュレーターの[Window]→[Scale]から割合で変更できます。

これで、 Unity で作った Flappy Daruma の iOS 版の実行ができました。

アプリをリリースする場合は特定の解像度のスクリーンショットが必要になるので、今回のように任意の機種の iOS シミュレーターを Xcode で指定して実行すると良いでしょう。

オススメアプリ!渋谷で気軽に友達を作れるアプリが登場!