Unity 2017.1.0 Beta 2

Released:
Select the runtime platforms of your choice from the list below (the desktop runtime is included as standard) or, to install the full complement of runtime platforms, use the download assistant installer above.

2017.1.0b2 Release Notes (Delta since b1)

Known Issues

  • Android: Android Build fails when the latest Android SDK Tools 25.3.1 version is used (888859)
  • Animation: Imported animation for humanoids is incorrect (904985)
  • Audio: AudioSource attached to VideoPlayer produces choppy sound when playing certain mp4 files with VideoPlayer created from script (895458)
  • Editor: "The system cannot find file specified" error while opening the project for the first time. Deleting Library folder resolves the issue. (895343)
  • Editor: Editor crashes on attempt to open some 5.5 compatible audio projects. (880653)
  • Editor: Text in Editor becomes red after dismissing EditorUtility.DisplayDialog() popups. (886650)
  • Editor: Unity crashes when playing a scene with maximized game view (894572)
  • Graphics: Debug GFX overlay is drawn on top of objects. (851379)
  • VR: Rendering problems on Pixel Daydream when using 4x or 8x MSAA with single-pass stereo. This is due to driver issues, so the problem will be addressed via a driver update, independently of Unity releases. (-)
  • Windows: Edit menu has duplicate menu items (Undo, Cut, Copy, Paste, etc) (905191)

Features

  • Asset Import: Added ability to import visibility from FBX files to ModelImporter
  • Audio: Timeline Editor Audio Track support. Audio clips are now enabled in Timeline, using a scheduling API.
  • Particles: Apply Noise Module data to particles sizes and rotations, and also send the noise data to your shaders via new Custom Vertex Streams.
  • Particles: Mesh particles now support the same Render Alignment options are billboarded particles
  • Particles: New Donut emission shape.
  • Particles: Play Particle Systems when your game is paused, by choosing to use either Scaled or Unscaled time for the simulation.
  • Particles: The Shape Module now contains an additional Transform, for applying custom transformations to the emitter shape.
  • Physics: Add ability to manully simulate 2D physics using "Physics2D.Simulate(time)" and turn auto simulation on/off with "Physics2D.autoSimulation=true/false".
  • Physics: Expose Physics.Simulate and Physics.autoSimulation. This allows stepping the physics simulation manually, from scripts. Useful for customising the server-side physics, in-editor simulation, and more.
  • Physics: Exposed Joint.massScale & Joint.connectedMassScale. This allows adjusting masses and inertia tensors of the connected bodies as perceived by the solver. It's mostly useful for ragdolls that have high forces applied to their limbs and thus experiencing unpleasant stretchiness. This should also help avoiding setting the same mass for all the body parts of a ragdoll, as recommended before. See more in the API docs.
  • Web: A new UnityWebRequest.timeout property that gives the user some coarse-grain control over the time a webrequest can take before unity attempts to cancel it.

Changes

  • VR: GPU skinning can be enabled for Android VR. This is experimental, and behavior and performance should be verified on target devices.
  • VR: Updated Google NDK for Android and iOS to 1.40
  • Windows: "Visible In Background" player setting now defaults to on.
  • Windows: Renamed "Windows Store" to "Universal Windows Platform" in the build window
  • Windows Store: Removed support for build Windows 8.1 and Windows Phone 8.1 applications.

Improvements

  • Android: Add default equals, hashCode and toString implementations to AndroidJavaProxy
  • Android: OBB compatibility is now done using build id rather than a hash of the OBB file
  • Animation: Statemachinebehaviour can now be debugged in play mode in the editor
  • Asset Import: Reduced the import time for FBX assets with humanoid animations
  • GI: Upgrade Enlighten SDK to version 3.08p1
  • OSX: Added Appstore category field to player settings and improved info.plist generation
  • Particles: Allow Emit over Distance to be used for Local Space systems
  • Particles: Edge emission is now more flexible, allowing you to choose the thickness of the edge used for generating particles.
  • Particles: Randomize the spawn positions of particles, with a new option in the Shape Module.
  • Particles: Scene lighting can now affect Lines and Trails.
  • Particles: The speed range of a Particle System is now displayed in the Scene View GUI, when previewing a Particle System.
  • Shaders: Pass platform caps keyword defines to compute shaders
  • Windows Store: Unity player binaries are now signed.

API Changes

  • Asset Import: Added ModelImporter.importVisibility
  • Web: (Also mentioned under Features) Added timeout property to UnityWebRequest. (823903)

Fixes

  • DX12: Behaviour of the VFACE semantic now consistent on DX12 with the editor and other platforms (895474)
  • Editor: Fixed erroneous IMGUI clipping with non-trivial GUI.matrix (896013)
  • GI: GI Scene Modes Not Fetching Visualization Data After Quitting Play Mode. (849063)
  • GI: Light sources incorrectly identified as realtime when in Auto mode. (815031)
  • GI: LoadLevelAdditive loads baked lighting as (no GI) realtime if it was baked using Auto. (709362)
  • GI: Progressive lightmapper now honors GraphicsSettings.LightsUseLinearIntensity.
  • Graphics: Fixed instancing mesh sorting when custom properties are set on renderers.
  • Graphics: Fixed render target becoming white or black on stop if set to don't clear. (884057)
  • iOS: Metal: Fixed unnecessary half to float casts in generated shaders (898788)
  • Multiplayer: Added better error messages when processing a non-valid state in weaver (875195)
  • Multiplayer: Fix issue with network transport host being removed with invalid host id, when using custom network connection (NetworkConnection override) (881764)
  • Multiplayer: Fix issue with NetworkAnimator not updating parameters (related to local player authority) (779549)
  • Multiplayer: Fix max events flood protection in network client
  • Multiplayer: Fix problem with cleaning/resetting network identities in disabled objects, in the network manager (881743)
  • Particles: Align to Direction now works for Mesh particles. (864493)
  • Particles: Disable/re-enable of Particle System GameObject now causes it to successfully restart previewing. (767489)
  • Particles: Inspector now refreshes when changing MinMaxCurve types from script. (788240)
  • Particles: Particle trails could render with graphical corruption when used on Sub-Emitters (895376)
  • Particles: Reset Component option is now fully working for Particle Systems. (715605)
  • Particles: The Pivot offset used for Stretched Particles was incorrect along the X axis. (830382)
  • Particles: Velocity and Force modules now apply scale correctly when using World Space mode. (874051)
  • Physics: Fix a crash that happened when continuously scaling a MeshCollider while activating and deactivating it at the same time (878740)
  • Physics: Fix a crash that happened when more than 262143 colliders were created. This is not supported by PhysX and we won't be creating colliders once this limit is reached. (872785)
  • Physics: Fix a crash that happened when scaling a mesh that PhysX failed to cook properly (think a convex MeshCollider with too many vertices). (892396)
  • Physics: Fix a crash updating active skinned meshes. (845868)
  • Physics: Fix horizontal clipping in the layer collision matrix when some layers had names that were too long (526797)
  • Physics: Fix interpolation and extrapolation being being applied in an incorrect order for nested Rigidbodies. This affected the stability of ragdolls that had interpolated bones. (772337)
  • Physics: Fix Physics.ComputePenetration & Physics.ClosestPoint not returning the correct value when a rotated collider had it's centre offset (865250)
  • Physics: Fix Rigidbody.collisionDetectionMode being impossible to change if it was initially set to Continuous (784529)
  • Physics: Fix Rigidbody.collisionDetectionMode being impossible to change if the Rigidbody was part of a pool of objects (889118)
  • Physics: FIx voodoo trigger events being fired to scripts when a degenerate CapsuleCollider was used (701504)
  • Physics: Reprocess mesh used for cloth if changed. (664672)
  • Physics: Reprocess mesh used for cloth if changed. (879584)
  • Scripting: Prevent managed thread creation during app domain reload (882697)
  • Video: VideoPlayer.isPrepared always returns false after calling VideoPlayer.Prepare() when playOnAwake is false with some video files (893939)
  • Video: VideoPlayer.Prepare() broken on random video files (897708)
  • Video: [Video Player] Can't play a Video Clip If WaitForFirstFrame is enabled (899233)
  • Video: [VideoPlayer] Video which has 6-channel audio and its audio codec is AC-3 doesn't play on Windows (893910)
  • VR: VRDevice.refreshRate now reports correct values on Oculus devices. (820293)

The following are changes and fixes to 2017.1.0 features and regressions...

Improvements

  • Physics: Add Editor Tooltip for EdgeRadius property on BoxCollider2D, EdgeCollider2D & CompositeCollider2D.
  • Physics: Fix several issues with ContactFilter2D including not being able to specify collision normal range crossing zero and expose ability to filter using the managed ContactFilter2D rather than just use it to pass to native queries.
  • Physics: Improved API documentation for ContactFilter2D.

Fixes

  • Android: Add Android internet permission check for sending analytics (896528)
  • Android: Fix android application building with the latest android sdk (888859)
  • Android: Fixed gfxContext failures from pause/resuming during load (867891)
  • Animation: Fix crash when playing scene with an avatar created in 5.6.0f3 or before (896033)
  • Animation: Fixed incorrect animated color values when using linear lighting. (893042)
  • Asset Import: Change error on self-intersecting poly to warning (903103)
  • Asset Pipeline: Fixed an issue when importing assets with name changes that could cause a timestamp mismatch in the database (896185)
  • Editor: Fix assertion when undo-ing resize (900803)
  • Editor: Fix Double-clicking a hierarchy gameObject not focus game object (899601)
  • Editor: Fix Frame selected command not working in Scene View (898700)
  • Editor: Fix screen offsets updates for tooltips (884238)
  • Editor: Fixed "Sprite Mode" so it defaults to "Single" instead of "None" when switching Texture Type to "Sprite (2D and UI)" (890468)
  • Editor: Fixed exception being thrown when switching from local to remote cache server (883808)
  • GI: Baked lighting with GI disabled are causing incorrect shader behaviour. (882363)
  • GI: Built lightmaps are not applied due to positioning in hierarchy. Active lightmapsettings overwrote previously appended lightmaps when looping through the scenes. (812486)
  • GI: Inverse squared falloff for progressive lightmapper.
  • GI: Lighting Scene panel doesn't show the right settings with multi scene editing. (893817)
  • GI: Texture settings for auto-generated lightmaps always assumed linear encoding, while imported. (878494)
  • Graphics: Disallow material to be used with CommandBuffer.DrawMeshInstanced if enableInstancing is false. (898851)
  • Graphics: Fixed "Material Validation" rendering issue and lightmapped objects. (893187)
  • Graphics: Fixed occasional crash in GenerateCombinedDynamicVisibleListJob (882704)
  • Graphics: Fixed rendering of multiple cameras and depth being ignored when setting camera viewports to be different to each other. (885051)
  • Graphics: Mark main splash screen as finished when VR splashscreen is used (876718)
  • IL2CPP: Implement RegionInfo.CurrentRegion (891471)
  • IL2CPP: POSIX memory mapped files unmapping fix to not release irrelevant memory (893198)
  • IMGUI: Fix missing GUI elements on iOS (883482)
  • iOS: Add option to select whether extra frame is rendered on pause (807273)
  • iOS: Fix inclusion of ReplayKit framework in plugins (882013)
  • iOS: Fixed some icons not getting copied into Xcode project when Target Device is set to iPhone Only (888370)
  • Kernel: Fixes issues caused when components required by other components do not exist (876288)
  • MonoDevelop: Allow breakpoints to properly load in MonoDevelop in some situations where they did not load before. (889998)
  • OSX: Fixed standalone app compatibility issues when uploading to the Appstore with Application Loader 3.6
  • Physics: Fix backward compatibility for Physics2D.queriesHitTriggers, Physics2D.queriesStartInColliders, Physics2D.defaultContactOffset & PolygonCollider2D.points (896824)
  • Physics: Fix for infinite 2D raycast missing EdgeCollider2D edge. (895732)
  • Physics: Fix for Rigidbody2D interpolation loosing precision with time. (843507)
  • Physics: Fix issue with minimum threshold size for BoxCollider2D (901304)
  • Scripting: Fix floating point values being corrupted when using managed debugger on OSX (897134)
  • Shaders: Metal shaders performance improvement when using GroupMemoryBarrier() function.
  • UI: Fixed nested canvas returning a null world camera after its root canvas has been disabled and then re-enabled. (892913)
  • UI: UI: Fixed NaN issues with ScrollRect when using clamped mode. (893559)
  • VR: Updated Oculus to version 1.13. Fixes plugin loading issue in paths with non-ASCII characters.
  • Web: Fix DownloadHandlerScript not working in editor when not in play mode (893302)
  • Windows: Fixed window automatically resizing to fill the screen when in windowed mode and the monitor's display mode gets changed through windows display settings. (891481)
  • Windows: Fixed window moving to the primary monitor when it is resized to not fit the current monitor. (881735)
  • Windows Store: Fixed non-alloc physics overlap functions causing a crash on .NET Scripting Backend. (888660)
  • Windows Store: Fixed not being able to switch to Windows Store platform when Windows 10 SDK is not installed. (890043)

2017.1.0b2 Release Notes (Full)

Known Issues

  • Android: Android Build fails when the latest Android SDK Tools 25.3.1 version is used (888859)
  • Animation: Imported animation for humanoids is incorrect (904985)
  • Audio: AudioSource attached to VideoPlayer produces choppy sound when playing certain mp4 files with VideoPlayer created from script (895458)
  • Editor: "The system cannot find file specified" error while opening the project for the first time. Deleting Library folder resolves the issue. (895343)
  • Editor: Editor crashes on attempt to open some 5.5 compatible audio projects. (880653)
  • Editor: Text in Editor becomes red after dismissing EditorUtility.DisplayDialog() popups. (886650)
  • Editor: Unity crashes when playing a scene with maximized game view (894572)
  • Graphics: Debug GFX overlay is drawn on top of objects. (851379)
  • VR: Rendering problems on Pixel Daydream when using 4x or 8x MSAA with single-pass stereo. This is due to driver issues, so the problem will be addressed via a driver update, independently of Unity releases. (-)
  • Windows: Edit menu has duplicate menu items (Undo, Cut, Copy, Paste, etc) (905191)

Features

  • 2D: Added Sprite Physics Shape to Sprite Editor, to allow users to set a custom default shape for a Sprite for generating collider shapes with a PolygonCollider2D.
  • 2D: Introduced 2D Sprite Atlas, a new asset that will supplant the Sprite Packer. With it comes new and improved workflows that gives the developer more control on how to pack sprites and use them at runtime.
  • 2D: Sprite Mask. Mask Sprites in world space using the new SpriteMask component.
  • Animation: (Also mentioned under API changes) AnimationLayerMixerPlayable scripting API added.
  • Animation: Manual Keyframing Workflow. Separate Recording and Preview modes in the Animation Window. Contextual menus added to all animatable properties in the inspector.
  • Animation: New GameObjectRecorder in UnityEditor.Experimental.Animations
  • Asset Import: Added ability to import visibility from FBX files to ModelImporter
  • Asset Import: Added the option of computing weighted normals when importing FBX files. Fixed normal generation for hard edges.
  • Audio: Added support for ambisonic audio clips and ambisonic decoder plugins.
  • Audio: Timeline Editor Audio Track support. Audio clips are now enabled in Timeline, using a scheduling API.
  • Build Pipeline: Added delegates to BuildPlayerWindow that allow overriding the default Build button behavior
  • Collab: In-Progress. In-Progress allows developers using Unity Collaborate to see who else on their team has made local changes to a Scene or Prefab before those changes have been published.
  • Editor: Added new ArcHandle class in UnityEditor.IMGUI.Controls to interactively edit arcs in the Scene View.
  • Editor: Experimental feature : retained-mode UI system for the Editor (UIElements)
  • GI: Added new API for setting Light falloff per Light. Added API for setting all Lights to use physically correct inverse squared falloff or the Unity legacy falloff model. Only used for Enlighten lightmaps so far, realtime and progressive will be supported later.
  • Graphics: Added LineUtility class and 'LineRenderer.Simply' function. Optimize your lines and curves by using the LineUtility to create a simplified version with a similar shape.
  • Graphics: Added memoryless mode to RenderTexture, accessed through new property RenderTexture.memorylessMode.
  • Graphics: Added Mirror and MirrorOnce texture wrapping modes, in addition to existing Repeat and Clamp ones.
  • Graphics: Unity can now accept and use a pointer to an externally created cubemap
  • IL2CPP: Unity in-app purchase now works on Windows Store with the IL2CPP scripting backend.
  • IMGUI: Added SearchField, a new IMGUI Control. It comes with Normal and Toolbar UI styles but can also be customized.
  • iOS: (Also mentioned under API Changes) Added API to change iOS splashscreens.
  • iOS: Enable deferred shading rendering path for Metal and OpenGL ES 3.0 for A8 and later iOS devices.
  • Particles: Added support for using Sprites in the Particle System, via the Texture Sheet Animation Module
  • Particles: Align Particles to their velocity direction
  • Particles: Apply Noise Module data to particles sizes and rotations, and also send the noise data to your shaders via new Custom Vertex Streams.
  • Particles: Mesh particles now support the same Render Alignment options are billboarded particles
  • Particles: New Donut emission shape.
  • Particles: Particles can now apply forces to the Colliders they hit
  • Particles: Play Particle Systems when your game is paused, by choosing to use either Scaled or Unscaled time for the simulation.
  • Particles: The Shape Module now contains an additional Transform, for applying custom transformations to the emitter shape.
  • Physics: Add ability to manully simulate 2D physics using "Physics2D.Simulate(time)" and turn auto simulation on/off with "Physics2D.autoSimulation=true/false".
  • Physics: Added 'Joint2D.attachedRigidbody' property to retrieve the Rigidbody2D attached to the Joint2D.
  • Physics: Expose Physics.Simulate and Physics.autoSimulation. This allows stepping the physics simulation manually, from scripts. Useful for customising the server-side physics, in-editor simulation, and more.
  • Physics: Exposed Joint.massScale & Joint.connectedMassScale. This allows adjusting masses and inertia tensors of the connected bodies as perceived by the solver. It's mostly useful for ragdolls that have high forces applied to their limbs and thus experiencing unpleasant stretchiness. This should also help avoiding setting the same mass for all the body parts of a ragdoll, as recommended before. See more in the API docs.
  • Physics: When setting 'Rigidbody2D.simulated' to false, Editor inspector shows information about its effect.
  • Playables: Playable Assets added to Playable API.
  • Playables: Playable Director added to play Playable Assets
  • Playables: Timeline Editor and Runtime API. A tool for sequencing animation, scripts and audio.
  • Shaders: Added support for "inline" sampler states.
    • HLSL SamplerState objects that aren't taking sampling state from any texture (like what "sampler"+TextureName samplers do), but where sampling state is instead derived from the name.
    • For example, "MyLinearClampSampler" sets up bilinear filtering and clamp wrap mode; while "point_repeat_sampler" sets up point filtering and repeat wrap mode.
    • This allows e.g. doing both PCF depth comparison and reading raw depth value from a shadow map in a single shader.
    • Note that generally only modern graphics APIs support separate textures & samplers. You might therefore want to specify #pragma target 3.5 or similar in your shaders for this.
    • Implemented on DX11, DX12, PS4, XB1, Metal (Vulkan not yet).
  • Web: A new UnityWebRequest.timeout property that gives the user some coarse-grain control over the time a webrequest can take before unity attempts to cancel it.
  • Windows: Multi-display support for UWP.

Changes

  • Asset Import: Upgraded FBX SDK to 2016.1.2
  • Build Pipeline: Added new function SwitchActiveBuildTargetAsync. This defers switching so that scripts can be imported first.
  • Build Pipeline: Event EditorBuildSettings.activeBuildTargetChanged has been deprecated as events do not survive script reloading. Replaced with interface class IActiveBuildTargetChanged and attribute ActiveBuildTargetChanged.
  • Editor: Added new GameObject sub menu - 'GameObject/Effects/. This menu includes a Line andTrail creation. The particle system has also been moved to this menu.
  • Editor: Added requirement for Visual C++ Runtime 2013 and 2015 to be installed when installing Windows Editor (i.e. the check is performed by Windows Editor installer).
  • Editor: AssetServer version control support has been removed from the editor.
  • Editor: Moved particle system rigidbody info message to top of the system as it does not just apply to inherit velocity
  • Editor: New projects now default to text-based serialization
  • Editor: Particle trail material slot is now always visible even if it is not used.
  • OSX: Disabled Metal on macOS 10.12.2 and 10.12.3 for stability reasons if GLCore is also present in API list
  • VR: GPU skinning can be enabled for Android VR. This is experimental, and behavior and performance should be verified on target devices.
  • VR: Updated Google NDK for Android and iOS to 1.40
  • Windows: "Visible In Background" player setting now defaults to on.
  • Windows: Renamed "Windows Store" to "Universal Windows Platform" in the build window
  • Windows Store: DX11 feature level 9.3 GPU support is required now. In practice this probably does not affect anything, as all Windows Phones that ever existed support 9.3 level already.
  • Windows Store: Removed support for build Windows 8.1 and Windows Phone 8.1 applications.

Improvements

  • Android: Add default equals, hashCode and toString implementations to AndroidJavaProxy
  • Android: Apk files are now signed using the new APK Signature Scheme v2.
  • Android: OBB compatibility is now done using build id rather than a hash of the OBB file
  • Animation: Statemachinebehaviour can now be debugged in play mode in the editor
  • Asset Import: Changing tabs in the Model Importer inspector does not force users to apply changes anymore
  • Asset Import: Reduced the import time for FBX assets with humanoid animations
  • Asset Import: Support Segment Scale Compensate for models exported from Maya.
  • Asset Pipeline: In batchmode the FailedAssetImports.txt file is now ignored because there's no way to cancel or notify the user when the asset importer fails.
  • Build Pipeline: Scripts-only build is now available on all platforms.
  • Build Pipeline: Unified assembly stripping code used for IL2CPP and Mono builds - which should result in more consistent behaviour between IL2CPP and Mono and in smaller build sizes for platforms supporting assembly stripping on Mono.
  • Editor: Added "Called From" and "Calls To" view to the Hiverarchy View of Profiler Window.
  • Editor: Added a pre-drop style to particle system Object fields so it highlights if something can be dropped.
  • Editor: Added callbacks for assembly reload events: two events are dispatched: one before and one after reloading all assemblies. See: class AssemblyReloadEvents.
  • Editor: Log messages from connected players will now show in Editor console for easier debugging.
  • GI: Upgrade Enlighten SDK to version 3.08p1
  • Graphics: Added a batch break cause (material disables instancing) to Frame Debugger.
  • Graphics: Added a new surface shader option "dithercrossfade", generating the screen-door dithering effect code automatically for being used in LOD cross-fade mode.
  • Graphics: Added new default material for trails. 'Default-Trail'
  • Graphics: Frame Debugger is now capable of showing array shader properties.
  • Graphics: Optimized conversions between float32 and float16 image formats on Editor for a x2 to x4 performance improvement.
  • Graphics: Texture wrapping modes can be set separately on each U,V,W axis.
  • Graphics: The default names for Graphics Quality Levels have been changed to be a little clearer, and more in line with what is common across other games. This will only affect newly created projects; existing projects will have the same Quality Level names as before (though, as always, you can edit the names via Edit -> Project Settings -> Quality).
  • IL2CPP: Improved IL2CPP code conversion time on OSX. Conversion times may improve by as much as 2x.
  • iOS: Added support for Watch apps and Watch app extensions in the Xcode extension API.
  • Mobile: Added TouchScreenKeyboardType.Social and TouchScreenKeyboardType.Search for iOS/tvOS, Android, WindowsPhone and Tizen platforms.
  • OSX: Added Appstore category field to player settings and improved info.plist generation
  • OSX: Added support for loading the first scene asynchronously when showing the splash screen.
  • OSX: Metal: [MTLDevice recommendedMaxWorkingSetSize] is now used to query VRAM size when available.
  • Particles: Added edit modes for Particle system collision mode planes.
  • Particles: Allow Emit over Distance to be used for Local Space systems
  • Particles: Edge emission is now more flexible, allowing you to choose the thickness of the edge used for generating particles.
  • Particles: Improved particle system culling mode supported tooltip messages. These now contain more details on why the culling mode is unsupported.
  • Particles: Randomize the spawn positions of particles, with a new option in the Shape Module.
  • Particles: Scene lighting can now affect Lines and Trails.
  • Particles: The speed range of a Particle System is now displayed in the Scene View GUI, when previewing a Particle System.
  • SamsungTV: UnityWebRequest is now supported on SamsungTV
  • Shaders: Optimized game data build time for shaders with massive ("millions or billions") potential variant counts. Fixed shader inspector popup menu to display variant counts larger than 2 billion properly.
  • Shaders: Pass platform caps keyword defines to compute shaders
  • Shaders: SystemInfo.graphicsShaderLevel now reports more accurate shader models that better match shader #pragma target levels (now can report values 25, 35, 45, 46).
  • Web: (Also mentioned under API Changes) UnityWebRequest now has built-in support for downloading MovieTexture on platforms that do support it. A new helper class WebRequestMultimedia has been introduced for simple download of MovieTexture or AudioClip. WebRequest.GetAudioClip() has been deprecated in favor of WebRequestMultimedia.GetAudioClip().
  • Windows Store: Unity player binaries are now signed.

API Changes

  • Animation: (Also mentioned under Features) AnimationLayerMixerPlayable scripting API added.
  • Asset Import: Added ModelImporter.importVisibility
  • iOS: (Also mentioned under Features) Added API to change iOS splashscreens.
  • Playables: Moved Playable out of Experimental namespace.
  • Scripting: Rename to Debug.logger to Debug.unityLogger (852000)
  • Web: (Also mentioned under Changes/Improvements) UnityWebRequest now has built-in support for downloading MovieTexture on platforms that do support it. A new helper class WebRequestMultimedia has been introduced for simple download of MovieTexture or AudioClip. WebRequest.GetAudioClip() has been deprecated in favor of WebRequestMultimedia.GetAudioClip().
  • Web: (Also mentioned under Features) Added timeout property to UnityWebRequest. (823903)
  • Web: Moved UnityWebRequest.GetTexture() to UnityWebRequestTexture.GetTexture().

Fixes

  • 2D: A quad mesh will be generated when generating Sprite from a blank texture. (890845)
  • 2D: Add back POT option when in TextureImporter for Sprites (884926)
  • 2D: Fix Sprite UV not updated when data is copied via EditorUtility.CopySerialized (884970)
  • 2D: Fix SpriteRenderer not rendering Sprite in TileMode when mesh generation exceeds max vertex limit (888884)
  • 2D: Rephrase warning message to include Sprite generated in PolygonMode in SpriteRenderer when TileMode is set (889106)
  • Animation: Clarified documentation on Translation DoF settings for Humanoids (847234)
  • Animation: Display "Update reference clips" button for Generic rig too (871684)
  • Animation: Fixed adding State/StateMachines with invalid names. (882122)
  • Animation: Fixed an issue where Optimize Game Objects would cause invalid scale being applied with some animations (879368)
  • Animation: Fixed an issue where previewing animations with an exit time of zero would prevent the previewer from showing (883536)
  • Animation: Fixed an issue where results were incorrect when the only layer of a state machine was set to additive (862998)
  • Animation: Fixed an issue where the Rig importer Mask's transform list was populated even though the definition was set to None (874995)
  • Animation: Fixed Audio Source nested curve editor getting stuck while dragging keys. (881723)
  • Animation: Fixed out of sync linear tangents when editing a curve in the curve editor. (881861)
  • Animation: Fixed standalone curve editor window association to its serialized property. (860540)
  • Asset Import: Mesh importer now displays an error for invalid polygons that cannot be triangulated without introducing a new vertex. (677375)
  • Asset Pipeline: Fixed import failure when FBX take name contained invalid characters. (873720)
  • DX12: Behaviour of the VFACE semantic now consistent on DX12 with the editor and other platforms (895474)
  • Editor: Fixed a crash in Editor caused by null Handles. Graphics.DrawMeshNow will now throw an exception if the mesh is null. (893112)
  • Editor: Fixed an issue where locking the Inspector on subscene objects causes their disappearance, coupled with a group of 'Failed to unpersist' error messages. (874301)
  • Editor: Fixed case of errors spamming the console when taking detailed memory sample of 32 bit player. (886135)
  • Editor: Fixed case of Handles.PositionHandle() throwing NullReferenceException when no SceneView is in the current editor layout. (874248)
  • Editor: Fixed crash when using the SavePanel path bar on Windows. (839912)
  • Editor: Fixed crash whilst reloading scene(s) after using version control merge and resolve operations. (876733)
  • Editor: Fixed erroneous IMGUI clipping with non-trivial GUI.matrix (896013)
  • Editor: Fixed HDR Color Picker to preserve alpha when changing brightness field. (883476)
  • Editor: Fixed low Normals quality issue with low mesh compression settings. (709609)
  • GI: Fixed a crash when creating reflection probes from OnWillRenderObject (873206)
  • GI: GI Scene Modes Not Fetching Visualization Data After Quitting Play Mode. (849063)
  • GI: Light sources incorrectly identified as realtime when in Auto mode. (815031)
  • GI: LoadLevelAdditive loads baked lighting as (no GI) realtime if it was baked using Auto. (709362)
  • GI: Progressive lightmapper now honors GraphicsSettings.LightsUseLinearIntensity.
  • Graphics: Display an error message and disallow subregion copying of a depth-stencil texture. (883393)
  • Graphics: Fix Editor crash by ensuring the camera and camera stack are valid after a PreCull message. (876867)
  • Graphics: Fix incorrect warning about using instancing and static batching simultaneously.
  • Graphics: Fixed crash trying to use a compute buffer which failed to be created. (886290)
  • Graphics: Fixed crash when Unity loses focus caused by a camera being removed whilst it is being rendered. (869109)
  • Graphics: Fixed flickering game view window when resizing the window. (880788)
  • Graphics: Fixed instancing mesh sorting when custom properties are set on renderers.
  • Graphics: Fixed render target becoming white or black on stop if set to don't clear. (884057)
  • Graphics: Fixed Vulkan GraphicsJobs mode when rendering Particles
  • Graphics: Incrased batching limits to 65,000 vertices. (810600)
  • Graphics: Make sure wrap modes are valid before setting them on a texture to fix assert message spam "Assertion failed on expression: 'translated != kInvalidEnum'" (883459)
  • Graphics: Re-generate real-time Reflection Probe cubemap when screen resolution is changed. (868638)
  • Graphics: Throw an exception if script tries to set a random write target texture and the texture does not have random write enabled.
  • iOS: Fix to hide the status bar while playing movies with CancelOnInput or Hidden modes. (871989)
  • iOS: Metal: Fixed unnecessary half to float casts in generated shaders (898788)
  • iOS: Removed extra notification sent on application launch (875180)
  • iOS: UnityEngine.iOS.Device.SetNoBackupFlag can now be called from background threads. (851113)
  • Kernel: Fixed log message filtering for LogType.Exception. (820286)
  • Kernel: Fixed Mathf.PingPong and Mathf.Repeat returning negatives values for some specific value (861278)
  • Multiplayer: Added better error messages when processing a non-valid state in weaver (875195)
  • Multiplayer: Fix issue with network transport host being removed with invalid host id, when using custom network connection (NetworkConnection override) (881764)
  • Multiplayer: Fix issue with NetworkAnimator not updating parameters (related to local player authority) (779549)
  • Multiplayer: Fix max events flood protection in network client
  • Multiplayer: Fix problem with cleaning/resetting network identities in disabled objects, in the network manager (881743)
  • OSX: Fixed crash caused by quick open/close of GUIWindows. (884145)
  • Particles: Align to Direction now works for Mesh particles. (864493)
  • Particles: Disable/re-enable of Particle System GameObject now causes it to successfully restart previewing. (767489)
  • Particles: Fixed all 3 curves(x,y,z) being added to the Particle System curve editor when switching to curve state and only in single axis mode (855588)
  • Particles: Fixed curves with loop or ping pong wrap modes being incorrectly converted into poly curves and thus causing asserts.
  • Particles: Fixed module curves being shown in curve editor after the module was disabled due to an undo operation (861424)
  • Particles: Inspector now refreshes when changing MinMaxCurve types from script. (788240)
  • Particles: Particle system culling was not working until it was rendered at least once (680242)
  • Particles: Particle system is no longer cleared if procedural emission buffer contains items. (801335)
  • Particles: Particle trails could render with graphical corruption when used on Sub-Emitters (895376)
  • Particles: Removing a ParticleSystem on a GameObject that has a component with RequireComponent(Renderer) is now correctly prevented. (888048)
  • Particles: Reset Component option is now fully working for Particle Systems. (715605)
  • Particles: Size over lifetime now correctly affects collider size, and sub-emitter inheritance. (792289)
  • Particles: The Pivot offset used for Stretched Particles was incorrect along the X axis. (830382)
  • Particles: Velocity and Force modules now apply scale correctly when using World Space mode. (874051)
  • Physics: Fix a crash that happened when continuously scaling a MeshCollider while activating and deactivating it at the same time (878740)
  • Physics: Fix a crash that happened when more than 262143 colliders were created. This is not supported by PhysX and we won't be creating colliders once this limit is reached. (872785)
  • Physics: Fix a crash that happened when scaling a mesh that PhysX failed to cook properly (think a convex MeshCollider with too many vertices). (892396)
  • Physics: Fix a crash updating active skinned meshes. (845868)
  • Physics: Fix a rare crash that occured when a solver batch was indexed incorrectly (PxsSolverSetupSolveTask was reported in the callstack) (874515)
  • Physics: Fix horizontal clipping in the layer collision matrix when some layers had names that were too long (526797)
  • Physics: Fix interpolation and extrapolation being being applied in an incorrect order for nested Rigidbodies. This affected the stability of ragdolls that had interpolated bones. (772337)
  • Physics: Fix Physics.ComputePenetration & Physics.ClosestPoint not returning the correct value when a rotated collider had it's centre offset (865250)
  • Physics: Fix Rigidbody.collisionDetectionMode being impossible to change if it was initially set to Continuous (784529)
  • Physics: Fix Rigidbody.collisionDetectionMode being impossible to change if the Rigidbody was part of a pool of objects (889118)
  • Physics: FIx voodoo trigger events being fired to scripts when a degenerate CapsuleCollider was used (701504)
  • Physics: Fixed a crash caused by changing the value of the configuredInWorldSpace flag on a Joint attached to an inactive GameObject. (832197)
  • Physics: Reprocess mesh used for cloth if changed. (664672)
  • Physics: Reprocess mesh used for cloth if changed. (879584)
  • Scripting: Editor recompilation is no longer triggered when adding WinRT dlls which are not used by the editor. (861189)
  • Scripting: Fix a memory leak and performance degradation when adding nested classes as components. (856497)
  • Scripting: Fixed case of ScriptExecutionOrder not being applied when entering play mode. (830711)
  • Scripting: Fixed crash in C# updater with arrays in some expressions. (855785)
  • Scripting: Fixed rare crash that could occur after accessing null AnimationState (and Null Reference Exception is thrown). (847112)
  • Scripting: Fixed Script Updater issue with generic type parameters on methods under member access expressions. (863941)
  • Scripting: Improved error message when ScriptableObject is used with abstract classes. (850202)
  • Scripting: Improved the error shown when a class must inherit from ScriptableObject instead of MonoBehaviour. (867259)
  • Scripting: Prevent managed thread creation during app domain reload (882697)
  • Scripting: Script Updater: Automatically update ParticleCollisionEvent.collider to ParticleCollisionEvent.colliderComponent
  • Scripting: Script Updater: Do not remove required "using namespace" due to inadvertently deeming it as not used
  • Services: Fixed issue with Unity project ID when importing assets from the asset store containing a project ID. (867382)
  • Shaders: Fixed standard shader not supporting _Bumpscale on iOS and Android platforms. (881869)
  • Shaders: Occlusion sampling in shader now takes into account parallax map/offset. (783222)
  • SpeedTree: Fix a case where LOD1 range cannot be adjusted in SpeedTree importer GUI. (886674)
  • Terrain: Fix asset messages when deleting in-use terrain asset. (863970)
  • UI: Augmented variable capacity to correctly handle large numbers of tiles. (862575)
  • UI: Fixed crash when deleting a nested canvas with nested canvas children. (858847)
  • UI: Fixed issue that would prevent the text field input caret from updating when the virtual left and right arrow keys were pressed. (850430)
  • UI: Fixed issue where fonts created by script would fail to appear. (858645)
  • UI: Selectable SelectionState is now updated as expected when setting interactable to true. (861736)
  • UI: The input field caret now generates the GameObject with the correct transform type as well as a CanvasRenderer, to prevent doing a switch of Transforms at runtime. (863470)
  • UI: The inverse transform of the canvas (m_CanvasData.invCanvasMatrix) is now updated when its ancestor has changed (i.e. not just its direct parent). (870698)
  • Video: VideoPlayer.isPrepared always returns false after calling VideoPlayer.Prepare() when playOnAwake is false with some video files (893939)
  • Video: VideoPlayer.Prepare() broken on random video files (897708)
  • Video: [Video Player] Can't play a Video Clip If WaitForFirstFrame is enabled (899233)
  • Video: [VideoPlayer] Video which has 6-channel audio and its audio codec is AC-3 doesn't play on Windows (893910)
  • VR: Fix crash in Editor when attempting to do Holographic Simulation when graphics API forced to DX9 (885634)
  • VR: Fix daydream back button handling to deal with app store submission rejection (893219)
  • VR: Fix Daydream icon labels to not display tooltip text in the label. (891613)
  • VR: Fixed crash on HoloLens and Windows Mixed Reality caused by large amounts of input data overflowing queue
  • VR: Fixed particle shader errors when using instanced single pass. (872164)
  • VR: Integrate Google VR iOS SDK 1.20 (885513)
  • VR: VRDevice.refreshRate now reports correct values on Oculus devices. (820293)
  • Windows: Fixed not being able to start the game with exclusive fullscreen mode on a secondary monitor (789575)
  • Windows: Fixed resolution selector showing primary monitor resolutions even when a secondary monitor is selected.
  • Windows: Fixed window not resizing to new monitor's size when moving window to another monitor while in windowed fullscreen mode.
Changeset:
5e138e18bf82

Third Party Notices

For more information please see our Open Source Software Licenses FAQ on the Unity Support Portal

We use cookies to ensure that we give you the best experience on our website. Visit our cookie policy page for more information.

Got it