public void Blit(Volume other, System.Func<Color, Color, Color> blendFunc) { for (int x = 0; x < width; x++) { for (int y = 0; y < height; y++) { for (int z = 0; z < depth; z++) { Color sourceColor = GetPixel(x, y, z); Color destColor = other.GetPixel(x, y, z); SetPixel(x, y, z, blendFunc(sourceColor, destColor)); } } } }