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