Unity 4.3

Check out the highlights of this feature-packed release:

  • A completely new 2D toolset
  • Animation: blendshapes and animation events for animator-driven characters
  • MonoDevelop 4.0.1
  • Navmesh: dynamic off-mesh links and obstacle carving
  • A major Windows Store apps upgrade
  • Plastic SCM integration

Read on for the full list of new features and updates.

2D

Added a new asset type: Sprite

  • Sprite is defined by a Texture2D, rectangle and a pivot point.
  • Sprite has an internal mesh generated based on pixel alpha values, PRO only feature.
  • Sprite supports vertex snapping (V)
  • Added Sprite under the "GameObject/Create Other/" menu.

Sprite Mode added to TextureImporter

  • Single Sprite option will generate one Sprite using the entire texture.
  • Pixels to Units defines the mesh size of the Sprite to 1 / value.
  • Pivot property defines sprites center point.
  • Manual option allows custom Sprite definitions.
  • Sprite Editor button opens new window for editing sprites: Add / Delete sprites manually; Automatic and Grid based slicing; Change sprite names.
  • Extrude Edges property added to Advanced mode. It can be used to extrude the internal sprite mesh edges if needed for custom texture-space effects.
  • Mesh Type property added to Advanced mode. It can be used to change the type of mesh generated: Full Rect or Tight (PRO only feature).

Added a new renderer component: SpriteRenderer

  • Renders one Sprite.
  • Does not requires a material to have _MainTex texture set.
  • Uses Material Property Blocks to patch _MainTex with the correct (original or atlased) texture for the active Sprite.
  • Supports dynamic batching with non-uniform scaling.
  • Color property sets the vertex color.
  • If no material is specified, Sprites/Default material (alpha-blended) is used.

Added 2D mode button to scene view

  • Scene view axis widget is hidden on 2D mode
  • Scene view locks to the XY plane.
  • Move tool changes to a dedicated 2D tool with familiar functionality.
  • Move tool have special Keyboard modifiers
  • Picking is now alpha-based.
  • Dragging a sprite to the scene will create a new GameObject with a SpriteRenderer.
  • Dragging multiple sprites to scene will create a new GameObject with a SpriteRenderer and sprite animation.

Sprite Packing (Atlasing), PRO only feature

  • Atlas is defined by changing the PackingTag property in texture importer.
  • Packing is based on the generated mesh.
  • Packing will respect texture import settings and will only pack textures together if format, usage mode, color mode, compression quality, filter mode and mip-map settings match.
  • Window/Sprite Packer menu option opens a new window for inspecting the automatically generated sprite atlases.
  • Decision of which sprites to place into which atlases can be fully customized by implementing a custom sprite packer policy (UnityEditor.Sprites.IPackerPolicy).
  • Packing is completely transparent to the user, works in Play mode and is compatible with asset bundles.

Integrated Box2D physics engine and a set of 2D physics components

  • Rigid-body component (RigidBody2D) supporting static/kinematic/dynamic body, mass, linear/angular velocities, drag and auto-sleeping, and fixed-angle constraint.
  • Circle collider (CircleCollider2D) supporting a centroid and radius.
  • Box collider (BoxCollider2D) supporting a centroid and a size.
  • Polygon collider (PolygonCollider2D) supporting an arbitrary set of polygons. It can be initialized to the shape of a sprite by dragging the sprite onto the component.
  • Distance joint (DistanceJoint2D) supporting a hard maximum distance between rigid-bodies.
  • Hinge joint (HingeJoint2D) supporting linear and angular limits and motor drive.
  • Slider joint (SliderJoint2D) supporting an axis constraint, linear limits and motor drive.
  • Spring joint (SpringJoint2D) supporting a soft (spring) distance between rigid-bodies.
  • Added a new physics material PhysicsMaterial2D to share friction and bounciness including default material support.
  • Added a 2D physics manager to contain scene settings such as gravity etc.
  • Added spatial queries in Physics2D scripting class for line and ray-casting and geometry overlap checks.
  • Added both trigger and collision callbacks for 2D colliders including collision points and normal.
  • Added 2D physics profiling information to the profiler.
  • Editor: Hold down shift to quickly modify 2D colliders.

Animation Features

New Animation Window has arrived

  • Heavily influenced by the standard "dope sheets".
  • Only animated properties are shown in the property view (left side of the window).
  • Sprite animation is possible by animating the SpriteRendrerer component.
  • Sprites are shown in the dopesheet when SpriteRenderer is unfolded from the left side property view.
  • 'Add Curve' menu added. Shows all properties that can be animated on selected GameObject.
  • Animation Window now supports Mecanim. Animations can be added to the animator controller from the Animation window. Animations can be modified in the AnimationWindow too.
  • Added 'Curves' button to menu bar. Changes between dopesheet and curve editor. 'C' key assigned for keyboard shortcut
  • Added 'Samples' field to menu bar. Changes clip sample value per second.
  • Added toggle field for animating boolean properties. Created boolean curves use 'Constant' as default key tangent.
  • 'F' will focus on whole clip, or shown curves, if nothing is selected

Mecanim improvements

  • Add a new option "Optimize Game Objects" in ModelImporter inspector. In short, this makes character rigs much faster.
    • When turned on, the game object transform hierarchy of the imported character will be removed and is instead stored in the Avatar and Animator component.
    • The SkinnedMeshRenderers of the character will then directly use the Mecanim internal skeleton, so that we can get rid of all the Transforms which used to be there, representing all the bones.
    • This option will improve the performance of the animated characters. It is recommended to turn it on for the final product. In optimized mode skinned mesh matrix extraction is also multithreaded.
    • When "Optimize Game Objects" is turned on, the user can specify a list of "Extra Transforms to Expose" in ModelImporter inspector. For example, if you want to attach a sword to the right hand, this acts as a mount point. The exposed transform is flattened in the game object hierarchy, even though it might be somewhere deep in skeleton hierarchy.
  • Mecanim supports animating any property including blend shapes properties, camera properties, script float properties, lights and most other float properties on components.
  • Support for events! Events are created in the animation window for writable Animation Clips attach to an Animator. Can also add AnimationEvents directly in the animation importer.
  • Various performance optimizations, especially in regards to generic mode.
  • Added Animator.Play and Animator.CrossFade scripting functions. These functions allow you at runtime to transition to any state in your controller.
  • Added AnimatorOverrideController, an AnimatorOverrideController allow you to override any clip from a controller with another one.
  • Loop time vs Loop pose, When an animation clip is already looping, no need to activate Loop Pose, Loop Time will make clip looping without modifying the pose.
  • Trigger parameter, a trigger is a boolean parameter that is reset by the controller when consumed by a transition.

Editor Features

Editor Controls Overhaul

  • LookLikeControls and LookLikeInspector have been replaced with a single unified look.
  • New look has consistent styles, indentation and layout.
  • Keyboard navigation now works for all components and is improved for sliders and object fields.
  • The Inspector has a new Wide Mode that places controls in a more neatly aligned and vertically compact way.
  • Easier to write Editor GUI with consistent alignment.
  • Relevant new API:
    • EditorGUIUtility.labelWidth and EditorGUIUtility.fieldWidth replaces the parameters in the now obsolete EditorGUIUtility.LookLikeControls function.
    • EditorGUI.PrefixLabel has a new overload that doesn't need an id parameter.
    • EditorGUILayout.GetControlRect is the best way to get a Rect for a standard sized Editor control.

Other Editor Features

  • Unity now ships with a brand new MonoDevelop 4.0.1!
  • Ability to build iOS target in Windows! It's still necessary to compile resulting Xcode project on a Mac.
  • Added global SortingLayers (see Tags & Layers window). Every Renderer can specify a layer and an in-layer order value for explicit ordering using. SpriteRenderer inspector exposes the two properties.
  • Layer locking for scene view. The layers dropdown in editor toolbar controls visibility or locking of layers (and locking of the new Sorting Layers). Locked layers are visible, but aren't pickable in the scene view.
  • Undo has been optimized for large scenes. Full scene undo support has been removed, all undo operations save only the necessary objects. SnapshotUndo support has been deprecated, instead Undo.RecordObject is to be used for all property modifications. Undo API has been revamped to make it clearer what functions should be used now.
  • Added a "Default behavior" property to Editor Properties to control default texture import behavior and default scene view mode.
  • Added an option to the new project wizard to select default editor behavior (2D/3D).
  • BuildPipeline methods now have parameters to output CRC checksums of generated AssetBundles.
  • New Highlighter editor API for highlighting elements in the editor. Useful for in-editor tutorials and similar.
  • Asset Pipeline: Only new assets or assets where the actual content has change will get imported. Changing the time stamp of an asset will no longer cause a reimport.
  • Asset Pipeline: .meta files are now always turned on. From Project Settings -> Editor you can choose to hide them if you are not using version control.
  • Added ability to specify external script editor's args, including file and line info. (Windows editor only).

Graphics Features

Blendshapes

  • Unity now supports blendshapes (also known as "morph targets").
  • You can drive the blendshapes using name based binding from Mecanim or legacy animation system.
  • Blendshape curves are imported from FBX files, but you can also record them in the animation window.

Culling in Unity has been rewritten

  • Now it's much faster across the board. Umbra occlusion culling is used to cull away point lights that don't contribute to the final image; and to drastically reduce number of shadow casters from directional lights.
  • Umbra: Incremental baking of occlusion culling data.
  • Umbra: Portal culling occluder rasterization has been greatly optimized.
  • Umbra: PVS culling has been removed. Occluder rasterization is always used because PVS often gave to inaccurate results and bake times were huge.
  • Umbra: Directional shadow caster occlusion culling drastically reduces the amount of directional shadow casting objects to be rendered.
  • Umbra: Point light occlusion culling and connectivity tests are used to remove local lights that do not contribute to the final image.
  • Vertex point lights that are outside of the frustum are faded out with the range of the light.
  • General culling performance optimizations, by optimizing data layout, code optimizations etc.

Other graphics features

  • Deferred: A number of light rendering optimizations for deferred rendering, making the light pass faster. Side effect is that only up to 4 bits of the stencil buffer are left available, instead of up to 5.
  • Render Texture improvements:
    • Added Camera.SetTargetBuffers for multiple render target (MRT) support.
    • Ability to render into a specified mip level of a RenderTexture. Create a mipmapped RT, turn off automatic mip generation with RenderTexture. generateMips=false; and use new Graphics.SetRenderTarget overloads to specify mip level to render into.
    • Ability to render into a speficied cubemap RenderTexture face; new overload in Graphics.SetRenderTarget. Added SystemInfo.supportsRenderToCubemap.
  • Graphics: Added Mesh.UploadMeshData, to trigger VBO creation and possibly system-side copy unload.
  • MaterialPropertyBlock got improved:
    • Added Renderer.GetPropertyBlock, and MaterialPropertyBlock GetVector,GetFloat etc. functions.
    • MaterialPropertyBlocks can have texture properties now.
    • Objects with custom material property blocks (renderer.SetPropertyBlock) can be batched now, if their properties are the same.
  • Terrain: Optimized terrain rendering and reduced memory usage.
  • Android: Enabled multi-threaded rendering on OpenGL ES 2.0 and 3.0. This takes advantage of asynchronous multiprocessing architectures like Qualcomm Snapdragon CPUs and enables more efficient rendering of both OpenGLES 2.0 and 3.0, both currently supported on Adreno GPUs.
  • Android: ASTC (Adaptive Scalable Texture Compression) format support.
  • Improved system memory usage of statically batched geometry.
  • It is now possible to set the fade time on flares. This changes how fast a flare will fade in or out when appearing or disappearing from the screen.
  • Added Texture2D.LoadRawTextureData for loading already-made (e.g. DXT/PVRTC compressed) raw data.
  • Allow for overriding Hidden/Internal-Flare, Hidden/Internal-Halo and Hidden/Internal-CombineDepthNormals shaders.
  • Added Max Particles script binding to Shuriken particle systems.
  • Dynamic batching support for point, line, and quad mesh topologies.
  • Added support for some DirectX 11.1 features (low precision shader variables, UAVs in all shader stages, logical blending operations etc.); note this works on DX11.1 runtime only (Windows 8 and up).
  • Exposed Light.cookieSize to scripts.

Shader related features

  • Material.renderQueue is serialized now. You can change it from custom inspector or script, and it will be saved.
  • Most of fixed function states (like blend, cull, depth test, stencil modes; polygon offsets etc.) can be driven by material parameters now. For example "Blend [MySrcBlend] [_MyDstBlend]", with _MySrcBlend and _MyDstBlend being float variables. See enums in UnityEngine.Rendering for the mode values. _Note: in this alpha, global shader properties can't drive be used for this.
  • MaterialPropertyDrawers, just like property drawers, but for shaders and material inspectors! e.g. you can do [MaterialToggle(FANCY_ON)] before a float shader property, and this will display it as a checkbox; and will enable FANCY_ON keyword when checked.
  • Added "by property ID" functions to set/get material properties; use Shader.PropertyToID to compute ID just once. No need to pass strings all the time.
  • By enabling SceneFX in the scene view materials in the viewport will update as they would at runtime (taking time into account).
  • Material inspectors now take time into account. Your materials will update in realtime in the inspector window.
  • Somewhat more sane error reporting - now gives hints in error messages about #pragma target 3.0 or #pragma glsl, and reports way less almost identical errors when you make typos.
  • Vertex lit shaders can access all 8 vertex light lights instead of only first 4 in custom shader programs. Also, spot light information (spot direction & spot attenuation) can be accessed.
  • Added Material.EnableKeyword and DisableKeyword.
  • Added Material.SetInt/GetInt, and Shader.SetGlobalInt. In ShaderLab Properties block, "Int" can be a property type similar to "Float". Note that all these are just aliases for floats.
  • Added ShaderUtil.CreateShaderAsset this takes a text shader and returns a compiled shader.

Features

  • D3D11: Implemented Texture2D.CreateExternalTexture and Texture2D.UpdateExternalTexture
  • DX11.1 Logical operations in blending (DX11.1 only)
  • Editor: Added EditorGUI.FocusTextInControl and EditorGUIUtility.editingTextField.
  • Implemented Screen.lockCursor API in Windows Store Apps
  • Windows Phone: MovieTexture support.
  • Windows Phone: WebCamTexture/Microphone support.
  • Windows Store Apps: added API to get application activation arguments sent by secondary tile, toast notification now can send activation arguments.
  • Windows Store Apps: implemented API to update tiles and show notifications
  • Windows Store Apps: support for UnityScript / Boo

Changes

  • AI / NavMesh: Support for adding more than one OffMeshLink component to a game object.
  • Android: 32bit display buffer without alpha is now the default to avoid compositor bugs on android.
  • Editor: Make Generate Mip Maps setting in Texture Importer not be bold, for consistency, and make it hide child settings rather than just disabling the GUI, for simplicity.
  • Editor: Respect original shader culling mode in scene view picking.
  • Editor: Changed the resize cursors and added a splitter resize cursor on mac.
  • Editor: Shortcut for Maximize View has changed from Space to Shift+Space. It can now also be configured in the Editor Preferences.
  • Editor: Current layout is now stored per project. New projects will use the last layout as an initial layout state.
  • Editor: MaterialEditor API refactored. Added class MaterialProperty that holds the info & values of the material property, and handles multi-selection & undo (similar to SerializedProperty). MaterialEditor functions now operate on MaterialPropertyValues; and there's a MaterialHelper class to get to them.
  • Editor: Project Browser now sorts folders first on Windows
  • Editor: show warning in inspector when we have npot texture playing with compression in a non-good way
  • Editor: Windows Background color option was removed from Preferences window
  • GameObject.Find doesn't allocate internal memory
  • iOS: Made iOS 4.3 as default target, updated warning for older targets
  • iOS: Added possibility to choose how touches originated from non-unity views are processed. Added possibility to get "raw" touch position (iOS coords).
  • iOS: Added support for rect banners (ios6 feature).
  • iOS: Added support for vendor/advertisement id (iOS6). Changed SystemInfo.deviceUniqueIdentifier logic: on ios7 it will use ad id (if tracking is enabled) and fallback to vendor id otherwise. On pre-ios7 the behavior stays the same (hash of MAC address).
  • iOS: exposed getter for possibly mirrored web cam texture
  • iOS: iAd implementation extracted to trampoline (WARNING: script interface changed). Added c# event to be triggered after user saw advertisement.
  • iOS: Trampoline now expects SDK 5.0 or higher
  • Mac Standalone Player: When in FullscreenWindow fullscreen mode without showing menu bar and dock, disable Application switching, as it would not correctly keep the Dock hidden.
  • Mecanim: Moved Optimized transform hierarchy button from inspector to the context menu
  • Mecanim: AnimationSet renamed AnimatorOverrideController and derives from RuntimeAnimatorController.
  • Mecanim: Removed AnimationSet property from the Animator Component. AnimatorOverrideController derives from RuntimeAnimator it can be asigned directly to the Controller property of the Animator.
  • Mecanim: Root motion can now be affected by Animation Clip from any controller's layer. Before only the first layer could affect the root motion.
  • Mecanim: Renamed AnimatorStateRuntimeModificator to AnimatorStateRuntime
  • Mecanim: AnimationSet refactoring. Removed AnimationSet.ReplaceClip and added a few function for setup.
  • Mecanim: A MatchTarget is now interrupted by a transition. Project created with older version will still have the same behavior than before.
  • Mecanim: Remove Keep Additional Bones for Humanoid Rig at import. Use Skeleton mask instead.
  • NavMesh: calling CompleteOffMeshLink now positions the agent at the OffMeshLink endpoint.
  • NavMesh: enabling carving for an obstacle disables avoidance for that obstacle
  • Physics: Now allowing multiple collider components of the same type on one GameObject
  • Physics: Renamed and documented layer mask constants, Physics.AllLayers, Physics.DefaultRaycastLayers, Physics.IgnoreRaycastLayer
  • Profiler: Some samples are now tagged as warnings in the CPU profiler (i.e. moving of a static collider). The warnings are shown as a count in the 'warnings' column
  • The default GUI font embedded for consoles and other platforms with no access to system fonts has been changed to "Liberation Sans"
  • Version Control: Only kill plugin on initial negotiation errors and not all errors sent from plugin
  • Version Control:Change base path to be projectPath instead assetPath.
  • WebPlayer: Installer now reports anonymous usage statistics to help improve install experience
  • Windows Phone 8/+ Windows Store Apps: Transferred Trial API from UnityEngine.Application to UnityEngine.Windows.LicenseInformation class.

Deprecated and removed features:

  • Android: Dropped support for Froyo(2.2) and Eclair(2.1).
  • Graphics: Removed support for OpenGL ES 1.x on mobile; ES2.0 will be used by default now. Set rendering path to VertexLit in player settings to best approximate the old behavior.
  • Graphics: Removed support for pre-DX9 GPUs on PC. That is, GPUs made before 2003 (NVIDIA), 2002 (AMD) and 2004 (Intel) will not be supported now.
  • Editor: Removed Unitron (Mac) and UniSciTE (Windows) script editors. The MonoDevelop we ship now is quite good already!
  • Culling: Support for Animation bounding volume culling has been removed. Unity will fall back to renderer based culling instead.

Improvements

  • AI / NavMesh: Performance! Crowd update is multithreaded when there are more than 50 active navmesh agents - if supported by device.
  • AI / NavMesh: Obstacle carving support. NavMeshObstacle supports carving via the "Carve" flag on the component.
  • AI / NavMesh: OffMeshLink Component is dynamic. OffMeshLink component creation/modification/destruction has effect at runtime and in the editor. No baking of navmesh is required.
  • AI / NavMesh: 'CalculateTriangulation' calculates and returns a simple triangulation of the current navigation mesh. Returned is a struct containing the vertices, triangle indices and navmesh layers.
  • AI / NavMesh: OffMeshLink Component API additions: navMeshLayer, biDirectional, startTransform, endTransform, autoUpdatePositions, UpdatePosition.
  • Android: Always use non-linear z if available for 16 bit depth buffers
  • Android: Joystick input should now be more concise across different gamepads and devices.
  • Android: Support for secondary and tertiary mouse button (requires ICS).
  • Android: GL context recreation will only take place when strictly needed.
  • Android: Better EGL context selection. Now much more likely to pick a configuration with proper anti aliasing, stencil, depth etc.
  • Android: Native EGL/OpenGLES (no longer initialized through Java).
  • Animation Window: New clips are saved into project browser active folder instead of project root by default.
  • Animation Window: Recording goes through the new Undo system. Only changes that are Undoable are recorded.
  • Animation Window: Hotkey 'k' for add keyframe button.
  • Animation Window: Properties that are being animated show up in yellow.
  • BlackBerry: Added checkbox to allow users to indicate Gamepad support for their games
  • BlackBerry: It is now possible to specify build ID.
  • BlackBerry: Gamepad trigger buttons are now supported.
  • Documentation: undocumented APIs will now show up as empty stubs
  • Documentation: more Scripting docs for 2D APIs
  • DX11: Use new fixed function shader generator on Windows 8.1
  • Editor: Improve workflow when layout with custom windows failed to load due to compile errors.
  • Editor: Modified occlusion culling default baking parameters (smallest occluder value 1.0 -> 5.0)
  • Editor: No longer downloads an ivy.xml file every time you push play.
  • Editor: Removed dysfunctional Xcode 4 setting
  • Editor: Updated Unity Logo and icons
  • Editor: Better performance when entering and exiting playmode
  • Editor: Improved search in Project Browser and Hierarchy: We now support searching for types in namespaces and base types can be used to find derived types.
  • Editor: Improve error handling of renaming/creating assets when inputing invalid file name chars
  • Editor: SHIFT+F or double-F locks the scene view camera to the selected GameObject.
  • Editor: "alpha is transparency" textures are displayed with a checker background in material inspector; and nicer display in project browser.
  • Editor: Optimize Inspector GUI by avoiding much of the string handling associated with PropertyDrawers.
  • Editor: Order and group menu items in Assets/Create menu so related items are together.
  • Editor: PropertyDrawers now have a fieldInfo property that can be used to obtain reflection data about the member that the property represents.
  • Editor: PropertyDrawers can now call EditorGUI.PropertyField to get the default implementation instead of getting infinite recursion.
  • Editor: New virtual method UseDefaultMargins on Editors as well as two styles in EditorStyles that can be used to customize margin use manually in custom Editors.
  • Editor: Add ability to cancel update static flags in children dialogs.
  • Editor: Made TextAsset also recognize .json, .csv, .yaml extensions.
  • Editor: Add Component menu now handles multiple search words and lists items that match all of them, so for example "ca co" lists Capsule Collider.
  • Editor: If a shader has a PreviewType=Plane tag, the material inspector will display a plane instead of 3D meshes in the preview.
  • Editor: Improve GenericMenu showing speed on Windows.
  • Editor: New commandline switch "-buildTarget " that allows to select the active build target before a project is loaded.
  • Editor: ETC2 texture formats now selectable from Texture Importer inspector.
  • Editor: Respect HideInHierarchy flag & locked layers in drag-rectangle-box picking code as well.
  • iOS: added Ad Loaded callbacks
  • iOS: Added iPhone5S/C to the iPhoneGeneration enum
  • iOS: Fixed crash if user had selected OpenGL ES 3.0 as graphics API target (GL ES 3.0 is currently Android-only)
  • iOS: Fixed some warning in Xcode project
  • iOS: Added possibility to back rendering surface with CVTextureCache-ed texture.
  • iOS: Added AppDelegateListener with notifications about Local/Remote Notifications.
  • iOS: Added joystick support skeleton.
  • iOS: Improved native code integration with Unity Trampoline, look for RenderPluginDelegate and LifeCycleDelegate.
  • iOS: Make it possible to disable rendering to external display (to revert to simple mirroring). Added c# event for Display list changes.
  • Linux: Reduce development player size
  • Linux: Added screen selector / input configurator.
  • Linux: Implemented -popupwindow command line argument.
  • Linux: Add proxy support for WWW class via HTTP_PROXY/HTTPS_PROXY environment variables.
  • Linux: Reduce size of development players.
  • Math: Added "IsNormalized()" method to Vector2.
  • Mecanim: [Optimize game objects] Add support for dynamically attaching a SkinnedMeshRenderer to an existing character (like wearing glove). As long as the SkinnedMeshRenderer and the character have the same rig, they don't need to come from the same FBX file.
  • Mecanim: [Optimize game objects] Add support for exposing a Transform without reimport. Just create a new game object as a child of the root game object, and rename it to be exactly the same as the bone you want to expose.
  • Mecanim: [Optimize game objects] Optimize and de-optimize game objects at runtime with: void OptimizeTransformHierarchy(GameObject go) and DeoptimizeTransformHierarchy(GameObject go)
  • Mecanim: [Optimize game objects] Work better with prefab now. De-optimizing the imported model will not break the existing prefabs.
  • Mecanim: Added a popup menu in animation clip model importer to select/deselect all nodes in the mask inspector.
  • Mecanim: AnimationController is created without file dialog when 1st animation is added to GO.
  • Mecanim: Curve editing in Animation window should be faster for controller with many clip
  • Mecanim: When draging a clip on a GO that already has an AnimationController, simply add the clip instead of creating a new controller.
  • Mecanim: Reduced memory footprint for Animator component.
  • Mecanim: Animation clip importer automaticly detect the rig type (generic or humanoid) and setup the mask accordingly.
  • Mecanim: Rewrote iOS SIMD math library backend.
  • Mecanim: Added new animation compression mode 'optimal' for generic and humanoid rig.
  • Mecanim: When dragging a non-legacy clip on a GameObject, create an Animator + controller
  • Mecanim: Refactored AvatarMask use during import. Can now specify an asset on disk.
  • Mecanim: Added warning when humanoid transforms have Translation/Scale animation.
  • Mecanim: Removed warning message when previewing some objects that have component dependency.
  • Mobile: Improved GLES context recreation
  • Mobile: Mobiles now have separate rendering path setting
  • NavMesh: To ensure correct navmesh being baked, step height is clamped to be always less than agent height, and a warning is issued to user.
  • Physics: Can now set up material for TerrainData.
  • Physics: Joints can now have separate anchor points configured for both connected rigidbodies.
  • Physics: CharacterController will now report an error when trying to configure it as a trigger.
  • Profiler: Players now include the entire frame when profiling
  • Profiler: Correct unwinding of samples if an exception is thrown
  • Profiler: Now profiles OnGUI events when profiling editor.
  • Reduced memory consumption when importing 8k*8k textures
  • Scripting: WWW object now has a bytesDownloaded attribute, to monitor a download's activity if the remote host does not send a content-length header
  • Scripting: Add generic overloads for Resources class.
  • Terrain: Show a warning when unsupported shader is being used on terrain
  • Version Control: Create missing folder that have their .meta file present
  • Version Control: Reduced calls to VCS backend for getting status
  • Version Control: Show progress send from plugin in GUI
  • Version Control: Made a change lists optional trait for plugins
  • Version Control: Make "get latest" on asset subset or only changeset a plugin trait.
  • Version Control: Allow plugins to force handling of conflicts themselves
  • Version Control: Add support for PlasticSCM mergetool in unity preferences
  • Version Control: Support for plugin custom commands.
  • Version Control: Support for plugin provided icon overlays.
  • Version Control: Improve initial add of ProjectSettings folder to include future settings as well
  • Version Control: Show overlay legends in the settings inspector
  • Version Control: Handle files deleted externally to be reverted/deleted in vcs automatically
  • Version Control: Handle files renamed/moved outside unity and to be moved in version control as well
  • Windows Phone: Added default unity splash screens of all available orientations (landscape left, landscape right, portrait upside down in addition to portait).
  • Windows Phone: Added support for pixel perfect splashscreens.
  • Windows Phone: Debug.Log in user scripts will now output to Visual Studio output window as well if the project is built in debug and release configurations.
  • Windows Phone: If Windows Phone SDK cannot be found, its expected path is reported.
  • Windows Phone: Message box appears on the phone when using capability that was not enabled in application manifest file.
  • Windows Phone: Use latest UnityScript / Boo
  • Windows Phone: Implemented backround media player status API for Windows Phone at UnityEngine.WindowsPhone.Media.
  • Windows Phone: Show platform name in editor title.
  • Windows Phone/+ Windows Store Apps: Exposed application trial API.
  • Windows Phone: Added Emulator support.
  • Windows Store Apps: background color override support in extended splash screen on Windows 8.1
  • Windows Store Apps: Support rendering in non-native resolutions on Metro 8.1
  • Windows Store Apps - Windows 8.1: Input callbacks will now be processed on application thread instead of UI thread, thus reducing input lag.
  • Windows Store Apps - Windows 8.1: Will use Direct3D low-latency presentation API http://msdn.microsoft.com/en-us/library/windows/apps/bg182880.aspx#five, this should improve input latency.
  • Windows Store Apps & + Windows Phone: Windows 8 requirement to build for Windows Phone/Windows Store Apps is always listed in build settings if it isn't met.
  • Windows Store Apps: Added Master configuration to the exported solution, so now there will be three - Debug, Release, Master like on Windows Phone 8. Master configuration should be used when releasing the game. Release configuration is the same as Master, but has Profiler enabled, that's the only difference.
  • Windows Store Apps: Animator.GetCurrentAnimationClipState, Animator.GetNextAnimationClipState should work now.
  • Windows Store Apps: Added UnityEngine.WSA.Application.windowsActivated event, which can be used for capturing events when snapping begins and ends.
  • Windows Store Apps: Implemented Screen.sleepTimeout
  • Windows Store Apps: Fixed some of the issues with external plugins, for ex., Facebook.dll, EasyRoads3D.dll
  • Windows Store Apps: Windows 8.1 support.
  • Windows Store Apps: Cloth is supported now.
  • Windows Store Apps: Editor will check if plugins used by Editor and Windows Store Apps are compatible, for ex., it will check if assembly version matches.
  • Windows Store Apps: Editor will perform a check if user is running under Windows 8 or higher, if not Build buttons will be disabled.
  • Windows Store Apps: Unity splash screen will be shown if user doesn't have a Pro license.
  • Windows Store Apps: Added UnityEngine.WSA.Application.windowSizeChanged event, which will be invoked when user resizes the window, for ex., when performing snaping.
  • Windows Store Apps: Implemented LocationService and Compass.
  • Windows Store Apps: Compilation Overrides will only affect C# files not located in "Standard Assets", "Pro Standard Assets" or "Plugins" folders.
  • Windows Store Apps: Managed-To-Native functions now use Platform Invoke to perform interop, performance should be better now.
  • Windows Store Apps: New APIs. UnityEngine.Windows.File, UnityEngine.Windows.Directory for accessing directories and files. UnityEngine.WSA.Application for invoking calls on different threads.
  • Windows Store Apps: Resources.UnloadUnusedAssets should work correctly now.
  • Windows Store Apps: When generating C+/C# solution, Mixed Mode debugging will be enabled by default.
  • Windows Store Apps: Make sure gui password field is drawing mask char, even though os keyboard returns clear text.

Fixes

  • AI / NavMesh: NavMesh.Raycast: Gives correct navmesh height (Y component) for hit position.
  • AI / NavMesh: Fix issue where disabling one navmesh obstacle would sometimes affect another obstacle.
  • AI / NavMesh: Fix NavMeshAgent occasionally getting NaN positions in cases where many agents are spawned/destroyed and avoidance is disabled/enabled.
  • AI / NavMesh: Fix NavMesh.CalculatePath returning path with wrong path endpoint when path is partial.
  • Android: Fixed a problem where "Unable to find suitable jdk installation" was presented even with a valid jdk in path
  • Android: Disabled glTexSubImage2D for adreno devices - fixes some of the dynamic font issues
  • Android: Fixed default orientation for 3rd gen kindle devices
  • Android: Fixed stripping issue which caused AndroidJavaRunnable to fail
  • Android: Fixed ToString error when unboxing java string for AndroidJavaProxy.
  • Android: Workaround for an issue with the android compositor on external displays.
  • Animation: Fixed leak in animator component
  • Animation: Will handle Enable binding correctly.
  • Animation Window: Update() isn't offered as an option in the add event popup anymore.
  • Animation Window: Add Curve dialog no longer pops up again after cancelling it
  • Animation Window: Adding new clips into read-only objects no longer allowed
  • Animation Window: Animation Event tooltip wasn't showed on mouse hover.
  • Animation Window: Animation Event window wasn't updated when selection was changed
  • Animation Window: Changing IsActive property keyframe via animation window is updated into scene view immediately
  • Animation Window: Curves-toggle is persistent if you close/reopen animation window
  • Animation Window: Dopesheet clamp framerate between 0-10 000 to avoid data loss for big number
  • Animation Window: Dopesheet is now able to show more than 50 sprite previews at the same time
  • Animation Window: Fixed Scale transform is marked yellow in the Inspector although it not animated
  • Animation Window: In record mode you should be able to animate an Animator Generic rig.
  • Animation Window: No error messages after removing the animated object
  • Animation Window: While moving selected keyframes, sometimes other keyframes would move also
  • Audio: Fix AudioListener.volume for AudioSource.PlayOneShot
  • Audio: Fix AudioImporterInspector: Compression slider shows wrong max
  • Audio: Fix Custom audio filter for AudioListener does not affect sounds played by PlayOneShot
  • Audio: Fixed StackOverflow in OSX Editor during AudioClip.Create
  • BlackBerry: Fixed issue where gravity was being reported in meters per second instead of G forces. Also landscape x and y for gravity was swapped.
  • BlackBerry: WebCamTexture.videoVerticallyMirrored is now set correctly.
  • BlackBerry: Fixed issue where tiling would occur when webcam framerate was set outside acceptable range.
  • BlackBerry: MailTo URI's now work as expected.
  • BlackBerry: Remapped gamepad buttons to match up to Xbox 360 controller.
  • Bug Reporter: Fix crash when submitting documentation bugs from OS X.
  • BuildPipeline: Custom cursor specified in PlayerSettings is now built and shown correctly.
  • Cursors: Fix regression with cursor not showing in OS X standalone build.
  • Documentation: Fixed documentation of EditorUtility.CollectDeepHierarchy.
  • Documentation: Readded the message "Inherits from" for classes that have a parent.
  • Documentation: Return types, parameter types and types in examples work as links.
  • DX11: Fix 100% cpu use on Win81, reduce it somewhat on older windows.
  • DX11: Handle "-adapter X" command line argument.
  • Editor: Fixed "set default parameters" button in occlusion-bake tab
  • Editor: Fixed crash while baking occlusion culling data
  • Editor: Workaround windows 8.1 + webkit regression causing crash on mouse wheel messages.
  • Editor: Fix external editor not opening files when double clicking errors in console and external editor arguments have been specified.
  • Editor: Fixed crash when Transform was referenced multiple times by parent Transform (only happens in corrupt scenes; editor will automatically remove extraneous references now).
  • Editor: Fixed ScriptableObject editor script reference field being incorrectly drawn with PropertyDrawer.
  • Editor: Fixed that EditorGUI.LabelField got key focus when tabbing (its now skipped when tabbing)
  • Editor: Fixed that mouse cursor over gradient alpha input field was showing as drag area instead of text area
  • Editor: Fixed that tabbing through controls jumps back to "active" checkbox for the game object instead of moving to the next gui control
  • Editor: Fixed that the static toggle in inspector does not update correctly when toggled, if the current value is "mixed"
  • Editor: Disabled GPU Profiler on Macs + NVIDIA GeForce 650M, turns out the drivers return garbage data.
  • Editor: Do not disable the lighting flag in the scene view after completing a build
  • Editor: Don't leak references to assemblies that are dynamically loaded from game code.
  • Editor: Fix input sometimes being sent to windows that have already been destroyed causing PPtr dereference asserts.
  • Editor: Fix static preview generation to have the right background color in linear mode
  • Editor: Fixed import of Reflection textures sometimes freezing the Editor when Fixup Edge Seams is checked.
  • Editor: Fixed unclear and flickering DX11 tool tip message in Player Settings on Mac.
  • Editor: It's now possible to undo changing batching settings in the PlayerSettings
  • Editor: Mark BeginGUI(Rect) as obsolete, as it leads to bad internal GUI state
  • Editor: Fix Object Picker causing nullrefs when shown outside of OnGUI.
  • Editor: Opening PopUp menus with the keyboard on windows will no longer beep.
  • Editor: Closing a editor tab shouldn't change the selected tab.
  • Editor: Fix that Preferences key shortcuts using toggle with CTRL didn't work on Windows.
  • Editor: Fixed searching for Terrain in the Hierarchy or Project window (use t:terrain)
  • Editor: Fixed searching for GUISkin in Project Browser (use t:guiskin)
  • Editor: Fixed that GUISkin was not showing in Object Picker for GUISkin object fields
  • Editor: Fixed: Occlusion Culling scene view overlay window once again always uses dark editor skin, so it is readable
  • Editor: Fixed: NavMesh scene view overlay window once again always uses dark editor skin, so it is readable
  • Editor: Fixed: Error spam in Console when modifying a box collider using collider handles
  • Editor: Only set keyboard focus upon clicking a PrefixLabel if the control supports keyboard focus.
  • Editor: Fixed two biggest progress bar leaks on OS X
  • Editor: Vertex snapping (V) now works for sprites.
  • Editor: Fix script execution order on reload
  • Editor: Fix occasional crash when importing assets.
  • Editor: AssetPostprocessors without a default constructor no longer crashes the editor.
  • Editor: Fix ScriptableObject having wrong icon in ObjectField.
  • Editor: PropertyDrawer attributes on members that are arrays are now applied to each element in the array rather than the array as a whole. This was always the intention since there is no other way to apply attributes to array elements, but it didn't work correctly before. Apologies for the inconvenience to anyone who relied on the unintended behavior for custom drawing of arrays.
  • Editor: Fix context menu for ScriptableObject having nonsensical entries (mostly Component-related). Also, "Edit Script" is now only shown if a script is available for editing (not the case for e.g. GUISkin or Terrain).
  • Editor: Fix light skin inspector sometimes using game skin for drawing controls.
  • Editor: GameObjects that end up with multiple transform components will now have extraneous transforms removed automatically; prevents crashes.
  • Editor: Fixed a crash when calling AssetDatabase.CreateAsset on a GameObject.
  • Editor: Fixed errors and crashes when having non-ASCII characters somewhere in the paths for font assets.
  • Editor: Fixed crash when inspecting a disabled terrain; or deleting a material assigned to Terrain.
  • Editor: Fix Scene View Gizmo hover effect that has been broken for several releases.
  • Editor: Fix that clicking cancel on the build progress bar causes loss of scene and any unsaved work.
  • Editor: Fix that Windows progress bar displays incorrect progress when used from user scripts.
  • Editor: Ensure error sound is not playing on OSX when using keyboard shortcuts for particle effect.
  • Editor: Fix wrong context menu in the results of Asset Store searching in Project view.
  • Editor: Curve preset library now retains wrap settings.
  • Editor: Object picker prematurely populates Animation component.
  • Editor: Fixed undo not working with color picker.
  • Editor: When calling EditorGUI.PropertyField with includeChildren set to true, the children did not have correct spacing.
  • Editor: Labels and buttons no longer draw on top of each other in the preview of an animation clip from the asset store with a narrow inspector or preview window.
  • Editor: TextEditor now scrolls to show the composition string when using IME. Furthermore, scrolling offset is now respected when IME pane is positioned so it doesn't end up in weird positions if the text field has scrolled.
  • Editor: Fix scroll speed in Particle Effect window; and fixed broken UI layout in particle system scene view overlay.
  • Editor: Fix so shortcuts can be used to give the Project Browser window focus (Ctrl/Cmd + 5) and then start a search (Ctrl/Cmd + F).
  • Editor: Fix main editor window covering an auto-hidden taskbar when maximized on Windows.
  • Editor: Fix double dropshadowing issues for windows on Windows (fixes odd dropshadowing on adjacent monitors when the editor was maximized).
  • Editor: Fixed files showing multiple times when deleting multiple folders in Project Browser.
  • Editor: Fix assets could incorrectly be created in the Assets folder in two column mode.
  • Editor: Textures with Alpha Is Transparency Selected, will have their thumbnail correctly generated with a transparent background.
  • Editor: Prevent setting terrain resolution higher than 2049 via the inspector (can still be done from scripting API, to avoid breaking existing code).
  • Editor: 3D textures were not displayed properly in material inspector.
  • Editor: Catch errors when trying to rename classes in the project view.
  • Editor: Disable Compression option in Audio Importer for Native WAV files as they can't be compressed.
  • Editor: Fixed Camera Volumes legend in Occlusion Culling in-scene window.
  • Editor: Fixed changing the script type in the MonoBehaviour component when using multi-object selection.
  • Editor: Fixed IntPopup fields not opening on space.
  • Editor: Fixed tooltips for GUI.SelectionGrid; and log a warning if user tries to create invalid SelectionGrid.
  • Editor: Only focus dropdown window if doesn't have focus already.
  • Editor: On Windows EditorGUIUtility.AddCursorRect does not wait for a mouse movement to update the cursor anymore.
  • Editor: Fixed the hard crash happened when updating one package to a new version.
  • Editor: Fix the inappropriate cache server warnings
  • Editor: Fix the bug that crash unloading AssetBundle when exiting Play mode
  • Editor: Fix the crash when deleting ScriptableObject
  • Fix: ASTC textures were imported with Y-axis flipped
  • Fix crash when passing prefab instance to PrefabUtility.ReplacePrefab
  • Fix the Editor crash on getting component by type if type was null
  • Fix occlusion culling when camera is outside generated view volumes
  • Fix occlusion culling license issue
  • Fixed profiling of shadow caster culling, cases where there are no shadow casting lights.
  • Fix error messages in Windows Store Apps and WP8 when checking for location capability
  • Fix errors when snapping on Windows Store Apps
  • Fix: GPU skinning on DX11 was limited to 128 bones per mesh, limit upped to 1024.
  • Fix F10 and Shift keys in Windows Store Apps
  • Fix crash in WSA/WP8 when using Compass
  • Fix internal exception and performance issue in WSA/WP8 using Compass on device without it
  • Fix serious performance drop in WSA/WP8 using Compass on some devices
  • Fix Editor hanging when entering play mode or quitting the application
  • Flash: Fix leaking AssetBundle APIs.
  • Flash: Fix Flash UnityContentLoader unloading. ("TypeError: Error #1034: Type Coercion failed: cannot convert System::ClassType...")
  • Flash: Fix Flash Monobehaviour Serialization issues
  • Flash: Support up to Flash 11.8, this allows 11.5 and upwards non-content debugger players to display a stack trace.
  • Flash: Fixed dynamic batching sometimes failing.
  • Font rendering: Fix alignment of text with embedded images.
  • Font rendering: Allow embedded images to render in non-square aspect ratios.
  • Graphics: Fixed a crash when accessing Camera.current in the Editor in Start().
  • Graphics: Fixed a crash when switching to DX11 mode and the scene has terrain in it.
  • Graphics: Fixed a deadlock in the mutithreaded renderer when entering the Lion-style fullscreen on Mac.
  • Graphics: Fixed a null reference exception in combining for static batching when there was no first material in Renderer's material array.
  • Graphics: Fixed asserts caused by broken render texture stats when using graphics emulation.
  • Graphics: Fixed changes to QualitySettings.vSyncCount after Screen.SetResolution() causing fullscreen setting to be ignored.
  • Graphics: Fixed GPU skinning (both DX11 and OpenGL ES 3.0) when the mesh is using a low number of bones
  • Graphics: Fixed QualitySettings.anisotropicFiltering changing values inconsistently when set from scripts.
  • Graphics: Fixed Texture.GetNativeTextureID() not being thread-safe with multi-threaded rendering.
  • Graphics: Fixed webplayer plugin crash
  • Graphics: Fixed wrong vertex count being reported in Stats window when static batching is used and editor is in Direct3D 9 mode.
  • Graphics: Fixed broken shadows with forward rendering to antialiased RenderTexture.
  • Graphics: Fixed crash when calling Texture2D.ReadPixels() with a negative offset.
  • Graphics: Fixed crash when using Graphics.Blit under some circumstances.
  • Graphics: Fixed Graphics.Blit crash issue.
  • Graphics: Fixed shaders using 2 UV sets not working in Player if mesh only has one set, and was imported without Read/Write Enabled.
  • Graphics: Fixed bounds of meshes generated by TextMesh component.
  • Graphics: RenderTextures are no longer unnecessarily cleared when loading a new level.
  • Graphics: OpenGL ES 2.0 now supports mipmapped render textures.
  • Graphics: Fixed cubemap + mipmap render textures on OpenGL.
  • Graphics: Fixed a rare case of light probe sampling taking too much time.
  • Graphics: Fix crash on scene load when baked occlusion data is present
  • IMGUI: MousePosition should work properly inside a GUI.window when GUI.matrix is not identity.
  • Input: Input state now being reset consistently cross-platform when player focus is lost.
  • iOS: Fixed iOS builing on Windows
  • iOS: Fixed various scrolling related crashes on iOS 7
  • iOS: Fixed Xcode 5 build & run for simulator target
  • iOS: Fixed gyro reporting
  • iOS: Fixed iOS project building from script on Windows.
  • iOS: Fixed iOS7 simulator support.
  • iOS: Fixed managed code stripping when building project on Windows.
  • iOS: Fixed WebCamTexture support for iOS7
  • iOS: Fixed iOS7 icon size support
  • iOS: Xcode 5 Build&Run support fixed
  • iOS: Fixed MeshCollider stripping issue.
  • iOS: Improved error propagation in WWW class.
  • iOS: Fixed Norwegian language detection.
  • iOS: Make sure all NSString backing device settings are retained.
  • iOS: Fixed OnCollision broken by stripping, when you don't use Collision class explicitly.
  • iOS: Fixed trampoline's precompiled header not working with .c/.m files.
  • Linux: Fix player crash when a user manually specifies an invalid resolution.
  • Linux: Fix custom cursor handling when hiding/showing cursor.
  • Mac OS X 64 bit Standalone: fix WebCam support
  • Mac OS X Standalone: Changed compile settings to disable running on 10.4 (which we did not support anyways), as this is now a requirement for publishing to Steam.
  • Mac OS X Standalone: Fix cursor locking when setting Screen.lockCursor in first Awake call
  • Mac OS X Standalone: Fixed Mouse coordinates on secondary screens
  • Mac OS X: Fixed support for cursors with NPOT cursor textures
  • Mac OS X: Make Icon and Splash screen work for 64 bit standalone builds.
  • Mac OS X: Fixed non-ASCII characters in Input.inputString
  • Mac OS X: Fixed issues with windows handling for GameCenter in standalone builds.
  • Mac OS X: Fix Input.inputString to correctly contain whitespace characters in the web player.
  • Mecanim: Model importer meta file shouldn't get dirty anymore when importing a file with a Humanoid rig.
  • Mecanim: Fix crash when previewing transition between empty states
  • Mecanim: Fix object hierarchy not being animated correctly in some cases
  • Mecanim: Fix remove State/StateMachine code that caused bad object access
  • Mecanim: Fixed crash when trying to configure an Avatar with a mesh not yet skinned.
  • Mecanim: Fixed cannot configure a human avatar when optimize is ON.
  • Mecanim: Fixed crash when calling Animator.GetBoneTransform on Avatar with Optimize Game object On.
  • Mecanim: Fixed crashes when editing humanoid animation applied to a primitive object.
  • Mecanim: Fixed drag'n drop of State/StateMachine.
  • Mecanim: Fixed Optimize GameObject in import settings breaks preview window of Skinned Mesh,
  • Mecanim: Fixed preview of a transition on a layer with a mask, previewer was not using the mask to playback the transition.
  • Mecanim: Fixed root motion masking for all layer.
  • Mecanim: Fixed the crash which happened when we reimport the FBX file in play mode.
  • Mecanim: Fixed transitions bool parameter being overriden when creating the 1st Trigger parameter.
  • Mecanim: Hide "Optimize Game Objects" if Avatar Definition is "Copy From Other Avatar".
  • Mecanim: Proper clamping of start/stop times when importing an Animation clip.
  • Mecanim: Update Controller's clip duration when an AnimationClip is substituted by AnimationOverrideController.
  • Mecanim: Fixes animation set crash when clips are duplicated in controller.
  • Mecanim: Avatar created proceduraly should not expose Configure Avatar button.
  • Mecanim: User should get an error in the console when they try to create an avatar with duplicate transform in the human mapping.
  • Mecanim: Fix various crash with Optimize game object and configure Avatar.
  • Mecanim: Fix crash when user configure an existing avatar and try to edit the muscle limit,
  • Mecanim: Fix crash when user delete and animator component.
  • Mecanim: Fix crash when user set the root node on a generic rig to the top most object in hierarchy.
  • Mecanim: Animation Average Velocity was not computed correctly.
  • Mecanim: Preview of animation breaks on avatars with different hips orientation.
  • Mecanim: Switching from Generic to Humanoid rig when using source Avatar was breaking animation import.
  • Mecanim: Support scale of game object at runtime for Animator. Root Motion, IK, Optimize Hierachy.
  • Mecanim: Unroll muscle fix.
  • Mecanim: Sync editor curve for pre-4.3 duplicated muscle clip and backward compatibility problem with duplicated clips.
  • Mecanim: Change default behavior for human clip, do not import position, rotation and scale curve for all human transform.
  • Mecanim: StateMachine GraphGUI did not support properly to have its data modified externally.
  • Mecanim: Fixes webplayer compatibility for Mecanim bindings.
  • Mecanim: ModelImporter multi-edition of root node and expose transform should be disabled when transform from multiple file doesn't match.
  • Mecanim: Better validation of avatar creation.
  • Mecanim: Re-added AnimationUtility.GetAnimationClips(Animation animation) in the API as deprecated.
  • Mecanim: Fixed crash when applying change in Avatar Tools with an invalid avatar.
  • Mecanim: Fixed StopTime not being set properly when resampling a transition in the previewer.
  • Mecanim: Fixed scale curved that where not evaluated properly.
  • Mecanim: Fixed continuity issue on transitions with duration of zero.
  • Mecanim: Fixed broken additive layer evaluation.
  • Mecanim: Fixed broken bindings when source hierarchy differs from destination.
  • Mecanim: Prevent opening muscle previewer in Avatar Setup with incomplete Avatar.
  • Mecanim: Fixed Crash when clicking on Clear mapping button in Avatar tools.
  • Mecanim: Fix the default pose (when a character is not animated) when humanoid mode or a root bone is used. This makes it consistent with the default pose in the authoring tool (eg. Maya).
  • Mecanim: Fixed crash when calling Animator.GetBoneTransform with an Uninitialized Animator.
  • Mecanim: Recorder cannot longer play unrecorded frame.
  • Mecanim: Restrict use of negative animator speed while recording.
  • Mecanim: Fix Ctrl-click selection for states and transition.
  • Mecanim: Fix negative scale blending while in a transition.
  • Mecanim: Fix Additional curves tangent, Non default tangent was not supported correctly.
  • Mecanim: Fix in Muscle Unroll Algorithm.
  • Mecanim: Fix loading of .anim files generated in 4.0/4.1/4.2
  • Mecanim: Fix memory spill when using Layers
  • Memory Profiler shows Static Managed References as a reason for why an asset is loaded
  • Memory: Fixed leak when instantiating materials from code
  • Mobile: Do not include fonts into mobile build when rendering mode is OS and including the font is not specified.
  • Mobile: Fixed point topology rendering.
  • Mobiles: 24-bit Depth Buffer is now enabled by default
  • MonoDevelop: Disable broken fullscreen mode on OSX.
  • MonoDevelop: Fix exception when creating a new UnityScript or Boo class from MD.
  • MonoDevelop: Fix tab selector freeze when resizing the code editor UI.
  • MonoDevelop: Fix exception when jumping to declaration of a symbol in an external assembly.
  • MonoDevelop: Fix intermittent, unhandled exception when opening the Unity API reference.
  • MonoDevelop: Remove unsupported entries from menus.
  • MonoDevelop: Fix cursor warp.
  • MonoDevelop: Don't flush folding and undo data on document save.
  • MonoDevelop: Show debugging toolbar when attaching.
  • MonoDevelop: Make play button attach instead of launching new Unity instance.
  • MonoDevelop: Fix Boo compilation failure every first compile (Windows).
  • MonoDevelop: Fix Unityscript compilation (Windows).
  • NavMesh: Changed NavMeshAgent.hasPath to return consistent values on off-meshlinks and while walking.
  • NavMesh: Fixed issue where NavMeshAgents was restoring the velocity before entering offmeshlink when leaving it
  • NavMesh: Fix regression causing agents moving on terrain to have wrong height (y-position) when "Height Mesh" bake option is enabled
  • OSX Player: Fixed crash when loading a release build
  • OpenGL ES 3.0: Fixed shadow rendering in Deferred rendering mode.
  • OpenGL ES 3.0: Various fixes and stability improvements.
  • Physics: Fix OnTriggerEnter being called repeatedly for CharacterControllers when setting transform.parent
  • Physics: Fix potential crash when deleting colliders while Time.timeScale is zero
  • Physics: Fix Terrain.GetInterpolatedNormal to return correct normals
  • Physics: Fixed a bug where Continuous Collision detection would not work correctly when changing the scale of colliders.
  • Physics: It is now possible to have multiple SpringJoint components on a single GameObject, like with all other Joints.
  • Physics: Rigidbodies will now wake up when changing constraints, so that a Rigidbody which is being held in position by a constraint will start moving.
  • Physics: All combine modes are now correctly applied to friction and bounciness properties of physics materials. Before that, the interpretation of Multiply and Minimum modes was switched.
  • Physics: Fix crash when using MeshCollider with a mesh which only contains degenerate faces.
  • Physics: Fixed a bug where MeshColliders would enable themselves when changing the transform when they were disabled.
  • Physics: Fixed a crash related to sending collision notifications.
  • Physics: Fix the MovePosition feature of a kinematic compound rigidbody.
  • Physics: fix crash when reloading scene with invalid physics materialPrefabs: Fixed cases where prefab merging injected additional transform components into prefab instances.
  • Physics: Fix 2D colliders spamming console log with "m_InstanceId==0"
  • Prefabs: Fix awake order for prefabs which have other prefabs as children
  • Profiler: Camera render to Texture is now added to the profiler.
  • Rendering: Fixed accessing Cloth.vertices when there is no vertices assigned yet.
  • Scripting: Fixed a crash when trying to serialize abstract classes in MonoBehaviours.
  • Scripting: Fix memory leak occurring during Play/Stop and script compilation.
  • Scripting: CodeDomProvider can be used in Editor
  • Scripting: Fixed InvalidProgramException for binding delegate to instance method with null target.
  • Scripting: Fixed crash when calling ScriptableObject.CreateInstance with abstract type.
  • Scripting: More informative error message about use of enums with unsupported underlying type.
  • Scripting: Infinite Loop on RequireComponent.
  • Scripting: Fix crash when instantiating a scriptable object with a mismatched file name.
  • Scripting: Allow StopCoroutine from within a coroutine.
  • Scripting: Avoid spurious allocations when using terrains with shadows.
  • Scripting: Eliminate misplaced Editor.SetDirty warning in players.
  • Scripting: Fix crash when subclassing Component.
  • Shaders: hlsl-to-glsl translator now accepts "static" and "const" qualifiers on function return values.
  • Shaders: hlsl-to-glsl translator was producing variable names with double-underscore in some cases (which is not accepted by some drivers).
  • Shaders: Shader compiler now consistently accepts project-root relative #include paths.
  • Shaders: Fixed #pragma multi_compile shader variants not working with surface shaders in some cases.
  • Shaders: Fixed shader compiler crashing with out of memory on complex shaders (with lots of multi_compile variants).
  • Shaders: Fixed some Material properties getting into a non-save-able state sometimes (they would seem to be editable, but a Unity restart would revert the values back).
  • Shaders: Fixed texCUBEgrad & tex3Dgrad, was not working on some platforms.
  • Shaders: Integer and boolean parameters in shaders (e.g. int, int4, bool) now work as expected on all platforms.
  • Shadows: Fixed performance regression in shadow rendering (introduced in 4.1).
  • Shuriken: Clamp both start lifetime and length in seconds to avoid precision issues.
  • Shuriken: Fixed crash when destroying Mesh used by ParticleSystemRenderer.
  • Substance: Added missing documentation for SubstanceImporter::Get/SetPlatformTextureSettings() and ProceduralTexture::GetPixels32().
  • Substance: Fixed a severe perf regression in scenes with more than 20 ProceduralMaterial instances.
  • Substance: ProceduralTexture::GetPixels32() now works with a simpler call sequence (see documentation).
  • Substance: It is no longer possible to rename the wrong ProceduralMaterial when switching ProceduralMaterial while editing the ProceduralMaterial name field.
  • Substance: Texture thumbnails are now properly spaced when the "Generate all outputs" checkbox is enabled.
  • Substance: The "Generated textures" foldout is no longer displayed when trying to multi-edit ProceduralMaterials.
  • Substance: Renaming a ProceduralMaterial to a recently renamed ProceduralMaterial's previous name will now display the correct preview textures.
  • Substance: Fix a potential Editor crash when trying to perform drag and drop in the SubstanceImporterInspector.
  • Terrain: Fixed popping tree shadow
  • Terrain: Tree colors in linear rendering mode are now rendered correctly.
  • Terrain: Fix crash when using Terrain.activeTerrain in a scene that has no terrain.
  • Terrain: Fixed incorrect color space setting on detail (grass) objects.
  • Text Markup: Fixed parsing of numeric parameters which sometimes read numbers incorrectly.
  • Umbra culling is no longer used for previews. Fixes a crash when selecting cubemaps.
  • Undo operation for asset import settings changes are no longer recorded
  • Undo operation for asset import settings changes are no longer recorded
  • Undo: Fixed undo recording of script changes on MonoBehaviour
  • UnityObject: Correctly identifies IE 11 as a supported browser.
  • Version Control: Fix Submit Window sometimes throwing exceptions on creation.
  • Version Control: Do not show checkout dialog for all reimported models
  • Version Control: Handle moving folder external to Unity
  • Version Control: Only checkout selected assets when user has enabled notify on save in preferences
  • Version Control: Increased timeout for getlatest and submit to better handle slow connections
  • Version Control: Refresh pending window on submit error
  • Version Control: Require ack from vcs plugins on shutdown to prevent deadlock
  • Version Control: Fix context menu for "open containing folder".
  • Version Control: Show correct error message on all submit errors.
  • Version Control: Support perforce workspaces and passwords with spaces.
  • Version Control: Support for perforce streams.
  • Version Control: Disable save option when VCS plugin does not support changelists.
  • WebPlayer: Fixed several XSS bugs
  • WebPlayer: Fixed web player legacy occlusion culling
  • WebPlayer: Web Players can now start on Windows XP systems with Terminal Services disabled, but will not be able to enter full-screen on those systems.
  • WebPlayer: Fixed lock-up issues that occurred when entering fullscreen on OS X.
  • WebPlayer Installer: EULA links have been removed and standard click-through EULAs introduced. The EULA itself has not changed.
  • Windows 64-bit Standalone: Removed dependency on MS CRT redistributable
  • Windows Phone/+ Windows Store Apps: Fixed unity player crashing if fields in user scripts were emitted with #if UNITY_EDITOR precessor flag.
  • Windows Phone/+ Windows Store Apps: Reference ReWriter will now correctly find replacement method with param arguments if original is not available in the target framework.
  • Windows Phone: Dependencies to WinRTLegacy.dll are now correctly rewrriten.
  • Windows Phone: fix LocationService status
  • Windows Phone: Fixed unity player crashing if back button was pressed while the engine was still reinitializing from application pause.
  • Windows Phone: Reference ReWriter now correctly recognizes System.Uri <---> Windows.Foundation.Uri type alias.
  • Windows Phone: Reference ReWriter now correctly recognizes WinRT aliases when they are a template argument of non-alias class.
  • Windows Phone: UnityScript compiler targets incorrect UnityScript.Lang.dll when building project for WP8
  • Windows Phone: Closing app should no longer crash it.
  • Windows Phone: Fix render texture camera orientation when app is started in landscape.
  • Windows Phone: Fixed a bug where using certain WinRT types would prevent the user from building a project.
  • Windows Phone: Fixed a build system crash if plugin contained a class that inherits from Windows Phone XAML classes.
  • Windows Phone: Fixed a crash caused by disabled sensors capability in project manifest.
  • Windows Phone: Fixed a crash when trying to access temporary and roaming directories.
  • Windows Phone: Fixed a crash when trying to use gyroscope on devices that don't have gyroscope.
  • Windows Phone: Make ScreenOverlay post effect rotate correctly with device orientation.
  • Windows Phone: handle exceptions when sensors are not found
  • Windows Phone: Fixed initialization of LocationService
  • Windows Phone: GameObject.SendMessage invokes correct overloaded method.
  • Windows Phone: WWW class correctly decodes escaped URL strings.
  • Windows Phone: Screenshots are correctly captured in landscape orientation.
  • Windows Phone: App no longer crashes if graphics device is accessed from OnApplicationPause method.
  • Windows Store Apps: fixed GUI events via touches when cursor is locked
  • Windows Store Apps: fixed LocationService DesiredAccuracy usage on Windows 8.1
  • Windows Store Apps: Fixed out of bounds error while batching 2D sprites.
  • Windows Store Apps: fixed parameter marshaling of type 'char' in UnityEngine API, this fixes following Unity functions - Event.character, Font::HasCharacter, Font::GetCharacterInfo. Because of this bug chinese, russian texts in some cases were being displayed incorrectly.
  • Windows Store Apps: fixed starting coroutines with arguments of wrong but compatible tipe
  • Windows Store Apps: PlayerPrefs will be loaded before calling OnEnable function.
  • Windows Store Apps: fix crash in mesh
  • Windows Store Apps: fix freeze on Windows 8.1 when waiting for input
  • Windows Store Apps: Screen.orientation will work correctly (was fixed in 4.3 a1).
  • Windows Store Apps / Windows 8.1: Fixed regression from 4.3 b3, any touch or mouse input won't longer hang the application.
  • Windows Store Apps / Windows 8.1: IDXGIDevice3::Trim will be called on application suspend event, WACK requirement.
  • Windows Store Apps: fix cursor move when Screen.showCursor is set to false
  • Windows Store Apps: Fix AssemblyResolutionException during game postprocess when code references members from Windows namespace.
  • Windows Store Apps: Show "Not applicable" for icon in player settings
  • Windows Store Apps: Allow to unfold and show "Not applicable" for splash in player settings
  • Windows Store Apps & + Windows Phone: Fixed constructor injection, improved error reporting
  • Windows Store App/+ Windows Phone: String with unicode symbols (for ex., Chinese) will be correctly serialized.
  • Windows Store Apps: WWW will correctly load files via file:/// protocol, and won't require internet capability to be enabled.
  • Windows Store Apps: C# files located in Plugins, Standard Assets or Pro Standard Assets won't be compiled against .NET Core even if player setting are set to compile against .NET Core. This way js/boo will be able to access classes from C# files, C# files in other locations can be compiled against .NET Core depending on Player Settings.
  • Windows Store Apps: RequireComponent works now.
  • WSA / WP8: Better error message when UnityScript code calls Eva() function on platforms that don't support it

Known issues

  • Automatic sprite slicing will deliver imperfect results when slicing compressed textures.
  • Google Native Client support is not functional in Unity 4.3. If you need to publish to Native Client you can still use Unity 4.2.2.
  • Mecanim: Disabled keyframing of human transform in the animation windows.
  • Mecanim: When the same clip is used many time in a controller, you can't override a specific occurrence of that clip with an AnimationControllerOverride. All the occurrence of the same clip will be replace by the override.
  • Mecanim: Can't create or edit additional curves in Animations import window. Workaround: Be sure to have the Preview Window opened before opening the Curves tab
  • Switching from Generic to Humanoid rig when using source Avatar may break animation import. Simply set Source to None, apply, and set back to proper Source.
  • The script debugger will sometimes hang on OSX Mavericks.
  • Windows: The Unity Web Player is currently only available on 32-bit architectures. Users running 64-bit IE11 on Windows 7, 8, or 8.1 will not be able to run the Unity Web Player. Development of a 64-bit Web Player is in progress.
Unity 4.2.2
Unity 4.3.1