Skip to content

[2.2.15] Objects with the "alpha" property render incorrectly above water/translucent surfaces in OpenGL

In OpenGL (palette rendering on and off), objects with the alpha property (added in !2382 (merged)) can render differently from an object with a corresponding FF_TRANS value. This is most noticeable on water, but it's also barely visible on walls as well.

It renders perfectly in Software, however.

Left circle: FF_TRANS50, right circle: alpha = FRACUNIT/2

software-wallopengl-wall.png

Software, OpenGL (palette rendering + comparison)

software-water.pngopengl-water.pngopenglfc-water.png

Software, OpenGL (palette rendering), OpenGL (palette rendering off)

It's even more noticeable on low values. (FRACUNIT/10)

wh.png

Lua file used: alphabug.lua