Gradients aren't smooth on HD 3000 GPU

Steps causing the bug to occur

As discussed with @alexmitchellmus on Fetch Image 16bpc RGBA it seems gradients (and images ?) pass 8 bit only on the HD 3000.

When tested his composition (joined below), the image doesn’t change for me, and both the gradients look posterizely filtered when compared to his screenshot or a gradient PNG I made using Sketch App.

Screenshot below shows side by side Gradient Image and Gradient Layer into a Render Layers to Image set in 16 bit on the left / middle, and the sketch made gradient PNG on the right.

Have you found a workaround?

No

Other notes

  • Vuo version: 1.2.3
  • macOS version: OS X 10.11
  • How severely does this bug affect you? It’s annoying but I can work around it.

Toggle Gradients.vuo (4.39 KB)

Vuo vs Sketch PNG.png

Thanks for reporting, @Bodysoulspirit. And thanks to you and @alexmitchellmus for taking the time to figure out exactly what the problem is.

Confirmed that the composition generates steppy/banded gradients on the notorious Intel 3000, and smooth gradients on a different GPU. We’ll look into a fix.

1 Like

on the notorious Intel 3000

Haha XD ;)
Thanks for checking it out. Hope there will be a fix but this easily can skip 1 or 2 update releases for me as there doesn’t seem to be many Intel 3000 here around beside me.  

Fixed in Vuo 1.2.4.

Yep ! The gradients do definitely look way better ;) Same as the image exported on the left with Sketchpad ! Thanks

However, the funny thing is both look 16 bit, but the Make Image Gradient port popover says 8 bit. Not that I care though, it looks good and that’s what matters ;) Perhaps it’s really 8 bit and the steppy/banded gradients bug was actually another problem ?

Gradients.vuo (4.34 KB)

The steppy gradients problem was not an 8bit/16bit issue, it was a problem involving the Intel 3000 GPU. The approach we were using to generate gradients relied on the GPU to interpolate colors between pixels. Vuo would generate a small image containing each of the specified gradient colors (e.g., a 2x1 pixel image containing white and black), then use the GPU to request fractional pixels from the image. Most GPUs provide smooth interpolation between pixels, but the Intel 3000 apparently limits its interpolation to 64 steps. Hence the steppy gradients. We changed our approach to work with the Intel 3000’s limitations.

1 Like

Cool.

As mentionned, if located to the HD3000 this could have skipped some releases for me but I appreciate the fix though ;) !