Search Unity

Mono Upgrade .NET 3.5 runtime has been deprecated in Unity 2018.3

Discussion in 'Experimental Scripting Previews' started by JoshPeterson, Dec 20, 2018.

  1. JoshPeterson

    JoshPeterson

    Unity Technologies

    Joined:
    Jul 21, 2014
    Posts:
    3,984
    As we mentioned in the introductory blog post for Unity 2018.3, the old .NET 3.5 runtime has been deprecated. What does this mean?
    • Any new projects in 2018.3 will use the new .NET 4.x scripting runtime by default.
    • The old .NET 3.5 scripting runtime is still an option for new projects in 2018.3.
    • The scripting runtime will not change for any existing projects upgraded from earlier Unity versions.
    • The Unity 2018 LTS release will continue to support the .NET 3.5 scripting runtime for its lifetime. This will be the final Unity LTS release to support the .NET 3.5 scripting runtime.
    • We will be removing the .NET 3.5 runtime in the 2019.x series of releases (although not in 2019.1).
    Please let me know if you have any questions about the scripting runtime versions. Thanks!
     
    mkusan likes this.
  2. dadude123

    dadude123

    Joined:
    Feb 26, 2014
    Posts:
    787
    Hi,
    I'm on Win7 x64 using 2018.3.2f1.
    What version of mono will my code run on in the end?
    By "in the end" I mean: when compiled as a non-debug release for Win x64, not using il2cpp.

    I want to optimize some code I wrote for Unity using BenchmarkDotNet.
    For that it is necessary that I provide a path to a
    mono.exe
    to BenchmarkDotNet.

    In the path:
    C:\Program Files\Unity\Hub\Editor\2018.3.2f1\Editor\Data\
    I can see two sub folders, Mono, and MonoBleedingEdge.

    Which one is used is used when? Which one should I pass to BenchmarkDotNet?
    Am I looking into the right directories even?

    Moreover, when I call
    mono --version
    to either of them, they tell me
    Architecture: x86
    , but I want x64 only.
     
  3. JoshPeterson

    JoshPeterson

    Unity Technologies

    Joined:
    Jul 21, 2014
    Posts:
    3,984
    Yes, these are the correct directories. The code the Mono directory is used with the .NET 3.5 Equivalent Scripting Runtime Version setting. The MonoBleedingEdge directory is used with the .NET 4.x Scripting Runtime Version setting. Note that the mono executable is a 32-bit executable in both locations.