From bcb5ea097c11e3776070f30b00fcf6c5fac62df3 Mon Sep 17 00:00:00 2001 From: Patrice Mandin Date: Wed, 21 Jan 2009 21:59:10 +0100 Subject: [PATCH] nouveau: nv30 does not support separate blend functions for alpha and rgb --- src/gallium/drivers/nv30/nv30_state.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/nv30/nv30_state.c b/src/gallium/drivers/nv30/nv30_state.c index fc66075c83f..47e1a625afa 100644 --- a/src/gallium/drivers/nv30/nv30_state.c +++ b/src/gallium/drivers/nv30/nv30_state.c @@ -23,9 +23,10 @@ nv30_blend_state_create(struct pipe_context *pipe, nvgl_blend_func(cso->rgb_src_factor)); so_data (so, nvgl_blend_func(cso->alpha_dst_factor) << 16 | nvgl_blend_func(cso->rgb_dst_factor)); + /* FIXME: Gallium assumes GL_EXT_blend_func_separate. + It is not the case for NV30 */ so_method(so, rankine, NV34TCL_BLEND_EQUATION, 1); - so_data (so, nvgl_blend_eqn(cso->alpha_func) << 16 | - nvgl_blend_eqn(cso->rgb_func)); + so_data (so, nvgl_blend_eqn(cso->rgb_func)); } else { so_method(so, rankine, NV34TCL_BLEND_FUNC_ENABLE, 1); so_data (so, 0); -- 2.30.2