Alpha blending comparison (2020.06.19)

This page presents different alpha blending algorithms being implemented in the Marlin renderer's new Compositor.
This new compositor is developped in the unsafe-dev branch, see the pipe package.
This images are produced by the LineWidthColorGridTest class and stored in the PNG format (sRGB INT RGBA format).

TOC:

Color functions Comparison Output files

Color Functions (sRGB, L* profiles, gamma 2.2)



Comparison (original Java2D approach) vs (Gamma-corrected sRGB + contrast correction L: CIE)

Original Java2D approach Gamma-corrected sRGB (linear) with L*(Y) (CIE) contrast correction => L (contrast = 1.0) Image difference (scaled to max delta):

Comparison (original Java2D approach) vs (Gamma-corrected sRGB + contrast correction L : gamma = 2.0)

Original Java2D approach Gamma-corrected sRGB (linear) with L*(Y) (L=SQRT(Y)) contrast correction => L (contrast = 1.0)

Comparison (original Java2D approach) vs (Gamma-corrected sRGB + contrast correction Y : sRGB)

Original Java2D approach Gamma-corrected sRGB (linear) with Y(sRGB) contrast correction => Y (contrast = 1.0)

Comparison (original Java2D approach) vs (Gamma-corrected sRGB + luminance fix)

Original Java2D approach Gamma-corrected sRGB (linear) with luminance fix

Output files

Reference sRGB non-linear = Original Java2D approach

Gamma-corrected sRGB (linear) with L*(Y) (CIE) contrast correction => L (contrast = 1.0)

Gamma-corrected sRGB (linear) with L*(Y) (L=SQRT(Y)) contrast correction => L (contrast = 1.0)

Gamma-corrected sRGB (linear) with Y(sRGB) contrast correction => Y (contrast = 1.0)

Gamma-corrected sRGB (linear) with luminance fix