TerrainDisplay.Collision.BSPTree.GetBranchContents C# (CSharp) Method

GetBranchContents() private method

private GetBranchContents ( short nodeId, IList vectors, ICollection vertices ) : void
nodeId short
vectors IList
vertices ICollection
return void
        private void GetBranchContents(short nodeId, IList<Vector3> vectors, ICollection<Vector3> vertices)
        {
            if (nodeId < 0 || nodeId > nodes.Length) return;
            var node = nodes[nodeId];

            if (node.flags == BSPNodeFlags.Flag_Leaf)
            {
                foreach (var index3 in node.TriIndices)
                {
                    vertices.AddUnique(vectors[index3.Index0]);
                    vertices.AddUnique(vectors[index3.Index1]);
                    vertices.AddUnique(vectors[index3.Index2]);
                }
                return;
            }

            GetBranchContents(node.posChild, vectors, vertices);
            GetBranchContents(node.negChild, vectors, vertices);
        }