Создание модулей MRTK

одной из замечательных новых функций смешанной реальности набор средств v2 является улучшение компонентов. Везде, где это возможно, отдельные компоненты изолированы от всех основных уровней фундамента.

Минимальные зависимости

МРТК v2 была специально разработана для того, чтобы быть модульными и минимальными зависимостями между системными службами (например, сведения о пространственной поддержке).

Из-за особенностей некоторых системных служб (например, входных и телепортов) существует небольшое количество зависимостей.

Хотя предполагается, что службам потребуется один или несколько компонентов поставщика данных, между ними нет прямых связей. Это справедливо и для функций пакета SDK (например, компонентов пользовательского интерфейса).

Взаимодействие компонентов

Чтобы обеспечить отсутствие прямых связей между компонентами, МРТК v2 использует интерфейсы для взаимодействия между службами, поставщиками данных и кодом приложения. эти интерфейсы определяются в, и все коммуникации направляются через компонент набор средств ядра "смешанная реальность".

Использование системы пространственного отслеживания через интерфейсы

Минимизация объема МРТК импорта

В данный момент МРТК импортируется как единый базовый пакет (без учета примеров пакета, который является полностью необязательным пакетом). Вы можете уменьшить размер этого места, выполнив ручную отработку на импортированные файлы, хотя это очень просто процесс, который не имеет четко определенного руководства.

При импорте пакета Foundation можно снять флажки для произвольных элементов. Однако не рекомендуется делать это на раннем этапе разработки, так как это может привести к нарушению функциональности. После выяснения итогового набора функций приложения Удаление ненужных поставщиков и служб может выполняться в следующих папках:

  • МРТК и службы
  • МРТК и поставщики
  • МРТК/SDK/компоненты

Примечание

Для МРТК версии 2. x требуется содержимое папки Assets/Мртк/Core.

Предстоящие функции

Архитектура приложения

МРТК будет поддерживать сборку приложений с использованием различных архитектур, в том числе:

При выборе архитектуры приложения важно учитывать гибкость проектирования и производительность приложений. Описанные здесь архитектуры не должны подойти для каждого приложения.

Локатор службы Микседреалититулкит

МРТК включает (и автоматически настраивает) сцены приложений для использования MixedRealityToolkit компонента локатора служб по умолчанию. Этот компонент включает поддержку настройки систем и поставщиков данных МРТК через инспекторы конфигураций и управляет сроком существования компонентов и основными характеристиками (например, при обновлении).

Все системы представлены в основном инспекторе конфигураций, независимо от того, есть они или нет в проекте. Дополнительные сведения см. в разделе с руководством по настройке смешанной реальности .

Отдельные компоненты службы

Некоторые разработчики выражают желание включить отдельные компоненты службы в иерархию Application сцены. Чтобы включить это использование, необходимо инкапсулировать службы в настраиваемом регистраторе или выполнить самостоятельную регистрацию или самостоятельное управление.

Самостоятельная служба реализует IMixedRealityServiceRegistrar и регистрирует саму себя, чтобы код приложения мог обнаружить экземпляр службы через реестр.

Самостоятельно управляемая служба может быть реализована как одноэлементный объект в иерархии сцены. Этот объект предоставляет и свойство экземпляра, которые код приложения может использовать для прямого доступа к функциональным возможностям службы.

Пользовательский указатель службы

Некоторые разработчики запросили возможность создания пользовательского компонента локатора служб. Пользовательские указатели служб реализуют IMixedRealityServiceRegistrar интерфейс и управляют жизненным циклом и основными поведениями активных служб.

Гибридная архитектура

МРТК будет поддерживать гибридную архитектуру, в которой разработчики могут комбинировать предыдущие подходы по мере необходимости или нужным образом. Например, разработчик может начать с MixedRealityToolkit локатора службы и добавить собственную службу регистрации.

Примечание

При продолжении использования гибридной архитектуры важно быть учитыватьм любого дублирования работы (например, получение данных контроллера из нескольких компонентов).