Unity Remote とは、Android、iOS、tvOS アプリの開発を補助するためにデザインされたモバイル用アプリです。Unity エディター上でゲームを再生中に、Unity Remote と Unity を繋げることができます。エディターで出力される映像をデバイスのスクリーンに映し出し、デバイスでの入力はリアルタイムに Unity エディターで実行されているゲーム画面に反映されます。こうした機能により、ゲームが実際にはどう見えるのか、ターゲットにしているデバイスでどう操作するのかということに対して、テストの度にビルドするという煩わしい思いをしなくとも十分なデータを得られます。
Unity Remote は以前のバージョンとの互換性はなく、完全に別物となっています。旧バージョンの Remote は現在はサポートされていません。
旧バージョンの Unity Remote は古いプロジェクトではまだ、使用可能です。旧バージョンに関する詳しい情報は 旧 Unity Remote のドキュメントを参照してください。
Unity Remote は現在 (Windows や OSX と USB で繋がっている) Android デバイスと iOS デバイス (OS X と iTUnes がインストールされた Windows とUSB を通して繋がっている iPhone、iPad、iPod touch、Apple TV) をサポートしています。
実行中の Unity プロジェクトの Game ビュー がデバイスのスクリーンに複写されますが、フレームレートは引き下げられます。デバイスからは以下の入力データがエディターにストリーミングされます。
Remote アプリはエディターの実行画面で映るものをデバイスで表示し、デバイスの入力を受け取っているだけということに注意してください。ゲームが実際に処理されているのはデスクトップマシンの Unity エディター上でのことであり、そのためパフォーマンスはビルドされたアプリを完璧に反映したものではないのです。
Unity Remote は自身でビルドできる Unity プロジェクト形式で無料ダウンロード、またはプリビルドされているアプリをデバイスのアプリストアからダウンロードすることができます。
アプリのダウンロードが終了したらインストールしてください。その後デバイスで実行し、USB ケーブルを使用したデバイスとコンピューターの接続も行ってください。
Unity と自身のデバイスを協調動作させるために、Unity の Editor 設定 (メニュー: Edit > Project Settings > Editor ) を開き、Unity Remote セクションから使用するデバイスを選択してください。
この状態でエディターの再生ボタンをクリックすると、Unity が Remote アプリに接続しているため Game ビューと同じようにデバイスでゲームが再生されているのが分かるはずです。ゲームをプレイしている間、デバイスで実際に実行しているかのように(加速度計などの)デバイスからの入力が反映されます。
Unity Remote は Android の複数接続をサポートしていません。これを解決するために、最初に検出されたデバイスが自動的に選出されます。ただし、複数の iOS/tvOS デバイスと 1 台の Android デバイスを同時に接続する場合は、Editor Settings (メニュー: Edit > Project Settings > Editor) からどちらかを使用するか選ぶことができます。
Unity Remote を使用している場合、実際には Unity エディター上でゲームが実行され、同時にターゲットデバイスへとビジュアルコンテンツがストリーミングされています。エディターとデバイスとの帯域幅は限られているため、ストリームは転送の前にかなりの圧縮をかけなければなりません。この圧縮で必然的に画像クオリティは下がってしまいます。
Editor settings の Unity Remote セクション (メニュー: Edit > Project Settings > Editor ) では JPEG と PNG のどちらにするかで圧縮方式を切り替え、スクリーンイメージ解像度のサイズ削減も選択的に行うことができます。PNG 圧縮は“ロスレス”です (すなわち、画像クオリティが低下しません) が、帯域幅を JPEG よりも使用します。サイズを抑えた画像は解像度がフルのものよりも必要な帯域幅が少なくなります。これらの設定を変更することで、画像の精度と必要なフレームレートとの釣り合いを取ることができます。
Unity Remote は、ゲームをデバイスで実行するときにどのように見え、操作できるかおおよその感じを簡単にチェックすることを目的としています。必ず、ときどきは完全なビルドを作成して「本物の」アプリケーションをテストするようにしてください。