diff options
author | Brian <brian.paul@tungstengraphics.com> | 2007-06-19 08:43:05 -0600 |
---|---|---|
committer | Brian <brian.paul@tungstengraphics.com> | 2007-06-19 08:43:05 -0600 |
commit | 2137e3053ec87e4463fdbd952537d1bbd1a3dbcd (patch) | |
tree | 7b8c6ad8f90db3b522953484c301f838f17eff03 /src/mesa | |
parent | 493f7b5f3ae2eb64eaa65e24e79a7a071c359b81 (diff) |
add point/line/polygon state
Diffstat (limited to 'src/mesa')
-rw-r--r-- | src/mesa/pipe/p_defines.h | 15 | ||||
-rw-r--r-- | src/mesa/pipe/p_state.h | 26 |
2 files changed, 41 insertions, 0 deletions
diff --git a/src/mesa/pipe/p_defines.h b/src/mesa/pipe/p_defines.h index 11b70175b0..550240e647 100644 --- a/src/mesa/pipe/p_defines.h +++ b/src/mesa/pipe/p_defines.h @@ -84,6 +84,21 @@ #define PIPE_FUNC_GEQUAL 6 #define PIPE_FUNC_ALWAYS 7 +/** Polygon fill mode */ +#define PIPE_POLYGON_MODE_FILL 0 +#define PIPE_POLYGON_MODE_LINE 1 +#define PIPE_POLYGON_MODE_POINT 2 + +/** Polygon cull mode */ +#define PIPE_POLYGON_CULL_NONE 0 +#define PIPE_POLYGON_CULL_FRONT 1 +#define PIPE_POLYGON_CULL_BACK 2 +#define PIPE_POLYGON_CULL_BOTH 3 + +/** Polygon front winding order */ +#define PIPE_POLYGON_FRONT_CW 0 +#define PIPE_POLYGON_FRONT_CCW 1 + #define PIPE_STENCIL_OP_KEEP 0 #define PIPE_STENCIL_OP_ZERO 1 #define PIPE_STENCIL_OP_REPLACE 2 diff --git a/src/mesa/pipe/p_state.h b/src/mesa/pipe/p_state.h index 71f1e99964..c88c0de6ad 100644 --- a/src/mesa/pipe/p_state.h +++ b/src/mesa/pipe/p_state.h @@ -133,6 +133,32 @@ struct pipe_blend_color { GLfloat color[4]; }; +struct pipe_line_state +{ + GLuint smooth:1; + GLuint stipple:1; + GLushort stipple_pattern; + GLint stipple_factor; + GLfloat width; +}; + +struct pipe_point_state +{ + GLuint smooth:1; + GLfloat size; + GLfloat min_size, max_size; + GLfloat attenuation[3]; +}; + +struct pipe_polygon_state { + GLuint cull_mode:2; /**< PIPE_POLYGON_CULL_x */ + GLuint front_winding:1; /**< PIPE_POLYGON_FRONT_CCW,CW */ + GLuint front_mode:2; /**< PIPE_POLYGON_MODE_x */ + GLuint back_mode:2; /**< PIPE_POLYGON_MODE_x */ + GLuint stipple:1; /**< enable */ + GLuint smooth:1; /**< enable */ + /* XXX Polygon offset? */ +}; struct pipe_stencil_state { GLuint front_enabled:1; |