Unity 2019 introduces all new features that help teams of artists and developers build experiences together.
Powerful new tools, such as Timeline and Cinemachine, empower artists to create cinematic content and gameplay sequences without the need of an engineer. Creators can now spend more time doing, less time queueing.
For beginners, students and hobbyists who want to explore and get started with Unity. Completely free — no royalties, no credit card required You fully own any content you create
Everything you need to get started
Unity Personal is a great place for beginners and hobbyists to get started. It includes access to all core game engine features, continuous updates, beta releases, and all publishing platforms.
Move efficiently from prototyping to full production with a truly flexible editor and intuitive workflows supported by tons of tutorials and ready-made assets to guide your learning and development.
Work with the latest
Continuous updates allow you to develop with all the latest and most advanced features for high-end visuals, audio, animation, physics — everything you need to make any kind of game.
Build for all audiences
Target more devices more easily — with Unity, you can build once and deploy to the largest range of mobile, VR, desktop, Web, Console and TV platforms in the industry with a single click.
What’s New in version 2019.1:
Editor workflow & performance improvements. 2019.1 marks the start of the newest tech cycle, with lots of new features and functionalities. It increases your potential iteration speeds when developing for Android, improves your workflow and gives you more control over the editor.
Incremental Garbage Collection (Experimental)
In Unity 2019.1 we’re introducing the Incremental Garbage Collector as an experimental alternative to the existing garbage collector for projects targeting the Universal Windows Platform. The Incremental Garbage Collector is able to split its work into multiple slices. Instead of having a single long interruption of your program’s execution to allow the GC to do its work, you can have multiple, much shorter interruptions. While this will not make the GC faster overall, it can significantly reduce the problem of GC spikes breaking the smoothness of animations in your project by distributing the workload over multiple frames.
What to expect from a beta
As with any beta program, you’ll have early access to new features and will be able to assist in the final steps of their development. That means you’re likely to experience Unity as less stable than a final version.
The beta phase begins once all scheduled major features have been included and a quality baseline has been established. Several beta versions will be made available during this phase and quality will improve with each iteration.
NOTE: Remember to backup your project before running it in a Unity beta.
Known Issues in 2019.1.0b2 under investigation
- Asset Import: Error message – Asset import did not unload metadata path. This will leak memory (1106466)
- Editor: “Opening Project in Non-Matching Editor” pop up is missing in HUB while opening 2018.3.x project in 2019.1.a12 (1108963)
- Graphics: Editor throws “GetGfxDevice() should only be called from main thread” errors and eventually crashes when in Play Mode (1110007, 1119496)
- Package Manager: Packages fail to compile and show Package Manager because of missing .NET Core prerequisites (1110751)
- Prefabs: Editing prefabs directly in the project browser is no longer possible (1120805)
- Scripting: Editor crashes when ScriptableObject filename does not match class name when reloading the ScriptableObject (1118266)
- Shaders: ShaderGraph – Slider Node doesn’t refresh when values are changed (1106475)
- Video: Video Clip renders only in single Game Window when multiple Game Windows are open (1109551)
Known Issues – won’t be fixed in 2019.1
- XR: Linear color space has driver issues on Gear VR with S7 Adreno based phones running Android 7.0.
New 2019.1.0b2 Entries since 2019.1.0b1
- XR: Updated Google VR to version 1.18.0.
- Terrain: Added new callback APIs to monitor the terrain texture changes:
- TerrainAPI.TerrainCallbacks.textureChanged These callbacks tell both the rect region being changed and if the change is CPU synchronized or not (i.e. GPU only).
- Terrain: Added new TerrainData APIs for easier modifying the terrain textures:
- TerrainData.CopyActiveRenderTextureToTexture These two may be used for copying the content of the active RT into the terrain textures, optionally delaying the CPU synchronization, for instance at the event of mouse move in the middle of painting.
- TerrainData.DirtyTextureRegion These two may be used alternatively to the two functions above if the user directly changes the GPU resources by other means.
- TerrainData.SyncTexture These two may be used to do a full synchronization from GPU to CPU, for instance at the event of mouse up.
- Terrain: Deprecate Terrain.ApplyDelayedHeightmapModification. Use TerrainData.SyncHeightmap instead.
- Timeline: Exposed FootIK option on Timeline Animation Clips (1115652)
- 2D: Editor crashes when spriteshape with one sprite on a single angle in scene closes the angle (1115439)
- 2D: PSB files do not get packed when added to Sprite Atlas (1114959)
- 2D: Sprites randomly flipping when moving/zooming camera (1108407)
- Android: Fix Android Plugin Importer – Non-native libraries respecting CPU properties causes problems. (1076868)
- Android: Fix automatic resolution scaling when using Vulkan (1108491)
- Android: Fixed problem with different sign configs for release and debug configuration (1109570, 1120585)
- Editor: Calling GetComponent on a game object for a missing component type will now only cause a GC allocation the first time for the specific game object and missing component type. (1118303)
- Editor: Debug Internal inspector no displays all properties (1118915)
- Editor: Fix SceneViewEditMode tools not exiting on selection or active tool changes. (1115873, 1122167)
- Editor: Fixed an issue where text flickers when displaying a button or label using the IMGUI that has a long text with wordwrap enabled (1115607)
- Editor: Fixed scene un-hide sometimes not working (1111720)
- Editor: Fixed scene visibility column hiding the search path of the hierarchy (1114645)
- Editor: Fixed textures being imported with the platform-specific format when the platform override property is false. (1104345)
- Editor: Removed the incorrect error when a script with spaces in name is attached (1118301)
- Editor: Unhandled Group assertion failure removed when asset store filter was used (1109197, 1118311)
- Editor: Update Undo to return Prefab instances with missing assets to previous state correctly (1056446, 1120316)
- GI: Fixed issue where we can’t set Lightmap Parameters from script on non-prefab objects. (966408, 1118289)
- Graphics: Batchmode never calls resource clearing at the end of frame render, as it is done during present. add a new graphics command to notify gfxdevice to clean up frame resources at the end of BatchModeUpdate. (1093649, 1119568)
- Graphics: Editor crashes at MaterialScripting::Lerp when Renderer.material.Lerp() has a null material (1117775, 1119503)
- Graphics: Fixed 16 bits format disabled for RenderTexture on PS4 (1115197)
- Graphics: Fixed crash when using BC6H on PS4 (1115196)
- Graphics: Fixed Package Manager UI not rendering correctly on GLES2. (1108286)
- Graphics: Fixed RenderTexture asset UI to lose selected format data when the selected format is not supported. (1116500, 1116501)
- Graphics: Fixed sRGB RenderTexture failing to be created when enableRandomWrite is on (1115223)
- Graphics: Fixed texture inspector label repeating sRGB twice (1117187)
- Graphics: Fixed WARNING message on Mac Editor with Android build target were a warning shows up for decompressing ETC textures also that the expected behavior because desktop GPUs don’t have native ETC format support (1115543)
- Graphics: Improved RenderTexture asset UI to store the user requested format (1115203)
- IL2CPP: Avoid using managed exceptions during time zone initialization. This cause cause crashes on some platforms. (1100856)
- iOS: Fixed crash on startup on 32bit devices using oldish iOS (1109610)
- iOS: Fixed issue where an App won’t be automatically deployed to Device when building project via Build and Run. (1108944, 1115493)
- Linux: Fixed cursor not being confined to the game window when using CursorLockMode.Confined on Linux standalone player. (1105204, 1115743)
- Linux: Fixed issue with keyboard input not being captured by the Game view when in Play mode (1109908)
- Package Manager: Disable delete and rename menu items for all package root folders in the Project window. (1101384)
- Particles: Particle Systems could cause graphical glitches and error messages. (1099125, 1111132, 1116662)
- Prefabs: Driven properties no longer cause Prefabs to have overrides for those properties. (1115499)
- Scripting: Consistent targetframeworkversion as shipped with Unity.
- Scripting: Fixed random crash in Asset GC (1091878)
- Scripting: Fixes issue where processing SynchronizationContext tasks would allocate (1114295)
- Scripting: Fixes potential crash when an exception is thrown during domain unload (879906)
- Scripting Upgrade: Fix NotImplementedException when calling XmlSerializationReader.ReadString (1106236)
- Timeline: Added Apply Foot IK option to animation clips to allow users to turn off Foot IK on humanoid animation clips in Timeline (1115652)
- Timeline: Fixed animated object in timeline popping for a single frame when switching Timelines (1109118)
- Timeline: Fixed Animation Clips with Root Curves not properly putting Transforms into Preview Mode (1116007)
- Timeline: Fixed Scene position getting updated with Timeline in Preview Mode when changing offsets (1116297)
- Web: Fix disposing WWW object that has been yield returned from coroutine. (1117213, 1120581)
- WebGL: Make audio work again in Safari after Apple added auto-play restrictions (requires clicking on content to enable audio). (1089060)
Unity Game Engine 2018.3.8
- 2D: Fixed case of Editor crashing on WorldContactFilter2D::ShouldCollide when trying to destroy Tilemap. (1126791)
- 2D: Fixed case of Tile Animation showing a wrong Sprite when Tilemap is deactivated and reactivated. (1126772)
- 2D: Fixed issue where Tilemap Collider Physics Shape/s were not updating when a single Tile was removed. (1126789)
- 2D: Fixed to clean up Preview Tiles when painting on a Tilemap when an asset is saved. (1126776)
- 2D: Fixed NullReferenceException when painting with a Tile Palette without a valid Tilemap component. (1120310, 1126781)
- 2D: We now use Grid Cell Layout instead of Tile Orientation for doing Grid Cell picking when painting on a Tilemap. (1126779)
- Android: Fixed null exception on GC when Java class is not found. (1128659)
- Android: UnityWebRequest: Relaxed format requirements for jar:file uris. (1117525, 1128887)
- Asset Import: Fixed crash when reading a meta file with a “Byte Order Mark”. (1128853)
- Editor: Fixed Instability in IConnectionStateInternal_HasAtLeastTheDefaultAmountOfAvailableConnections . (1103431)
- GI: Fixed an issue were newly loaded scenes with bounce count 3 would not bake any indirect light. (1129335)
- Graphics: Fixed for [ASAN] Memory use after free in GpuProgramMetal::ApplyGpuProgram. (1127838)
- Graphics: Fixed issue where “GetGfxDevice() should only be called from main thread” errors are thrown and crashes in Play Mode later on. (1124135)
- Graphics: Fixed memory leak in batchmode when rendering on desktop platforms . (1093649, 1102280)
- Graphics: Vulkan: Fixed a crash when draw call was made without an active GPU program. (1126841)
- IL2CPP: Fixed correct flow control code not generated for try/catch/finally handling with async methods in C#. (1122868)
- IL2CPP: Fixed step-into debugging for some generic methods. (1124177)
- IL2CPP: Improved the performance of WaitOne, WaitAny, and WaitAll on Windows platforms. (1111339)
- IMGUI: Maximizing the player in the windowed mode sets it to Maximized Window mode. (1085673, 1127910)
- iOS: Fixed background audio stopping when startin an Unity app on iOS. (1115948)
- iOS: Fixed issue where an App won’t be automatically deployed to Device when building project via Build and Run. (1114541)
- Linux: Fixed editor UI breaking with Screen.SetResolution is called. (1057513, 1128667)
- Mobile: Fixed il2cpp player build when engine stripping is enable and AssetImporter log is not empty. (1115957)
- Multiplayer: Fixed memory leak in TLS connections, affecting Windows/Linux/Mac/UWP. (1121523)
- OSX: Fixed an issue where older Macs could incorrectly report that they support GPU instancing. (1126530)
- OSX: Fixed the fullscreen menu item in the standalone player. (1120105)
- Package Manager: Fixed incorrect build settings on Project Templates in packages. (1114141)
- Prefabs: Fixed crashes when instantiating prefab with certain user scripts. (1113205, 1125019)
- Prefabs: Fixed drag and drop not unpacking the Prefab instance under some circumstances. (1117374)
- Prefabs: Fixed object IDs changing when saving a prefab after building a player. (1106345)
- Profiler: Fixed an issue where chart data would be inconsistent from hierarchy data. (1080435)
- Scripting: Fixed MissingMethodException when calling bindings methods in VRModule on XBox One. (1109347)
- Scripting: Removed allocation in every frame from ScriptableRuntimeReflectionSystemWrapper.TickRealtimeProbes. (1097039)
- Scripting Upgrade: Fixed an issue where some C# class libaries would fail to load. (1116475)
- Scripting Upgrade: Fixed ReflectionTypeLoadException when getting types from assembly. (1127900)
- Services: Fixed crash when an unhandled exception occurs on a background thread with Cloud Diagnostics enabled. (1114571, 1122097)
- Shaders: Fixed out-of-memory when trying to compile shader that uses self-referencing macro. (1119490)
- Timeline: Fixed issue where a timeline would not play on AOT platforms using Mono and .NET 3.5 (1129165)
- UI: Fixed issue with CanvasGroup.Alpha not affecting nested Canvas’s UI elements. (1127613)
- Unity Test Runner: Fixed Exception not handled properly in PlayTests when a custom Enumerator is used as a Coroutine and throws an Exception. (1120096)
- Universal Windows Platform: Fixed incorrect mouse position for NewInput. (1091493)
- Universal Windows Platform: Fixed rapid triggering of OnClick() events in UI when multiple Xbox controllers connected. (1099111)
- Universal Windows Platform: Prevented an error from the reference rewriter about the missing method ‘ConfigurationElement::get_Item’ when the EntityFramework.dll assembly is used. (1124092)
- Video: Fixed a crash on quit, and on end of playmode, when using a VideoPlayer in a prefab. (1126578)
- Video: Fixed Android Video doesn’t start to play in the application when Android OS is 4.1 or 4.2. (1124979)
- Web: UnityWebRequest: Better document SetRequestHeader regarding cookie. (1128889)
- Windows: Fixed Multidisplay always reverting to native resolution on primary display. (1040726)