diff --git a/.pick_status.json b/.pick_status.json index 488ec9aafa7..018a60f1ea5 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -67,7 +67,7 @@ "description": "zink: respect feature-cap for independent blending", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "master_sha": null, "because_sha": "8d46e35d16e3936968958bcab86d61967a673305" }, diff --git a/src/gallium/drivers/zink/zink_screen.c b/src/gallium/drivers/zink/zink_screen.c index ce6e15bdb9e..8ae880fcbe6 100644 --- a/src/gallium/drivers/zink/zink_screen.c +++ b/src/gallium/drivers/zink/zink_screen.c @@ -136,15 +136,15 @@ zink_get_param(struct pipe_screen *pscreen, enum pipe_cap param) case PIPE_CAP_MAX_TEXTURE_CUBE_LEVELS: return 1 + util_logbase2(screen->info.props.limits.maxImageDimensionCube); - case PIPE_CAP_BLEND_EQUATION_SEPARATE: case PIPE_CAP_FRAGMENT_SHADER_TEXTURE_LOD: case PIPE_CAP_FRAGMENT_SHADER_DERIVATIVES: case PIPE_CAP_VERTEX_SHADER_SATURATE: return 1; + case PIPE_CAP_BLEND_EQUATION_SEPARATE: case PIPE_CAP_INDEP_BLEND_ENABLE: case PIPE_CAP_INDEP_BLEND_FUNC: - return 1; + return screen->info.feats.features.independentBlend; case PIPE_CAP_MAX_STREAM_OUTPUT_BUFFERS: return screen->info.have_EXT_transform_feedback ? screen->info.tf_props.maxTransformFeedbackBuffers : 0;