diff options
author | José Fonseca <[email protected]> | 2009-08-21 07:48:04 +0100 |
---|---|---|
committer | José Fonseca <[email protected]> | 2009-08-29 09:21:38 +0100 |
commit | e3b38e5ec1ba93e3f1a1b3d5039c70ff7aa3ebe6 (patch) | |
tree | 51b1b47b1eb8466dbe629fee73cd1d7c219b3cae /src/gallium/drivers/llvmpipe/lp_state.h | |
parent | db35ac36d92545392b76785bf7fca47151f1469c (diff) |
llvmpipe: Code generate the depth test, and include in the shader.
Only 32bit depth/stencil surfaces supported for now. Stencil ops not
implemented yet.
Diffstat (limited to 'src/gallium/drivers/llvmpipe/lp_state.h')
-rw-r--r-- | src/gallium/drivers/llvmpipe/lp_state.h | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_state.h b/src/gallium/drivers/llvmpipe/lp_state.h index db21096f215..2d6add8f3ac 100644 --- a/src/gallium/drivers/llvmpipe/lp_state.h +++ b/src/gallium/drivers/llvmpipe/lp_state.h @@ -74,15 +74,18 @@ typedef void struct lp_fragment_shader; -/** - * Subclass of pipe_shader_state (though it doesn't really need to be). - * - * This is starting to look an awful lot like a quad pipeline stage... - */ +struct lp_fragment_shader_variant_key +{ + struct pipe_depth_state depth; + struct pipe_alpha_state alpha; +}; + + struct lp_fragment_shader_variant { struct lp_fragment_shader *shader; - struct pipe_alpha_state alpha; + + struct lp_fragment_shader_variant_key key; LLVMValueRef function; @@ -103,8 +106,6 @@ struct lp_fragment_shader struct tgsi_shader_info info; - struct llvmpipe_screen *screen; - struct lp_fragment_shader_variant *variants; struct lp_fragment_shader_variant *current; |