public List<QuadTreeItem> GetQuadTreeItemFor(Vector3 vec, Vector3 size, int maxDepth)
{
var result = new List<QuadTreeItem>();
Vector3 leftFront = new Vector3(vec.x - size.x/2.0f, vec.y, vec.z - size.z/2.0f);
Vector3 rightFront = new Vector3(vec.x + size.x/2.0f, vec.y, vec.z - size.z/2.0f);
Vector3 leftBack = new Vector3(vec.x - size.x/2.0f, vec.y, vec.z + size.z/2.0f);
Vector3 rightBack = new Vector3(vec.x + size.x/2.0f, vec.y, vec.z + size.z/2.0f);
result.Add(GetQuadTreeItemFor(leftFront, maxDepth));
result.Add(GetQuadTreeItemFor(rightFront, maxDepth));
result.Add(GetQuadTreeItemFor(leftBack, maxDepth));
result.Add(GetQuadTreeItemFor(rightBack, maxDepth));
return result;
}