gallium: fixup register indexes for fog/frontface/point coord
This commit is contained in:
@@ -142,9 +142,18 @@ find_translated_vp(struct st_context *st,
|
|||||||
if ((fragInputsRead & FRAG_BIT_FOGC)) {
|
if ((fragInputsRead & FRAG_BIT_FOGC)) {
|
||||||
/* leave placeholders for the
|
/* leave placeholders for the
|
||||||
* extra registers we extract from fog */
|
* extra registers we extract from fog */
|
||||||
if (stfp->Base.UsesFrontFacing ||
|
if (stfp->Base.UsesFrontFacing) {
|
||||||
stfp->Base.UsesPointCoord) {
|
if (!stfp->Base.UsesFogFragCoord)
|
||||||
numIn += 2;
|
--stfp->input_to_slot[inAttr];
|
||||||
|
else
|
||||||
|
++numIn;
|
||||||
|
}
|
||||||
|
if (stfp->Base.UsesPointCoord) {
|
||||||
|
if (!stfp->Base.UsesFrontFacing &&
|
||||||
|
!stfp->Base.UsesFogFragCoord)
|
||||||
|
stfp->input_to_slot[inAttr] -= 2;
|
||||||
|
else
|
||||||
|
++numIn;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user