Validate that VAO functions are present in ES2 interfaces and add bit to caps indicating VAO support.
Review URL: https://codereview.chromium.org/12447003
git-svn-id: http://skia.googlecode.com/svn/trunk@7979 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/src/gpu/gl/GrGLCaps.cpp b/src/gpu/gl/GrGLCaps.cpp
index a2f89f0..82b042f 100644
--- a/src/gpu/gl/GrGLCaps.cpp
+++ b/src/gpu/gl/GrGLCaps.cpp
@@ -37,6 +37,7 @@
fImagingSupport = false;
fTwoFormatLimit = false;
fFragCoordsConventionSupport = false;
+ fVertexArrayObjectSupport = false;
fUseNonVBOVertexAndIndexDynamicData = false;
fIsCoreProfile = false;
}
@@ -69,6 +70,7 @@
fImagingSupport = caps.fImagingSupport;
fTwoFormatLimit = caps.fTwoFormatLimit;
fFragCoordsConventionSupport = caps.fFragCoordsConventionSupport;
+ fVertexArrayObjectSupport = caps.fVertexArrayObjectSupport;
fUseNonVBOVertexAndIndexDynamicData = caps.fUseNonVBOVertexAndIndexDynamicData;
fIsCoreProfile = caps.fIsCoreProfile;
@@ -185,6 +187,13 @@
fIsCoreProfile = SkToBool(profileMask & GR_GL_CONTEXT_CORE_PROFILE_BIT);
}
+ if (kDesktop_GrGLBinding == binding) {
+ fVertexArrayObjectSupport = version >= GR_GL_VER(3, 0) ||
+ ctxInfo.hasExtension("GL_ARB_vertex_array_object");
+ } else {
+ fVertexArrayObjectSupport = ctxInfo.hasExtension("GL_OES_vertex_array_object");
+ }
+
this->initFSAASupport(ctxInfo, gli);
this->initStencilFormats(ctxInfo);
}