Amazonで商品を見るセール会場へ

Unity│Unityの更新が高速に!Unity Acceleratorの使い方

久しぶりにUnityの環境を構築した際、起動時間の長さに直面しました。

初回起動に約5時間、その後の起動にも20分以上かかっていたため、プロジェクトの更新・起動の高速化を図りました。

プロジェクトデータをSSDなどの高速なストレージに配置することが効果的ですが、キャッシュサーバーの導入も待ち時間の短縮に有効です。

キャッシュサーバーを導入すると、Gitなどのバージョン管理から最新データを取得してUnityで開く際の再インポート時間を短縮できます。

本記事では、Unity公式のキャッシュサーバー機能であるUnity Acceleratorの設定方法を解説します。

本記事で検証したUnityのバージョンはUnity 2020.1f1です。

目次

Unity Acceleratorとは

Unityはローカルプロジェクト内でのアセット変更を検知すると、エディター内で利用可能な形式へ自動的に変換します。

この変換処理をアセットパイプラインインポートと呼びます。

Unity 2019.3以降では、アセットパイプラインがAsset Pipeline v2へ刷新され、対応するキャッシュサーバーとしてUnity Acceleratorが提供されています。

Unity Acceleratorは、プロジェクトの更新にともなうアセット変換の待ち時間を最大90%短縮すると案内されています。

Unity Acceleratorの導入と設定手順

STEP
Unity Acceleratorのダウンロード

公式サイトの配布ページからインストーラーをダウンロードします。

インストーラーのダウンロード画面。
STEP
Unity Acceleratorのインストール

ダウンロードしたインストーラー(unity-accelerator-app-vxxxx)を実行し、セットアップウィザードを開始します。

セットアップウィザードの開始画面。

利用規約を確認し、同意して次へ進みます。

利用規約への同意画面。

キャッシュデータの保存先ディレクトリを指定します。

キャッシュデータの保存先ディレクトリを指定する画面。

Accelete Asset Import Piplineのチェックボックスを有効にします。

Unity Collaborateを使用しない構成の場合は、「Accelerate Unity Collaborate」のチェックを外しておきます。

アセットインポートパイプラインの有効化などを設定する画面。

通信セキュリティの方式を選択します。

  • Provide existing credentials(既存の証明書を使用)
  • Generate self-signed certificate(自己署名証明書を自動生成)
  • Allow insecure access encryption(暗号化なしのアクセスを許可)

同一マシン内のローカル環境でのみキャッシュサーバーを運用する場合は、「Allow insecure access encryption」を選択して進めることができます。

通信セキュリティの方式を選択する設定画面。

管理者用ダッシュボードにログインするためのユーザー名とパスワードを設定します。

ここで設定した認証情報は、Webブラウザから稼働状況を確認するダッシュボードへのログイン時に使用します。

管理者用ダッシュボードのユーザー名とパスワードを設定する画面。

ウィザードの指示に従ってインストール処理を実行します。

インストール完了画面に、サーバーのIPアドレスとポート番号が表示されます。

Unityエディター側の接続設定で入力が必要となるため、表示された値を控えておきます。

  • IPアドレス:xxx.xxx.x.xx
  • ポート番号:xx
インストール完了時にサーバーのIPアドレスやポート番号が表示された画面。

「Finish」をクリックするとブラウザが立ち上がり、管理ダッシュボードが表示されます。

ブラウザで表示された管理ダッシュボードの画面。

管理画面のURLはブックマークに登録しておくと確認がスムーズです。

http://IPアドレス/dashboard/

STEP
Unity Acceleratorの設定

続いて、Unityエディター側でAcceleratorへの接続設定を行います。

控えておいたIPアドレスとポート番号をエディターの設定画面に入力します。

接続設定は、すべてのプロジェクトに適用する全体設定(Preference)またはプロジェクト個別設定(Project Settings)のいずれかで行えます。

Unity全体(全プロジェクト共通)で設定する場合

Unityエディターを起動します。

上部メニューから「Edit」>「Preferences」を開き、「Cache Server」の項目を選択します。

  • 「Cache Server Mode」を「Enabled」に設定します。
  • 「Default IP address」に「IPアドレス:ポート番号」の形式で入力します(ポートが標準の場合はIPアドレスのみでも接続可能です)。

「Check Connection」をクリックし、「Connection successful」と表示されれば接続完了です。

接続確認で成功メッセージが表示された画面。

プロジェクト単位で個別に設定する場合

対象のプロジェクトでUnityエディターを起動します。

上部メニューから「Edit」>「Project Settings」を開き、「Editor」内の「Cache Server」項目を選択します。

  • 「Cache Server Mode」を「Enabled」に設定します。
  • 「IP address」に「IPアドレス:ポート番号」を入力します。

「Check Connection」をクリックし、「Connection successful」と表示されることを確認します。

プロジェクト設定でIPアドレスとポート番号を入力し接続を確認する画面。

接続後は、新しくインポートや変更が行われたアセットから順にキャッシュが保存されます。

既存プロジェクトのアセットを一括でキャッシュに登録したい場合は、Assets>Reimport Allを実行してプロジェクト全体を再インポートします。

再インポートを実行したすべてのアセットがAccelerator上にキャッシュされます。

プロジェクト規模によっては完了までに長時間を要するため、作業の合間や業務時間外の実行を推奨します。

プロジェクト全体のアセット再インポートを実行するメニュー画面。

以上でUnity Acceleratorの初期セットアップは完了です。

Unity Acceleratorの運用Tips

動作確認やトラブルシューティングに関する便利なポイントをまとめました。

キャッシュサーバーへの接続状態を確認する方法

Unityエディターの右下に表示されるキャッシュサーバーアイコンが青色に点灯していれば、正常にキャッシュサーバーと通信できています。

正常な通信状態を示す青色に点灯したキャッシュサーバーアイコン。

キャッシュの利用容量を確認する方法

AcceleratorのWebダッシュボードから、キャッシュの使用量や統計情報を確認できます。

ダッシュボード内の「Metrics」>「Internet Data Downloaded into cache」などの各指標から、キャッシュの蓄積状況を把握できます。

ダッシュボードでキャッシュ使用量や統計指標を確認する画面。

Unity Acceleratorサービスを停止する方法

Windows環境では、スタートメニューなどから「services.msc 」を実行してサービス管理画面を開きます。

サービス一覧から「Unity Accelerator」を探し、右クリックメニューから停止を選択します。

サービス管理画面でサービスを停止する操作画面。

macOS環境では、ターミナルを起動して停止用のlaunchctlコマンドを実行します。

launchctl stop com.unity3d.accelerator

そのほかのUnity高速化や環境構築に関する記事は、以下のリンクから参照できます。

環境設定の記事は、ほかにもあります。

まとめ:Unity Acceleratorでアセット読み込みを高速化

本記事では、Unity Acceleratorを用いたアセットインポートの高速化設定について解説しました。

ブランチ切り替え時や起動時のアセットインポート待ち時間に課題を感じている場合は、ぜひAcceleratorの導入を試してみてください。

キャッシュサーバーの活用とあわせて、プロジェクトデータを高速なNVMe SSD等に配置することもパフォーマンス改善に直結します。

プロジェクトデータの保存先とバックアップ

キャッシュ領域の確保とは別に、プロジェクト全体のバックアップや保管先となる外付けストレージを検討している場合は、転送速度と容量要件の比較が重要です。

詳細な選び方については、関連記事の「制作データ用の外付けSSDの選び方」をご参照ください。

次に学ぶ・作業環境を選ぶ

学習を続けたい方や、作業環境を整えたい方は、目的に合うガイドをご覧ください。

Unityのおすすめ書籍

開発PCの選び方

周辺機器の優先度

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次