そのままでは痒いところに手が届かないことが多いので、いろいろカスタマイズして快適にしていきます。
環境
- Unity 2018.4.19f1
- Visual Studio Community 2019
コード分析規則
Linter文化に慣れた結果ゲーム開発でも規則が欲しくなってしまいました。チーム開発では必須だと思っています。
デフォルトだとエディタからの提案がお節介だったり、警告してほしいところで消極的だったりするので、自分好みに設定していきましょう。
規則セットの追加
プロジェクト用の規則セットファイルを作成して、Assembly-CSharp と Assembly-CSharp-Editor 設定します。
→規則セットをカスタマイズする
.csproj に設定を自動追記
このままではUnityは自動で.csprojファイルを書き換えてしまうので、規則セットファイルを読み込む設定が上書きされないように下記のようなエディタ拡張スクリプトを配置します。
規則セットファイル名は{プロジェクト名}.rulesetを前提にしています。
CsprojFixer.cs
usingSystem;usingSystem.IO;usingUnityEditor;publicclassCsprojFixer:AssetPostprocessor{publicstaticstringOnGeneratedCSProject(string_,stringcontent){// プロジェクト名の抽出stringcurrDirPath=Directory.GetCurrentDirectory();string[]pathArray=currDirPath.Split(Path.DirectorySeparatorChar);stringprojectName=pathArray[pathArray.Length-1];// .csprojの内容を置換stringold="</AllowUnsafeBlocks>";stringaddition=$"<CodeAnalysisRuleSet>{projectName}.ruleset</CodeAnalysisRuleSet>";returncontent.Replace(old,$"{old}{Environment.NewLine}{addition}");}}StyleCop.Analyzers
もっと規則にこだわりたければNuGetパッケージの StyleCop.Analyzersを導入します。
NuGetパッケージを導入する場合も、エディタ拡張で.csprojにNuGetパッケージ設定を加える処理を追加する必要があります。
拡張機能
いくつか普段使っている拡張機能も紹介します。
CodeMaid
スペースを入れてくれたり空行を削除してくれたりする便利なフォーマッタです。
申し分ないくらいのオプション設定をすることができて、保存時の自動整形もできます。(うれしい)
普段 VSCode を使っているとこれがないとしんどいです。
Enhanced Syntax Highlighting
シンタックスハイライトでカスタマイズできる種類を少し増やしてくれます。
宣言時だけ色を変えるとかはできないのですが、もともとの設定項目が少ないので少しでもマシになればと思います。

