예제 #1
0
        public void QuadTreeSwitchUpdate(QuadTreeNode node)       // QuadTreeDelegate
        {
            float distance = node.Distance;

            node.InRange = distance < EntryDistanceForLOD(node.Depth);
            if (distance < EntryDistanceForLOD(node.Depth + 1))
            {
                if (Database.SystemMemoryLimitExceeded)
                {
                    return;
                }
                node.Divide();
            }
            if (distance > ExitDistanceForLOD(node.Depth + 1))
            {
                node.Consolidate();
            }
        }