You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
286 lines
17 KiB
Plaintext
286 lines
17 KiB
Plaintext
INTSourceChangelist:2430506
|
||
Availability:Public
|
||
Title:最新の iOS PC/Mac 向けワークフロー
|
||
Crumbs:%ROOT%, Platforms, Platforms/iOS
|
||
Description:iOS プラットフォーム開発の環境設定
|
||
prereq:Platforms/iOS/QuickStart
|
||
|
||
[TOC(start:2 end:2)]
|
||
|
||
%Globals:OSSelect%
|
||
|
||
## 概要
|
||
|
||
このドキュメントは、iOS 搭載デバイスのためにコンパイルを実行する開発環境の設定方法に加え、iOS プラットフォームをターゲットとする「Unreal」プロジェクトをデプロイするための一般的なワークフローについて説明します。
|
||
|
||
[PUBLISH:Rocket]
|
||
[REGION:note]
|
||
現在アンリアル エンジンのランチャー版を使用している方は、Windows からブループリントベース プロジェクト用の iOS へデプロイのみ可能です。
|
||
[/REGION]
|
||
[/PUBLISH]
|
||
|
||
##デバイス/SDK
|
||
UE4 は iPhone4 / iPad2 とその後継機種、および iOS 6.0 以上のバージョンで動作します。
|
||
|
||
お持ちのデバイスのエンジン機能との互換性の確認については、 [](Platforms\iOS\DeviceCompatibility) をご覧ください。
|
||
|
||
##サポートしているコンフィギュレーション
|
||
[OBJECT:ToggleButtonContent]
|
||
[PARAMLITERAL:category]
|
||
OS
|
||
[/PARAMLITERAL]
|
||
[PARAMLITERAL:id]
|
||
windows
|
||
[/PARAMLITERAL]
|
||
[PARAMLITERAL:active]
|
||
active_button_content
|
||
[/PARAMLITERAL]
|
||
[PARAM:content]
|
||
[INCLUDE:#WindowsConfig]
|
||
[/PARAM]
|
||
[/OBJECT]
|
||
[OBJECT:ToggleButtonContent]
|
||
[PARAMLITERAL:category]
|
||
OS
|
||
[/PARAMLITERAL]
|
||
[PARAMLITERAL:id]
|
||
mac
|
||
[/PARAMLITERAL]
|
||
[PARAMLITERAL:active]
|
||
[/PARAMLITERAL]
|
||
[PARAM:content]
|
||
[INCLUDE:#MacOSConfig]
|
||
[/PARAM]
|
||
[/OBJECT]
|
||
|
||
<!--
|
||
[EXCERPT:WindowsConfig]
|
||
|
||
Windows のシステム要件の詳細については、[推奨される仕様](GettingStarted/RecommendedSpecifications) を参照してください。
|
||
|
||
[/EXCERPT:WindowsConfig]
|
||
|
||
|
||
[EXCERPT:MacOSConfig]
|
||
|
||
Mac のシステム要件の詳細については、[推奨される仕様](GettingStarted/RecommendedSpecifications) を参照してください。iOS 7.1 へデプロイするには、 Xcode 5.1 をインストールする必要があります。ご注意ください。
|
||
Xcode は App Store で [無料でダウンロードできます](https://itunes.apple.com/us/app/xcode/id497799835?mt=12)。
|
||
|
||
[/EXCERPT:MacOSConfig]
|
||
-->
|
||
|
||
|
||
|
||
## Apple iOS Developer 用の入門
|
||
|
||
[Apple IOS Developer Program](https://developer.apple.com/programs/ios/) に登録する必要があります。
|
||
* 個人 - 自分一人で作業する場合、もしくは小規模なチームの中で自分だけが IOS アカウントへの管理者アクセス権が必要な場合
|
||
* 法人 - 法人で小規模なチームの場合 / こちらにすると、チームに人を追加し、異なる種類のアクセス権を与えることができます。
|
||
|
||
Apple developer アカウントの作成時には、以下の作業が必須です (Apple 社の説明に従います) :
|
||
|
||
|
||
* 証明書の作成
|
||
* App ID の作成 (ユーザーが指定した部分に「*」を使用しても構いません)
|
||
* プロビジョニング プロファイルの作成
|
||
* ユーザーのデバイスの追加
|
||
* プロビジョニング プロファイルへユーザーのデバイスを全て追加
|
||
|
||
詳細は Apple 社のサイトの以下のページを参照してください。
|
||
* [App Distribution Guide](https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/Introduction/Introduction.html#//apple_ref/doc/uid/TP40012582-CH1-SW1)
|
||
* [識別子、デバイス、プロファイルの管理](https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/MaintainingProfiles/MaintainingProfiles.html#//apple_ref/doc/uid/TP40012582-CH30-SW1)
|
||
* [デバイス上で App を起動する](https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/LaunchingYourApponDevices/LaunchingYourApponDevices.html#//apple_ref/doc/uid/TP40012582-CH27-SW4)
|
||
|
||
|
||
[OBJECT:ToggleButtonContent]
|
||
[PARAMLITERAL:category]
|
||
OS
|
||
[/PARAMLITERAL]
|
||
[PARAMLITERAL:id]
|
||
windows
|
||
[/PARAMLITERAL]
|
||
[PARAMLITERAL:active]
|
||
active_button_content
|
||
[/PARAMLITERAL]
|
||
[PARAM:content]
|
||
[INCLUDE:#WindowsSetup]
|
||
[/PARAM]
|
||
[/OBJECT]
|
||
[OBJECT:ToggleButtonContent]
|
||
[PARAMLITERAL:category]
|
||
OS
|
||
[/PARAMLITERAL]
|
||
[PARAMLITERAL:id]
|
||
mac
|
||
[/PARAMLITERAL]
|
||
[PARAMLITERAL:active]
|
||
[/PARAMLITERAL]
|
||
[PARAM:content]
|
||
[INCLUDE:#MacOSSetup]
|
||
[/PARAM]
|
||
[/OBJECT]
|
||
|
||
<!--
|
||
[EXCERPT:WindowsSetup]
|
||
|
||
Windows で証明書を取得するには、`Engine\Binaries\DotNET\IOS` にある iPhone Packager を使う必要があります。
|
||
|
||
iPhone Packager にはタブが 2 つあります。
|
||
* New User (新規ユーザー)
|
||
* Already a registered iOS developer (iOS developer として登録済みのユーザー)
|
||
|
||
* [New User] タブには、初めて iOS アプリケーションを開発するデベロッパ向けのツールがあります。
|
||
|
||
このタブから以下の操作ができます。
|
||
* [Generate Certificate Request] ウィンドウを開けます。[Generate Certificate Request] ウィンドウを使用して、iOS アプリケーションに署名するための鍵のペアおよび Apple 社の Developer ウェブサイトで証明書を作成するための証明書リクエストを生成します。
|
||
* Apple 社の Developer ウェブサイトからダウンロードしたプロビジョニング プロファイルをインポートします。
|
||
* Apple 社の Developer ウェブサイトからダウンロードした開発証明書と鍵のペアをインポートします。
|
||
|
||
[REGION:warning]
|
||
Edit Info.plist ウィンドウを開くオプションがありますが、これは古いオプションであり不要になりました。最終的に、iPhone Packager の機能がアンリアル エディタに統合されます。
|
||
[/REGION]
|
||
|
||
[Already a registered iOS developer] タブには、アンリアル製品または他の方法を用いて過去に iOS アプリケーションを開発したことがあり、開発証明書とプロビジョニング プロファイルを取得済みのデベロッパ向けのツールがあります。
|
||
|
||
このタブから以下の操作ができます。
|
||
* Apple 社の Developer ウェブサイトからダウンロードしたプロビジョニング プロファイルをインポートします。
|
||
* Apple 社の Developer ウェブサイトからダウンロードした開発証明書と鍵のペア、またはキーチェーン アクセスからエクスポートされた .p12 ファイルをインポートします。
|
||
|
||
認証書のインストールする場合、ほとんどの場合はウィザードのデフォルト オプションで成功するはずです。
|
||
|
||
[/EXCERPT:WindowsSetup]
|
||
|
||
|
||
[EXCERPT:MacOSSetup]
|
||
|
||
|
||
ここでウェブサイトに掲載されている説明通りに、使用している Mac に証明書をインストールしなくてはいけません。アプリケーションにサインをするスタジオ内の全ての Mac に、同一証明書をインストールしなくてはいけません。方法は 2 種類あります。
|
||
|
||
|
||
* Keychain Access アプリケーションの使用
|
||
* ログイン キーチェーンの選択
|
||
* [Category] セクションで [My Certificates] を選択
|
||
* 新規の証明書を選択 ("iPhone Developer" で開始します)
|
||
* これを右クリックして [Export] を選択
|
||
* プロンプトに従います (安全に保存した場合、空のパスワードで問題ありません)
|
||
* 「.p12」を他のユーザーにも割り当てます
|
||
* その後、証明書をログインキーチェーンへインストールするために、これをダブルクリック、または「.p12」を [Keychain Access] へドラッグします。
|
||
* Xcode を使用
|
||
* [Organizer] へ移動します。
|
||
* 左下の [Developer Profile] へ移動します。
|
||
* [Export Developer Profile] を選択します。
|
||
* プロンプトに従います (パスワード入力も含みます。チーム内で共有できるパスワードを使用します)
|
||
* プロファイル ファイルを他のユーザーにも割り当てます。
|
||
* これにより他のユーザーは、Xcode の Organizer へ「Developer Profile」をインポートすることができます
|
||
|
||
次に、Apple サイトから `.mobileprovision` をダウンロードします。「<ProfileName>.mobileprovision」と言う名前でファイルがダウンロードされます。`.mobileprovision` ファイルを以下のいずれかの場所に置きます。
|
||
* `[GameDir]/Build/IOS/[GameName].mobileprovision`
|
||
* `Engine/Build/IOS/UE4Game.mobileprovision`
|
||
|
||
|
||
[/EXCERPT:MacOSSetup]
|
||
-->
|
||
|
||
最後に重要なのは、誰もがそれぞれのログイン キーチェーンに同じ "iPhone Developer:" certificate がなくてはいけないことです。
|
||
|
||
全てのゲームにおいて、「mobileprovision」ファイルにワイルドカードを用いて共有することができます (Appleで説明している通り、ワイルドカードなしのプロファイルがゲームに必要となるまで)。デバイスを追加した際は必ずファイルの更新を行ってください。
|
||
|
||
|
||
## iOS デバイスにデプロイする
|
||
|
||
iOS デバイス上で現在のレベルのテストをすぐに開始するために、アンリアル エディタ内の **[Launch]** ボタンを使用します。
|
||
**File > Package** コマンドを使って、iOS デバイス上でテストするためにゲームをクックしパッケージ化することもできます。詳細は、 [](Engine\Deployment\Launching) を参照してください。
|
||
|
||
|
||
[PUBLISH:Licensee]
|
||
|
||
## コード プロジェクト用の Windows ベースのワークフロー
|
||
|
||
主な開発とプログラミングを Windows で行う場合は、このセクションに目を通してください。
|
||
|
||
### Mac のシステム設定
|
||
|
||
* App Store から最新の Xcode をインストールします。
|
||
* Terminal アプリケーションを利用して、必要なディレクトリ構造を作成します。
|
||
* 書き込みが出来るディレクトリをいくつか作成します。
|
||
* sudo mkdir /UE4
|
||
* sudo chmod 777 /UE4
|
||
* ホームディレクトリにこれらのディレクトリを作成後、これらに対しリンクを作成します:
|
||
* ln -s ~/UE4 /UE4
|
||
* UnrealRemoteTool (URT) をインストールおよび実行します。
|
||
* 使用している Mac へプログラムを取得しますA か B のいずれかを行います。
|
||
* A)
|
||
* 使用している PC (//depot/UE4/Engine/Build/iOS/UnrealRemoteTool) から Mac へ UnrealRemoteTool をコピーします
|
||
* chmod a+x UnrealRemoteTool
|
||
* B)
|
||
* p4v から UnrealRemoteTool を直接 Mac へ同期します。
|
||
* Terminal から UnrealRemoteTool を実行します (まだデバッガでは見つけることができない、ごく稀なクラッシュが URT にあるためループで実行します)。
|
||
* for (( ;; )) ; do ./UnrealRemoteTool; done
|
||
* Mountain Lion は、Terminal が作業ディレクトリとコマンドヒストリ-を記憶することに留意してください。そのため再起動しても上矢印キーでコマンドを呼び戻すことができます。
|
||
|
||
## Windows のシステム設定
|
||
|
||
* 環境変数を設定します (もしくは単一 Mac を他のユーザーと共有できるように「RemoteToolchain.cs」でコードを修正します)。
|
||
* 「ue.RemoteCompileServerName = The DNS name」 またはコンパイルに使用した Mac のIPアドレス (例えばa1012)
|
||
* ue.IOSSigningServer = これは任意です (コンパイル時は、パッケージが「ue.RemoteCompileServerName」同様に強制しますが、独自の「IPhonePackager.exe」を実行すると、「-mac」が指定されていない限りMacの使用を判断します)。
|
||
|
||
2 セットの環境変数である理由は、全く異なるコンパイルや検証サーバーを有効にするためです。変更を有効にするために、コンピューターの再起動が必要かもしれません。
|
||
|
||
|
||
### Windowsでのコンパイル作業
|
||
Windows または Mac システムのセットアップに上記手順が完了すると、コンパイルの実行に UnrealBuildTool を使用するためコンパイルは単純な作業になります。
|
||
* 「//depot/UE4/GenerateProjectFiles_AllPlatforms.bat」を実行します
|
||
* 作成された「UE4.sln」を開きます。
|
||
* ゲーム ソリューション フォルダを開きます。
|
||
* Development Editor コンフィギュレーション、そして Win64 プラットフォームを選択します。
|
||
* 選択するゲーム (例えばQAGame) を **右クリック** して [Build] を選択します。
|
||
* 次に、Development コンフィギュレーション、そして IOS プラットフォームを選択します。
|
||
* ここで再びゲームをビルドします。
|
||
* UnrealRemoteTool を実行している Mac と接続してファイルをコピー、その後 Mac 上にリモートコンパイルコマンドを実行します。
|
||
* 最後にサイニングも実行するため、正しく機能していることを確認してください。もしくは、Mac にインストールされたプロビジョンファイルと証明書を再度確認してください。
|
||
* クッカを開始します。
|
||
* 「UE4/Engine/Binaries/Win64」ディレクトリ (「cmd.exe」内) で以下を実行します (ユーザーのゲームとQAGameを差し替えます):
|
||
* ue4editor-cmd QAGame -run=cook -targetplatform=ios -cookonthefly
|
||
* クックされたファイルを読み出すために、ネットワーク上で IOS デバイスが通信をするクックサーバーが開始します。
|
||
|
||
Mac のドライブ上にある「/UE4/Builds」ディレクトリに、ユーザーの PC のコンピューター名と同じディレクトリがあります。ユーザーの PC ディレクトリ構造と一致するようにミラーリングされたディレクトリ構造が内部に存在します。コンパイル処理が終了すると、実行ファイルがゲームの「Binary」ディレクトリに入ります (ゲームが存在しない UE4 プロジェクトをコンパイルした場合は「Engine/Binaries」)。
|
||
|
||
### Xcode を使用した実行/デバッグ作業
|
||
|
||
次に、デバイス上で実行するために Mac へ移動します。
|
||
|
||
* 「/UE4/Builds/.../UE4/Engine/Binaries/IOS」から「UE4_FromPC.xcodeproj」を開きます。
|
||
* ゲームのターゲットを選択します (例えば QAGame_RunIOS)。
|
||
* 起動設定を編集します。
|
||
* 「Option-Command-R」を押します
|
||
* 引数の下に必要なコマンドライン引数と、
|
||
* 「-filehostip=xx.xx.xx.xx」を追加します
|
||
* 「xx.xx.xx.xx」は、クッカを実行しているユーザーの PC の IP アドレスです。
|
||
* [Run (実行)] を押すとゲームがデバイスにインストールされて、ゲームが PC と接続される箇所で実行が開始します (クッカ出力に接続メッセージが表示されます)。
|
||
|
||
|
||
## Mac ベースのワークフロー
|
||
|
||
Mac で IOS をコンパイルできます。これはかなり新しいワークフローであるため、いろいろと問題が発生する可能性があります。
|
||
|
||
### コンパイルおよび実行
|
||
|
||
* 「//depot/UE4/GenerateProjectFiles_AllPlatforms.command」を実行します
|
||
* Xcode で「UE4/UE4.xcodeproj」を開きます
|
||
* 「QAGame - Mac」と選択します。
|
||
* スキーム (Option-Command-R) で、 [Development] を選択して最後に終了をクリックします。「Command-B」で Mac の実行ファイルをビルドします。
|
||
* Terminal から IOS クッカを実行します。
|
||
* 「Terminal.app」を起動して「UE4/Engine/Binaries/Mac」へディレクトリを変更します。その後以下を実行します (ユーザーのゲームと QAGame を差し替えます):
|
||
* open UE4Editor.app --args QAGame -run=cook -targetplatform=ios -cookonthefly
|
||
* 「<GameName> - IOS (Run)」ターゲットを選択して、実行するデバイスを選択します。
|
||
* スキーム (Option-Command-R) で、[Development in Info] を選択して、その後 [Arguments] へ移動します。
|
||
* ユーザーのゲームに必要なコマンドラインオプションと、
|
||
* 「-filehostip=xx.xx.xx.xx」を追加します
|
||
* 「xx.xx.xx.xx」は、クッカを実行しているユーザーの Mac の IP アドレスです。
|
||
|
||
|
||
|
||
## パッケージング
|
||
|
||
ビルドをあらかじめパッケージしたい場合、全てのコンテンツがクックされた状態の「.ipa」を作成する方法を UnrealFrontend ドキュメントで参照してください。
|
||
[/PUBLISH:Licensee] |