Mesa (master): r300g: Dual-source blending isn't possible, period.
Corbin Simpson
csimpson at kemper.freedesktop.org
Sat Jan 30 20:37:08 UTC 2010
Module: Mesa
Branch: master
Commit: bfbec0818f0e7ab9358809a1af732a1366245507
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=bfbec0818f0e7ab9358809a1af732a1366245507
Author: Corbin Simpson <MostAwesomeDude at gmail.com>
Date: Sat Jan 30 12:03:20 2010 -0800
r300g: Dual-source blending isn't possible, period.
---
src/gallium/drivers/r300/r300_screen.c | 1 -
src/gallium/drivers/r300/r300_state_inlines.h | 14 +++++++++-----
2 files changed, 9 insertions(+), 6 deletions(-)
diff --git a/src/gallium/drivers/r300/r300_screen.c b/src/gallium/drivers/r300/r300_screen.c
index 7df3ad0..ae3155c 100644
--- a/src/gallium/drivers/r300/r300_screen.c
+++ b/src/gallium/drivers/r300/r300_screen.c
@@ -114,7 +114,6 @@ static int r300_get_param(struct pipe_screen* pscreen, int param)
*/
return 1;
case PIPE_CAP_DUAL_SOURCE_BLEND:
- /* XXX need to figure out how to do it */
return 0;
case PIPE_CAP_ANISOTROPIC_FILTER:
return 1;
diff --git a/src/gallium/drivers/r300/r300_state_inlines.h b/src/gallium/drivers/r300/r300_state_inlines.h
index faa0494..5df6815 100644
--- a/src/gallium/drivers/r300/r300_state_inlines.h
+++ b/src/gallium/drivers/r300/r300_state_inlines.h
@@ -81,9 +81,6 @@ static INLINE uint32_t r300_translate_blend_factor(int blend_fact)
return R300_BLEND_GL_CONST_COLOR;
case PIPE_BLENDFACTOR_CONST_ALPHA:
return R300_BLEND_GL_CONST_ALPHA;
- /* XXX WTF are these?
- case PIPE_BLENDFACTOR_SRC1_COLOR:
- case PIPE_BLENDFACTOR_SRC1_ALPHA: */
case PIPE_BLENDFACTOR_ZERO:
return R300_BLEND_GL_ZERO;
case PIPE_BLENDFACTOR_INV_SRC_COLOR:
@@ -98,9 +95,16 @@ static INLINE uint32_t r300_translate_blend_factor(int blend_fact)
return R300_BLEND_GL_ONE_MINUS_CONST_COLOR;
case PIPE_BLENDFACTOR_INV_CONST_ALPHA:
return R300_BLEND_GL_ONE_MINUS_CONST_ALPHA;
- /* XXX see above
+
+ case PIPE_BLENDFACTOR_SRC1_COLOR:
+ case PIPE_BLENDFACTOR_SRC1_ALPHA:
case PIPE_BLENDFACTOR_INV_SRC1_COLOR:
- case PIPE_BLENDFACTOR_INV_SRC1_ALPHA: */
+ case PIPE_BLENDFACTOR_INV_SRC1_ALPHA:
+ debug_printf("r300: Implementation error: "
+ "Bad blend factor %d not supported!\n", blend_fact);
+ assert(0);
+ break;
+
default:
debug_printf("r300: Unknown blend factor %d\n", blend_fact);
assert(0);
More information about the mesa-commit
mailing list