Dock — MRTK2
Этот элемент управления позволяет перемещать объекты в заранее определенных положениях и из него, чтобы создавать палитры, полки и панели навигации.
Компоненты
- Поддерживает любое количество позиций и макетов закрепления (отлично работает с
GridObjectCollection
) - Закрепленные объекты автоматически перемещаются в сторону, чтобы освободить место для новых объектов
- Объекты масштабируются в соответствии с закрепленным пространством, а затем при перетаскивании масштабируются до исходного положения.
Начало работы с Dock
- Создайте GameObject с компонентом Dock и добавьте в него дочерние объекты GameObjects.
- Добавьте компонент DockPosition в каждый дочерний элемент.
- Добавьте компонент Dockable к любому количеству объектов в сцене, чтобы разрешить их закрепление. Они также должны иметь
ObjectManipulator
компонент и коллайдер. - Необязательно. Используйте
GridObjectCollection
для dock для автоматического размещения DockPositions.
Предварительные требования
- Каждый закрепляемый объект должен иметь коллайдер с
ObjectManipulator
илиManipulationHandler
. - Если вы хотите, чтобы объект запускался при загрузке сцены, назначьте его свойству закрепленного объекта DockPosition.
Принцип работы
Компонент Dockable основан на событиях манипуляции, что позволяет закреплять и отстыковывать перетаскиваемые объекты в определенных положениях. Размещение определяется ближайшим перекрывающимся активируемым объектом DockPosition, поэтому оба объекта должны иметь коллайдеры для активации триггера.