=?UTF-8?Q?Stefan=20D=C3=B6singer=20?=: wined3d: Check for support before calling glDrawElementsInstancedBaseVertex.
Alexandre Julliard
julliard at winehq.org
Fri Jan 10 14:44:54 CST 2014
Module: wine
Branch: stable
Commit: 738302ffd1d923a7fa981ff5bafce78e77252022
URL: http://source.winehq.org/git/wine.git/?a=commit;h=738302ffd1d923a7fa981ff5bafce78e77252022
Author: Stefan Dösinger <stefan at codeweavers.com>
Date: Mon Nov 4 12:38:33 2013 +0100
wined3d: Check for support before calling glDrawElementsInstancedBaseVertex.
(cherry picked from commit 84a1e60e48d99efdaa6d7f4648d51bf938a98f98)
---
dlls/wined3d/drawprim.c | 15 ++++++++++++---
1 file changed, 12 insertions(+), 3 deletions(-)
diff --git a/dlls/wined3d/drawprim.c b/dlls/wined3d/drawprim.c
index c75ab59..490bf15 100644
--- a/dlls/wined3d/drawprim.c
+++ b/dlls/wined3d/drawprim.c
@@ -52,9 +52,18 @@ static void drawStridedFast(const struct wined3d_gl_info *gl_info, GLenum primit
{
if (start_instance)
FIXME("Start instance (%u) not supported.\n", start_instance);
- GL_EXTCALL(glDrawElementsInstancedBaseVertex(primitive_type, count, idxtype,
- (const char *)idx_data + (idx_size * start_idx), instance_count, base_vertex_index));
- checkGLcall("glDrawElementsInstancedBaseVertex");
+ if (gl_info->supported[ARB_DRAW_ELEMENTS_BASE_VERTEX])
+ {
+ GL_EXTCALL(glDrawElementsInstancedBaseVertex(primitive_type, count, idxtype,
+ (const char *)idx_data + (idx_size * start_idx), instance_count, base_vertex_index));
+ checkGLcall("glDrawElementsInstancedBaseVertex");
+ }
+ else
+ {
+ GL_EXTCALL(glDrawElementsInstancedARB(primitive_type, count, idxtype,
+ (const char *)idx_data + (idx_size * start_idx), instance_count));
+ checkGLcall("glDrawElementsInstancedARB");
+ }
}
}
else if (gl_info->supported[ARB_DRAW_ELEMENTS_BASE_VERTEX])
More information about the wine-cvs
mailing list