Table of Contents

Class BlockHolder

Namespace
EasyAR.Mega.Scene
Assembly
EasyAR.Mega.Scene.dll

Komponente, die einen Block hält. Hält und verwaltet Blöcke innerhalb der Szene.

Normalerweise muss im Editor oder während der Laufzeit im Skript BlockRoot gesetzt werden. Dies wird typischerweise vom Mega Studio im Edit-Modus generiert. Wenn zur Laufzeit ein unbekannter Block lokalisiert wird, generiert BlockHolder automatisch einen BlockController und fügt ihn unter BlockRoot hinzu. Falls BlockRoot zu diesem Zeitpunkt nicht existiert, wird es automatisch erstellt.

[DisallowMultipleComponent]
public class BlockHolder : MonoBehaviour
Vererbung
BlockHolder

Felder

BlockRootSource

Herkunft des Block-Root.

public BlockHolder.BlockRootSourceType BlockRootSource

MultiBlock

Strategie bei Lokalisierung mehrerer Blöcke. Muss vor MonoBehaviour.Start gesetzt werden.

public BlockHolder.MultiBlockStrategy MultiBlock

blocks

protected readonly Dictionary<string, BlockController> blocks

Eigenschaften

BlockRoot

Übergeordneter Knoten für alle Mega-Blöcke. Wird typischerweise von den Mega-Tools generiert. Falls nicht gesetzt, wird ein neuer Root-Knoten automatisch generiert, wenn der erste Block gehalten wird.

public BlockRootController BlockRoot { get; set; }

Blocks

Alle gehaltenen Mega-Blöcke.

public List<BlockController> Blocks { get; }

Methoden

GetBlock(string)

Ruft einen Block ab.

public BlockController GetBlock(string id)

Parameter

id

Hold(BlockInfo, LocalTransform)

Hält einen Block. Die lokale Block-Transformation wird durch die Eingabeparameter festgelegt.

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

Parameter

info
transform

Hold(BlockInfo, Location)

Hält einen Block. Die lokale Block-Transformation wird aus dem Ort berechnet.

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

Parameter

info
location