本文整理汇总了C#中Index.getChild方法的典型用法代码示例。如果您正苦于以下问题:C# Index.getChild方法的具体用法?C# Index.getChild怎么用?C# Index.getChild使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Index
的用法示例。
在下文中一共展示了Index.getChild方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: apply
protected void apply(Application app, VoxelBlock block, Index pos) {
Index cornerChild = pos.getChild();
for(byte c = 0; c<VoxelBlock.CHILD_COUNT; ++c) {
// TODO: use min and max to reduce number of values considered
Index childPos = cornerChild.getNeighbor(c);
Action action = checkMutation(app, childPos);
if (!action.modify)
continue;
Action maskAction = checkMasks(app.tree, childPos);
if (!maskAction.modify)
continue;
if (childPos.depth < app.tree.maxDetail && (maskAction.doTraverse || action.doTraverse))
apply(app, block.expand(childPos.xLocal, childPos.yLocal, childPos.zLocal), childPos);
else
block.children[childPos.xLocal, childPos.yLocal, childPos.zLocal] =
mutate(app, childPos, action, block.children[childPos.xLocal, childPos.yLocal, childPos.zLocal].toVoxel());
if (childPos.depth == app.tree.maxDetail - VoxelRenderer.VOXEL_COUNT_POWER && (action.modify))
block.updateAll(childPos.x, childPos.y, childPos.z, childPos.depth, app.tree, true);
}
}