What's new in this version: Fixes: 2D: - Collider 2D components and the Composite Collider 2D are now recomposited when there are offset and vertex distance changes while in outline generation mode - Fix duplicate 2D template when creating a new project from Unity Hu - Fixed an assertion message when Unity was launched with a Sprite Editor window docked from the previous session - Fixed an issue where Particle Systems in Sorting Groups are sorted incorrectly if they have a sorting fudge value. They are now sorted in the same way as other Renderers when in a Sorting group - Fixed an issue where the edge and fill of a Sprite Shape GameObject were drawn in the wrong order when using the Universal Render Pipeline - Fixed an issue where the Legacy Sprite Packer dialog box shows an incorrect path to the Project Settings - Fixed an issue where the Undo function did not undo some items properly when painting Prefab Tiles onto a Tilemap - Fixed crash when stopping a preview of a Material animation for a TilemapRenderer2D set to Individual Mode - Fixed crash when Tilemap.CompressBounds is called in Tile.RefreshTile - Fixed TilemapRenderer showing normal maps of other Tiles when displaying Tiles with Sprites without normal maps - Improve performance of SpriteEditorWindow when applying changes for new Sprites created - SpriteRect visuals now display correctly when zooming in and out in the Sprite Editor window while creating a new selection - The Sprite Editor window now shows correctly after a package is reinstalled
Animation: - Added editor test to validate that recorded frame match simulated frame for animator - Changed the string "Normalized Time" to "Motion Time" in the AnimatorState Editor to avoid confusion when accessing the AnimatorStateInfo's normalized - Disabled user script OnAnimatorMove called when sampling in the Animation Window - Ensure GetKeyLeftTangentMode and friends are thread safe - Fix copy pasting of keyframes when order in animation window does not match sorted order of their curve paths - Fix the color temperature animation binding - Fixed an issue where the Controller field of an Animator would not react properly to Prefab overriding - Fixed blendtree asset corruption when changing motion tab field with another blendtree asset - Fixed constant tangents evaluation when used in weighted curve segments - Fixed crash on Android when reading serialised animation data - Fixed crash when removing a state in the animator controller state machine - Fixed crash when sampling an animation from a FBX with AnimatedCustomProperties - Fixed humanoid bones not restored to previous values when stopping Animation Window preview - Fixed mistakenly fired playable warning when graph was destroyed - Fixed mouse press events so that Animator window does not get stuck in Pan mode - Fixed transform write order whenever a game object is deleted in an animated hierarchy - Fixed unstable test AnimationEventCanAlterTime - Made AnimationWindowCurve also implement IEquatable as we have at least one case where we store these in a List and try to avoid double-insertions by calling Contains
Asset Bundles: - Fix assertion when building multiple scene asset bundles with data analytics enabled
Asset Import: - Added support for preserving legacy animation naming conventions ([email protected]) when upgrading to newer versions of Unity from 2018.4 - AnimationClip fileIds generated from a Model imported before Unity 3.2 now conserve their file IDs and references when opened in a 2019.1+ Project - Changed the Model Importer so that it no longer enforces the AnimationType setting on first import. You can now use the default Preset for this setting and you can change it during the OnPreprocessAsset or OnPreprocessModel callbacks in the AssetPostprocessor - Clearing mapping of bones of avatar should not lead to re-automapping on apply - Fixed a crash that would occur when an object that was already added to the ScriptedImporter context was destroyed before the import was finished - Fixed a crash that would occur when importing an FBX file containing an Animation curve with only one frame at a very low negative time - Fixed an issue in the Audio Importer preview where the clip didn't stop playing if you clicked the Play button a second time - Fixed an issue where the Delete tag was erroneously appearing on Assets when importing or updating them - Fixed an issue with the Sketchup importer where some Scenes were generating empty Meshes during import - Fixed the Model Importer to prevent splitting when using 16-bit index buffers for Meshes that have less than 65535 vertices but which have an index buffer size that can accomodate more than three times the elements (3 * 65535). - Raise maximum bone influences per vertex from 32 to 255 in the FBX Importer - The Plugin Importer no longer changes the meta file while opening a Project
Asset Pipeline: - Fix performance issue when selecting large Scriptable Objects - Fixed an issue where mutually recursive Assets could cause a crash - Fixed an issue where the Editor would freeze while refreshing large Projects (during the file hashing stage) - Fixed an issue with Unity sometimes not reloading Asset objects, after Asset DB2 introduced support for multiple import results - Fixed cache server v1 vs v2 performance regression - Fixed issue where failed preview generation caused infinite import - Fixes cache server preferences defaults to port 10080 when n ot specified - Fixes editor crash on shutdown when changing project settings to use V2 instead of V1 - Improved ImportAsset performance, which solves slow prefab editing experience - Now Unity saves any changes to the Default IP address property on the Cache Server preferences after the user presses Enter or clicks on another property in the Inspector - You can now use nested Prefabs with the cache server
Audio: - Fix accessing AudioReverbFilter.lfReference / .hfReference from scripts - Proper error message is now provided in the console
Build Pipeline: - Fix to properly disable the build buttins while the editor is compiling and the Assetdatabase is not ready - Fixed an issue where user created folders were being deleted on a failed player build - Fixed issue where inactive scenes were getting calculated into the scene build indexes - Fixed issue where Terrain loaded from an Asset Bundle wasn't able to access Terrain Shaders - Improved shader compilation progress bar to avoid editor to appear frozen during the build
DX12: - Fixed an error in the Editor when changing color spaces resulted in an exception being thrown - Fixed CommandBuffer.DrawProcedural to work with various topology types when using DX12
Editor: - Ctrl + F now sets focus on the Search field in the Settings window - Abort build to avoid Editor from freezing/crashing when user has too complex shader in Always Included Shaders list (any shader in that list will compile all possible variants without any stripping) - Add new EditorWindow.HasOpenInstances() API endpoint to check whether an Editor window of type T is open - Added Edit/Rename for Scene Hierarchy - Added more information to an unrecoverable Undo scenario - Added SerializedProperties optimizations during Inspectors loading and repaint to fix performance regression in ModelImporterEditor when using more than 100 animation clips - Added Compilation.AssembliesType.PlayerWithoutTestAssemblies to support getting assemblies for the Player using CompilationPipeline.GetAssemblies without test assemblies - Bugfix UV overlap view is broken both in HDRP and LWRP - Disallow touching graphics API settings during playmode - Editor: fixed error when building unity_builtin_extra not failing the build - Fix behaviour of 'SerializedProperty.managedReferenceValue' when a classes does not contain any instance object - Fix collab related 401s after waking a computer up from sleep - Fix editor crash when cancelling build during shader compilation. Pressing cancel button during shader compilation phase of the build now immediately cancels the build - Fix Editor hangs when switching between playmode views - Fix first menu item opens unrelated window - fix for an invalid memory access iwhen querying for a deleted texture with DX12 mode - Fix issue where specifying HideInInspector on a SerializeReference field was not respecting the attribute - Fix logging errors from background thread crashes the editor when "Error Pause" is enabled - Fix managed reference instance field type resolution from a SerializedProperty that made Range/Delayed attributes fail - Fix OS domain reload contextual submenu rebuilding - Fix Perforce disconnecting when renaming an asset with AssetDatabase V2 enabled - Fix pptr remapping when prefab contains managed references - Fixed flickering during drag & drop - Fixed a case where the Scene view camera could become stuck in a tilted rotation when rapidly switching from 2D to 3D perspective - Fixed a crash that occurred when multi-selecting Visual Scripting Graphs in the Project window - Fixed a crash using SerializedProperty on a Script with managed references after a string resize update - Fixed a lag that occurred when viewports were fully concealed behind panels - Fixed a missing Script issue that occurred when minimizing and maximizing the Editor - Fixed a renaming issue in the Project browser that occurred when when switching directories - Fixed a small memory leak that occurred any time a contextual menu was opened - Fixed an Editor issue on Windows where the Open Asset dialog did not display shortcut (.lnk) files - Fixed an error that occurred when double-clicking folders in the Project browser - Fixed an error when using reflection probe anchor overrides in prefabs - Fixed an issue where deleting a GameObject and performing an Undo caused the selection to be lost - Fixed an issue where drop-down menus that contain large strings with unicode characters freeze when opened - Fixed an issue where framing the selected object in the Scene View Camera could cause the Move tool to render incorrectly - Fixed an issue where hotkeys with special keys were not accelerated properly - Fixed an issue where ReimportAll opened the wrong Project - Fixed an issue where resetting a Preset removed its Type and rendered it useless - Fixed an issue where Scene visibility data was lost when working with multiple Scenes - Fixed an issue where scroll bars in the Inspector window did not disappear after deselecting a GameObject - Fixed an issue where selecting Revert Factory Settings in the Layout menu did not delete custom Layouts - Fixed an issue where the content of a Text Asset was not displayed in the Inspector window - Fixed an issue where the Polygon Collider 2D tool would not exit when changing selection - Fixed an issue where the Scene Toolbar displayed the wrong icons when using the Hand, Orbit, and Zoom tools - Fixed an issue where the Scene Visibility icon was not highlighted when hovering over it next to the Scene row - Fixed an issue where Unity crashes when copying text with Unicode emojis - Fixed an issue where Vector4 and Array types did not display values in the Inspector - Fixed an issue where, when an Editor window fails to load, the window does not close and users cannot move or close it - Fixed an issue with Null Reference Exceptions occurring when previewing textures during Asset import - Fixed crash when having a list of types containing SerializeReference - Fixed crash when manipulating an object containing SerializeReference with cyclical references - Fixed deep profiling toggling not being reliable - Fixed display issue in inspector through SerializedProperty with enum fields contained in polymorphic managed classes - Fixed dragging and dropping to the bottom area of Inspector - Fixed editor crash when changes are made in prefab applied to MonoBehaviours with SerializedReference objects - Fixed editor crashes when changes are made in prefab/ applied to MonoBehaviours with SerializedReference objects - Fixed freeze when selecting 2 objects containing SerializeReference with cyclical references - Fixed high CPU and GPU load when a material with certain shaders is displayed in the Inspector - Fixed incorrect color space drawing inside OnGUI() in Game view for Linear color space projects - Fixed issue on startup where "Unable to resolve reference" errors were emitted for precompiled .dlls that referenced non-existent .asmdef assemblies in Library/ScriptAssemblies - Fixed issues that caused duplicate EditorTool instances to be instantiated - Fixed major IMGUI performance regression introduced in 2019.3 version - Fixed mouse movement after focusing a game object while in playmode - Fixed performance issue with editor elements in the inspector - Fixed potential Null Reference Exception errors that could occur for Editors that implement OnSceneGUI() - Fixed should not be capturing when there is a hotcontrol logs appear when changing property values after removing search query - Fixed the Preview pane in the Object selector - Fixed touch issues with the Editor on Windows. MouseDown position is now more precise. Dragging a property value on the edge of the screen no longer increases the value exponentially. - Fixed zooming out of curve inspectors (e.g. Audio Source 3D Sound Settings and Particle System Curve Editor) - Fixed EditorApplication.hierarchyChangednot being fired when changes were made to GameObject hierarchy via scripts - Fixes an issue where EditorTools could not accept Event commands before the SceneView interprets them - GlobalMatrix is now calculated correctly when parenting to a scaled and rotated object - Improve editor performance with multiple GameObjects while the scene window/view is visible - Improved Editor performance when marquee selecting objects in moderate to large Scenes - Improved the error message that appears when Unity tries to load an arbitrary file as though it's a Unity-created serialized file - It is now possible to localize Packages - Large serialized assets such as Texture2DArray and Texture3D now appear in the Inspector immediately - MacEditor: Fixed a regression with floating window not bringing editor focus back when selected - MacEditor: Improved MouseDrag event handling - Make sure that 'SerializedProperty.managedReferenceFullTypename' is correct for classes with no fields - MenuItem shortcuts now ignore capitalization - Moved the Game view VSync toggle to the Game view Resolution popup - Preferences window now shows now required NDK version - Preserve PlayModeView state when switching to another PlayModeView and back - Re-enabled CEF message loop pumping in Play mode - Save the current editor mode using its id instead of index - The drag and drop state is now cleaned after a drag operation - The Inspector now reacts faster when users click large binary Assets - The Scene Visibility shortcut for Hide is now H. The shortcut for Isolation mode shortcut is now Shift+H - Unity now displays an error message if a Project contains .dlls with the same file names as Assembly Definition File assemblies - Unity now ignores trailing spaces when saving Layout names - Unity now prompts users to save changes when Windows shuts down - Unity now sets the host view name when the actual view changes - Updated Windows Editor splash image - NSPasteBoard is now initialized at the start of drag and drop operations
GI: - Fix erroneous lightmap atlassing happening when two terrains are identical and have same position - Fix GPU lightmapper OpenCL kernel compilation on AMD Radeon RX 5700 series GPUs - Fixed a crash when the light grid takes up too much memory when using the GPU lightmapper - Fixed a memory leak that happened after compiling OpenCL kernels when using the Progressive GPU Lightmapper - Fixed a memory report for Light Probes in the GPU Progressive Lightmapper - Fixed an error message, so it's more helpful when the Global Illumination albedo/emissive buffer update fails - Fixed an issue in the Progressive GPU Lightmapper that cause the Editor and baking to be slow. Also added support for 32bits indices - Fixed an issue in the Progressive GPU Lightmapper that caused the Editor to shut down too slowly after baking - Fixed an issue where the Generate Lighting button got stuck when you switched between Scenes that used different backends for baking - Fixed error "Internal: JobTempAlloc has allocations that are more than 4 frames old" when baking lights - Fixed the color coding of lights in the shadow mask in Scene View mode, so they now match their corresponding shadow mask channel color. - Fixed the intensity of blue indirect light in the GPU Progressive Lightmapper - Fixed the Progressive GPU Lightmapper, so there's no longer incorrect over-darkening at primitive intersections in conjonction with dilatation - Fixed the Progressive Lightmappers so they now skip baking lightmaps and shadow masks if there are no affecting light sources - Fixed transparency from an indirect ray in the GPU Progressive Lightmapper - GPU baking with 1 bounces is faster than 0 bounces - GPU lightmapper: Fix sample count statistics when baking large lightmaps with high sample count - Improved the speed of baking with the CPU Progressive Lightmapper when LODGroups are used. Biggest speed improvement where only LOD0 is marked as contributing GI and receiving GI via lightmaps - Lightmap UVs are offset and partially black after changing some lightmapping settings and rebaking 2K or 4K lightmaps - Reducing lightgrid memory consumption on GPU lightmaper - [ReflectionProbes] Minor changes to mesh renderer transform values cause Reflection Probe weights to change
Graphics: - Add UnityEngine.Experimental.Rendering.RenderingThreadingMode API that returns actual rendering threading mode - Create texture now occurs on a thread in cases when async loading to update an existing texture. - Dynamic Array index out of bounds assert - Enable DXR raytracing feature for DX12 to be used by HDRP - Ensure deterministic results for ASTC compressed textures with block sizes 10x10 and 12x12 - Fix crash in Editor when using compressed High Quality lightmaps on Android - Fix error in OpenGL ES shader translation that can cause 'undeclared variable' shader compile error - Fix for crash caused by floating point rounding errors when atlassing very small rectangles - Fix framebuffer load actions when rendering from Monobehaviour.Update - Fix getting the pixel format of a Metal Render Surface in devices that don't support combined MSAA store and resolve action - Fix issue where SRP would allocate memory each frame - Fix issue where there would be an assert when importing an asset with zero bone weights - Fix Mesh.GetTriangles with list argument not working with different topology - Fix shadow culling issues causing objects to disappear from shadow maps - Fix SkinnedMeshRenderer.boneWeights returning incorrect values when the number of bone influences per vertex is increased - Fix SRP Batcher graphical artifacts with more accurate float to half conversion - Fix stall in Canvbas.BuildBatch due to Geometry Jobs - fix the viewport for non-promary display when using multi display and proxy buffer to render - Fix use shader code generation when using SV_PrimitveID with OpenGL - Fixed a bug where compressing a texture using EditorUtility.CompressTexture() did not trigger an upload to the GPU of the changed texture data - Fixed a crash when Dynamic Scaling and Forced Screen Percentage option are used in combination with Ray Tracing (DirectX 12) - Fixed a crash where a ComputeBuffer could still be referenced after the object was destroyed - Fixed a driver crash on Vulkan when attempting to copy a ComputeBuffer counter from a buffer that doesn't have one. - Fixed a regression that caused an increase in draw calls when you used static batching - Fixed an issue that caused incorrect distance bands for CullingGroups - Fixed an issue where frustum culling used incorrect near and far culling planes when you set a custom culling matrix - Fixed an issue where GPU instancing sometimes didn't work correctly on Vulkan when a shader didn't use all instancing constants - Fixed an issue where importing an Asset with no bone weights caused an assert - Fixed an issue where the colour space parameter for a RenderTexture would be ignored if a default LDR texture format was requested - Fixed an issue where the Preview Camera had an incorrect type - Fixed an issue with the copy texture api to use proper texture formats - Fixed an issue with the reset functionality for Visual Effect Graph - Fixed bug where temporary render textures would be reallocated instead of reused if mip count was set to 0 - Fixed crash that occured when atlassing BC compressed textures using a padding smaller than the blocksize - Fixed D3D11 debug validation layer warnings because we did not unbind all VB correctly - Fixed detail shaders not updating after render pipeline has been changed - Fixed DX11 specific GPU texture memory reporting when using mip streaming to update an existing texture - Fixed editor crash on terrain used with planar reflection by skipping QuadTreeRenderNodes with invalidated meshes - Fixed editor stalls in script compilation, exit playmode after having a project open in the editor for a long time - Fixed excessive texture mip reduction during texture streaming when texture quality settings applied - Fixed ExtractImage to check the presence of source image data - fixed issues with grabpass shader on Vulkan API - Fixed Mesh picker not updating the Mesh field on the SkinnedMeshRenderer component - Fixed newly created blendshapes not showing up - Fixed SetPixels/GetPixels when using SRGB formats - Fixed some documentation issues for the CommandBuffer scripting API - Fixed SRP Batcher causing scene to flicker random colours in Vulkan - Fixed Stencil Rendering States so they don't update when you set anything via Shader.SetGlobalInt() - Fixed Texture streaming when preloading textures (prior to associating with a renderer) to load low mip rather than highest mip - Fixed TrailRenderer bounds accuracy - Make graphics job mode be a per platform setting - Prefer dLDR HDR encoding over RGBM for HDR cubemaps on mobile platforms when ASTC format is selected as override in TextureImporter - Properly fail when trying to use OpenGL ES on Windows on a machine that doesn't support OpenGL ES (typically AMD GPU based) - Removed Color from vdecl used for warming up shaders. Some time ago we stopped adding color always to main stream and add extra stream on demand, hence this vdecl is almost never used with real content effectively disabling any warming up we can do - Resolve issue where Vulkan behaves like D3D11 when anisotropic filtering is enabled - Texture streaming now works with LZ4 (and LZ4HC) compressed packages on all platforms - Update SRP Packages to 7.1.8 - Updated documentation for LODGroup
IL2CPP: - Allow DateTime.Now to work properly on some non-English locales in WebGL - Avoid exception related to loading libc on platforms that don't support it - Correct an intermittent crash when a managed exception occurs on a back ground thread while the process is shutting down - Correct the behavior of the MulticastOption constructor when the localAddress argument is not provided - Fix a crash in the player when incremental GC is enabled and HttpClient requests are made in the ThreadPool - Fixed a performance issue with IL2CPP lumped builds - Fixed symbol stripping from the executable in incremental builds - Fixes an issue with the debugger agent passing an uncaught message exception to the debugger client even if the exception was actually caught - Fixing an issue with retrieving default values from nullable method parameters via reflection - Handle calls to open delegates on instance methods of value types properly - Handle out marshaling of StringBuilder arguments for p/invoke - Marshal.SizeOf computes correct values for structs containing structs - Prevent a possible crash when incremental GC is enabled and the .NET thread pool is heavily used
IMGUI: - Fixed the duplicate Save scene dialog issue on changing the Graphics API
Input: - Apple Pencil will be correctly recognized on iOS in the new input system on newer iPad devices
Kernel: - Fixed job index allocation contention which could cause multiple seconds of stalling while using jobs - NativeArray no longer allow nesting other types tagged NativeContainer, to prevent hard to diagnose memory corruption bugs - Optimisation of the JobQueue inner loop which had a performance regression since 2019.1 - SerializedObjects targetting a isntance with a missing/broken script could lead to crashes
Unity 2019.3.0 相關參考資料
Release notes - Unity
Release notes. System Requirements Changes. For running Unity games. iOS: minimum version incremented to 10.0 (from 9.0).
https://unity3d.com
Unity 2019.3.0 Release Candidate 1 has been released - Unity Forum
Greetings users! Unity 2019.3.0 Release Candidate 1 is now available. This will be the first of a few release candidates. We are still landing a ...
https://forum.unity.com
Unity 2019.3b - Unity
Unity 2019.3 improvements. The last beta release of the 2019 TECH cycle, Unity 2019.3b, is here with lots of new features, improvements, and a completely ...
https://unity3d.com
What's new in Unity 2019.3.0 - Unity
Unity 2019.3.0. Additional downloads. Select the runtime platforms of your choice from the list below (the desktop runtime is included as standard) or, to install ...
https://unity3d.com
What's new in Unity 2019.3.0 Beta 1 - Unity
Additional downloads Select the runtime platforms of your choice from the list below (the desktop runtime is included as standard) or, to install ...
https://unity3d.com
What's new in Unity 2019.3.0 Beta 8 - Unity
This is a change to a 2019.3.0?0 change, not seen in any released version, and will not be mentioned in final notes. Editor: Fixed settings ...
https://unity3d.com
What's new in Unity 2019.3.0 Release Candidate 1 - Unity
Additional downloads Select the runtime platforms of your choice from the list below (the desktop runtime is included as standard) or, to install ...
https://unity3d.com
What's new in Unity 2019.3.0 Release Candidate 3 - Unity
This is a change to a 2019.3.0 change, not seen in any released version, and will not be mentioned in final notes. Fixed in 2019.3.0f4. Physics: ...
https://unity3d.com
What's new in Unity 2019.3.0 Release Candidate 5 - Unity
This is a change to a 2019.3.0 change, not seen in any released version, and will not be mentioned in final notes. DX12: Fixed CommandBuffer ...
https://unity3d.com
|