wined3d: Add ARB_transform_feedback3 extension.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Józef Kucia 2017-03-28 12:00:05 +02:00 committed by Alexandre Julliard
parent e9bc775c24
commit d50745b7ae
2 changed files with 13 additions and 0 deletions

View File

@ -183,6 +183,7 @@ static const struct wined3d_extension_map gl_extension_map[] =
{"GL_ARB_texture_view", ARB_TEXTURE_VIEW }, {"GL_ARB_texture_view", ARB_TEXTURE_VIEW },
{"GL_ARB_timer_query", ARB_TIMER_QUERY }, {"GL_ARB_timer_query", ARB_TIMER_QUERY },
{"GL_ARB_transform_feedback2", ARB_TRANSFORM_FEEDBACK2 }, {"GL_ARB_transform_feedback2", ARB_TRANSFORM_FEEDBACK2 },
{"GL_ARB_transform_feedback3", ARB_TRANSFORM_FEEDBACK3 },
{"GL_ARB_uniform_buffer_object", ARB_UNIFORM_BUFFER_OBJECT }, {"GL_ARB_uniform_buffer_object", ARB_UNIFORM_BUFFER_OBJECT },
{"GL_ARB_vertex_array_bgra", ARB_VERTEX_ARRAY_BGRA }, {"GL_ARB_vertex_array_bgra", ARB_VERTEX_ARRAY_BGRA },
{"GL_ARB_vertex_blend", ARB_VERTEX_BLEND }, {"GL_ARB_vertex_blend", ARB_VERTEX_BLEND },
@ -2877,6 +2878,11 @@ static void load_gl_funcs(struct wined3d_gl_info *gl_info)
USE_GL_FUNC(glIsTransformFeedback); USE_GL_FUNC(glIsTransformFeedback);
USE_GL_FUNC(glPauseTransformFeedback); USE_GL_FUNC(glPauseTransformFeedback);
USE_GL_FUNC(glResumeTransformFeedback); USE_GL_FUNC(glResumeTransformFeedback);
/* GL_ARB_transform_feedback3 */
USE_GL_FUNC(glBeginQueryIndexed);
USE_GL_FUNC(glDrawTransformFeedbackStream);
USE_GL_FUNC(glEndQueryIndexed);
USE_GL_FUNC(glGetQueryIndexediv);
/* GL_ARB_uniform_buffer_object */ /* GL_ARB_uniform_buffer_object */
USE_GL_FUNC(glBindBufferBase) USE_GL_FUNC(glBindBufferBase)
USE_GL_FUNC(glBindBufferRange) USE_GL_FUNC(glBindBufferRange)
@ -3696,6 +3702,11 @@ static void wined3d_adapter_init_limits(struct wined3d_gl_info *gl_info)
gl_info->supported[ARB_SHADER_ATOMIC_COUNTERS] = FALSE; gl_info->supported[ARB_SHADER_ATOMIC_COUNTERS] = FALSE;
} }
} }
if (gl_info->supported[ARB_TRANSFORM_FEEDBACK3])
{
gl_info->gl_ops.gl.p_glGetIntegerv(GL_MAX_VERTEX_STREAMS, &gl_max);
TRACE("Max vertex streams: %d.\n", gl_max);
}
if (gl_info->supported[NV_LIGHT_MAX_EXPONENT]) if (gl_info->supported[NV_LIGHT_MAX_EXPONENT])
gl_info->gl_ops.gl.p_glGetFloatv(GL_MAX_SHININESS_NV, &gl_info->limits.shininess); gl_info->gl_ops.gl.p_glGetFloatv(GL_MAX_SHININESS_NV, &gl_info->limits.shininess);
@ -3824,6 +3835,7 @@ static BOOL wined3d_adapter_init_gl_caps(struct wined3d_adapter *adapter,
{ARB_GPU_SHADER5, MAKEDWORD_VERSION(4, 0)}, {ARB_GPU_SHADER5, MAKEDWORD_VERSION(4, 0)},
{ARB_TEXTURE_CUBE_MAP_ARRAY, MAKEDWORD_VERSION(4, 0)}, {ARB_TEXTURE_CUBE_MAP_ARRAY, MAKEDWORD_VERSION(4, 0)},
{ARB_TRANSFORM_FEEDBACK2, MAKEDWORD_VERSION(4, 0)}, {ARB_TRANSFORM_FEEDBACK2, MAKEDWORD_VERSION(4, 0)},
{ARB_TRANSFORM_FEEDBACK3, MAKEDWORD_VERSION(4, 0)},
{ARB_ES2_COMPATIBILITY, MAKEDWORD_VERSION(4, 1)}, {ARB_ES2_COMPATIBILITY, MAKEDWORD_VERSION(4, 1)},
{ARB_VIEWPORT_ARRAY, MAKEDWORD_VERSION(4, 1)}, {ARB_VIEWPORT_ARRAY, MAKEDWORD_VERSION(4, 1)},

View File

@ -116,6 +116,7 @@ enum wined3d_gl_extension
ARB_TEXTURE_VIEW, ARB_TEXTURE_VIEW,
ARB_TIMER_QUERY, ARB_TIMER_QUERY,
ARB_TRANSFORM_FEEDBACK2, ARB_TRANSFORM_FEEDBACK2,
ARB_TRANSFORM_FEEDBACK3,
ARB_UNIFORM_BUFFER_OBJECT, ARB_UNIFORM_BUFFER_OBJECT,
ARB_VERTEX_ARRAY_BGRA, ARB_VERTEX_ARRAY_BGRA,
ARB_VERTEX_BLEND, ARB_VERTEX_BLEND,