Unity4.6 Beta 版本功能說明

2014-09-12

Unity 4.6 BETA 版下載網址:http://unity3d.com/unity/beta/4.6

Unity 4.6 新特性:

  • 新的UI系統:基於UI框架的新元件和視覺化工具,能讓你輕鬆在遊戲和應用中構建遊戲UI介面,可創建透視或非透視的UI,支援圖片對齊、可以在空間中輕鬆地創建互動。
  • 新的Layout系統支援邊、角對齊或與父物件中的自訂點對齊,還支援根據父物件的寬高按照百分比拉伸或全拉伸。二者結合讓用戶所見即所得控制調整UI。
  • 可基於圖片、文字或遮罩和效果等構建自訂的控制項。所有的圖形元件都完全支援自訂的材質和光線。
  • 內建按鈕、滑動條、滾動棒、輸入區域等等,為所有平台部署設置,完美支援觸控和滑鼠以及搖桿、手柄。
  • UI系統中整合了Unity的動畫系統(Mecanim System)。可以使用狀態機或者原本的動畫功能來控制你的UI。
  • UI系統可擴展,可以組裝或擴展現有的控制項屬性,或創建全新的控制項。
  • 透過Inspector面板中的委託系統(persistent delegate system),你可以很輕易的設定UI的事件回傳。不需要寫任何程式就可以掛載很多功能到你的UI上。

新的編輯工具(Rect tool):在以前的版本中,只在2D模式下使用編輯工具,而且只能用於SpriteRenderers。新的UI編輯工具是一個2D和3D混合的工具,更方便設計你的UI。可用於圖片、UI、或其它物件。編輯工具被重新設計讓它有更廣泛的用途。

  • Rect handles不但支援Pivot/Center模式,同時也支援Local/Global模式。
  • 當使用編輯模式時按下shift鍵,縮放(按住Control/Command拖曳大小時)不再是面積縮放而是體積縮放。
  • 在場景中,編輯模式下圖片中間的小圓盤可以用來在平面內移動物體。當縮放的時候小圓盤會淡入淡出。

可擴展的事件消息系統(Event Messaging system):使用或擴展新的事件系統框架。該系統用於發送和接收新的使用者介面的事件,但你可以擴展它支持自訂的輸入裝置或者自訂的事件邏輯。

  • 支援觸控和PC平臺。
  • 支援2D、3D和UI元件
  • 可擴展性:增加自訂輸入裝置和自訂事件。

事件委託(Unity事件):一種新的方式去綁定回傳函數。代表沒有程式經驗的人透過編輯器可以更快更有效的增加功能。

改進:

核心部分

  • 增加了GetComponents<List<T>> ,透過該方法可獲取List<T>的元件清單。同樣增加了該方法的非泛型版本。
  • 增加StopCoroutine(Coroutine)方法
  • MonoBehaviour中增加OnTransformParentChanged回傳方法。當transform或者父物體的transform更改後觸發。
  • Transform中增加SetParent方法,使用該方法可以在不改變本地位置、角度、縮放的情況下,設置父級的transform。對於RectTransform同樣不改變sizeDelta。
  • 實現並開放了Transform.TransformVector與Transform.InverseTransformVector,從而在使用縮放變換向量的時候不再需要使用localToWorldMatrix與WorldToLocalMatrix。
  • 增加Vector2.SmoothDamp,行為與Vector3.SmoothDamp, Mathf.SmoothDamp等保持一致。
  • 增加新API TouchScreenKeyboard.isSupported用於檢查平台是否支援螢幕鍵盤。

編輯器

  • 根據3D、2D、光源等重新分類GameObject子功能表項,當然功能性也提高了。在hierarchy的下拉面板中增加了“Create Empty”,hierarchy的內容功能表支援直接新建子物體。
  • 已經加入的元件與新加元件因不相容產生的失敗會有更詳細的錯誤資訊。
  • 在播放模式下,當hierarchy視窗需要太長時間來獲取新資料時,警告圖示會提醒使用者畫面播放速率因為層級排序受到了影響。
  • 使用固定比例的乘法來配置鏡頭的遠近,而不是使用向量的範圍。新的範圍在遠近切換上會有一個比較好的轉換,降低閃面的問題。
  • 使用CameraEditor指定主遊戲視角,並且可以使用Canvas做最後的檢查。
  • Mecanim
  • 允許在動畫視窗中使用PPtr類型的動畫(貼圖、圖片、材質等)
  • SendTransformChanged 只可以發送到有動畫的transforms。沒有動畫的不會接收到SendTransformChanged。
  • 只有SendTransformChanged可以有效的更改RectTransform。

更改

  • 2D的Sprite Packer預設打開了
  • 編輯工具預設快速鍵是T。Sprite Editor預設快速鍵改為SHIFT+T。
  • 編輯工具預設非同步縮放,按下SHIFT是一致縮放。
  • 新增腳本預設語言更改為C#。

在Unity Free版本中Stencil緩衝已可使用。

本文轉貼自 Unity Taiwan Blog