Cell: sketch out needed rasterizer state
authorBrian <brian.paul@tungstengraphics.com>
Sat, 12 Jan 2008 17:06:27 +0000 (10:06 -0700)
committerBrian <brian.paul@tungstengraphics.com>
Sat, 12 Jan 2008 17:06:27 +0000 (10:06 -0700)
src/mesa/pipe/cell/ppu/cell_state_rasterizer.c

index 11e7de7309242f6f2af4c09dcb17d696f57ecc10..6b1675af26376cae1e2a558e0e6618c7d0bc3477 100644 (file)
 #include "cell_state.h"
 
 
+
+struct spu_rasterizer_state
+{
+   unsigned flatshade:1;
+#if 0
+   unsigned light_twoside:1;
+   unsigned front_winding:2;  /**< PIPE_WINDING_x */
+   unsigned cull_mode:2;      /**< PIPE_WINDING_x */
+   unsigned fill_cw:2;        /**< PIPE_POLYGON_MODE_x */
+   unsigned fill_ccw:2;       /**< PIPE_POLYGON_MODE_x */
+   unsigned offset_cw:1;
+   unsigned offset_ccw:1;
+#endif
+   unsigned scissor:1;
+   unsigned poly_smooth:1;
+   unsigned poly_stipple_enable:1;
+   unsigned point_smooth:1;
+#if 0
+   unsigned point_sprite:1;
+   unsigned point_size_per_vertex:1; /**< size computed in vertex shader */
+#endif
+   unsigned multisample:1;         /* XXX maybe more ms state in future */
+   unsigned line_smooth:1;
+   unsigned line_stipple_enable:1;
+   unsigned line_stipple_factor:8;  /**< [1..256] actually */
+   unsigned line_stipple_pattern:16;
+#if 0
+   unsigned bypass_clipping:1;
+#endif
+   unsigned origin_lower_left:1;  /**< Is (0,0) the lower-left corner? */
+
+   float line_width;
+   float point_size;           /**< used when no per-vertex size */
+#if 0
+   float offset_units;
+   float offset_scale;
+   ubyte sprite_coord_mode[PIPE_MAX_SHADER_OUTPUTS]; /**< PIPE_SPRITE_COORD_ */
+#endif
+};
+
+
+
 void *
 cell_create_rasterizer_state(struct pipe_context *pipe,
                              const struct pipe_rasterizer_state *setup)