mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-24 04:30:10 +01:00
llvmpipe: fix front/back face system value in the fs
draw needs to inject the face information for tris in line/point fill mode since llvmpipe only sees lines and points. But for the new style face information (which is a system value and not an ordinary input register) we forgot to tell draw. Reviewed-by: Brian Paul <brianp@vmware.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18285>
This commit is contained in:
parent
723ae2368f
commit
08615f2807
1 changed files with 12 additions and 0 deletions
|
|
@ -124,6 +124,18 @@ compute_vertex_info(struct llvmpipe_context *llvmpipe)
|
|||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* The new style front face is a system value, hence won't show up as
|
||||
* ordinary fs register above. But we still need to assign a vs output
|
||||
* location so draw can inject face info for unfilled tris.
|
||||
*/
|
||||
if (llvmpipe->face_slot < 0 && fsInfo->uses_frontface) {
|
||||
vs_index = draw_find_shader_output(llvmpipe->draw,
|
||||
TGSI_SEMANTIC_FACE, 0);
|
||||
llvmpipe->face_slot = (int)vinfo->num_attribs;
|
||||
draw_emit_vertex_attr(vinfo, EMIT_4F, vs_index);
|
||||
}
|
||||
|
||||
/* Figure out if we need bcolor as well.
|
||||
*/
|
||||
for (i = 0; i < 2; i++) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue