public void ForEachQuad(QuadModifier modifier) { int count = Indices.Count; Quad quad = new Quad(); for (int i = 0; i < count; ++i) { IntVector4 indices = Indices[i]; quad.vertices[0] = Vertices[indices[0]]; quad.vertices[1] = Vertices[indices[1]]; quad.vertices[2] = Vertices[indices[2]]; quad.vertices[3] = Vertices[indices[3]]; modifier(quad, i); } }
private void QuadIterator(QuadModifier modifier, object[] optionalParameters) { for (int vertVertex = 0; vertVertex < NUM_SIDE_VERTICES; vertVertex++) { for (int horizVertex = 0; horizVertex < NUM_SIDE_VERTICES; horizVertex++) { modifier(vertVertex, horizVertex, optionalParameters); } } }