ゲームを作ってみたけど、実際にブラウザやスマホで動かすにはどうしたらいいかな?
本記事の内容
・Unityで作ったゲームを実際に動かすには、ビルドという工程が必要
・そもそもビルドとは?
ゲームを実機で動かすための変換処理、ビルド
ビルドとは?
ゲームを制作した最後の工程にあたる工程が、ビルドになります。ビルドとは、ゲームエンジン内でのみ動く状態のプロジェクトを、各プラットフォーム(ブラウザ、スマホ、Switch、PS4など)別に実行できるように変換する処理のことです。
ブラウザ、スマホ、Switch、PS4など、それぞれのプラットフォームごとに動いている仕組みや、画像の圧縮形式が違うため、マルチプラットフォーム対応ゲームを作る場合はそれぞれのプラットフォームごとにビルドする必要があります。
実際にビルドとは、どんな作業が必要になるか、具体的に見ていきましょう。
ビルドに必要なパッケージをインストールする
ビルドをするためには、各プラットフォームに応じた、パッケージをインストールする必要があります。現在のプロジェクトが対応しているプラットフォームをまずは確認します。
画面上部の、ファイル > ビルド設定 から、ビルド設定画面を開きます。デフォルトでは、「Windows,Mac,Linux,Universal Windows Platform」のみがアクティブになっており、それ以外は非アクティブになっているかと思います。
(筆者は、ブラウザゲーム、モバイルゲームを作ったことがあるので、Andoroi、iOS、WebGLがアクティブになっています)
ここで実機で確認したいプラットフォームがアクティブになっていない場合は、モジュールを追加する必要があります。
モジュールを追加するには、UnityHubを開き、インストールタブを選択します。
次に、追加したいプラットフォームに対応したモジュールを加えます。結構なディスク容量を取るので、そこは覚悟しましょう。
インストールが完了し、Unityエディターを再起動します。すると、先ほど非アクティブだったプラットフォームがアクティブになっているはずです。
ここまで完了したら、ビルド先のプラットフォームにターゲット切り替えを行います。今回はWebGLにターゲット切り替えをしてみます。
この処理は結構な時間がかかるので覚悟しましょう。
内部的には、プロジェクト内のすべてのスクリプトをコンパイルし直し、画像ファイルの圧縮形式を変換する処理などを行っているため、時間がかかります。
また、複数のプラットフォームをターゲットにして同時に実行することはできません。
個別のビルド時にしておくべき設定は別記事で解説するので、以下ではマルチプラットフォームでリリースする際に、共有されるビルド設定内容をまとめます。
マルチプラットフォームの場合、共通するビルド設定
ビルド設定の設定方法
まずは、ビルド設定の設定方法について。こちらのボタンから設定することが出来ます。
ビルドに含めるシーン
どのシーンをビルド対象にするかは、各プラットフォーム共通です。また、気をつけるべき点としては、プレイして最初にロードされるシーンは、一番上に表示されているシーンです。複数のシーンがある場合は、順番を気をつけます。
シーンに不足があれば、シーンを追加ボタンから追加できます。
Assets > Scenes フォルダにシーンアセットが入っているのでドラッグアンドドロップでも追加出来ます。
企業名、プロダクト名、バージョン
WebGLの場合はそれほど意識する必要はありませんが、特にモバイルゲームでiOS、Androidでリリースする場合は、ビルド設定の、「企業名、プロダクト名、バージョン」はいずれのビルドでも共通する設定になります。
ここで設定した値をもとに、アプリをリリースするときに必要となる「bundleID」が作られます。(詳細は個別ビルド解説記事にて)
-、?、!などの記号や、日本語は含めないようにするとよいです。
テクスチャサイズを意識しよう
最後に、マルチプラットフォームの場合、よくパフォーマンスが話題になります。ホグワーツレガシーのスイッチ版が話題になりましたね。
これはなぜ起こるかというと、低スペック端末ではテクスチャ画像サイズが大きい(=画質が良い)ファイルをロードすることが苦手だからです。
端末の容量自体の問題もありますし、解像度の高いテクスチャを一度に沢山読み込んで表示するといったことが低スペックな端末では困難なことがあります。
そこで、端末によってテクスチャの画質を下げる設定が可能です。ビルド設定から、アセットインポートオーバーライドを選択すると、各プラットフォームごとの最大のテクスチャ読み込みサイズを調整することが可能になります。
モバイルゲームだったら、ほとんどの画像が512で事足ります。逆に、モバイルゲームですべての画像を2048にしてしまうと、容量が膨らんでロード地獄が発生するでしょう。
テクスチャサイズが大きくなりすぎないように、マルチプラットフォームでリリースすることを検討している場合は使うかもしれません。
まとめ
以上、ビルドとはなにか?マルチプラットフォームでのビルドの注意事項でした。個別のビルド設定内容は別記事にて紹介いたします。
ゲームが完成した!と思ってから、リリースまで躓く最初の鬼門がビルドです。ここを乗り越えればゲームリリースまであと少しです。
それでは素敵なゲーム制作ライフを!
コメント
コメント一覧 (1件)
[…] 【Unity】実際にゲームを実機で動かすには?(ビルド) […]