diff options
author | Marek Olšák <[email protected]> | 2010-06-14 05:18:47 +0200 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2010-06-14 12:46:38 +0200 |
commit | cf3778bae03460325960d2aec0cd4cdf325299eb (patch) | |
tree | bb8fe4cad9fff52b0a4995c9889f18c141034e3b /src/gallium/drivers/r300/r300_context.c | |
parent | 824c1f6a4a6d5ff2f93dee738f59173ffeb171f1 (diff) |
r300g: rewrite occlusion queries
The previous implementation had issues with queries spanning over several
command streams as well as using a very large number of queries.
This fixes flickering in Enemy Territory: Quake Wars. The driver now renders
everything correctly in this game and the graphics is awesome.
Diffstat (limited to 'src/gallium/drivers/r300/r300_context.c')
-rw-r--r-- | src/gallium/drivers/r300/r300_context.c | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/src/gallium/drivers/r300/r300_context.c b/src/gallium/drivers/r300/r300_context.c index 57cf68f0132..113942644c1 100644 --- a/src/gallium/drivers/r300/r300_context.c +++ b/src/gallium/drivers/r300/r300_context.c @@ -39,7 +39,7 @@ static void r300_destroy_context(struct pipe_context* context) { struct r300_context* r300 = r300_context(context); - struct r300_query* query, * temp; + struct r300_query *query, *temp; struct r300_atom *atom; util_blitter_destroy(r300->blitter); @@ -55,9 +55,6 @@ static void r300_destroy_context(struct pipe_context* context) } } - /* Free the OQ BO. */ - context->screen->resource_destroy(context->screen, r300->oqbo); - /* If there are any queries pending or not destroyed, remove them now. */ foreach_s(query, temp, &r300->query_list) { remove_from_list(query); @@ -221,9 +218,6 @@ struct pipe_context* r300_create_context(struct pipe_screen* screen, r300_setup_atoms(r300); - /* Open up the OQ BO. */ - r300->oqbo = pipe_buffer_create(screen, - R300_BIND_OQBO, 4096); make_empty_list(&r300->query_list); r300_init_blit_functions(r300); |