[resend PATCH v3 2/4] wined3d: Support Nvidia alpha to coverage state.

Henri Verbeet hverbeet at gmail.com
Thu Feb 13 08:30:58 CST 2020


On Wed, 12 Feb 2020 at 18:24, Paul Gofman <gofmanp at gmail.com> wrote:
> @@ -616,7 +616,7 @@ static void state_blend_factor(struct wined3d_context *context, const struct win
>  static void state_blend_object(struct wined3d_context *context, const struct wined3d_state *state, DWORD state_id)
>  {
>      const struct wined3d_gl_info *gl_info = wined3d_context_gl(context)->gl_info;
> -    BOOL alpha_to_coverage = FALSE;
> +    BOOL alpha_to_coverage;
>
>      if (!gl_info->supported[ARB_MULTISAMPLE])
>          return;
> @@ -626,6 +626,10 @@ static void state_blend_object(struct wined3d_context *context, const struct win
>          struct wined3d_blend_state_desc *desc = &state->blend_state->desc;
>          alpha_to_coverage = desc->alpha_to_coverage;
>      }
> +    else
> +    {
> +        alpha_to_coverage = state->render_states[WINED3D_RS_ADAPTIVETESS_Y] == WINED3DFMT_ATOC;
> +    }
>
>      if (alpha_to_coverage)
>          gl_info->gl_ops.gl.p_glEnable(GL_SAMPLE_ALPHA_TO_COVERAGE);
That works, but it seems tempting to handle the NVIDIA variant in the
stateblock as well.



More information about the wine-devel mailing list