mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-30 13:40:23 +01:00
softpipe: plug in softpipe's texture samplers into draw module.
This commit is contained in:
parent
f2bccfd3c8
commit
b9604fe769
2 changed files with 18 additions and 0 deletions
|
|
@ -221,6 +221,14 @@ softpipe_create( struct pipe_screen *screen,
|
|||
softpipe->quad[i].output = sp_quad_output_stage(softpipe);
|
||||
}
|
||||
|
||||
for (i = 0; i < PIPE_MAX_SAMPLERS; i++) {
|
||||
softpipe->tgsi.samplers[i].base.get_samples = sp_get_samples;
|
||||
softpipe->tgsi.samplers[i].unit = i;
|
||||
softpipe->tgsi.samplers[i].sp = softpipe;
|
||||
softpipe->tgsi.samplers[i].cache = softpipe->tex_cache[i];
|
||||
softpipe->tgsi.samplers_list[i] = &softpipe->tgsi.samplers[i];
|
||||
}
|
||||
|
||||
/*
|
||||
* Create drawing context and plug our rendering stage into it.
|
||||
*/
|
||||
|
|
@ -228,6 +236,9 @@ softpipe_create( struct pipe_screen *screen,
|
|||
if (!softpipe->draw)
|
||||
goto fail;
|
||||
|
||||
draw_texture_samplers(softpipe->draw,
|
||||
PIPE_MAX_SAMPLERS, softpipe->tgsi.samplers_list);
|
||||
|
||||
softpipe->setup = sp_draw_render_stage(softpipe);
|
||||
if (!softpipe->setup)
|
||||
goto fail;
|
||||
|
|
|
|||
|
|
@ -37,6 +37,7 @@
|
|||
#include "draw/draw_vertex.h"
|
||||
|
||||
#include "sp_quad.h"
|
||||
#include "sp_tex_sample.h"
|
||||
|
||||
|
||||
/**
|
||||
|
|
@ -139,6 +140,12 @@ struct softpipe_context {
|
|||
struct quad_stage *first; /**< points to one of the above stages */
|
||||
} quad[SP_NUM_QUAD_THREADS];
|
||||
|
||||
/** TGSI exec things */
|
||||
struct {
|
||||
struct sp_shader_sampler samplers[PIPE_MAX_SAMPLERS];
|
||||
struct sp_shader_sampler *samplers_list[PIPE_MAX_SAMPLERS];
|
||||
} tgsi;
|
||||
|
||||
/** The primitive drawing context */
|
||||
struct draw_context *draw;
|
||||
struct draw_stage *setup;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue