Unityな日々(Unity Geek)

Unityで可視化アプリを開発するための試行錯誤の覚書

Unityエディタをバッチで起動し、プロジェクトにコマンドライン引数を渡す

Unityエディタをバッチファイルから起動するには、

"C:\Program Files\Unity543\Editor\Unity.exe"

と書いたバッチファイルを作って、ダブルクリックすればよい。"“でくくっているのは、フォルダ名Program Filesがスペースを含んでいるため。

ちなみに、Unityエディタのショートカットのプロパティを見ると、やはり"“でくくられているはず。これをコピペすればいい)

f:id:yasuda0404:20170117175514p:plain

特定のプロジェクトを開くには、-projectPath プロジェクトのパスをつかって

"C:\Program Files\Unity543\Editor\Unity.exe" -projectPath G:\_project\unity\MyProject

とする。ただし、パスは絶対パスでないと通らない(ようだ)。

パス以外に、さらにコマンドライン引数を加えてやれば、そのコマンドライン引数はプロジェクトから参照できる。たとえば、

"C:\Program Files\Unity543\Editor\Unity.exe" -projectPath G:\_project\unity\MyProject -DataDir G:\Data

とすると、エディタ内でプレイモードを起動したときに、コマンドライン引数 -DataDir G:\Dataが渡される。

コマンドライン引数は、System.Environment.GetCommandLineArgs()で取得する。たとえば、

    string[] commands;
    commands=System.Environment.GetCommandLineArgs();

とすれば、commandsにすべてのコマンドライン引数が格納される。引数の区切りはスペース文字。