はじめに
Unity で以下のようなユースケースでソースコードを DLL(マネージドプラグイン)にビルドしたいことがあるかと思います:
- C# のソースを隠蔽したい場合*1
- 取り回しを楽にしたい(DLL をプロジェクトにインクルードするだけで完結させたい)場合
- 再ビルドを避けてビルド時間の短縮をしたい場合(Assembly Definition Files では足りない場合)
DLL を作成するには Mono Develop や Visual Studio でビルドするか、手動でコマンドを打ってビルドする必要があり面倒でした。そこで Unity 上でビルドできるツールを作ってみましたのでご紹介します。
画面
環境
ダウンロード
使い方
- Release ページから最新版をダウンロード
- 自プロジェクトに展開
- Window > uDllExporter からウィンドウを開く
- Target Directory でビルドに含めるディレクトリを指定
- Output Directory Path に出力するディレクトリを入力
- Output Dll Name でファイル名を入力
- Unity Engine DLLs、Unity Editor DLLs、Other DLLs から参照する DLL を選択(複数選択可)
- ビルドに含めたいファイルまたはファイルを含むディレクトリをエディタ上の Project ウィンドウから選択
- Build DLL ボタンを押してビルド
エラーや警告がある場合はエディタ上の Console ウィンドウに表示されます。
おわりに
uREPL が DLL にならないか?という要望が来てやってみようと思って作り始めたのですが、uREPL はスクリプトだけでなくアセットも色々含んでいるので断念しました...。途中まで作ってしまったので折角なのでということで仕上げた次第です。バグなどあったらご報告下さい。
*1:完全には隠蔽できませんが...