sctx->queued.named.rasterizer->multisample_enable &&
!sctx->framebuffer.cb0_is_integer;
}
+
+ key->ps.poly_stipple = sctx->queued.named.rasterizer->poly_stipple_enable &&
+ ((sctx->current_rast_prim >= PIPE_PRIM_TRIANGLES &&
+ sctx->current_rast_prim <= PIPE_PRIM_POLYGON) ||
+ sctx->current_rast_prim >= PIPE_PRIM_TRIANGLES_ADJACENCY);
}
if (sctx->queued.named.dsa) {
key->ps.alpha_func = sctx->queued.named.dsa->alpha_func;
}
}
- if (j == vsinfo->num_outputs) {
- /* No corresponding output found, load defaults into input */
- tmp |= S_028644_OFFSET(0x20);
+ if (j == vsinfo->num_outputs & !G_028644_PT_SPRITE_TEX(tmp)) {
+ /* No corresponding output found, load defaults into input.
+ * Don't set any other bits.
+ * (FLAT_SHADE=1 completely changes behavior) */
+ tmp = S_028644_OFFSET(0x20);
}
si_pm4_set_reg(pm4,