cancel
Showing results for 
Search instead for 
Did you mean: 

Archives Discussions

Taz1024
Adept I

Vulkan dual-source blending broken?

Hi,

vkCreateGraphicsPipelines appears to be failing (w/ VK_ERROR_INITIALIZATION_FAILED) whenever the fragment program is outputting to index 1. The blend state doesn't seem to have anything to do with it, it fails regardless of SRC1 blend modes being used or not. There are no validation errors.

I also reproduced the issue in the vulkan sdk cube demo by just adding an extra fragment out on index 1 and adding dual-source blend feature to device creation.

I.e., just change the last bit of cube.frag to:

layout (location = 0, index=0) out vec4 uFragColor0;

layout (location = 0, index=1) out vec4 uFragColor1;

void main() {

   uFragColor0 = texture(tex, texcoord.xy);

   uFragColor1 = texture(tex, texcoord.xy);

}

..and recompile the cube-frag.spv.

I'm using a rx480, win7 x64, sdk 1.0.30, dec19 driver. (16.12.2?)

Edit: on gtx1080 pipeline creation 'works' but SRC1 blend factor appear to be 0. hmm...

Edit2: It works on gtx1080 after updating driver so their dualsrc blending was broken as well.

0 Likes
3 Replies
dwitczak
Staff

Thanks, we're going to have a look at this.

0 Likes

We've addressed this issue internally. The fix should land in one of the upcoming driver releases. Many thanks for letting us know!   

Great, thanks for the update.

0 Likes