r300g: set undefined vertex swizzles to (0,0,0,1) respectively

This commit is contained in:
Marek Olšák 2010-04-27 00:01:03 +02:00
parent 52f145a186
commit 83b76657b3

View file

@ -453,10 +453,17 @@ r300_translate_vertex_data_swizzle(enum pipe_format format) {
return 0;
}
for (i = 0; i < 4; i++) {
for (i = 0; i < desc->nr_channels; i++) {
swizzle |=
MIN2(desc->swizzle[i], R300_SWIZZLE_SELECT_FP_ONE) << (3*i);
}
/* Set (0,0,0,1) in unused components. */
for (; i < 3; i++) {
swizzle |= R300_SWIZZLE_SELECT_FP_ZERO << (3*i);
}
for (; i < 4; i++) {
swizzle |= R300_SWIZZLE_SELECT_FP_ONE << (3*i);
}
return swizzle | (0xf << R300_WRITE_ENA_SHIFT);
}