Example #1
0
 public Vector3 GetBlockCenter(Vector3 query, int level, IBlock block)
 {
     if (level == block.Level - 1)
     {
         int id = BlockUtility.FindSubArea(block, query);
         return(BlockUtility.ChildPositions(block)[id]);
     }
     else
     {
         int     id        = BlockUtility.FindSubArea(block, query);
         Vector3 subcenter = BlockUtility.ChildPositions(block)[id];
         IBlock  b         = new SimpleBlock(subcenter, block.Level - 1);
         return(GetBlockCenter(query, level, b));
     }
 }