ctx->Polygon.BackMode != GL_FILL);
}
- /* _NEW_LIGHT | _NEW_BUFFERS */
- key.clamp_vertex_color = ctx->Light._ClampVertexColor;
+ if (prog->OutputsWritten & (VARYING_BIT_COL0 | VARYING_BIT_COL1 |
+ VARYING_BIT_BFC0 | VARYING_BIT_BFC1)) {
+ /* _NEW_LIGHT | _NEW_BUFFERS */
+ key.clamp_vertex_color = ctx->Light._ClampVertexColor;
+ }
/* _NEW_POINT */
if (brw->gen < 6 && ctx->Point.PointSprite) {
memset(&key, 0, sizeof(key));
brw_vec4_setup_prog_key_for_precompile(ctx, &key.base, bvp->id, &vp->Base);
- key.clamp_vertex_color = ctx->API == API_OPENGL_COMPAT;
+ key.clamp_vertex_color =
+ (prog->OutputsWritten & (VARYING_BIT_COL0 | VARYING_BIT_COL1 |
+ VARYING_BIT_BFC0 | VARYING_BIT_BFC1));
success = do_vs_prog(brw, shader_prog, bvp, &key);