Skip to content

A compatibility layer for Unity 2017 (use .NET 4.6 experimental for best experience)

License

Unlicense, Unknown licenses found

Licenses found

Unlicense
LICENSE
Unknown
LICENSE.meta
Notifications You must be signed in to change notification settings

IceburgLettuce17/Project17

Repository files navigation

Project17

A compatibility layer for Unity 2017 (use .NET 4.6 experimental for best experience

WHAT WORKS

  • Mathematics (com.unity.mathematics) version latest (bundled with Project17)
  • URP Core/Universal version latest (bundled with Project17)

WHAT DOESN'T WORK (currently)

  • TextMeshPro (com.unity.textmeshpro) pretty much any version that has >= version 1.1.0 TMP_FontAsset (even with stub TextCore and Profiling APIs, it's a hassle to replace the TextCore calls manually...)
  • Burst (com.unity.burst) pretty much any version (even with Unity.Collections stubs, it's stil practically useless in Unity 2017)
  • 2018.3's Package Manager (UI and Client) - i might start working on this one again though
  • Device Simulator (com.unity.device-simulator) latest (uses some unimpled UIElements APIs, so no shims)
  • Visual Scripting (com.unity.visual-scripting) latest (uses newer C# APIs like Cloners)
  • ACTk 2021 (for now)

DISCLAIMER

Almost nothing you import will work out of the box, even with this package. You may have to port it to C# 6.0, or add your own Stub/Shim APIs (until Project17 implements them). Don't file an issue if it's about a "feature FEATURE cannot be used as it is not part of the C# 6.0 specification" error.

Stubs list

  • UnityEngine Bindings and Scripting APIs (this makes it easier to port some Unity native components)
  • TextCore (from 2020.3, required for TMP)
  • Unity.Profiling (required for TMP)
  • Unity.Collections (lowlevel unsafe and standard) (for URP Core)
  • InspectorNameAttribute from UnityEngine (for MKGlow)

Shims list

  • I've only done VisualElement and MouseManipulator from UIElements for now.
  • In case you don't know what a shim is, it's basically backporting newer APIs using older ones

Implementations list

  • DrawStates and SecondarySpriteTexture from UnityEngine

About

A compatibility layer for Unity 2017 (use .NET 4.6 experimental for best experience)

Resources

License

Unlicense, Unknown licenses found

Licenses found

Unlicense
LICENSE
Unknown
LICENSE.meta

Stars

Watchers

Forks

Packages

No packages published

Languages