public Color getColor(Intersection i) throws Exception {
		if (i == null) {
			return Color.WHITE;
		}
		Color rtn = Color.BLACK;
		Material material = i.getMaterial();
		Roughness roughness = material.getRoughness();
		if (roughness != null) {
			i = roughness.perturb(i);
		}
		for (Light l : lights) {
			rtn = rtn.add(l.intensity(i));
		}
		rtn = rtn.add(reflection(i));
		return rtn;
	}