summaryrefslogtreecommitdiff
path: root/src/mesa/pipe/softpipe/sp_tile_cache.h
diff options
context:
space:
mode:
authorBrian <brian.paul@tungstengraphics.com>2007-12-07 20:13:10 -0700
committerBrian <brian.paul@tungstengraphics.com>2007-12-07 20:13:10 -0700
commit127a493fe2a2f7fd8515b278185322dfacdad357 (patch)
treeab2fc372f4efb1cba78594223e30b1a637896b02 /src/mesa/pipe/softpipe/sp_tile_cache.h
parent51537e0b6efec61e10db522ba2c0c66b407d7f26 (diff)
Tile clearing optimizations.
Clear using int values rather than floats when possible. Better performance now.
Diffstat (limited to 'src/mesa/pipe/softpipe/sp_tile_cache.h')
-rw-r--r--src/mesa/pipe/softpipe/sp_tile_cache.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/mesa/pipe/softpipe/sp_tile_cache.h b/src/mesa/pipe/softpipe/sp_tile_cache.h
index c4f2e0f184..91fb2795a2 100644
--- a/src/mesa/pipe/softpipe/sp_tile_cache.h
+++ b/src/mesa/pipe/softpipe/sp_tile_cache.h
@@ -51,9 +51,11 @@ struct softpipe_cached_tile
int z, face, level; /**< Extra texture indexes */
union {
float color[TILE_SIZE][TILE_SIZE][4];
+ uint color32[TILE_SIZE][TILE_SIZE];
uint depth32[TILE_SIZE][TILE_SIZE];
ushort depth16[TILE_SIZE][TILE_SIZE];
ubyte stencil8[TILE_SIZE][TILE_SIZE];
+ ubyte any[1];
} data;
};
@@ -80,7 +82,7 @@ sp_flush_tile_cache(struct softpipe_context *softpipe,
struct softpipe_tile_cache *tc);
extern void
-sp_tile_cache_clear(struct softpipe_tile_cache *tc, const float value[4]);
+sp_tile_cache_clear(struct softpipe_tile_cache *tc, uint clearValue);
extern struct softpipe_cached_tile *
sp_get_cached_tile(struct softpipe_context *softpipe,