Format layout cannot be used to distinguish scaled/normalised formats.

This commit is contained in:
Michal Krol
2009-12-08 19:58:13 +01:00
parent ddbd2d08b7
commit 876a785a18
2 changed files with 5 additions and 15 deletions
+4 -14
View File
@@ -75,25 +75,15 @@ nv50_vbo_type_to_hw(enum pipe_format format)
case UTIL_FORMAT_TYPE_FLOAT:
return NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_FLOAT;
case UTIL_FORMAT_TYPE_UNSIGNED:
switch (desc->layout) {
case UTIL_FORMAT_LAYOUT_ARITH:
if (desc->channel[0].normalized) {
return NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_UNORM;
case UTIL_FORMAT_LAYOUT_ARRAY:
return NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_USCALED;
default:
return 0;
}
break;
return NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_USCALED;
case UTIL_FORMAT_TYPE_SIGNED:
switch (desc->layout) {
case UTIL_FORMAT_LAYOUT_ARITH:
if (desc->channel[0].normalized) {
return NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_SNORM;
case UTIL_FORMAT_LAYOUT_ARRAY:
return NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_SSCALED;
default:
return 0;
}
break;
return NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_SSCALED;
/*
case PIPE_FORMAT_TYPE_UINT:
return NV50TCL_VERTEX_ARRAY_ATTRIB_TYPE_UINT;
@@ -528,7 +528,7 @@ r300_translate_vertex_data_type(enum pipe_format format) {
if (desc->type == UTIL_FORMAT_TYPE_SIGNED) {
result |= R300_SIGNED;
}
if (desc->layout == UTIL_FORMAT_LAYOUT_ARITH) {
if (desc->channel[0].normalized) {
result |= R300_NORMALIZE;
}