Public Beta Release Notes
Features
- Editor: Texture Importer for pvrtc-enabled platforms allows to select compression quality.
- Flash: Implement Camera.layerCullDistances & Camera.allCameras.
- Flash: Support Nullable types.
- Flash: Tight ActionScript integration. See UnityEngine.Flash.ActionScript.
Improvements
- Asset Server: Projects can now be copied in the admin view.
- AssetImport: Texture importing now uses a lot less temporary memory.
- Editor API: Expose GetIconSize and SetIconSize.
- Flash: Added Physics stripping checkbox for smaller build size.
- Flash: Faster build times.
- Flash: More optimized bytecode.
- Flash: System.Delegate.DynamicInvoke.
- Flash: System.Delegate arrays and generic containers.
- Flash: Proper support for multidimensional arrays of primitives and value types.
- Flash: Initial support for int.Parse(string, NumberStyles).
- Flash: Support for enum fields named after ActionScript builtin types (Object, String, Array).
- Flash: sbyte mapped to int and decimal to Number (use with care).
- Flash: Better support for generic member inheritance and overriding in complex type hierarchies.
- Flash: Improved .Net Class Library Support. Amongst which:
- String.EndsWith()
- Dictionary.Keys.Count
- Convert.ToInt32(char)
- Convert.ToInt32(string)
- Convert.ToChar(int)
- string.Trim(char[])
- List<T>(IEnumerable<T>) constructor
- Dictionary<K,V>.Keys.CopyTo()
- Dictionary<K,V>.Keys.Contains(K)
- StringBuilder.Append()
- Dictionary<K,V>.Count
- List<T>.RemoveRange(int,int)
- most of Stack<T>
- String.Equals(string,string)
- String.SubString()
- String.Compare(string,int,string,int,int)
- ArrayList.Sort(IComparer)
- Char.IsPunctuation
- +probably some we overlooked.
- Flash: physics performance improvements.
- Flash: better support for explicit interface implementations.
- Flash: support for unboxing of enums.
- Flash: better error reporting of unsupported features including offending source file location whenever possible.
- Flash: System.Object.Equals(Object) support for primitive types.
- Flash: VertexLit shaders support emissive color & specular lighting.
- Javascript: @script attribute declarations can now appear before 'import'.
- Javascript: Files containing interface and/or enum definitions named after them are now supported (e.g. interface IFoo in file IFoo.js) as the compiler will no longer generate a conflicting MonoBehaviour definition.
- ModelImport: Warnings about quaternions now contains the name of the model and can in most cases be clicked to highlight the model in the project view.
- Native Client: Now supports different resolutions then the native desktop resolutions in fullscreen mode. The screen mode will not actually changed, but it will render into smaller buffers, and Chrome will upscale when blitting.
- NavMesh: Bake configuration of inaccuracy threshold for radius/height exposed.
- NavMesh: API Exposed : NavMeshAgent.CalculatePath() added.
- NavMesh: API Exposed : OffMeshLink.costOverride - allows changing patfinding cost on OffMeshLinks.
- NavMesh: API Exposed : NavMeshAgent.steeringTarget, NavMeshAgent.desiredVelocity, NavMeshAgent.path (get/set).
- NavMesh: Baking supports trees instanced in terrains.
- Runtime: Improve QualitySettings API.
- Unwrap: All known cases of mac/win uv generation were fixed. Please reimport your meshes.
- Web Player: If the embedding page or unity3d file is hosted on https, the web player will use https for all connections (update checks and downloads), so the browser will not show warnings about insecure connections.
Fixes
- Android: Callbacks to MonoBehaviour.OnApplicationFocus is now supported.
- Android: Added support for Galaxy Note Stylus Pen (through
KeyCode.LeftControl and KeyCode.Delete).
- Android: VFY warnings when launching an application on devices with an older OS version has been removed.
- Android: Nvidia's PerfHUD for Tegra reported increasing frame times when the application was paused.
- Android: A few hardware keys were missing, like (forward) DELETE and left/right CTRL - these have now been added.
- Android: fixed crash upon the end of microphone recording
- Android: fixed crash on pre Gingerbread devices while starting up
- Android Remote: fixed flickering and improved stability on tablets.
- Asset Importing: Fixed an issue causing animations including scaling to (0,0,0) to be imported as having extremely large bounding boxes, which in turn caused issues with shadows and culling.
- Asset Server: Local project settings no longer show up as conflicts when checking out new projects.
- Asset Server: Fixed a problem where changes to project settings were not always fetched from the server.
- Asset Server: Models that require an external program to import will again work without having to install the program on all clients.
- AssetBundles: Fixed a crash sometimes caused by simultaneously downloading multiple asset bundles with caching enabled.
- Audio: Custom filters now respect 3D panning (use PanLevel to make it 2D)
- Audio: Importer now uses way less memory, and handles out-of-memory errors gracefully.
- Audio: Crash fix when recompiling while playing a custom filter.
- Audio: Fix dry/wet group asserts.
- Audio: Importing 0-length audio clips, don't crash anymore.
- Audio: GetData() on an AudioClip recorded with Microphone is now working.
- Cache Server: Updated to node.js 0.6.6
- Cache Server: Fix LRU implementation
- Cache Server: Will now invoke LRU to make space when running out of disk space.
- Editor: Fix intermittent "Moving file failed" error when building player.
- Editor: Fix error when attempting to edit deleted terrain.
- Editor: Advanced texture importer now correctly reflects internal texture import modes (For example no linear option for normal map textures).
- Editor: Setting color preferences now has an instant effect on the editor.
- Editor: Crashes caused by having modified assets and then pressing play
- Editor: Make dragging things into the Inspector work correctly with multi-object editing.
- Editor: Make Materials instantiated at runtime be shown with correct headers in the Inspector.
- Editor: Fix some clipped labels in GameObject inspector header when bolded.
- Editor: Use single-threaded rendering on Windows XP due to hangs when changing input language.
- Editor: Only display the navmesh gizmo when the navigation window is open.
- Editor: Fix the LOD bounding box visualization.
- Editor: Fix bug where texture max sizes were set to 0 when multi-editing textures and enabling overwriting settings for a platform.
- Editor: Fix bug where changing layout would generate an error when a docked Preview window was present.
- Editor: Fix missing documentation link icons in the Editor.
- Editor: Choosing "Edit Script" from the context menu of a MonoBehaviour when multiple objects are selected will now only open the script once.
- Editor: Dragging a script into the Inspector when multiple objects are selected will now attach it to all the objects instead of only one.
- Editor: "Build Settings" window disappears when focus is lost and does not reappear when focus is gained.
- Editor: Undo functionality is lost when mouse cursor leaves scene view area.
- Editor: Yaml format now stores floating point values in a binary exact way.
- Editor: Cache server now works correctly with @ model files.
- Editor: Imported models with Skinned Rigs in root nodes automatically generate an extra root game object. This makes importing animations without a model easier and fixes a common issue when importing animations made with Mixamo.
- Editor: (Windows) Build Settings will not open after Cancel
- Editor: (Windows) Asset progress bar & build progress steals focus from other applications on windows
- Editor: Will now give a proper error when trying to import a movie with unsupported codecs.
- Editor: Check for scene camera rotation of NaN and fix it.
- Editor: Drastically reduce Scene View grid artifacts that caused it to be imprecise.
- Editor: Fixed issue where editor would hang if left in background
- Editor: Child's scale is updated correctly when rotating with Inspector or Rotation Tool (when parent is non-uniformly scaled).
- Editor: Deleting the root game object in OnPostProcessModel will no longer crash Unity
- Editor: Importing FBX models with bad texture references like "." and ".." no longer crashes Unity
- Editor: Upgrading a 3.4.x projects with Modo files will now retain ids for meshes, meaning that references to meshes are not lost. References to subgameobjects will still be lost.
- Editor: (Windows) Fixed common random crash.
- Editor: Fixed crash when calling SetActiveRecursively within Awake.
- Editor: Make NavMeshAgent use gizmo for shape that's consistent with CapsuleCollider and CharacterController.
- Editor: Make asset labels work again for scenes and other default assets.
- Editor: Show materials of ParticleSystemRenderer in the Inspector.
- Editor: On Windows: Build Settings will not open after Cancel.
- Editor: Undo does not work when dragging (Win issue only)
- Editor: Import package failed to detect modified contents.
- Editor: Fixed-function alpha testing is disabled correctly when emulating gles20.
- Editor: Fix performance of Gizmos.DrawIcon.
- Editor: Hide camera on LOD Group prefab.
- Editor: Fix situation where light probe editing can lock the scene.
- Editor: Fixed movie playback in inspector.
- Editor: Make arrow navigation work for Object Picker grid / list even when search field has focus, like in 3.4.
- Flash: Fix issues with cubemap and lightmap texture importer.
- Flash: Make MouseEnter & friend callbacks work for colliders and gui elements
- Flash: support bool ^ bool construct
- Flash: fix crash when using public arrays of arrays
- Flash: fix crash when using public array of booleans
- Flash: make calling Desroy() on a Monobehaviour work
- Flash: Fix audio playing as loud whitenoise in many cases
- Flash: calling .ToString() on an interface
- Flash: fix GUIText components with fontsize!=0 spewing the logfile with neverending errormessages
- Flash: many improvements to support for nontrivial usages of interfaces.
- Flash: fix "bool && bool && bool" construct
- Flash: fix crashes on character controller hits
- Flash: fix physics "out of range" errors.
- Flash: fix audio; pan, mute, pause, stop
- Flash: fix audio; report correct time.
- Flash: fix swf, now has correct width and height in header.
- Flash: fix Application.targetFrameRate
- Flash: fix QualitySettings.antiAliasing
- Flash: fix Application.ExternalCall now works with arguments
- Flash: fix key inputs space, shift, control individual keycode
- Flash: add mousewheel support, not available on mac
- Fixed substance import issues with input textures.
- Graphics: Fixed error message when setting null texture on a GUITexture.
- Graphics: Fixed more than one directional light shadow (via "fullfowardshadows") not working in Forward rendering if Image Effects are used.
- Graphics: Tweaked RGBM lightmap encoding, so that there are no brighter lines appearing in dark areas when bilinear filtering is used. Makes a huge difference in linear lighting mode, since dark values get relatively much brighter.
- Graphics: Fixed SSAO not being anti-aliased when AA is used.
- Graphics: Fixed error: "D3D device reset failed [invalid call]".
- Graphics: Detect broken GPU profiling on certain drivers on Mac.
- Graphics: Made shader compiler generate proper code when the surface function wanted view direction and didn't write to o.Normal.
- Graphics: Fixed incorrect rendering order when using transparent shader with ParticleRenderer and MeshRenderer.
- Graphics: Fix non-uniformly scaled meshes getting wrong vertex colors on Windows.
- Graphics: Fix a potential crash bug with multithreaded rendering.
- Graphics: Fix performance regressions with dynamic/static batching in multithreaded renderer vs. single thread.
- iOS: Fixed an "Input.mousePosition on mouse up" regression.
- iOS: Fixed player logging disabled ignored on iOS and Android when player logging is disabled for OS X.
- iOS: Improved .NET 2.0 full profile out of the box compatibility with WebRequest API. Managed code stripping still needs manual care.
- iOS: Fixed AudioClip managed callback stripping issue.
- iOS: Fixed issue causing ARMv6 device reboots.
- iOS/Android: Fixed batching/skinning issues due to meshes being in interleaved format right away
- gles11 skinning crash when mesh have tangents
- missing uv2 channel causing graphics artefacts and/or crashes
- batching crashing when shader wants not exactly same components as mesh provides
- Lightmapping: Use alpha from the base texture (_MainTex) as the gloss map.
- Lightmapping: Got rid of self-shadowing artifacts in small scenes placed far away from the origin (0,0,0).
- Lightmapper: Fixed a crash occurring when light probes were baked, all probes from the light probe groups removed and then probes baked again. (You need to re-bake or delete the light probe asset if you experienced the crashes.)
- Lightmapper: No longer crashes trying to lightmap meshes without normals.
- Lightmapper: Fixed the issue with terrains taking a long time to export when in linear space.
- Mac OS X Standalone: Make sure mouse cursor is visible when showing Quit confirmation alert.
- Mac OS X Standalone: Will not show window restore dialog and crash in OS X Lion.
- Mac OS X Standalone: don't quit, if cancel button was pressed during Quit dialog in windowed mode
- MonoDevelop: Ensure selected script gains focus.
- MonoDevelop: Don't open script projects twice.
- MonoDevelop: Fix a code completion database corruption issue.
- Native Client: HTTP POST now works (for real this time).
- Native Client: Building to pathnames with a period now works correctly.
- Native Client: WWW.responseHeaders now works in NaCl.
- Native Client: WWW will now work for any host which has allowed this using the Access-Control-Allow-Origin: header.
- Native Client: HTTP POST and custom HTTP headers now work using WWW class.
- Native Client: Build & Run now works if there is a space in the path name.
- Native Client: Icons in Web Player player settings will now be correctly used for NaCl builds.
- Native Client: PlayerPrefs will now work if setting multiple preferences in one frame.
- Native Client: Backspace will now work in text fields.
- Native Client: Input axes assigned to the mouse wheel input will now work correctly.
- NavMesh: Fixed problem where positions in terrains would sometimes be inaccessible. Rebaking NavMesh is necessary for this to take effect.
- NavMesh: When NavMeshAgent avoidance type is set to None - that agent will ignore collisions with other agents.
- NavMesh: Fixed issue where stopping agents would not get a new path.
- NavMesh: Fixed performance problem in avoidance system when agents have high speeds.
- NavMesh: Fixed crash when changing bake settings at runtime.
- NavMesh: Fixed crash on out if memory when baking NavMesh.
- Networking: Fixed problems with built-in multiplayer networking on Windows when using VPN/proxy software which manipulates traffic coming from the browser. DNS and interface IP address lookup are now done differently.
- Occlusion culling: Fixed several out of memory issues, many occlusion accuracy improvements.
- OS X Web Player: Fixed development Web Player to work on OS X 10.5.
- Physics: Make Skinned Cloth work again.
- Physics: Fixed a crash when creating a Terrain with too many Tree colliders.
- Physics: CharacterController will now correctly focus in the scene view.
- Prefabs: Fixed issue where floating point values were not accurately represented in prefabs and infinity was not supported.
- Remote Profiler: Not sending instance Ids back, since these don't match the instance Ids of the editor - caused detail view to display wrong instance names.
- Rendering: Fixed the issue with dynamic objects using light probes not getting direct light from auto lights in dual lightmaps mode (both in deferred and in forward rendering paths).
- Shuriken: Fix issue where deactivated particle systems would remain frozen on screen after reactivation.
- Shuriken: Scrubbing sensitivity is increased.
- Shuriken: Sub emits are no longer identical in edit mode.
- Shuriken: Fix issue where identical particle systems would emit identically (as opposed to randomly).
- Shuriken: Shuriken Start Delay fixed.
- Shuriken: Tooltips shown through the Particle System Curve Editor fixed.
- Shuriken: Made it easier to search for 'Particle System' and 'Shuriken' in the scripting reference.
- Shuriken: Shape gizmos disappear when saving scene fixed.
- Shuriken: Wrong curves displayed in "Limit velocity over Lifetime" fixed.
- Shuriken: Emitter scaling has been removed.
- Shuriken: Sub-emitters no longer behave differently in Simulate and Play mode.
- Shuriken: Random Between Two Constants added to MinMaxCurve.
- Shuriken: Fix that new prefab of particle system have play called.
- Shuriken: Fix that particleEffectWindow have allocated UI when not showing.
- Shuriken: Fix scene view gui not rendered when hiearachy changes.
- Shuriken: Fix various CollisionModule issues.
- Shuriken: Removed objectReference when removing collision plane transform reference.
- Shuriken: Fix the issue with the color picker auto-closing when being opened from the gradient editor
- Shuriken: Make sure gameview and scene view are repainted after clearing particle system.
- Shuriken: Curves are removed from the curve editor when selecting a new particle system in the inspector
- Shuriken: Show all modules by default (also disabled modules)
- Shuriken: Particles are kept and rendered paused when deselected.
- Shuriken: Rearranged modules
- Shuriken: Renamed 'Energy' to 'Lifetime'
- Shuriken: Fix that removed modules would be shown after restart of Unity
- Shuriken: Rename: 'Lock to Transform' to 'Simulation Space'
- Shuriken: Disable remove menu item when Show All Modules is enabled
- Shuriken: Fix copy paste of MinMaxCurve to include curve scalar
- Shuriken: Renamed API 'Prewarm' to 'Simulate' (Fastforwards the particle system by simulating particles over given period of time, then pauses it.)
- Shuriken: Show other particle icons when a particle system is playing
- Shuriken: Allow removal of ParticleSystemRenderer module when Show All Modules is enabled
- Shuriken: Always play a particle system when its initialized
- Shuriken: Larger click area for module enable button
- Shuriken: Resimulate and Wireframe toggles now shown in ParticleSystemInspector
- Shuriken: Removed context menu for Wireframe (now shown in inspector)
- Shuriken: New color for Shape gizmos
- Shuriken: GradientEditor: Input field for key location
- Shuriken: ParticleSystemRenderer: When changing to Mesh rendermode, set Cube.fbx as default mesh
- Shuriken: Fix that it is not allowed to create particle system on a Prefab
- Shuriken: Added Show Location of ParticleSystem to context menu of Particle System.
- Shuriken: Fixed that Undo didn't work when deleting a module.
- Shuriken: Particle systems no longer evaluated when paused.
- Shuriken: Velocity over Lifetime and Force over Lifetime module curves now have separate random values for x, y and z.
- Shuriken: Fixed issue where in some setups particles would not move smoothly.
- Shuriken: Particle systems now get correct default values also when created from the Add Component menu.
- Shuriken: Particle meshes now have tangents.
- Shuriken: Rotation over lifetime and Rotation by speed no longer override each other (they are additive).
- Shuriken: Particle emission no longer show visible patterns.
- Shuriken: Particles now rotate with the particle system if Lock to transform is enabled.
- Social API: Fixed crash when loading friends list or user lists
- Substance: Fixed several Substance 3.4 regressions.
- Text mode serialization now uses more precise floating point representation for lossless encoding.
- WWW class now won't treat redirect responses (302, etc) as errors.
Changes
- Cache Server: Will now by default write cache to current working directory, and not to some location in user folders.
- Cache Server: Added --path command line option to set cache location.
- Cache Server: Added --size command line option to set maximum cache size in bytes.
- iOS/Android: Android Target Graphics setting is not bundled with iOS Target Platform setting anymore.
- License: Generic external version control (.meta files) are now available in the free version.
- Lightmapper: Inspector for LightProbes.asset no longer gives access to all the data and displays the probe count instead. Debug inspector allows only for editing the coefficients.
- Native Client: Added Physics stripping checkbox for smaller build size.
- NavMesh: API Changed : NavMeshAgent.DistanceToEdge() renamed to NavMeshAgent.FindClosestEdge().
- NavMesh: API Changed : NavMesh.SamplePosition : reversed arguments for maxDistance, acceptMask (to be consistent with physics).
- NavMesh: API Changed : NavMeshAgent.GetCurrentOffMeshLinkGameObject() and NavMeshAgent.GetCurrentOffMeshLinkData() are replaced with: NavMeshAgent.currentOffMeshLink and OffMeshLinkData.offMeshLink.
- NavMesh: NavMeshAgent radius, height and baseOffset are scaled by transform scale values (consistent with CharacterController). Adding component to gameObject sets appropriate NavMeshAgent dimensions.
- NavMesh: Better handling of assigning invalid values to NavMeshAgent properties (speed, acceleration etc.)
- NavMesh: Default settings changed for baking NavMesh and NavMeshAgent radius=0.5 height=2.0.
- NavMesh: Bake configuration of tile edge length removed.
- Shuriken: Added tool tips to all properties and module headers.
- Shuriken: Added ParticleSystem.IsAlive() function to API which can be used to find out if particle system (or any of its children) are alive.
- Shuriken: Added local space option to Force over lifetime module.
- Shuriken: Added Min Kill Velocity to Collision module.
- Shuriken: Renamed elements in API: ParticleSystem.Particle: energy now called lifetime and startEnergy now called startLifetime.
- Shuriken: Renamed ParticleSystem.startEnergy to ParticleSystem.startLifetime.
- Shuriken: Dampen in Collision Module is now inverted (consistency with limit velocity module).
- Social API: Added a LoadUsers function for fetching user profiles for given user IDs.
- Social API: Refactored all classes into a UnityEngine.SocialPlatform namespace, except for the main Social class itself. You now need to use/import the SocialPlatform namespace to use Achievement/Score/etc classes (and they all now derive from interfaces). Implementations (like GameCenter) are placed into their own namespace as well but you only need to use/import them if you need functionality, provided by the implementation, which is not in the generic Social API.
- Social API: Renamed UnityEngine.SocialPlatform to UnityEngine.SocialPlatforms, and GameCenter class to GameCenterPlatform.
- Social API: Corrected various inconsistencies in API names (like Score.playerID instead of Score.UserID)
- Social API: Added GameCenterPlatform.* functions for resetting achievements and for showing the default completion banner (iOS 5.0+)
- Social API: Added factories for leaderboards and achievements
Known Issues
- Editor: due to bug in img tech pvr compressor textures with alpha are forced to be compressed with Normal compression quality
- Flash : ReadPixels and SetPixels can cause crashes. SetPixels should only be used with small textures until a proper fix is in place.
- In 3.5 the behaviour of when to add an extra root node containing imported nodes has changed. Previously it was based on if there are multiple root nodes and in order to fix issues where character animation files had only one but the model had multiple, it was using the @ notation files to figure out when to add multiple root nodes. Now the logic is simply: if any of the root nodes have a rigged bone attached or if there are multiple root nodes.
This fixes a lot of issues in animations. In some rare cases it might lead to animations not play when importing, they can be fixed by matching the number of bones in the animation fbx file to the fbx file that contains the model.