版本:Unity 6 (6000.0)
语言:英语
解决常见的跨平台问题
深度链接

在其他应用程序中使用 Unity 作为库

Unity 作为库旨在供使用原生平台技术(例如 Java/Android、Objective C/iOS 或 Windows Win32/UWP)并希望在其游戏或应用程序中包含 Unity 功能的专业用户使用。

本文档假定您具有使用原生平台技术(例如 Java/Android、Objective C/iOS 或 Windows Win32/UWP)进行开发的经验,并且熟悉项目的结构、语言功能和特定平台配置选项(例如用户权限)。

从 Unity 2019.3 开始,您可以通过将您的内容和 Unity 运行时组件集成到原生平台项目中,在其他应用程序中使用 Unity 作为库。这使您能够嵌入使用 3D 或 2D 实时渲染的内容,例如 AR增强现实 更多信息
参见 术语表
体验、与 3D 模型的交互以及 2D 小游戏。Unity 运行时库提供了管理原生应用程序中加载、激活和卸载的方法。

以下平台目前支持 Unity 作为库

要确定平台版本和其他依赖项,请参阅 系统要求 页面。

限制

当由其他应用程序托管时,Unity 不会控制运行时生命周期,因此它可能无法在所有场景中都能正常工作。已知的限制包括

  • 在 Android 和 iOS 上
    • 仅支持全屏渲染。但是,如果您是 Unity 行业客户,则限制和功能可能会有所不同。
    • 当 Unity 处于卸载状态(调用 Application.Unload 后),它会保留一定量的内存(80-180Mb),以便能够立即切换回并在同一进程中再次运行。未释放的内存量在很大程度上取决于设备的图形分辨率。
  • 在 iOS 上,如果 Unity 运行时完全退出(调用 Application.Quit 后),则无法在同一应用程序会话中重新加载 Unity。
  • 您无法加载多个 Unity 运行时实例,也无法集成多个 Unity 运行时。
  • 您可能需要调整您的 原生托管 插件在 Unity 之外创建的一组代码,用于在 Unity 中创建功能。您可以在 Unity 中使用两种类型的插件:托管插件(使用 Visual Studio 等工具创建的托管 .NET 程序集)和原生插件(特定于平台的原生代码库)。 更多信息
    参见 术语表
    以使其正常工作。

  • Unity 作为库在 2019.3 中添加。NewIn20193
解决常见的跨平台问题
深度链接