Unity-將“Unity 用作庫(kù)”用于其他應(yīng)用程序
如果專家用戶使用原生平臺(tái)技術(shù)(例如 Java/Android、Objective C/iOS 或 Windows Win32/UWP)并希望在其游戲或應(yīng)用程序中包含 Unity 支持的功能,則可以使用專門為此設(shè)計(jì)的“Unity 用作庫(kù)”(Unity as a Library)。
本文檔假定您具有開發(fā)原生平臺(tái)技術(shù)(例如 Java/Android、Objective C/iOS 或 Windows Win32/UWP)的經(jīng)驗(yàn),并且熟悉項(xiàng)目結(jié)構(gòu)、語言功能和特定平臺(tái)配置選項(xiàng)(例如,用戶權(quán)限)。
從 Unity 2019.3 開始,您可以將內(nèi)容和 Unity 運(yùn)行時(shí)組件集成到原生平臺(tái)項(xiàng)目中,從而將“Unity 用作庫(kù)”用于其他應(yīng)用程序。這樣就可以嵌入使用 3D 或 2D 實(shí)時(shí)渲染的內(nèi)容,例如 AR 體驗(yàn)、與 3D 模型交互、2D 迷你游戲等。Unity 運(yùn)行時(shí)庫(kù)展示了多種方法來管理如何在原生應(yīng)用程序中加載、激活和卸載。
以下平臺(tái)目前支持“Unity 用作庫(kù)”:
Android
iOS
Windows 和通用 Windows 平臺(tái)
要確定平臺(tái)版本和其他依賴項(xiàng),請(qǐng)參閱系統(tǒng)要求頁面。
限制
由另一個(gè)應(yīng)用程序托管時(shí),Unity 不能控制運(yùn)行時(shí)生命周期,因此可能無法在所有情況下都奏效。已知限制包括:
在 Android 和 iOS 上:
僅支持全屏渲染。無法僅在部分屏幕上渲染。
Unity 處于卸載狀態(tài)(調(diào)用?
Application.Unload
?之后)時(shí),它將保留一些內(nèi)存(100Mb?或更少),以便能夠立即切回并在同一進(jìn)程中再次運(yùn)行。在 iOS 上,如果 Unity 運(yùn)行時(shí)完全退出(在調(diào)用?
Application.Quit
?后),無法在同一應(yīng)用程序會(huì)話中重新加載 Unity。您不能加載多個(gè) Unity 運(yùn)行時(shí)實(shí)例或集成多個(gè) Unity 運(yùn)行時(shí)。
您可能需要調(diào)整您的原生和托管插件才能正常工作。