diff options
author | Marek Olšák <maraeo@gmail.com> | 2011-03-13 11:54:29 +0100 |
---|---|---|
committer | Marek Olšák <maraeo@gmail.com> | 2011-03-14 10:09:34 +0100 |
commit | 23ccab39cd6b89efd8be238c3061e7ddb3697a55 (patch) | |
tree | 0f52c6797d54600c155f6b4e3f77557a7f5642f3 /src/gallium/drivers/r300/r300_emit.c | |
parent | 340e15c79b9c973d8dcefb55e2adf3ac813d1fec (diff) | |
download | external_mesa3d-23ccab39cd6b89efd8be238c3061e7ddb3697a55.zip external_mesa3d-23ccab39cd6b89efd8be238c3061e7ddb3697a55.tar.gz external_mesa3d-23ccab39cd6b89efd8be238c3061e7ddb3697a55.tar.bz2 |
r300g: clamp after blending for fixed-point formats only
Diffstat (limited to 'src/gallium/drivers/r300/r300_emit.c')
-rw-r--r-- | src/gallium/drivers/r300/r300_emit.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/gallium/drivers/r300/r300_emit.c b/src/gallium/drivers/r300/r300_emit.c index b28be93..e17a907 100644 --- a/src/gallium/drivers/r300/r300_emit.c +++ b/src/gallium/drivers/r300/r300_emit.c @@ -45,7 +45,10 @@ void r300_emit_blend_state(struct r300_context* r300, CS_LOCALS(r300); if (fb->nr_cbufs) { - WRITE_CS_TABLE(blend->cb, size); + if (fb->cbufs[0]->format == PIPE_FORMAT_R16G16B16A16_FLOAT) + WRITE_CS_TABLE(blend->cb_noclamp, size); + else + WRITE_CS_TABLE(blend->cb_clamp, size); } else { WRITE_CS_TABLE(blend->cb_no_readwrite, size); } |