Использование Unity в качестве библиотеки в других приложениях
Unity как Библиотека предназначена для специалистов, которые используют технологии собственной платформы, такие как Java/Android, Objective C/iOS, или Windows Win32/UWP, и хотят включить функции Unity в свои игры или приложения.
В этой документации предполагается, что у вас есть опыт разработки для таких технологий, как Java/Android, Objective C/iOS или Windows Win32/UWP, и что вы знакомы со структурой проекта, особенностями языка и параметрами конфигурации конкретной платформы (например, разрешениями пользователя).
Вы можете использовать Unity в качестве Библиотеки в других приложениях, интегрировав свой контент и компоненты времени выполнения Unity в проект на нативный платформе. Это позволяет вам встраивать контент, использующий рендеринг в реальном времени 3D или 2D, например, AR, взаимодействие с 3D моделями и 2D мини-играми. Библиотека времени выполнения Unity показывает способы управления загрузкой, активацией и разгрузкой внутри нативного приложения.
Следующие платформы в настоящее время поддерживают Unity в качестве Библиотеки:
Чтобы определить версии платформы и другие зависимости, см. системные требования стр.
Ограничения
При размещении в другом приложении Unity не контролирует жизненный цикл времени выполнения, поэтому может работать не во всех сценариях. Известные ограничения включают:
- На Android и iOS:
- Поддерживается только полноэкранное отображение. Однако, если вы являетесь клиентом Unity Industry, ограничения и возможности могут отличаться.
- Когда Unity находится в выгруженном состоянии (после вызова
Application.Unload), он сохраняет некоторое количество памяти (между 80-180Мб), чтобы иметь возможность мгновенно переключиться обратно и запустить снова в том же процессе. Объем памяти, который не высвобождается, в значительной степени зависит от разрешения графики устройства.
- На iOS, если время выполнения Unity полностью завершается (после вызова
Application.Quit), нельзя перезагрузить Unity в той же сессии приложения. - Нельзя загружать более одного экземпляра времени выполнения Unity или интегрировать более одного времени выполнения Unity.
- Вам может потребоваться адаптировать коренной и управляемые плагины, чтобы работать правильно.