r300g: remove hacks from translate_vertex_data_swizzle

Fixing RGBA 4ub vertex colors.
This commit is contained in:
Marek Olšák 2010-03-09 02:10:36 +01:00
parent 73060ec7eb
commit 7e6e049bb7
1 changed files with 4 additions and 20 deletions

View File

@ -453,7 +453,6 @@ r300_translate_vertex_data_type(enum pipe_format format) {
static INLINE uint16_t
r300_translate_vertex_data_swizzle(enum pipe_format format) {
const struct util_format_description *desc = util_format_description(format);
unsigned swizzle[4], i;
assert(format);
@ -463,25 +462,10 @@ r300_translate_vertex_data_swizzle(enum pipe_format format) {
return 0;
}
/* Swizzles for 8bits formats are in the reversed order, not sure why. */
if (desc->channel[0].size == 8) {
for (i = 0; i < 4; i++) {
if (desc->swizzle[i] <= 3) {
swizzle[i] = 3 - desc->swizzle[i];
} else {
swizzle[i] = desc->swizzle[i];
}
}
} else {
for (i = 0; i < 4; i++) {
swizzle[i] = desc->swizzle[i];
}
}
return ((swizzle[0] << R300_SWIZZLE_SELECT_X_SHIFT) |
(swizzle[1] << R300_SWIZZLE_SELECT_Y_SHIFT) |
(swizzle[2] << R300_SWIZZLE_SELECT_Z_SHIFT) |
(swizzle[3] << R300_SWIZZLE_SELECT_W_SHIFT) |
return ((desc->swizzle[0] << R300_SWIZZLE_SELECT_X_SHIFT) |
(desc->swizzle[1] << R300_SWIZZLE_SELECT_Y_SHIFT) |
(desc->swizzle[2] << R300_SWIZZLE_SELECT_Z_SHIFT) |
(desc->swizzle[3] << R300_SWIZZLE_SELECT_W_SHIFT) |
(0xf << R300_WRITE_ENA_SHIFT));
}