見出し画像

【Unityエディタ】カスタムビルドショートカットの作成

UnityエディタはデフォルトでCtrl+Bのショートカットキーで「Build And Run」の機能が割り当てられています。

しかし、残念ながら「Build」だけやりたい場合のショートカットキーは割り当てられておらず、Unity 2019から搭載されたショートカットキーをカスタマイズできるショートカットキーマネージャーからも設定することができません。

そこでエディタ拡張の機能を使って、ビルドだけのカスタムショートカット機能とメニューを実現していきます。

手順

エディタ上のProjectパネルから「Editor」フォルダを作成し、そこにBuildSettingsというスクリプトを作成してください。スクリプトファイル名は任意で構いません。

コメント 2020-08-29 144341

スクリプトの内容を以下のようにします。options.targetはターゲットプラットフォームを指定します。 options.locationPathNameの値はビルドの結果を保存したいパスを指定してください。また、ビルドに含まれるシーンを指定するためにUnityエディタのBuild Settingsでシーンを追加してチェックを入れてください。

using UnityEngine;
using UnityEditor;
using UnityEditor.Build.Reporting;
using System.Linq;

public class BuildSetting : MonoBehaviour {

   [MenuItem ("Build/Build %b")]
   public static void Build () {
       BuildPlayerOptions options = new BuildPlayerOptions();
       options.target = BuildTarget.iOS;

       options.scenes = EditorBuildSettings.scenes
           .Where(scene => scene.enabled)
           .Select(scene => scene.path)
           .ToArray();
       options.locationPathName = "C:\\Users\\{UserName}\\Desktop\\build";
       options.options = BuildOptions.None;

       BuildSummary summary = BuildPipeline.BuildPlayer(options).summary;

       if (summary.result == BuildResult.Succeeded) {
           Debug.Log("Build succeeded: " + summary.totalSize + " bytes");
       } else {
           Debug.LogError("Build failed");
       }
   }
}

スクリプトを保存するとUnityエディタのメニュー上に[Build]メニューが作成されます。

コメント 2020-08-29 144454

これで「Ctrl+B」でビルドだけの処理を走らせることができます。しかし、元々「Ctrl+B」にはデフォルトで「Build And Run」が割り当てられているため、コンフリクト(衝突)の警告が表示されます。

画像3

今回は元々の設定を上書きしたいので、リストから割り当てたい項目を選んだ状態で「Rebind to selected command」を選択し、[Perform Selected]をクリックします。

もし、設定を上書きしたくない場合はリストから元々の設定を選んだ状態で同じようにチェックを入れてボタンを押します。その後、BuildSetting.csの[MenuItem ("Build/Build %b")]の行で任意のショートカットキーを割り当ててください。

割り当てたいショートカットキーの記述方法はスクリプトリファレンスが参考になります。

注意点

この設定を行うと、Unity共通の設定として保存されます。つまりどのプロジェクトでも「Ctrl+B」で「Build」のみの処理を実行することができますが、今回追加したスクリプトがそのプロジェクト内にも存在していないと何も起きません。

これが気になる場合は、カスタムで追加するショートカットキーはデフォルトで割り当てられていないキーの使用をおすすめします。

設定を元に戻したい場合は、Unityエディタのメニューの[Edit] -> [Shortcuts...]から該当する処理に対してキーの再設定を行うことができます。

それでは良いUnityライフを。🌱




この記事が気に入ったらサポートをしてみませんか?