Gamma-correct rendering, part 1