unity1week「密」に参加した時に、WebGLへのビルド環境としてCloud Buildを使ってみたので使い方と導入した感想をまとめます。
ちなみに「メンヘラ彼女から濃密接触されないように逃げて帰宅する」っていうゲーム作ったので遊んでみてください☺️
Cloud Buildとは
プロジェクトをCloud Buildに登録する
「Cloud Build」では、クラウド上で高速にビルド作業を行ない、共有することができます。また、「Cloud Build」実行時は自動でコンパイル、デプロイ、試験などの処理も行なうため、チームによる運用も簡単です。その設定も、すでに持っているソースコード管理のレポジトリを用いて手軽に行なうことが可能です。
- トリガー設定で自動ビルド実行
- マルチプラットフォームのビルド対応
- ビルド時にテストを実行可能
などの特徴があります。
今回はunity1weekだったので、
とにかくスピード感を重視&WebGLのみサポートすればいい
状態だったので、一つ目のトリガー設定で自動ビルド実行について説明していこうと思います。
ちなみに下記のプラットフォームに対応しています。
導入方法
まずは、Unity EditorからServiceウィンドウを起動して、UnityIDを登録します。
次に、プロジェクトのダッシュボードに移動して、Cloud Buildを有効にします。
最後に、もう一度Unity Editorに戻ってServiceウィンドウからCloud BuildをONにします。
これでプロジェクトのCloud Buildを有効にすることができました。
githubのプロジェクトを登録する
プロジェクトにCloud Buildの導入が完了したら次はビルド対象となるプロジェクトのリポジトリURLを設定する必要があります。 今回はgithubを使っていたのでその方法で説明していきます。
まずはビルド方法の設定ですが
- 自動でビルドする
- 手動でプロジェクトファイルをアップロードしてビルドする
の二つの方法があります。
今回はgithub上のmasterブランチに変更があった場合に自動でビルドを回したいのでSET UP CLOUD BUILDを選択します。
次にリモート上のリポジトリを登録します。今回の開発ではgithubを使用していたのでgithubを選択します。
すると、githubの認証画面に遷移すると思うので適切に設定してあげると、再びダッシュボードの画面に戻ってきます。
ここで該当のリポジトリを設定してあげます。
リポジトリの登録が完了するとこのような画面になると思います。
以上でCloud Buildにリポジトリを登録するまで完了しました。
次でいよいよビルド方法などを設定してビルドを実行するところになります。
ビルド方法の設定
プロジェクトのCloud Buildを有効にして、ダッシュボードでリポジトリの登録まで完了したらいよいよビルド方法を設定して自動ビルドになります。
まずは、ビルドしたいプラットフォームを選択します。unity1weekでは提出はWebGL形式になるのでそちらを選択しました。
プラットフォームを選択したら、ビルド時の詳細設定を登録していきます。
- ビルドの名前
- どのブランチをビルドするか
- ビルドに使うUnityのバージョンは
- 変更があった際に自動でビルドを回すか
などの設定が可能となっています。
今回はmasterブランチに変更があった場合に自動でビルドを回して欲しかったので、Auto-buildをONに設定しています。
ここまで設定が完了すると青色の「NEXT:BUILD→」ボタンを押すことで初回のビルドが実行されます。
masterを更新してみる
以上でCloud Buildの全ての設定が完了しました。
試しにmasterブランチに更新をかけてみると、自動でビルドが走ることが確認できます。
シーンを登録してpushしてみました。
すると、登録したリポジトリのmasterブランチに更新がかかったことを検知して、自動的にCloud Buildが走っていることが確認できました🎉
(最初のビルド登録時にシーン登録するの忘れてて、初回のビルドが落ちてますね😭)
メリット
今回はunity1weekでCloud Buildを試験的に導入してみました。
短期間で完成を目指す開発は、かなり効率的に作業しないと難しいところもあるので結果として導入したのは良かったかなと思います。
WebGLにビルドするのはかなり時間がかかりますし、その間ずっとビルドしているPCでは作業できない状態だと合計でかなりの時間「待ち」が生まれてしまっただろうし、ゲームの動作テストなどのサイクルが遅くなってしまうので結果として導入したことでかなり開発効率は上がったと思います。
デメリット
デメリットというわけではありませんが、フルでCloud Buildの能力を活用できたわけではないので今後色々試していければいいなとは考えています。
ビルド前にテストを実行することも可能っぽいですし、ビルドファイルのアップロードなどもできそうなので(少しリファレンスとかをみた感じ)CI/CDをCloud Buildだけで完結できる感じもしたので利点をもっと使いこなせるようにしていきたいと思います。
感想
今回のunity1weekのチーム構成が
- エンジニア3人
- デザイナー2人
- 音楽1人
という「え、最強じゃないかこのメンバー」みたいな状態だったので自分一人ではできないところがどんどん出来上がっていく感じがしてすごい楽しかったです!🎉
Cloud Buildも初めて導入しましたが、結果的にいい感じに運用できたので知見もたまったし良い事づくしでしたね!
ちなみに、学生はUnity Studentプランというものがあり、そちらに登録するとCloud Buildとか色々サービスが使えるようになるのでおすすめですよ!!
学生の力を存分に味わいましょう笑
本当に学生のクリエイトをサポートしてくださる環境ありがたいです🙇♂️