You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It turns out that mac hardware actually accumulates/blends to a 16bit tiled memory buffer before writing to the 8-bit target.
The discoloration only appears on the NVIDIA hardware because the GPU is actually accumulating/blending to RGBA8, resulting in rounding off over multiple layers.
The discoloration seems to be made worse by our use of premultiplied alpha blending, but I currently don't really understand why (see #421). Presumably blending hardware on NVIDIA is low-precision.
Activity
simonbethke commentedon Apr 15, 2025
@slimbuck when looking at the getContext() methods, there is no color-space defined. I would suggest to add the color-space as suggested by the LLM.
slimbuck commentedon Jun 11, 2025
It turns out that mac hardware actually accumulates/blends to a 16bit tiled memory buffer before writing to the 8-bit target.
The discoloration only appears on the NVIDIA hardware because the GPU is actually accumulating/blending to RGBA8, resulting in rounding off over multiple layers.
The discoloration seems to be made worse by our use of premultiplied alpha blending, but I currently don't really understand why (see #421). Presumably blending hardware on NVIDIA is low-precision.