Unity2017 で .NET 4.6 (C# 6.0) を使う
Unity2017 では .NET 4.6 に対応しています。したがって C# 6.0 の機能までが利用可能になっています。以前までの .NET 3.5 の C# と比べ、以下の機能が利用できるようになります。
- 非同期処理 (await, async)
- 自動実装プロパティの初期化子
- null条件演算子
- 文字列補間(テンプレート文字列)
- nameof 演算子
ほかに色々あるのですが、地味に便利になるような機能が多い印象です。
Unity2017での設定方法
Unityのメニューからビルド設定を開き、プレイヤー設定を開きます。
File -> Build Setting -> Player Settings
PlayerSettings の中の OtherSettings の中に Scripting Runtime Version があるのでそれを設定します。
設定後再起動しろと言われるので再起動すると設定完了です。
Visual Studio でのエラーが消えない
以上の設定で Unity 的には設定完了なのですが、エディターに Visual Studio を使っていると、VSの側でエラーが発生します。これ
を解消するには .csproj ファイルをメモ帳などのエディタなどで手修正してやればよいです。
<LangVersion Condition=" '$(VisualStudioVersion)' != '10.0' ">4</LangVersion>
4 -> 6 に変更してやると Visual Studio 上でもエラーが出なくなります。
Visual Studio 2017 の場合
VS2017をデフォルトのエディタとした場合、上記設定をしなくても C# 6.0 の構文が使える用になっていました。
以上。
コメント