Bug 42386

Summary: [openvg] VG_DRAW_IMAGE_MULTIPLY does not work for alpha 1.0
Product: Mesa Reporter: Andreas Betz <andreas.betz>
Component: OtherAssignee: mesa-dev
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: medium CC: jfonseca, zackr
Version: git   
Hardware: x86 (IA32)   
OS: Windows (All)   
Whiteboard:
i915 platform: i915 features:

Description Andreas Betz 2011-10-29 13:14:18 UTC
If i draw an image with the image mode VG_DRAW_IMAGE_MULTIPLY the 
alpha value behaves strange.
If alpha value is 1.0f the image is invisible.
If i set the alpha value to e.g. 0.9999f then it is drawn correctly and can be color transformed with VG_COLOR_TRANSFORM.

E.g. the following code:

        VGPaint colorPaint = vgCreatePaint();
        vgSeti(VG_IMAGE_MODE, VG_DRAW_IMAGE_MULTIPLY);
        VGfloat color[4] = {1.0f, 1.0f ,1.0f, 0.9999f};
        vgSetParameterfv(colorPaint, VG_PAINT_COLOR, 4, color);
        vgSetPaint(colorPaint, VG_FILL_PATH);
#ifdef OPENVG_VERSION_1_1
        vgSeti(VG_COLOR_TRANSFORM, VG_TRUE);
#endif
        vgDrawImage(m_image);
Comment 1 Jose Fonseca 2012-02-01 02:11:04 UTC
Was this with llvmpipe?

Does softpipe behave differently?
Comment 2 Andreas Betz 2012-02-01 02:30:04 UTC
this was with both pipes ... but i seems that it is fixed by now - sorry for not closing the ticket

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.