mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 09:38:07 +02:00
aux/draw: check for lines when setting clipping-mode
Reviewed-by: Roland Scheidegger <sroland@vmware.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17284>
This commit is contained in:
parent
43802ea3b5
commit
5fa9436617
2 changed files with 12 additions and 8 deletions
|
|
@ -81,8 +81,10 @@ fetch_pipeline_prepare(struct draw_pt_middle_end *middle,
|
|||
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);
|
||||
|
|
@ -114,8 +116,8 @@ fetch_pipeline_prepare(struct draw_pt_middle_end *middle,
|
|||
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));
|
||||
|
|
|
|||
|
|
@ -289,8 +289,10 @@ llvm_middle_end_prepare(struct draw_pt_middle_end *middle,
|
|||
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;
|
||||
|
|
@ -299,8 +301,8 @@ llvm_middle_end_prepare(struct draw_pt_middle_end *middle,
|
|||
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));
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue