summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/r300/r300_texture.h
diff options
context:
space:
mode:
authorMarek Olšák <maraeo@gmail.com>2010-07-25 23:40:51 +0200
committerMarek Olšák <maraeo@gmail.com>2010-07-25 23:40:51 +0200
commit6f2936c654c68388b9c43a189a1b8c06f3a9d241 (patch)
treef9bb4191f6b07f59b604e5067005b22e41756fa5 /src/gallium/drivers/r300/r300_texture.h
parent451a0ddb190e5185372fed9ec57d24a822442ecc (diff)
r300g: implement D24X8 texture sampling for r3xx-r4xx
Because the hw can't sample it, I reinterpret the format as G16R16 and sample the G component. This gives 16 bits of precision, which should be enough for depth texturing (surprisingly, the sampled values are exactly the same as in D16 textures). This also enables EXT_packed_depth_stencil on those old chipsets, finally.
Diffstat (limited to 'src/gallium/drivers/r300/r300_texture.h')
-rw-r--r--src/gallium/drivers/r300/r300_texture.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/drivers/r300/r300_texture.h b/src/gallium/drivers/r300/r300_texture.h
index 585036ab3b..a4524320fd 100644
--- a/src/gallium/drivers/r300/r300_texture.h
+++ b/src/gallium/drivers/r300/r300_texture.h
@@ -35,7 +35,8 @@ unsigned r300_get_swizzle_combined(const unsigned char *swizzle_format,
const unsigned char *swizzle_view);
uint32_t r300_translate_texformat(enum pipe_format format,
- const unsigned char *swizzle_view);
+ const unsigned char *swizzle_view,
+ boolean is_r500);
uint32_t r500_tx_format_msb_bit(enum pipe_format format);