diff options
author | Marek Olšák <[email protected]> | 2010-07-25 23:40:51 +0200 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2010-07-25 23:40:51 +0200 |
commit | 6f2936c654c68388b9c43a189a1b8c06f3a9d241 (patch) | |
tree | f9bb4191f6b07f59b604e5067005b22e41756fa5 /src/gallium/drivers/r300/r300_texture.h | |
parent | 451a0ddb190e5185372fed9ec57d24a822442ecc (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.h | 3 |
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 585036ab3b3..a4524320fda 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); |