[官方] Unity4.6.2發布,支援64位iOS

來源:互聯網
上載者:User

標籤:unity3d

Unity4.6.2現在已經正式發布並且提供下載,這是Unity第一個支援64位iOS的正式版本,採用了最新的IL2CPP 技術。

下載請訪問:http://unity3d.com/cn/unity/download


IL2CPP是Unity內部開發的一款創新型指令碼技術。它能極大地提高項目中所有指令碼的效能,並且完美相容當前iOS構建所使用的Mono-AOT解決方案。

我們可以使用IL2CPP將指令碼快速移植到新平台(例如WebGL等)及架構,ARM64(64位iOS系統架構)就是其中之一。使用Unity4.6.2就可以選擇Universal構建同時支援32位及64位iOS系統的應用。

大幅度效能提升


在IL2CPP項目的alpha和beta階段,我們從Unity社區反饋中獲益良多。而且,據測試過64位iOS及IL2CPP的使用者們報告,使用新的指令碼底層運行速度大大加快。

舉個例子,Andrew Witte在他的32位iOS裝置上運行了RayTraceBenchmark ,得到如下資料:


當然,我們最關心的還是情境,但從我們的基準測試中也可以看出顯著的效能改善。

是用UnityScript編寫的JPEG解碼器運行耗時比較:


下面是一個Mandelbrot基準測試,它是 測試WebGL平台上Unity效能基準的一部分;圖示表明了IL2CPP上明顯的效能提升。



開啟64位iOS移植之旅

在此新版本中,要讓你的項目支援IL2CPP指令碼底層及64位iOS系統只需點幾下滑鼠即可。在Player Settings面板的iOS標籤下有兩個下拉式清單:“Scripting Backend” 和 “Architecture”。


在scripting backend下拉式清單中選擇IL2CPP來支援64位iOS系統。預設Architecture使用的是“Universal”,這意味著構建的應用會包含ARMv7和ARM64兩個二進位部分。

如果現有項目中包含了外掛程式,你可能需要將它們升級到可以支援64位iOS及IL2CPP的版本。我們已經與Unity外掛程式開發商Prime31合作將他們所有的外掛程式都升級到了iOS64。你可以在這裡下載。

以上步驟完成後,將你的工程匯出到Xcode。注意,由於IL2CPP會將指令碼轉換為C++再匯入Xcode工程,你需要設定Configuration為Release,以便Clang編譯器最大程度地最佳化IL2CPP產生的程式碼。

在Xcode 6中的設定過程如:


現在可以在裝置上運行你的項目了。如果Player Settings中Architecture設定為“Universal”,那不管是32位還是64位裝置,應用會自動運行相應的代碼。你可以在Unity使用者手冊中查看 詳細的 iOS 64位升級指南。

注意事項:

WebRequest/WebClient API當前可訪問但沒有具體實現。任何需要委託BeginInvoke/EndInvoke的非同步通訊端功能目前都未實現。我們會在後續發布的補丁中解決這個問題。


  • 儘管其它委託方法都能正常工作但BeginInvoke/EndInvoke還不行。我們會在後續發布的補丁中解決這個問題。
  • RakNet暫未移植到IL2CPP,如果項目或第三方庫中引用到它會有問題。我們會在後續發布的補丁中解決這個問題。
  • 使用IL2CPP時後台會一直運行Stripping。這可能需要採取措施來防止裁掉使用中的類型。
  • 如果將Stripping設定為micro-mscorlib,可能會導致類型缺失的編譯錯誤。我們計劃在以後的版本中使用IL2CPP時徹底禁用該選項。
  • Xcode編譯時間太長。主要原因是需要編譯的代碼量過大。
  • 暫不支援Managed Debugger。這已經在計劃中了。同時,已經有測試使用者使用Xcode Debugger成功調試了指令碼代碼。
  • 使用IL2CPP指令碼時開啟Xcode內建Profiler會導致編譯錯誤。


我們非常清楚上述的某些條目會導致移植過程延誤。自從蘋果10月20日宣布 新上傳到App Store的iOS應用都必須支援64位系統以來,我們也馬不停蹄地忙活著,以前所未有的速度及時處理Bug反饋同時每周發布更新版本。

所有相關工作人員都非常關心並儘快解決每一個問題。

如果你的應用已經發布到App Store,我們建議你繼續使用Mono構建ARMv7來更新應用。蘋果表示截至6月1日前都可以這樣做。進一步的建議是儘快著手使用IL2CPP對你的項目進行內測。

我們會持續每周發布新版本,你可以在http://unity3d.com/unity/qa/patch-releases跟蹤查看發布的補丁。

補充說明:有人指出文中我們提供的關於 RayTraceBenchmark的某些測試(Xamarin.iOS 7.0.2.7 LLVM/No-LLVM)結果不準確,因為它們是Debug模式下的結果。所以我們更新了測試圖,只保留了Mono2.6與IL2CPP的比較(兩者均在Unity中測試)。

原文標題:UNITY 4.6.2 IOS 64-BIT SUPPORT Unity4.6.2 iOS 64-bit Support
原文地址:http://blogs.unity3d.com/2015/01 ... ios-64-bit-support/
感謝Unity官方中文社區翻譯群組成員:“小七,Dezzy” 對本文翻譯所做的貢獻。

轉載請註明來源:Unity官方中文社區 (unitychina.cn)。請勿私自更改任何著作權說明資訊。http://forum.china.unity3d.com/thread-1524-1-1.html

[官方] Unity4.6.2發布,支援64位iOS

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.