aboutsummaryrefslogtreecommitdiff
path: root/mesalib/src/mesa/main/texformat.c
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2011-04-30 16:21:56 +0000
committermarha <marha@users.sourceforge.net>2011-04-30 16:21:56 +0000
commite4dd9264ee8d4a20eef0eec8c8bf8cff2473b46f (patch)
tree1804d7456ba8f200c7e329d4e6aa67ce4fb1649f /mesalib/src/mesa/main/texformat.c
parent88a78ebea08af461224f815a8380ea5c54186f43 (diff)
parent0402d388cb9803652c0f9a52ba7dcb6029fdd0b9 (diff)
downloadvcxsrv-e4dd9264ee8d4a20eef0eec8c8bf8cff2473b46f.tar.gz
vcxsrv-e4dd9264ee8d4a20eef0eec8c8bf8cff2473b46f.tar.bz2
vcxsrv-e4dd9264ee8d4a20eef0eec8c8bf8cff2473b46f.zip
svn merge ^/branches/released .
Diffstat (limited to 'mesalib/src/mesa/main/texformat.c')
-rw-r--r--mesalib/src/mesa/main/texformat.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/mesalib/src/mesa/main/texformat.c b/mesalib/src/mesa/main/texformat.c
index 24c4f1a92..41d9e9599 100644
--- a/mesalib/src/mesa/main/texformat.c
+++ b/mesalib/src/mesa/main/texformat.c
@@ -382,6 +382,26 @@ _mesa_choose_tex_format( struct gl_context *ctx, GLint internalFormat,
}
}
+ if (ctx->Extensions.EXT_texture_shared_exponent) {
+ switch (internalFormat) {
+ case GL_RGB9_E5:
+ ASSERT(ctx->TextureFormatSupported[MESA_FORMAT_RGB9_E5_FLOAT]);
+ return MESA_FORMAT_RGB9_E5_FLOAT;
+ default:
+ ; /* fallthrough */
+ }
+ }
+
+ if (ctx->Extensions.EXT_packed_float) {
+ switch (internalFormat) {
+ case GL_R11F_G11F_B10F:
+ ASSERT(ctx->TextureFormatSupported[MESA_FORMAT_R11_G11_B10_FLOAT]);
+ return MESA_FORMAT_R11_G11_B10_FLOAT;
+ default:
+ ; /* fallthrough */
+ }
+ }
+
if (ctx->Extensions.EXT_packed_depth_stencil) {
switch (internalFormat) {
case GL_DEPTH_STENCIL_EXT: