r300: add half_float_vertex support
This commit is contained in:
@@ -244,6 +244,9 @@ USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
# define R300_DATA_TYPE_SHORT_4 7
|
||||
# define R300_DATA_TYPE_VECTOR_3_TTT 8
|
||||
# define R300_DATA_TYPE_VECTOR_3_EET 9
|
||||
# define R300_DATA_TYPE_FLOAT_8 10
|
||||
# define R300_DATA_TYPE_FLT16_2 11
|
||||
# define R300_DATA_TYPE_FLT16_4 12
|
||||
# define R300_SKIP_DWORDS_SHIFT 4
|
||||
# define R300_DST_VEC_LOC_SHIFT 8
|
||||
# define R300_LAST_VEC (1 << 13)
|
||||
|
||||
@@ -507,6 +507,14 @@ r300_translate_vertex_data_type(enum pipe_format format) {
|
||||
/* Half-floats, floats, doubles */
|
||||
case UTIL_FORMAT_TYPE_FLOAT:
|
||||
switch (util_format_get_component_bits(format, UTIL_FORMAT_COLORSPACE_RGB, 0)) {
|
||||
case 16:
|
||||
/* XXX Supported only on RV350 and later. */
|
||||
if (components > 2) {
|
||||
result = R300_DATA_TYPE_FLT16_4;
|
||||
} else {
|
||||
result = R300_DATA_TYPE_FLT16_2;
|
||||
}
|
||||
break;
|
||||
case 32:
|
||||
result = R300_DATA_TYPE_FLOAT_1 + (components - 1);
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user