mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-07 21:40:20 +01:00
i965: add support for ARB_half_float_vertex
enables the extension on i965 and adds support to the draw upload for the vertex format. Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
parent
cfe884e203
commit
96f2f0daea
2 changed files with 12 additions and 0 deletions
|
|
@ -59,6 +59,14 @@ static GLuint float_types[5] = {
|
|||
BRW_SURFACEFORMAT_R32G32B32A32_FLOAT
|
||||
};
|
||||
|
||||
static GLuint half_float_types[5] = {
|
||||
0,
|
||||
BRW_SURFACEFORMAT_R16_FLOAT,
|
||||
BRW_SURFACEFORMAT_R16G16_FLOAT,
|
||||
0, /* can't seem to render this one */
|
||||
BRW_SURFACEFORMAT_R16G16B16A16_FLOAT
|
||||
};
|
||||
|
||||
static GLuint uint_types_norm[5] = {
|
||||
0,
|
||||
BRW_SURFACEFORMAT_R32_UNORM,
|
||||
|
|
@ -172,6 +180,7 @@ static GLuint get_surface_type( GLenum type, GLuint size,
|
|||
switch (type) {
|
||||
case GL_DOUBLE: return double_types[size];
|
||||
case GL_FLOAT: return float_types[size];
|
||||
case GL_HALF_FLOAT: return half_float_types[size];
|
||||
case GL_INT: return int_types_norm[size];
|
||||
case GL_SHORT: return short_types_norm[size];
|
||||
case GL_BYTE: return byte_types_norm[size];
|
||||
|
|
@ -194,6 +203,7 @@ static GLuint get_surface_type( GLenum type, GLuint size,
|
|||
switch (type) {
|
||||
case GL_DOUBLE: return double_types[size];
|
||||
case GL_FLOAT: return float_types[size];
|
||||
case GL_HALF_FLOAT: return half_float_types[size];
|
||||
case GL_INT: return int_types_scale[size];
|
||||
case GL_SHORT: return short_types_scale[size];
|
||||
case GL_BYTE: return byte_types_scale[size];
|
||||
|
|
@ -211,6 +221,7 @@ static GLuint get_size( GLenum type )
|
|||
switch (type) {
|
||||
case GL_DOUBLE: return sizeof(GLdouble);
|
||||
case GL_FLOAT: return sizeof(GLfloat);
|
||||
case GL_HALF_FLOAT: return sizeof(GLhalfARB);
|
||||
case GL_INT: return sizeof(GLint);
|
||||
case GL_SHORT: return sizeof(GLshort);
|
||||
case GL_BYTE: return sizeof(GLbyte);
|
||||
|
|
|
|||
|
|
@ -154,6 +154,7 @@ static const struct dri_extension brw_extensions[] = {
|
|||
{ "GL_ARB_fragment_program_shadow", NULL },
|
||||
{ "GL_ARB_fragment_shader", NULL },
|
||||
{ "GL_ARB_framebuffer_object", GL_ARB_framebuffer_object_functions},
|
||||
{ "GL_ARB_half_float_vertex", NULL },
|
||||
{ "GL_ARB_occlusion_query", GL_ARB_occlusion_query_functions },
|
||||
{ "GL_ARB_point_sprite", NULL },
|
||||
{ "GL_ARB_seamless_cube_map", NULL },
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue