u_assembled_prim(prim));
unsigned nr_vs_outputs = draw_total_vs_outputs(draw);
unsigned nr = MAX2(vs->info.num_inputs, nr_vs_outputs);
- unsigned point_clip = draw->rasterizer->fill_front == PIPE_POLYGON_MODE_POINT ||
- gs_out_prim == PIPE_PRIM_POINTS;
+ unsigned point_line_clip = draw->rasterizer->fill_front == PIPE_POLYGON_MODE_POINT ||
+ draw->rasterizer->fill_front == PIPE_POLYGON_MODE_LINE ||
+ gs_out_prim == PIPE_PRIM_POINTS ||
+ gs_out_prim == PIPE_PRIM_LINE_STRIP;
if (gs) {
nr = MAX2(nr, gs->info.num_outputs + 1);
draw->clip_xy,
draw->clip_z,
draw->clip_user,
- point_clip ? draw->guard_band_points_lines_xy :
- draw->guard_band_xy,
+ point_line_clip ? draw->guard_band_points_lines_xy :
+ draw->guard_band_xy,
draw->bypass_viewport,
draw->rasterizer->clip_halfz,
(draw->vs.edgeflag_output ? TRUE : FALSE));
const enum pipe_prim_type out_prim =
gs ? gs->output_primitive : tes ? get_tes_output_prim(tes) :
u_assembled_prim(in_prim);
- unsigned point_clip = draw->rasterizer->fill_front == PIPE_POLYGON_MODE_POINT ||
- out_prim == PIPE_PRIM_POINTS;
+ unsigned point_line_clip = draw->rasterizer->fill_front == PIPE_POLYGON_MODE_POINT ||
+ draw->rasterizer->fill_front == PIPE_POLYGON_MODE_LINE ||
+ out_prim == PIPE_PRIM_POINTS ||
+ u_reduced_prim(out_prim) == PIPE_PRIM_LINES;
fpme->input_prim = in_prim;
fpme->opt = opt;
draw->clip_xy,
draw->clip_z,
draw->clip_user,
- point_clip ? draw->guard_band_points_lines_xy :
- draw->guard_band_xy,
+ point_line_clip ? draw->guard_band_points_lines_xy :
+ draw->guard_band_xy,
draw->bypass_viewport,
draw->rasterizer->clip_halfz,
(draw->vs.edgeflag_output ? TRUE : FALSE));