从Unity 4.7 升级到最新版,重要功能汇总

缘起:最近终于有时间研究Unity最新版。今天浏览了一下Unity官网,对重要更新做一下笔记,功能更偏向程序。(只考虑大版本)。目的是方便查阅,特别是跨域式更新

重要更新:追加Unity官方版中文介绍,了解更清晰

第N次更新:更新版本到2018.3

 

Unity 5:

Audio
Use the Audio Mixer window to create complex mixing hierarchies and effect processing chains.

Editor
Unity editor is now 64-bit!

New AssetBundle build system.
Adds simple UI to mark assets into assetBundles, provides simple API to build assetBundles without having to write complex custom scripts (no need for Push/Pop).

Supports incremental build, which only rebuilds AssetBundles that actually change.
AssetBundle dependencies don't force the rebuild of all the bundles in the dependency chain.

Provides AppendHashToAssetBundleName option to allow to append the hash to the bundle name.
Provides AssetBundleManifest which can be used to get the dependent AssetBundles at runtime.
By default includes type tree in the assetBundle on all the platform except metro.

New version of WWW.LoadFromCacheOrDownload which can take Hash128 as version.
Rename AssetBundle.Load() to AssetBundle.LoadAsset().
Rename AssetBundle.LoadAll() to AssetBundle.LoadAllAssets().
Provide AssetBundle.LoadAllAssetsAsync() which loads all assets asynchronously.
Provide AssetBundle.LoadAssetWithSubAssets***() which loads the asset with the sub assets.
Provide AssetBundle.AllAssetNames() to return all the assets in the assetBundle.
Support type tree incremental build check.

Asset Bundle Export performance increase.
AssetBundle.LoadAll***() now only return the game object without the first component.
Fixed crash if user passes "./" as output path when building AssetBundles.
Fixed possible crash while loading multiple AssetBundles simultaneously.
Fixed the typo in .manifest file
Remove duplicate objects when building with BuildAssetBundleExplicitAssetNames(). Also output more meaningful log information for assetBundle object.

Plugin Inspector: new native plugin importing system. You're no longer required to place platform specific plugins into special folders like Assets/Plugins/iOS, Assets/Plugins/X64, etc. From now on, you can place them anywhere.
You can set platform compatibility settings by clicking on the plugin (files with extensions *.dll, *.so, etc, and folders with extension *.bundle), this include both managed and native files. Plugins can be set for “Any” platform, “Editor only” or a specific platform.
Platform specific settings can also be set, e.g. CPU type. Different platforms may have different settings.

Meshes:
More than two UV coordinates! Up to 4 UVs are imported from model files; and Mesh class gained uv3 & uv4.
Non-uniformly scaled meshes no longer incur any memory cost or performance hit. Instead of being scaled on the CPU they are scaled and lit correctly in shaders.

MeshRenderer has a new additionalVertexStreams property for per-instance mesh data overrides. For example just vertex color for one instance. This is currently used by Enlighten for per-instance UVs.

SpeedTree integration:

Frame Debugger. See how exactly frame is rendered by stepping through draw calls


iOS
Support deep plugin folder structure
Xcode manipulation API for editor scripts
, and rewritten Xcode project generator.

Scripting
Auto-update obsolete Unity API usage in scripts & assemblies. Majority of API upgrades are done automatically,

Application.RegisterLogCallback() and RegisterLogCallbackThreaded() have been deprecated and replaced by two new events Application.logMessageReceived and Application.logMessageReceivedThreaded. This allows for multiple subscribers.

Removed quick property accessors, like .rigidBody, .rigidbody2D, .camera, .light, .animation, .constantForce, .renderer, .audio, .networkView, .guiTexture, .collider, .collider2D, .particleSystem, .particleEmitter, .guiText, .hingeJoint for modularization. Instead, use GetComponent to get references.

All GetComponent paths got much faster, especially GetComponent.

in Unity5 we also cache the transform component on the c# side, so there should no longer be a performance reason to cache the transform component yourself.

Fixed "Not Initialized" displayed on an Animator with valid Controller.

Shaders
Physically based shader, suitable for most everyday surfaces (metals, plastics, wood, stone etc.).
Approximate and optimized path for mobile & shader model 2.0.

Standard Assets
A new suite of Standard Assets including cameras, first and third person controllers, car controller, aeroplane controller and sample particle systems.

Unity Download Assistant
As part of optimizing download, we're shipping Unity 5 as multiple installers. The Download Assistant lets the user select which components to download and install.
The individual installers can be downloaded separately and installed silently, as described in the documentation.

Image Effects:
All built-in image effects were rewritten from JavaScript to C#. You probably want to delete old files and import the fresh Effects package if you want the

latest version.
Removed old Glow image effect; use Bloom or Bloom(optimized) instead.

Performance
Improved multithreaded job system:
Culling & shadow caster culling is multithreaded now.
Internally multithreaded parts (culling, skinning, mecanim, ...) are more efficient now via some lockless magic.
Temporary memory allocations done by some jobs are more efficient now.

Improved loading performance. More work has been offloaded to the loading thread, reducing the overhead of asynchronous loading on the main thread.

-------------------------------------------------------------------------------------------------------------------
Unity 5.1

New multiplayer networking feature introduced, see the manual and UnityEngine.Networking namespace in the script reference for details. This includes low level API (transport layer) and a higher level API with many features to help implement multiplayer functionality in games.

Unity Analytics: new, built-in Analytics functionality introduced (currently in “Preview”), under the UnityEngine.Analytics namespace.

Animation: You can now control your AnimatorState.speed/mirror/cycleOffset at runtime with controller's parameter

Graphics: Added a way to specify graphics APIs explicitly in player settings (defaults to "automatic" for each platform). For example, you could specify you only want to support Metal+ES2 in iOS builds, or only DX11 (without DX9 fallback) on Windows builds etc. This replaces the "Use DX11" and "Target iOS/GLES - Graphics" settings.

----------------------------------------------------------------------------------------------------------------------
Unity 5.2

2D: Ability to rotate sprites while Sprite Packing to save atlas space

Android: Experimental support for IL2CPP scripting backend

Core: Application.UnloadLevel. Unloading scenes is now possible while the game is running. References to lightmaps are cleared but you have to call Resources.UnloadUnusedAssets() to actually unload them. Enlighten data is unloaded immediately. This feature is especially useful in conjunction with

Lightmapping.BakeMultipleLevels()

Graphics: Added CullingGroup API, which allows you to specify a large set of bounding spheres that are integrated into the culling pipeline and subjected to frustum and occlusion culling Multi Scene Lighting baking. Lightmapping.BakeMultipleScenes lets you bake lightmaps, reflection probes and realtime lightmaps for multiple scenes together, which can be loaded additively. Data is automatically split on bake per scene

Performance: Improved performance of LoadAssetAsync. Allow multiple AsyncOperations to be completed in a single frame

Performance: Particle rendering optimizations (especially for VR), with speed improvements varying from 15% to 50% depending on geometry type

Performance: UI now uses multithreaded batching & geometry generation backend. This leads to a performance increase of up 4x in our stress test scenes

UI: 2D Rect Mask. A mask for 2D UI elements. Performs faster than the previous stencil buffer mask and does not require additional draw calls to prime the stencil buffer. When an element is outside the bounds of the mask the canvas renderer is also culled which leads to faster batching performance

Allow sprites to be dragged into scene view in 3d mode. Add temp GO while dragging for visual feedback similar to when dragging prefabs/model into scene view

----------------------------------------------------------------------------------------------------------------------
Unity 5.3

Installer Change
Installers have been componentized to allow for more control over what’s installed with Unity. Please utilize the Download Assistant for full control. The

Editor component is now minimized to be the editor, webplayer and MonoDevelop

2D : 2D Placeholder Assets Creation Tools

Asset Bundles: LZ4 compression support - realtime decompression, LZ4 compressed cached bundles

Scripting: JSON API. Provides an easy and fast way to convert objects to and from JSON format.

Services: In-App Purchasing (IAP) accessible via the cloud services window

----------------------------------------------------------------------------------------------------------------------
Unity 5.4

Graphics: GPU Instancing Support (PC)

Graphics: Improved multithreaded rendering:

Graphics: Texture Array support (PC)

IL2CPP: Android support for IL2CPP is now official (previously 'experimental').

Particles: New Trigger Module, including:
A script callback when particles touch a predefined list of collision shapes.
Ability to modify/kill particles that are intersecting the collision shapes.

Physics: Various physics improvements:
Overlap recovery. Used to de-penetrate CharacterControllers from static objects when an overlap is detected. When activated, the CharacterController will automatically try to resolve the penetration, and move to a safe place where it does not overlap other objects.
Added ContactPoint.separation API.
Added Physics.OverlapCapsule and OverlapCapsuleNonAlloc functions.

----------------------------------------------------------------------------------------------------------------------
Unity 5.5

Editor: New selection highlighting in scene view. Instead of showing a wireframe a selection outline is now shown. This outline color can be configured in the preferences of Unity. In the gizmo / annotation window you can select if you would like this behavour, the old behaviour, or both.

Graphics: Unity splash screen tools.

Particles: New Modules:
Trails Module, for rendering ribbonized trails behind particles

----------------------------------------------------------------------------------------------------------------------
Unity 5.6

2D: Added ability to control the tessellation quality of Sprites in the Sprite Editor Window. Tessellation quality controls how tight or coarse the Mesh resembles the actual image.

2D: Sorting Group:
Sorts a group of Renderers (for instance, a character made up of a group of Sprite Renderers) as a whole, without any interleaving of other Renderers.

2D: SpriteRenderer: Added support for 9-slice Sprite rendering.

Build Pipeline: Added BuildOptions.CompressWithLz4, which enables Lz4 compression of the player's data for Standalone, Android and iOS platforms.

Video: Added Video Player component and Video Clip Importer Asset Importer. They replace Movie Texture and its Importer (available with a legacy control).

Notes:

Scripting: (Also mentioned under API Changes) Added Transform.SetPositionAndRotation, as a more performant alternative to using Transform.position and Transform.rotation separately.

Audio: (As also mentioned under Improvements) AudioClip is now always loaded on a separate thread, resulting in improvements to Scene loading time. This is because the rest of the Scene can be loaded while Audio Clips are decompressed. AudioClip.loadInBackground is now obsolete and no longer used.

----------------------------------------------------------------------------------------------------------------------
Unity 2017.1

Unity 2017.1正式版发布


2D: Introduced 2D Sprite Atlas, a new asset that will supplant the Sprite Packer. With it comes new and improved workflows that gives the developer more control on how to pack sprites and use them at runtime.

2D: Sprite Mask. Mask Sprites in world space using the new SpriteMask component.

Build Pipeline: The Asset Bundle Browser comes out of beta with Unity 2017.1. This tool enables the user to view and edit the configuration of Asset Bundles for their Unity project. It is intended to replace the current workflow of selecting assets and setting their Asset Bundle manually in the inspector.

Graphics: Added Custom Render Texture asset. A Custom Render Texture is a new type of Render Texture that can be easily updated with a shader. It provides a user interface and a scripting framework.

Graphics: Added LineUtility class and 'LineRenderer.Simplify' function. Optimize your lines and curves by using the LineUtility to create a simplified version with a similar shape.

Graphics: Updated Splash screen logo and style

iOS: Enable deferred shading rendering path for Metal and OpenGL ES 3.0 for A8 and later iOS devices.

Particles: Added support for using Sprites in the Particle System, via the Texture Sheet Animation Module

Scripting: Experimental support for new scripting runtime. This includes Mono 4.8 and IL2CPP with support forC# 6 and .NET 4.6

Particles: Particles can now apply forces to the Colliders they hit

Particles: Randomize the spawn positions of particles, with a new option in the Shape Module.

----------------------------------------------------------------------------------------------------------------------
Unity 2017.2
Unity 2017.2正式发布,新功能详解(上)

Unity 2017.2正式发布,新功能详解(下)


2D: Added Tilemap.

Services: Performance Reporting Service: Added support for native crashes on Android.

Android: Changed default frame rate (Application.targetFrameRate = -1) to 30 when v-sync is off, similar to iOS.

UI: Marked legacy (Unity 1.0) UI system components (GUILayer, GUIText, and GUITexture) as deprecated. GUILayer components are no longer added to the camera by default.

Editor: Exposed LZ4 compression settings to the Build Player window for iOS, Android, and Standalone platforms.

iOS: Multithreaded rendering option is now available for iOS/tvOS.

Android: The backend ETC Texture compressor is now configurable in the Editor Settings, with different quality/compression speed tradeoffs.

 

--------------------------------------------------------------------------------------------------------------------
Unity 2017.3

Unity 2017.3正式版发布

Editor: Addedassembly definition files for script compilation pipeline in the editor. This allows you to define your own managed assemblies based on scripts inside a folder.Splitting your project's scripts into multiple assemblies can greatly reduce script compilation times in the Editor. Note that the latest version of Visual Studio Tools for Unity is required for this feature to work with solution and project generation for Visual Studio.

 

Editor: You can now useDX12 API in the Editor.

 

Graphics:Added Crunch compression support for ETC_RGB4 and ETC2_RGBA8 textures. Improved compression ratio and speed for DXT Crunch.

 

Graphics: Added support formultisampled Textures in Shaders. To use a multi-sampled Texture in a Shader, declare it as Texture2DMS (or, for example, float for a single-channel texture), and then sample as described in Microsoft's documentation on Texture2DMS::Load methods. You must create the corresponding RenderTexture with the bindMS flag set on the RenderTextureDescriptor, or set the bindTextureMS flag after creation on the RenderTexture itself.

 

--------------------------------------------------------------------------------------------------------------------

Unity 2018.1

2018.1 is now available

System Requirements Changes

  • Removed support for Windows XP in standalone player builds. Windows Vista is the now minimum supported OS for Windows standalone player.
  • Deprecated support for MonoDevelop. VisualStudio is now the recommended and supported C# editor on both macOS and Windows.

Features

Editor: Added new ObjectFactory API that allows you to create a GameObject using default values. See Scripting API and documentation on Presets for more details.

Graphics: GPU Instancing now supports GI.

  • Particles: Added GPU instancing support for Particle System Mesh rendering.

  • Particles: All Particle Emitter shapes now support reading a Texture for masking and color tinting.

Video: Added support for reading videos from AssetBundles on Android.

Web: Added UploadHandlerFile for UnityWebRequest. This sends file contents as a request body, without loading the entire file to memory.

Windows: Added support for IL2CPP scripting backend for Windows Standalone player.

 

--------------------------------------------------------------------------------------------------------------------

Unity 2018.2

Unity 2018.2正式版功能介绍(上)

Unity 2018.2正式版功能介绍(中)

Unity 2018.2正式版功能介绍(下)

Features

  • Android: Added support for using Java source files as plugins in Unity project. These files will be compiled and included into APK.

  • Animation: Animation C# Jobs: Possibility to edit the animation stream directly from a Playable using C# Jobs (see AnimationScriptPlayable)

  • Build Pipeline: Scriptable Build Pipeline Released

  • Editor: Improved LineRenderer editor. Added support for editing lines in scene, applying automated simplification and improved the display of the points list in the inspector.

  • Graphics: Added StreamingController component which provides more control over the mipmap texture streaming including preloading in advance of camera cuts

  • Graphics: Added texture streaming support to load mipmaps on demand.

  • Graphics: Asynchronous GPU readback API

  • IL2CPP: Add support for managed code debugging on Android.

  • IL2CPP: Add support for managed code debugging on iOS

  • Improvements

  • Android: C++ source files and static libraries now supported as plugins using IL2CPP scripting backend

 

-------------------------------------------------------------------------------------------------------------------

Unity 2018.3

Unity 2018.3正式版功能介绍(1)

Unity 2018.3正式版功能介绍(2)

Unity 2018.3正式版功能介绍(3)

Unity 2018.3正式版功能介绍(4)

 

每个版本的详细信息,可以访问官方网站:https://unity3d.com/cn/get-unity/download/archive

你可能感兴趣的:(游戏开发,Unity)