mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-21 20:10:14 +01:00
i965/gs: Set number of control data bits for stream mode.
If the geometry shader is indeed using streams then we need 2 control data bits per vertex for the StreamID. If the shader is not using streams then we don't need control data bits. Reviewed-by: Chris Forbes <chrisf@ijw.co.nz> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
This commit is contained in:
parent
6d3632c9c9
commit
9650293b51
1 changed files with 5 additions and 4 deletions
|
|
@ -81,10 +81,11 @@ do_gs_prog(struct brw_context *brw,
|
||||||
*/
|
*/
|
||||||
c.prog_data.control_data_format = GEN7_GS_CONTROL_DATA_FORMAT_GSCTL_SID;
|
c.prog_data.control_data_format = GEN7_GS_CONTROL_DATA_FORMAT_GSCTL_SID;
|
||||||
|
|
||||||
/* However, StreamID is not yet supported, so we output zero bits of
|
/* We only have to emit control bits if we are using streams */
|
||||||
* control data per vertex.
|
if (prog->Geom.UsesStreams)
|
||||||
*/
|
c.control_data_bits_per_vertex = 2;
|
||||||
c.control_data_bits_per_vertex = 0;
|
else
|
||||||
|
c.control_data_bits_per_vertex = 0;
|
||||||
} else {
|
} else {
|
||||||
/* When the output type is triangle_strip or line_strip, EndPrimitive()
|
/* When the output type is triangle_strip or line_strip, EndPrimitive()
|
||||||
* may be used to terminate the current strip and start a new one
|
* may be used to terminate the current strip and start a new one
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue