Kaynağa Gözat

llvmpipe: handle FACING interpolants in line and point setup

tags/snb-magic
Keith Whitwell 15 yıl önce
ebeveyn
işleme
60a45b03c3

+ 6
- 0
src/gallium/drivers/llvmpipe/lp_setup_line.c Dosyayı Görüntüle

@@ -208,6 +208,12 @@ static void setup_line_coefficients( struct lp_setup_context *setup,
fragcoord_usage_mask |= usage_mask;
break;

case LP_INTERP_FACING:
for (i = 0; i < NUM_CHANNELS; i++)
if (usage_mask & (1 << i))
constant_coef(setup, tri, slot+1, 1.0, i);
break;

default:
assert(0);
}

+ 13
- 3
src/gallium/drivers/llvmpipe/lp_setup_point.c Dosyayı Görüntüle

@@ -232,13 +232,23 @@ setup_point_coefficients( struct lp_setup_context *setup,
break;
}
}

/* Otherwise fallthrough */
default:
/* FALLTHROUGH */
case LP_INTERP_CONSTANT:
for (i = 0; i < NUM_CHANNELS; i++) {
if (usage_mask & (1 << i))
constant_coef(setup, point, slot+1, info->v0[vert_attr][i], i);
}
break;

case LP_INTERP_FACING:
for (i = 0; i < NUM_CHANNELS; i++)
if (usage_mask & (1 << i))
constant_coef(setup, point, slot+1, 1.0, i);
break;

default:
assert(0);
break;
}
}


Loading…
İptal
Kaydet