Unityのcloud buildの便利な点をまとめました

19/02/13 18:28:04     19/02/17 19:55:18

Unityのcloud buildは無料で使えなくなりました。でも、その代りにUnity Teamsというサービスが始まりました。

とはいえ有料でもUnityのcloud buildは利便性があります。そこでこのページでは、cloud buildとUnity Teamsの機能等について解説します。

cloud buildとは

CloudBuildのイメージ

https://unity3d.com/jp/unity/features/cloud-build

cloud buildはクラウド上で自動でビルドしてくれるサービスです。またマルチプラットフォーム対応しており、スマホ用のゲームでもパソコン用のゲームでも対応しています。具体的な対応OSとしては、 iOS / Android / WebGL / Windows / MacOS / Linuxとなっています。

またビルドの特徴として、ワークフローの最適化、チーム間のデプロイを容易にする、といったものがあります。つまり、cloud buildはUnityでチーム開発している場合にも利便性が高いツールです。

cloud buildを使ったビルドの流れ

cloud buildを使ったビルドの流れは以下です。

ソースコード管理のレポジトリがある場所を登録
  ↓
プロジェクトのビルド開始
  ↓
リンクがメール送信される

以上の流れでcloud buildでビルドを行います。

Unity Teamsとは

UnityTeamsのイメージ

https://unity3d.com/jp/teams

Unity TeamsはCollaborateとCloud Buildを統合したサービスです。gitのUnityバージョンのようなものとビルド機能がセットになったものになります。

Unity Teams使用の流れ

Unity Teamsを使用するためには、まず登録を行います。登録が完了したら共有するUnityプロジェクトを開き、以下のように操作を進めます。

右上の雲のマークをクリック → ProjectIDを発行する

Unity Collaborateとは

unityCollaborateのイメージ

https://unity3d.com/jp/unity/features/collaborate

もともとUnity CollaborateとUnity buildは別物でしたが、それがUnity Teamsによって統合されたイメージです。現状Unity buildは有料、Unity Teamsは無料、ということなのでUnity Teamsを利用した方が得だということになります。

ビルド機能に違いはあるようですが、Unity Teamsで無料のものを使用するのでも十分です。そこで次に気になるのがUnity Collaborateの機能についてでしょう。なぜ有料のUnity buildに含まれておらず、逆に無料のUnity Teamsに含まれているのかという疑問が出てくるからです。

そこでUnity Collaborateについてですが、上で少し説明した通りgitのようなもので、複数人でプロジェクト管理できます。一人で使うにしてもプロジェクト管理に便利とも言えますが、主には複数人でのUnity開発に使うものです。

サーバーに共有できるプロジェクトを作成する方法は簡単で、Collabという項目を押してStart nowを選択するだけです。これでサーバー上にプロジェクトが作成されました。あとはこれをメンバー間で共有し、最新のものに更新していきます。

UnityでWindows用の実行ファイルをビルドする

ツールの種類や使い方を説明してきましたが、実際にビルドする手順を紹介します。Windowsで解説しますが、流れはMacや他のOSでもだいたい同じです。手順は以下です。

  • Unityを起動し、[File]メニューの[Build Settings…]メニューをクリックします。そうすると[Build Settings]ダイアログが表示されます。次に[Platform]のリストの一番上の[PC,Max & Linux Standalone]の項目をクリックして選択します。
  • 右側の[Target Platform]のコンボボックスで”Windows”を選択し、設定ができたらダイアログ右下の[Build And Run]ボタンをクリックします。ビルド結果を出力するディレクトリの選択ダイアログが表示されます。ディレクトリを保存するフォルダを指定します。

これでビルドが実行され、ビルドが完了すると実行ファイルが起動されます。Configurationダイアログが表示されます。[Graphics]タブで実行時のウィンドウサイズを指定します。実行すると、ビルドが一通り完了しました。

いろいろなビルド

Unityではツールを使ってビルドできますが、コードを書いていろいろなビルドを行うことができます。たとえば、バッチを作ってシンプルなビルドを行うサンプルコードは以下です。

using System.Linq;
using UnityEditor;

public static class ApplicationBuild
{
    public static void AndroidBuild()
    {
        var levels = EditorBuildSettings.scenes
            .Where(scene => scene.enabled)
            .Select(scene => scene.path)
            .ToArray();
        BuildPipeline.BuildPlayer(levels, "./application.apk", BuildTarget.Android, BuildOptions.None);
    }
}

このバッチ処理を呼び出すためのバッチ処理は以下です。

"Unity.exeへのパス" -batchmode -quit -projectPath "Unityプロジェクトへのパス" -executeMethod ApplicationBuild.AndroidBuild

またデベロップメントビルドでデバック版とリリース版を簡単に切り替えることもできます。

using System.Linq;
using UnityEditor;

public static class ApplicationBuild
{
    private static BuildOptions _buildOptions = BuildOptions.None;

    public static void AndroidBuild()
    {
        var levels = EditorBuildSettings.scenes
            .Where(scene => scene.enabled)
            .Select(scene => scene.path)
            .ToArray();
        ResolveCommandLineArgs();
        BuildPipeline.BuildPlayer(levels, "./application.apk", BuildTarget.Android, _buildOptions);
    }

    private static void ResolveCommandLineArgs()
    {
        foreach (var command in System.Environment.GetCommandLineArgs())
        {
            switch (command)
            {
               case "-development":
                _buildOptions = BuildOptions.Development;
                break;
            }
        }
    }
}

まとめ

以上、colud buildやその他のツールについて解説してきました。

基本的にはゲームに何か影響を与えるものではなく、開発をサポートするためのツールです。そのため一度慣れれば道具として使うだけなので、ビルドやプロジェクト管理の方法を確立していってください。

【Unity関連記事】
▼Unityの基礎編
・ 【unityのフリーランス求人・案件情報】エンジニア需要や開発単価、未経験でもいける?
・ 【unity入門】ゲーム開発だけじゃない、Unityで出来ること

▼Unityの外部アセット、リソース編
・ UnityでMMDモデルを自由自在に動かしてみよう!
・ Unity adsを使って簡単に広告を導入しよう
・ Unityのアセットストアの上手な使い方
・ Unityで作られているARアプリをまとめてみました

▼Unityのコンポーネント編
・ Unityのrigidbodyを使って物理演算を導入してみよう
コードを使わずにUnityでキャラ追従のカメラを作る方法
・ Unityで簡単にアニメーションを作成する方法をまとめました
・ Unityでオブジェクトを回転させる方法をわかりやすくまとめました
・ Unityのtransformを使ってオブジェクトの座標や回転を操作する
・ Unityのアニメーターを簡単に作成する方法まとめ
・ UnityのShaderの解説と使い方まとめました
・ Unityで「当たり判定」(衝突判定)を付ける方法
・ Unityのgetcomponentの上手な使い方と使用時の注意点まとめ
・ Unityでキャラの移動を制御する方法まとめ
Unityのraycastを使って出来ることをまとめました

▼Unityのデフォルト機能、ゲーム製作編
blenderで作ったオブジェクトをUnityで組み込んでみよう
・ Unityのコルーチンとは?使い方をまとめました
Unityで作られているRPGゲームを作るための6つのステップ
・ Unityのパーティクルを使って演出できるエフェクト例
・ UnityでのUIデザインの基礎をまとめてみました
・ (この記事)Unityのcloud buildの便利な点をまとめました
・ Unityを使って半日でFPSゲームを作ってみよう

人気記事

編集部おすすめ記事

この記事を読んだ人はこんな記事を読んでいます

案件探しやフリーランスになるための相談する