BlueprintのみのiOS向けプロジェクトをWindowsで開発する

UE4

前置き

この記事は、先に下記の親記事を読んで頂くとよいかと思います。
【UE4】いろんなパターンのiOSアプリ開発環境を用意してみる

UE4オフィシャルドキュメントの「iOSクイックスタート」を参考に、
WindowsにてBlueprintプロジェクトを作成してiPhone実機で動作させるまでの手順を記載します。

iOS クイックスタート | Unreal Engine

手順

基本的に「iOSクイックスタート」の手順に沿って対応していきます。
各ページにプラットフォームを選択する箇所があるので、今回は Windows を選択してください。

インストールの前提条件

1.インストールの前提条件 | Unreal Engine

WindowsにiTunesをインストールします。この記事執筆時のバージョンは 12.7.4.80 です。

プロジェクトを作成する

2.プロジェクトの作成 | Unreal Engine

ブループリントのタグの中から好きなテンプレートを選択してプロジェクトを作ります。今回はチュートリアルと同じように Third Personテンプレートを使用します。

iOS プロビジョニング- 署名証明書の生成

3. iOS プロビジョニング- 署名証明書の生成 | Unreal Engine

チュートリアルの手順通りに、Engine\Binaries\DotNET\IOS\ ディレクトリに移動し、iPhonePackager.exe を実行します。
デフォルトでは CドライブのProgram FilesフォルダにUE4をインストールしていると思いますので、C:\Program Files\Epic Games\UE_4.21\Engine\Binaries\DotNET\IOS\ というディレクトリになるかと思います。

コマンドプロンプトに「ファイル ’ ... UE4Game-Info.plist’ が見つかりませんでした」と表示される
現在はこの時点で.plistファイルは不要みたいなので、気にしなくてOKです。

手順通りにメールアドレスと名前を入力し、.keyファイルと.csrファイルを作成して保存しておきます。
その後、手順通りにApple iOS Developer サイトの iOS Certificates ページに行き、証明書ファイル (.cer)を作成後ダウンロードしておきます。

iOS プロビジョニング- デバイスの追加

4. iOS プロビジョニング- デバイスの追加 | Unreal Engine 

開発機の登録をします。一度登録すればその機種は変更することはありません。
今後開発端末が増える度に追加していきます。

iOS プロビジョニング- App ID の作成

5. iOS プロビジョニング- App ID の作成 | Unreal Engine

開発するアプリのIDを作成します。チュートリアルで使用している *(ワイルドカード)は、開発の時に使えるジョーカーのようなもので、Bundle IDを指定しなくてもよくなります。開発の時はそれでもよいのですが、完成版に仕上げる際には結局IDを指定しないといけないので、この時点でIDを決めておいた方が後々になって慌てることもないかと思います。

今回はテストなので com.soramame.ioswinbponly というBundle IDにしてみました。

iOS プロビジョニング- プロビジョニングの作成とインポート

6. iOS プロビジョニング- プロビジョニングの作成とインポート | Unreal Engine

これまでに登録した情報を用いてプロビジョニングプロファイルを作成します。
作成したプロビジョニングプロファイルをダウンロードすることで、以下の4ファイルが手元に存在しているはずです。(.csrファイルはもう使いませんが…)


※入力した情報によってファイル名は異なる可能性があります。

デバイスでマップをテストする

7.デバイスでマップをテストする | Unreal Engine

いよいよこれまで作成したファイルをUE4にインポートします。
「Project Settings」にてチュートリアルの手順の通り、ProvisionファイルとCertificateファイルをインポートします。Certificateファイルをインポートする際には、.keyファイルを指定するように求められるので、先ほど作成した.keyファイルを指定します。
それぞれ、追加された情報の左側にチェックボックスがあるのでチェックしておきます。

次に、Bundle IDがワイルドカードではないので、先ほど指定した Bundle IDを入力します。
これで下図のようになります。

正しく設定しているのにNo Valid Certificate Foundのままになってしまう
ここでややこしいのが、ProvisionファイルとCertificateファイルとBundle IDが正しかったとしても、登録の反映に時間がかかるためか、Provisionの右側が Valid にならず、No Valid Certificate Found のままになっています。
設定自体がきちんと出来ていれば、次の日の夜には Valid に変わるのですが、それまで表示がこのままなのでうまくいっているのかわかりにくいです。
きちんと設定出来ていれば、この表示の状態でもiOS実機で動作させることが可能です。

それではチュートリアルの通りに、Launch -> iOSデバイス名 を選択して起動してみます。

うまくいけば、WindowsPCに接続してるiOSデバイスに開発アプリが転送されます。

ゲームをパッケージ化する

8.ゲームをパッケージ化する | Unreal Engine

一つ前の起動確認が出来ていれば、パッケージ化もすんなり成功するかと思います。