この記事はアピリッツの技術ブログ「DoRuby」から移行した記事です。情報が古い可能性がありますのでご注意ください。
Unityでできる自動ビルドについて調べてみました。
はじめに
Unityで複数プラットフォームに対してビルドを行うときにいちいち手作業でやることは面倒だと思いませんか?特にiOSのビルドはとても面倒ですよね?なので、Unityの自動ビルドについて調べてみました。調べてみたところ、以下の二つほど方法がありました。
・Uintyを使って外部コマンドからビルド
・CloudBuildを使用してビルド
今回は外部コマンドからUnityを起動してビルドすることについて書いていきたいと思います。使用した環境は、Unity 5.4.3 を使用しました。
コマンドライン上からビルド
コマンドライン上からビルドする方法についてお話しします
Unity上でのビルド方法は、BuildSettingsからビルドする方法があります。それをAndroid,iOSともに手作業やるのは結構大変なので自動化します。Unityのマニュアルを読んでみるとそのためのドキュメントが用意されていました。
URL https://docs.unity3d.com/ja/current/Manual/CommandLineArguments.html
macOSだと
/Applications/Unity/Unity.app/Contents/MacOS/Unity
でUnityをコマンドライン上から起動できます。ここに引数として様々な項目が設定できますのでそれらの項目を見ていきましょう。
-buildTarget buildTargetName
buildTargetNameにビルドしたいターゲットを入れてビルドするプラットフォームを切り替えることができます。
-executeMethod ClassName.MethodName
これはあるクラスの特定のメソッドを実行する引数でこれを使ってビルドを実行させます。例えば、BuildBatchクラスを作り、そこにBuildメソッドを作りBuildPipeline.BuildPlayerを実行することでビルドを実行することができます。
-projectPath pathname
Unityを開くときに指定するプロジェクトのパスです。これでどのプロジェクトを開くか指定することができます。
-quit
コマンドを実行した後 Unityを自動で閉じてくれる引数です。
上記に挙げたように様々な引数で設定できます。
まとめ
今回はUnityをコマンドライン上から呼び出してビルドする方法を紹介しました。
次回はUnityCloudについて調べてみます。