summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/i915/i915_context.h
diff options
context:
space:
mode:
authorStéphane Marchesin <[email protected]>2011-10-08 23:54:53 -0700
committerStéphane Marchesin <[email protected]>2011-10-08 23:54:53 -0700
commit8a22064d316efcdc0d0107fe227a2ed5a746c4f8 (patch)
tree75781f971736cb5ba4d7a024c8bfd41037f5e26d /src/gallium/drivers/i915/i915_context.h
parente125786be8e19a9606afb91cd7e8bc37d035b63f (diff)
i915g: Implement vertex textures.
Diffstat (limited to 'src/gallium/drivers/i915/i915_context.h')
-rw-r--r--src/gallium/drivers/i915/i915_context.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/gallium/drivers/i915/i915_context.h b/src/gallium/drivers/i915/i915_context.h
index dacd0a669c1..7f67f5f1340 100644
--- a/src/gallium/drivers/i915/i915_context.h
+++ b/src/gallium/drivers/i915/i915_context.h
@@ -225,6 +225,7 @@ struct i915_context {
*/
const struct i915_blend_state *blend;
const struct i915_sampler_state *sampler[PIPE_MAX_SAMPLERS];
+ struct pipe_sampler_state *vertex_samplers[PIPE_MAX_VERTEX_SAMPLERS];
const struct i915_depth_stencil_state *depth_stencil;
const struct i915_rasterizer_state *rasterizer;
@@ -238,13 +239,19 @@ struct i915_context {
struct pipe_poly_stipple poly_stipple;
struct pipe_scissor_state scissor;
struct pipe_sampler_view *fragment_sampler_views[PIPE_MAX_SAMPLERS];
+ struct pipe_sampler_view *vertex_sampler_views[PIPE_MAX_SAMPLERS];
struct pipe_viewport_state viewport;
struct pipe_index_buffer index_buffer;
unsigned dirty;
+ struct pipe_resource *mapped_vs_tex[PIPE_MAX_VERTEX_SAMPLERS];
+ struct i915_winsys_buffer* mapped_vs_tex_buffer[PIPE_MAX_VERTEX_SAMPLERS];
+
unsigned num_samplers;
unsigned num_fragment_sampler_views;
+ unsigned num_vertex_samplers;
+ unsigned num_vertex_sampler_views;
struct i915_winsys_batchbuffer *batch;
@@ -361,6 +368,16 @@ struct draw_stage *i915_draw_vbuf_stage( struct i915_context *i915 );
/***********************************************************************
+ * i915_state.c:
+ */
+void i915_prepare_vertex_sampling(struct i915_context *i915,
+ unsigned num,
+ struct pipe_sampler_view **views);
+void i915_cleanup_vertex_sampling(struct i915_context *i915);
+
+
+
+/***********************************************************************
* i915_state_emit.c:
*/
void i915_emit_hardware_state(struct i915_context *i915 );