aboutsummaryrefslogtreecommitdiffstats
path: root/src/mesa/pipe/i915simple/i915_state.c
diff options
context:
space:
mode:
authorZack Rusin <[email protected]>2007-09-21 07:00:20 -0400
committerZack Rusin <[email protected]>2007-09-21 07:00:20 -0400
commit6cb87cf26f904b891faa42268f373864fa33541d (patch)
tree3af84bdc648094b7515ed924bd5d3b2f4e03c407 /src/mesa/pipe/i915simple/i915_state.c
parentb0fa489eba9170c4b102bf0feb1b1c3f02a34e4e (diff)
Make the alpha test state a cso.
Diffstat (limited to 'src/mesa/pipe/i915simple/i915_state.c')
-rw-r--r--src/mesa/pipe/i915simple/i915_state.c24
1 files changed, 20 insertions, 4 deletions
diff --git a/src/mesa/pipe/i915simple/i915_state.c b/src/mesa/pipe/i915simple/i915_state.c
index 525f8ce13a2..8bfd2da3b5c 100644
--- a/src/mesa/pipe/i915simple/i915_state.c
+++ b/src/mesa/pipe/i915simple/i915_state.c
@@ -394,16 +394,29 @@ static void i915_delete_depth_stencil_state(struct pipe_context *pipe,
free(depth_stencil);
}
-static void i915_set_alpha_test_state(struct pipe_context *pipe,
- const struct pipe_alpha_test_state *alpha)
+
+static void *
+i915_create_alpha_test_state(struct pipe_context *pipe,
+ const struct pipe_alpha_test_state *alpha)
+{
+ return 0;
+}
+
+static void i915_bind_alpha_test_state(struct pipe_context *pipe,
+ void *alpha)
{
struct i915_context *i915 = i915_context(pipe);
- i915->alpha_test = *alpha;
+ i915->alpha_test = (const struct pipe_alpha_test_state*)alpha;
i915->dirty |= I915_NEW_ALPHA_TEST;
}
+static void i915_delete_alpha_test_state(struct pipe_context *pipe,
+ void *alpha)
+{
+}
+
static void i915_set_scissor_state( struct pipe_context *pipe,
const struct pipe_scissor_state *scissor )
{
@@ -664,6 +677,10 @@ static void i915_set_vertex_element( struct pipe_context *pipe,
void
i915_init_state_functions( struct i915_context *i915 )
{
+ i915->pipe.create_alpha_test_state = i915_create_alpha_test_state;
+ i915->pipe.bind_alpha_test_state = i915_bind_alpha_test_state;
+ i915->pipe.delete_alpha_test_state = i915_delete_alpha_test_state;
+
i915->pipe.create_blend_state = i915_create_blend_state;
i915->pipe.bind_blend_state = i915_bind_blend_state;
i915->pipe.delete_blend_state = i915_delete_blend_state;
@@ -686,7 +703,6 @@ i915_init_state_functions( struct i915_context *i915 )
i915->pipe.bind_vs_state = i915_bind_vs_state;
i915->pipe.delete_vs_state = i915_delete_shader_state;
- i915->pipe.set_alpha_test_state = i915_set_alpha_test_state;
i915->pipe.set_blend_color = i915_set_blend_color;
i915->pipe.set_clip_state = i915_set_clip_state;
i915->pipe.set_clear_color_state = i915_set_clear_color_state;