Color Correction Evolution
At first, 8-bit color translucency was like
this. Due to the limits of Quake's 8-bit color palette, straightforward blending of color values was very lossy.
Then I've figured out a way to apply
color correction on both translucency and lighting. The colors improved a lot, although the results were very grainy (see how the shape of the slime texture became completely unrecognizable after being blended twice).
After that, I've decided to try implementing
gamma-correct translucency. The blending became smoother, color hues became more faithful and the shape of the slime texture could be recognized again, but a few details were lost in the darker areas of the image.
Now, I've also implemented
gamma correction on the lighting. This helped to recover those lost details back, and then some. Now the slime texture is fully recognizable, even through two passes of alpha blending, and details such as the pipe texture on the bottom left of the image are more faithful than ever.
For a final comparison, see
this 24-bit truecolor mockup I've made in GIMP (which doesn't use gamma correction). If you convert this 24-bit mockup back to Quake's 8-bit color palette using popular error diffusion algorithms such as Floyd-Steinberg, my results are still smoother.
I have one more thing to change in Retroquad's color management, but I'm skeptical about further quality improvements. This "one more thing" will be just to simplify some calculations.