Table of Contents

Class BlockHolder

Пространство имен
EasyAR.Mega.Scene
Сборка
EasyAR.Mega.Scene.dll

Компонент, удерживающий блок. Содержит и управляет блоком в сцене.

Обычно необходимо установить BlockRoot в редакторе или в скрипте во время выполнения. Обычно он генерируется Mega Studio в режиме редактирования. Если во время выполнения обнаруживается неизвестный блок, BlockHolder автоматически создаст BlockController и добавит его под BlockRoot. Если BlockRoot не существует, он будет создан автоматически.

[DisallowMultipleComponent]
public class BlockHolder : MonoBehaviour
Наследование
BlockHolder

Поля

BlockRootSource

Источник корня блока (Block root).

public BlockHolder.BlockRootSourceType BlockRootSource

MultiBlock

Стратегия при обнаружении нескольких блоков. Необходимо установить до вызова MonoBehaviour.Start.

public BlockHolder.MultiBlockStrategy MultiBlock

blocks

protected readonly Dictionary<string, BlockController> blocks

Свойства

BlockRoot

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

public BlockRootController BlockRoot { get; set; }

Blocks

Все удерживаемые блоки Mega.

public List<BlockController> Blocks { get; }

Методы

GetBlock(string)

Получает блок.

public BlockController GetBlock(string id)

Параметры

id

Hold(BlockInfo, LocalTransform)

Удерживает блок. Локальное преобразование блока устанавливается входными параметрами.

public BlockController Hold(BlockController.BlockInfo info, LocalTransform transform)

Параметры

info
transform

Hold(BlockInfo, Location)

Удерживает блок. Локальное преобразование блока вычисляется на основе местоположения.

public BlockController Hold(BlockController.BlockInfo info, Location location)

Параметры

info
location