Что такое unity ios
Первые шаги в iOS разработке
Сборка игр для устройств, вроде iPhone и iPad требует иного подхода, не такого, как для игр на ПК. В отличие от рынка ПК, ваше целевое оборудование стандартизировано и не такое быстрое или мощное, как компьютер с выделенной видеокартой. Поэтому, вы будете несколько по другому подходить к разработке игр на эти платформы. Функции, доступные в Unity для iOS, также немного отличаются от функций для ПК игр.
Настройка вашего аккаунта разработчика Apple
You don’t need an Apple Developer account to build to devices; any Apple ID is sufficient for building only to your own device for testing.
Прежде чем вы сможете запускать Unity iOS игры на реальном устройстве, вам понадобится собственный подтверждённый и настроенный аккаунт разработчика Apple (Apple Developer). Это включает учреждение вашей команды, добавление ваших устройств и настройка Provisioning профилей. Все эти установки выполняются через веб-сайт разработчиков Apple. Т.к. это сложный процесс, то мы немного обрисовали цели, которые должны быть выполнены до того, как вы сможете запускать код на ваших iOS устройствах. Однако что лучше всего, так это следовать пошаговой инструкции на портале Apple iPhone разработчиков.
Проект UnityXCode
Когда вы собираете Unity iOS игру, генерируется проект XCode. Этот проект необходимо подписать, скомпилировать, а затем подготовить вашу игру к распространению. Для дальнейшей информации см. Unity XCode project.
Получение доступа к функционалу iOS
Unity предоставляет различные API скриптинга, чтобы получить доступ к multi-touch экрану, акселерометру, устройству геолокации и многому другому. Вы можете узнать больше о классах скрипта на странице iOS скриптинга.
Обращение к нативному C, C++ или Objective-C коду в скриптах
Unity позволяет вам вызывать пользовательские нативные функции написанные на C, C++ или Objective-C прямо из C# скриптов. Для информации о том, как привязать нативные функции, посетите страницу Plugins.
Подготовка вашего приложения для In-App Purchases (внутриигровые покупки)
Unity iOS приложение позволяет вам скачивать новый контент, и вы можете использовать эту функцию, чтобы реализовать внутриигровые покупки. Для дальнейшей информации см. страницу справки загружаемый контент.
Настройка заставки (Splash Screen)
Как изменить изображение, которое показывает ваша игра во время загрузки, можно узнать на странице Настройка заставки (Splash Screen)
Решение проблем и отчёты о падении.
Если у вас происходят падения приложения на iOS устройстве, пожалуйста, изучите на странице Решение проблем на iOS список наиболее часто встречаемых проблем и их решения. Если вы не можете найти там решение, то, пожалуйста, отправьте отчёт об ошибке (меню: Help > Report A Bug в редакторе Unity).
В чём различия между iOS и стационарными целевыми платформами
Сжатие аудио MP3 вместо Ogg Vorbis
Unity supports importing a variety of source format sound files. However when importing these files (with the exception of tracker files), they are always re-encoded to the build target format. By default, this format is Vorbis, though this can be overridden per platform to other formats (ADPCM, MP3 etc) if required. MM3 playback offers slightly better performance on iPhone compared with Vorbis playback.
Сжатие текстур PVRTC вместо DXT
Unity iOS не поддерживает DXT текстуры. Вместо этого, на устройствах iPhone/iPad нативно поддерживается сжатие текстур PVRTC. Для дополнительной информации о форматах текстур на iOS см. Настройки импорта текстур.
Movie/Video playback
We recommend you use the Video Player to play video files. This supersedes the earlier Movie Texture feature.
2018–06–14 Page amended with limited editorial review
Первые шаги в iOS разработке
Сборка игр для устройств, вроде iPhone и iPad требует иного подхода, не такого, как для игр на ПК. В отличие от рынка ПК, ваше целевое оборудование стандартизировано и не такое быстрое или мощное, как компьютер с выделенной видеокартой. Поэтому, вы будете несколько по другому подходить к разработке игр на эти платформы. Функции, доступные в Unity для iOS, также немного отличаются от функций для ПК игр.
Настройка вашего аккаунта разработчика Apple
You don’t need an Apple Developer account to build to devices; any Apple ID is sufficient for building only to your own device for testing.
Прежде чем вы сможете запускать Unity iOS игры на реальном устройстве, вам понадобится собственный подтверждённый и настроенный аккаунт разработчика Apple (Apple Developer). Это включает учреждение вашей команды, добавление ваших устройств и настройка Provisioning профилей. Все эти установки выполняются через веб-сайт разработчиков Apple. Т.к. это сложный процесс, то мы немного обрисовали цели, которые должны быть выполнены до того, как вы сможете запускать код на ваших iOS устройствах. Однако что лучше всего, так это следовать пошаговой инструкции на портале Apple iPhone разработчиков.
Проект UnityXCode
Когда вы собираете Unity iOS игру, генерируется проект XCode. Этот проект необходимо подписать, скомпилировать, а затем подготовить вашу игру к распространению. Для дальнейшей информации см. Unity XCode project.
Получение доступа к функционалу iOS
Unity предоставляет различные API скриптинга, чтобы получить доступ к multi-touch экрану, акселерометру, устройству геолокации и многому другому. Вы можете узнать больше о классах скрипта на странице iOS скриптинга.
Обращение к нативному C, C++ или Objective-C коду в скриптах
Unity позволяет вам вызывать пользовательские нативные функции написанные на C, C++ или Objective-C прямо из C# скриптов. Для информации о том, как привязать нативные функции, посетите страницу Plugins.
Подготовка вашего приложения для In-App Purchases (внутриигровые покупки)
Unity iOS приложение позволяет вам скачивать новый контент, и вы можете использовать эту функцию, чтобы реализовать внутриигровые покупки. Для дальнейшей информации см. страницу справки загружаемый контент.
Occlusion Culling (Окклюзивное отсечение)
Unity поддерживает функцию occlusion culling, которая полезна для выжимания высокой производительности из сложных сцен с большим количеством объектов. Для дальнейшей информации, см. Occlusion culling.
Настройка заставки (Splash Screen)
Как изменить изображение, которое показывает ваша игра во время загрузки, можно узнать на странице Настройка заставки (Splash Screen)
Решение проблем и отчёты о падении.
Если у вас происходят падения приложения на iOS устройстве, пожалуйста, изучите на странице Решение проблем на iOS список наиболее часто встречаемых проблем и их решения. Если вы не можете найти там решение, то, пожалуйста, отправьте отчёт об ошибке (меню: Help > Report A Bug в редакторе Unity).
В чём различия между iOS и стационарными целевыми платформами
JavaScript со статичными типами
Сжатие аудио MP3 вместо Ogg Vorbis
Unity supports importing a variety of source format sound files. However when importing these files (with the exception of tracker files), they are always re-encoded to the build target format. By default, this format is Vorbis, though this can be overridden per platform to other formats (ADPCM, MP3 etc) if required. Mp3 playback offers a little better performance on iPhone compared with Vorbis playback.
Сжатие текстур PVRTC вместо DXT
Unity iOS не поддерживает DXT текстуры. Вместо этого, на устройствах iPhone/iPad нативно поддерживается сжатие текстур PVRTC. Для дополнительной информации о форматах текстур на iOS см. Настройки импорта текстур.
Проигрывание видео
MovieTextures не поддерживаются на iOS. Вместо этого функциями скриптов предоставляется потоковое проигрывание. Чтобы изучить поддерживаемые форматы файлов и API скриптинга см. MovieTexture.
Первые шаги в iOS разработке
Сборка игр для устройств, вроде iPhone и iPad требует иного подхода, не такого, как для игр на ПК. В отличие от рынка ПК, ваше целевое оборудование стандартизировано и не такое быстрое или мощное, как компьютер с выделенной видеокартой. Поэтому, вы будете несколько по другому подходить к разработке игр на эти платформы. Функции, доступные в Unity для iOS, также немного отличаются от функций для ПК игр.
Настройка вашего аккаунта разработчика Apple
You don’t need an Apple Developer account to build to devices; any Apple ID is sufficient for building only to your own device for testing.
Прежде чем вы сможете запускать Unity iOS игры на реальном устройстве, вам понадобится собственный подтверждённый и настроенный аккаунт разработчика Apple (Apple Developer). Это включает учреждение вашей команды, добавление ваших устройств и настройка Provisioning профилей. Все эти установки выполняются через веб-сайт разработчиков Apple. Т.к. это сложный процесс, то мы немного обрисовали цели, которые должны быть выполнены до того, как вы сможете запускать код на ваших iOS устройствах. Однако что лучше всего, так это следовать пошаговой инструкции на портале Apple iPhone разработчиков.
Проект UnityXCode
Когда вы собираете Unity iOS игру, генерируется проект XCode. Этот проект необходимо подписать, скомпилировать, а затем подготовить вашу игру к распространению. Для дальнейшей информации см. Unity XCode project.
Получение доступа к функционалу iOS
Unity предоставляет различные API скриптинга, чтобы получить доступ к multi-touch экрану, акселерометру, устройству геолокации и многому другому. Вы можете узнать больше о классах скрипта на странице iOS скриптинга.
Обращение к нативному C, C++ или Objective-C коду в скриптах
Unity позволяет вам вызывать пользовательские нативные функции написанные на C, C++ или Objective-C прямо из C# скриптов. Для информации о том, как привязать нативные функции, посетите страницу Plugins.
Подготовка вашего приложения для In-App Purchases (внутриигровые покупки)
Unity iOS приложение позволяет вам скачивать новый контент, и вы можете использовать эту функцию, чтобы реализовать внутриигровые покупки. Для дальнейшей информации см. страницу справки загружаемый контент.
Настройка заставки (Splash Screen)
Как изменить изображение, которое показывает ваша игра во время загрузки, можно узнать на странице Настройка заставки (Splash Screen)
Решение проблем и отчёты о падении.
Если у вас происходят падения приложения на iOS устройстве, пожалуйста, изучите на странице Решение проблем на iOS список наиболее часто встречаемых проблем и их решения. Если вы не можете найти там решение, то, пожалуйста, отправьте отчёт об ошибке (меню: Help > Report A Bug в редакторе Unity).
В чём различия между iOS и стационарными целевыми платформами
Сжатие аудио MP3 вместо Ogg Vorbis
Unity supports importing a variety of source format sound files. However when importing these files (with the exception of tracker files), they are always re-encoded to the build target format. By default, this format is Vorbis, though this can be overridden per platform to other formats (ADPCM, MP3 etc) if required. MP3 playback offers slightly better performance on iPhone compared with Vorbis playback.
Сжатие текстур PVRTC вместо DXT
Unity iOS не поддерживает DXT текстуры. Вместо этого, на устройствах iPhone/iPad нативно поддерживается сжатие текстур PVRTC. Для дополнительной информации о форматах текстур на iOS см. Настройки импорта текстур.
Movie/Video playback
We recommend you use the Video Player to play video files. This supersedes the earlier Movie Texture feature.
Краткое руководство. Создание приложения iOS в Unity с помощью Пространственных привязок Azure
В этом кратком руководстве показано, как создать приложения iOS в Unity с помощью Пространственных привязок Azure. «Пространственные привязки Azure» — это кроссплатформенная служба разработчика, которая позволяет создавать среды смешанной реальности с применением объектов, не меняющих своего расположения на устройствах с течением времени. После завершения вы получите приложение iOS ARKit, разработанное с использованием Unity, которое может сохранять и повторно вызывать пространственные привязки.
Если у вас еще нет подписки Azure, создайте бесплатную учетную запись Azure, прежде чем начать работу.
Предварительные требования
В рамках этого краткого руководства вам потребуются:
Создание ресурса Пространственных привязок
В области слева выберите Создать ресурс.
Выполните поиск по запросу Пространственные привязки с помощью поля поиска.
Выберите Пространственные привязки, а затем щелкните Создать.
В области Учетная запись Пространственных привязок выполните следующие действия.
Введите уникальное имя ресурса, используя обычные буквенно-цифровые символы.
Выберите подписку, к которой нужно присоединить ресурс.
Создайте группу ресурсов, нажав Создать. Назовите ее myResourceGroup и нажмите ОК.
Группа ресурсов — это логический контейнер, в котором происходит развертывание ресурсов Azure (например, веб-приложений, баз данных и учетных записей хранения) и управление ими. Например, в дальнейшем можно удалить всю группу ресурсов при помощи одного простого действия.
Выберите расположение (регион), в котором будет размещен ресурс.
Выберите Создать, чтобы начать создание ресурса.
После создания ресурса на портале Azure отобразится оповещение о завершении развертывания.
Выберите Перейти к ресурсу. Теперь можно просмотреть свойства ресурса.
Скопируйте значение идентификатора учетной записи ресурса в текстовый редактор для дальнейшего использования.
Скопируйте также значение домена учетной записи ресурса в текстовый редактор для дальнейшего использования.
В разделе Параметры выберите элемент Ключ доступа. Скопируйте значение первичного ключа (ключа учетной записи) в текстовый редактор для дальнейшего использования.
Чтобы подготовить среду для Azure CLI, выполните указанные ниже действия.
Используйте среду Bash в Azure Cloud Shell.
При необходимости установите Azure CLI, чтобы выполнять справочные команды CLI.
Если вы используете локальную установку, выполните вход в Azure CLI с помощью команды az login. Чтобы выполнить аутентификацию, следуйте инструкциям в окне терминала. Сведения о дополнительных возможностях, доступных при входе, см. в статье Вход с помощью Azure CLI.
Если появится запрос, установите расширения Azure CLI при первом использовании. Дополнительные сведения о расширениях см. в статье Использование расширений с Azure CLI.
Выполните команду az version, чтобы узнать установленную версию и зависимые библиотеки. Чтобы обновиться до последней версии, выполните команду az upgrade.
После входа выполните команду az account set, чтобы выбрать подписку, в которой нужно задать учетную запись пространственных привязок:
Выполните команду az group create, чтобы создать группу ресурсов, или примените существующую группу ресурсов:
Группа ресурсов — это логический контейнер, в котором происходит развертывание ресурсов Azure (например, веб-приложений, баз данных и учетных записей хранения) и управление ими. Например, в дальнейшем можно удалить всю группу ресурсов при помощи одного простого действия.
Вы можете просмотреть текущие учетные записи пространственных привязок для группы ресурсов с помощью команды az spatial-anchors-account list:
Вы также можете просмотреть учетные записи пространственных привязок для своей подписки:
Выполните команду az spatial-anchors-account create, чтобы создать учетную запись пространственных привязок:
Просмотрите свойства ресурса с помощью команды az spatial-anchors-account show:
Скопируйте значение идентификатора учетной записи для ресурса и значение домена учетной записи для ресурса в текстовый редактор (они понадобятся позже).
Выполните команду az spatial-anchors-account key show, чтобы получить первичный и вторичный ключи:
Скопируйте значения ключей в текстовый редактор (они понадобятся позже).
Если необходимо повторно создать ключи, выполните команду az spatial-anchors-account key renew:
Вы можете удалить учетную запись с помощью команды az spatial-anchors-account delete:
Сначала подготовьте среду для Azure PowerShell:
Пока модуль PowerShell AZ. микседреалити находится на этапе предварительной версии, его необходимо установить отдельно с помощью командлета. Как только этот модуль PowerShell станет общедоступным, он будет включен в один из будущих выпусков модуля Az PowerShell и по умолчанию встроен в Azure Cloud Shell.
После входа воспользуйтесь командлетом Set-AzContext, чтобы выбрать подписку, в которой нужно задать учетную запись пространственных привязок:
Выполните командлет New-AzResourceGroup, чтобы создать группу ресурсов, или воспользуйтесь существующей группой ресурсов:
Группа ресурсов — это логический контейнер, в котором происходит развертывание ресурсов Azure (например, веб-приложений, баз данных и учетных записей хранения) и управление ими. Например, в дальнейшем можно удалить всю группу ресурсов при помощи одного простого действия.
Вы можете просмотреть текущие учетные записи пространственных привязок для группы ресурсов с помощью командлета Get-AzSpatialAnchorsAccount:
Вы также можете просмотреть учетные записи пространственных привязок для своей подписки:
Запустите командлет New-AzSpatialAnchorsAccount, чтобы создать собственную учетную запись пространственных привязок:
Просмотрите свойства ресурса с помощью командлета Get-AzSpatialAnchorsAccount:
Скопируйте значение accountId свойства и значение accountDomain свойства в текстовый редактор (они понадобятся позже).
Выполните командлет Get-AzSpatialAnchorsAccountKey, чтобы получить первичный и вторичный ключи.
Скопируйте значения ключей в текстовый редактор (они понадобятся позже).
Если необходимо повторно создать ключи, используйте командлет New-AzSpatialAnchorsAccountKey:
Удалить учетную запись можно с помощью командлета Remove-AzSpatialAnchorsAccount:
Скачивание и открытие примера проекта Unity
Клонируйте репозиторий примеров, выполнив следующие команды:
Следуйте приведенным здесь инструкциям, чтобы скачать и импортировать пакеты SDK для ASA, необходимые для платформы iOS.
В Unity откройте проект в папке Unity. Unity может уведомить вас о разнице между версией в проекте и версией, установленной на компьютере. Это предупреждение допустимо, если версия Unity Editor новее, чем та, с помощью которой создан проект. В таком случае выберите Continue (Продолжить). Если ваша версия старше, чем требуется проекту, щелкните Quit (Выйти) и обновите Unity Editor.
В разделе Платформа выберите iOS.
Выберите Switch Platform (Изменить платформу), чтобы изменить платформу на iOS. Если отсутствуют какие-то дополнительные компоненты iOS, Unity может запросить их установку.
Закройте окно Build Settings (Параметры сборки).
Настройка сведений об учетной записи
Следующим шагом является настройка приложения для использования данных вашей учетной записи. Вы скопировали значения ключа учетной записи, идентификатора учетной записии домена учетной записи в текстовый редактор, как указано ранее в разделе Создание ресурса Пространственных привязок.
Выберите SpatialAnchorConfig. На панели инспектора введите в качестве значения для ключа учетной записи пространственных привязок, в качестве значения для идентификатора учетной записи пространственныхпривязок и в качестве значения для домена учетной записи пространственных привязок.
Экспорт проекта Xcode
В разделе Scenes In Build (Сцены в сборке) убедитесь, что возле всех сцен установлен флажок.
Выберите Build (Сборка). На открывшейся панели выберите папку, в которую будет экспортирован проект Xcode.
Когда экспорт успешно завершится, откроется папка, содержащая экспортированный проект Xcode.
Если появится окно с предложением выбрать замену или добавление, мы рекомендуем выбрать Append (Добавить), так как это быстрее. Вариант Replace (Заменить) вам потребуется, только если вы заменяете ресурсы в сцене (например, добавляете, удаляете или изменяете отношения «родительское — дочернее» или свойства ресурсов). Если вы только вносите изменения в исходный код, параметра Append (Добавить) достаточно.
Открытие проекта Xcode
Теперь вы можете открыть проект Unity-iPhone.xcodeproj в Xcode.
Для этого можно запустить Xcode и открыть экспортированный проект Unity-iPhone.xcodeproj или запустить проект с помощью следующей команды из того расположения, в которое этот проект был экспортирован:
Выберите корневой узел Unity iPhone, чтобы просмотреть параметры проекта, а затем — вкладку General (Общие).
В разделе Deployment Info (Сведения о развертывании) убедитесь, что для цели развертывания установлено значение iOS 11.0.
Развертывание приложения на устройстве iOS
Подключите устройство iOS к Mac и задайте активную схему для устройства iOS.
Выберите параметр Build and then run the current scheme (Сборка, а затем запуск текущей схемы).
Снимок экрана снимок экрана
снимок
По завершении остановите приложение, нажав в Xcode кнопку Stop (Остановить).
Устранение неполадок
Проблемы отрисовки
Если во время запуска приложения вы не видите камеру как фон (к примеру, вы видите вместо этого пустой, синий фон или фон с другой текстурой), то вам нужно повторно импортировать файлы в Unity. Остановите приложение. В верхнем меню Unity выберите активы — повторно импортировать все. Затем снова запустите приложение.
Очистка ресурсов
На предыдущем шаге вы создали ресурсы Azure в группе ресурсов. Если вы считаете, что в будущем эти ресурсы вам не понадобятся, их можно удалить, удалив группу ресурсов.
В меню или на странице Главная портала Azure выберите Группы ресурсов. Затем на странице Группы ресурсов выберите myResourceGroup.
На странице myResourceGroup убедитесь, что перечислены те ресурсы, которые нужно удалить.
Выберите Удалить группу ресурсов, введите myResourceGroup в текстовое поле для подтверждения и щелкните Удалить.
Дальнейшие действия
В этом кратком руководстве вы создали учетную запись Пространственных привязок. Затем вы настроили и развернули приложение для сохранения и повторного вызова пространственных привязок. Дополнительные сведения о том, как улучшить приложение таким образом, чтобы оно совместно использовало пространственные привязки с другими устройствами, см. в следующем руководстве.