Mesa (master): r300g: don't enable aniso with nearest filtering
Marek Olšák
mareko at kemper.freedesktop.org
Thu Jun 9 02:19:44 UTC 2011
Module: Mesa
Branch: master
Commit: 466ce95ddff734d5090bcb1c5ada7a4f23e13226
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=466ce95ddff734d5090bcb1c5ada7a4f23e13226
Author: Marek Olšák <maraeo at gmail.com>
Date: Thu Jun 9 03:36:37 2011 +0200
r300g: don't enable aniso with nearest filtering
---
src/gallium/drivers/r300/r300_state_inlines.h | 80 ++++++++++++-------------
1 files changed, 39 insertions(+), 41 deletions(-)
diff --git a/src/gallium/drivers/r300/r300_state_inlines.h b/src/gallium/drivers/r300/r300_state_inlines.h
index 54dae1a..62c03b3 100644
--- a/src/gallium/drivers/r300/r300_state_inlines.h
+++ b/src/gallium/drivers/r300/r300_state_inlines.h
@@ -261,51 +261,49 @@ static INLINE uint32_t r300_translate_wrap(int wrap)
}
static INLINE uint32_t r300_translate_tex_filters(int min, int mag, int mip,
- int is_anisotropic)
+ boolean is_anisotropic)
{
uint32_t retval = 0;
- if (is_anisotropic)
- retval |= R300_TX_MIN_FILTER_ANISO | R300_TX_MAG_FILTER_ANISO;
- else {
- switch (min) {
- case PIPE_TEX_FILTER_NEAREST:
- retval |= R300_TX_MIN_FILTER_NEAREST;
- break;
- case PIPE_TEX_FILTER_LINEAR:
- retval |= R300_TX_MIN_FILTER_LINEAR;
- break;
- default:
- fprintf(stderr, "r300: Unknown texture filter %d\n", min);
- assert(0);
- break;
- }
- switch (mag) {
- case PIPE_TEX_FILTER_NEAREST:
- retval |= R300_TX_MAG_FILTER_NEAREST;
- break;
- case PIPE_TEX_FILTER_LINEAR:
- retval |= R300_TX_MAG_FILTER_LINEAR;
- break;
- default:
- fprintf(stderr, "r300: Unknown texture filter %d\n", mag);
- assert(0);
- break;
- }
+
+ switch (min) {
+ case PIPE_TEX_FILTER_NEAREST:
+ retval |= R300_TX_MIN_FILTER_NEAREST;
+ break;
+ case PIPE_TEX_FILTER_LINEAR:
+ retval |= is_anisotropic ? R300_TX_MIN_FILTER_ANISO :
+ R300_TX_MIN_FILTER_LINEAR;
+ break;
+ default:
+ fprintf(stderr, "r300: Unknown texture filter %d\n", min);
+ assert(0);
}
+
+ switch (mag) {
+ case PIPE_TEX_FILTER_NEAREST:
+ retval |= R300_TX_MAG_FILTER_NEAREST;
+ break;
+ case PIPE_TEX_FILTER_LINEAR:
+ retval |= is_anisotropic ? R300_TX_MAG_FILTER_ANISO :
+ R300_TX_MAG_FILTER_LINEAR;
+ break;
+ default:
+ fprintf(stderr, "r300: Unknown texture filter %d\n", mag);
+ assert(0);
+ }
+
switch (mip) {
- case PIPE_TEX_MIPFILTER_NONE:
- retval |= R300_TX_MIN_FILTER_MIP_NONE;
- break;
- case PIPE_TEX_MIPFILTER_NEAREST:
- retval |= R300_TX_MIN_FILTER_MIP_NEAREST;
- break;
- case PIPE_TEX_MIPFILTER_LINEAR:
- retval |= R300_TX_MIN_FILTER_MIP_LINEAR;
- break;
- default:
- fprintf(stderr, "r300: Unknown texture filter %d\n", mip);
- assert(0);
- break;
+ case PIPE_TEX_MIPFILTER_NONE:
+ retval |= R300_TX_MIN_FILTER_MIP_NONE;
+ break;
+ case PIPE_TEX_MIPFILTER_NEAREST:
+ retval |= R300_TX_MIN_FILTER_MIP_NEAREST;
+ break;
+ case PIPE_TEX_MIPFILTER_LINEAR:
+ retval |= R300_TX_MIN_FILTER_MIP_LINEAR;
+ break;
+ default:
+ fprintf(stderr, "r300: Unknown texture filter %d\n", mip);
+ assert(0);
}
return retval;
More information about the mesa-commit
mailing list