Class BlockHolder
ブロックを保持するコンポーネント。シーン内でブロックを保持し管理します。
通常、エディター内または実行時のスクリプトでBlockRootを設定する必要があります。これは通常、Mega Studioが編集モードで生成します。実行時に未知のブロックがロケートされた場合、BlockHolderは自動的にBlockControllerを生成し、BlockRootの下に追加します。この時BlockRootが存在しない場合は自動的に作成されます。
[DisallowMultipleComponent]
public class BlockHolder : MonoBehaviour
- 継承
-
BlockHolder
フィールド
BlockRootSource
ブロックルートのソース。
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)
パラメーター
infotransform
Hold(BlockInfo, Location)
ブロックを保持します。ブロックのローカルトランスフォームはロケーションから計算されます。
public BlockController Hold(BlockController.BlockInfo info, Location location)
パラメーター
infolocation