ScriptedImporter
旧トピック

Scripting Runtime

The default Scripting Runtime Version is .NET 4.6. (.NET 3.5 is marked as deprecated.) This option is a per-Project setting that you specify in the Unity Editor Player settings (Edit > Project Settings, then select the Player category), in the Configuration section:

The equivalent scripting API is the PlayerSettings.scriptingRuntimeVersion property.

Important: Changing this property requires an Editor restart because it affects the Editor as well as Players.

By default nothing should change about how Unity behaves or what .NET functionality is available. Once you use .NET 4.6 for a project, you will be able to use C# 6, .NET 4.6 class libraries, and new runtime features in user scripts and precompiled assemblies.

Note The .Net 3.5 scripting runtime is deprecated, but it will be available for Unity 2018.3 and 2018.4 LTS. Please migrate or start new Projects with the .NET 4.x runtime.

FAQ

どのプラットフォームに使用できますか?

すべてのプラットフォームに使用できますが、それぞれ違いがあります。

  • エディターとスタンドアロンでは、このオプションを有効にすると新しいバージョンの Mono が使われます。

  • すべてのコンソールプラットフォームでは、新しい .NET バージョンを適用すると IL2CPP だけしか使えません。

  • iOS と WebGL では、IL2CPP だけしか使用できません。

  • Android では引き続き Mono と IL2CPP がサポートされます。

  • その他のプラットフォームでは、新しい Mono か IL2CPP どちらかをサポートするように開発中です。

IL2CPP とは?

IL2CPPは、新しい.NET 4.6 API とその機能を完全にサポートしています。

更新した Mono/IL2CPP はどのくらい安定していますか?

新しいMono / IL2CPP は Unity の内部的な自動テストをパスしました。もちろん、まだ、使用中に問題が発生することが予想されます。もし問題が発生した場合は、それをレポートしてください。

このプレビューには新しい GC が含まれていますか?

いいえ。ここでは、クラスライブラリとランタイムのアップグレードです。ただし、まだ Boehm GC が使われています。IL2CPP とともに使用する新しいバージョンの Boehm を適用しています (そのため IL2CPP と Mono にまったく同じ GC が使用されています)。

ちょっと待って、なぜ、新しい GC でないのですか?

新しい Mono ガベージコレクタ (SGen) を使うには、Unity でさらに開発が必要とされます。新しいランタイムとクラスライブラリを安定させてから、その作業を進めます。

この新しい Mono でマネージコードをデバッグできますか?

新しい Mono には VSTU 3.1 が必要です。Windows で新しい Mono ランタイムを使うには、 VSTU 3.1 をインストールして下さい。

なぜ、新しいバージョンの .NET を使うとビルドが大きくなるのですか?

.NET 4.6 クラスライブラリは、現在使っている .NET 3.5 クラスライブラリよりもかなり大きいものです。Unity は、マネージリンカーを向上させ、もっとサイズを減らせるように開発中です。

Additionally, we are working on a new Unity specific class library API profile (like our current unity profile) that will:

a) 特に AOT プラットフォームで使用できるよう装備されています。

b) API プロファイルを最小限に保ち、内部でストリップ/リンクできるように設計されています。

c) netstandard 2.0 (まだ、正式にはリリースされていません) をサポートします。

この新しいオプションを使おうとすると、不具合があります。どうすればよいでしょうか。

問題をレポートしてください。できるだけ早く、それらを修正します。


  • 2018–08–02 編集レビュー 無しにパブリッシュされたページ

  • MonoDevelopは2018.1以降のVisual Studioに置き換えられました

  • .Net 3.5 scripting runtime deprecated in Unity 2018.3 NewIn20183

ScriptedImporter
旧トピック