mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-08 11:18:08 +02:00
r300: half float support
Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
parent
96f2f0daea
commit
d82b8038fd
3 changed files with 18 additions and 0 deletions
|
|
@ -97,6 +97,7 @@ static const struct dri_extension card_extensions[] = {
|
|||
/* *INDENT-OFF* */
|
||||
{"GL_ARB_depth_texture", NULL},
|
||||
{"GL_ARB_fragment_program", NULL},
|
||||
{"GL_ARB_half_float_vertex", NULL},
|
||||
{"GL_ARB_occlusion_query", GL_ARB_occlusion_query_functions},
|
||||
{"GL_ARB_multitexture", NULL},
|
||||
{"GL_ARB_point_parameters", GL_ARB_point_parameters_functions},
|
||||
|
|
|
|||
|
|
@ -56,6 +56,8 @@ static int getTypeSize(GLenum type)
|
|||
switch (type) {
|
||||
case GL_DOUBLE:
|
||||
return sizeof(GLdouble);
|
||||
case GL_HALF_FLOAT:
|
||||
return sizeof(GLhalfARB);
|
||||
case GL_FLOAT:
|
||||
return sizeof(GLfloat);
|
||||
case GL_INT:
|
||||
|
|
@ -385,6 +387,18 @@ static void r300TranslateAttrib(GLcontext *ctx, GLuint attr, int count, const st
|
|||
r300_attr._signed = 0;
|
||||
r300_attr.normalize = 0;
|
||||
break;
|
||||
case GL_HALF_FLOAT:
|
||||
switch (input->Size) {
|
||||
case 1:
|
||||
case 2:
|
||||
r300_attr.data_type = R300_DATA_TYPE_FLT16_2;
|
||||
break;
|
||||
case 3:
|
||||
case 4:
|
||||
r300_attr.data_type = R300_DATA_TYPE_FLT16_4;
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case GL_SHORT:
|
||||
r300_attr._signed = 1;
|
||||
r300_attr.normalize = input->Normalized;
|
||||
|
|
|
|||
|
|
@ -230,6 +230,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_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)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue