Fix gl vertex array object functions.

This logic looks to have been dropped when we moved to the auto
generated interfaces

Bug: skia:11083
Change-Id: I5069d81c872ed2c084b8ddf773f63e5202b123eb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/348190
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
This commit is contained in:
Greg Daniel 2020-12-29 17:17:14 -05:00 committed by Skia Commit-Bot
parent 93aed9ac05
commit 7ae444449c
3 changed files with 20 additions and 5 deletions

View File

@ -158,9 +158,19 @@ sk_sp<const GrGLInterface> GrGLMakeAssembledGLInterface(void *ctx, GrGLGetProc g
GET_PROC(MemoryBarrier);
}
GET_PROC(BindVertexArray);
GET_PROC(DeleteVertexArrays);
GET_PROC(GenVertexArrays);
if (glVer >= GR_GL_VER(3,0)) {
GET_PROC(BindVertexArray);
GET_PROC(DeleteVertexArrays);
GET_PROC(GenVertexArrays);
} else if (extensions.has("GL_ARB_vertex_array_object")) {
GET_PROC(BindVertexArray);
GET_PROC(DeleteVertexArrays);
GET_PROC(GenVertexArrays);
} else if (extensions.has("GL_APPLE_vertex_array_object")) {
GET_PROC_SUFFIX(BindVertexArray, APPLE);
GET_PROC_SUFFIX(DeleteVertexArrays, APPLE);
GET_PROC_SUFFIX(GenVertexArrays, APPLE);
}
if (glVer >= GR_GL_VER(4,0)) {
GET_PROC(PatchParameteri);

View File

@ -205,7 +205,10 @@ bool GrGLInterface::validate() const {
// all functions were marked optional or test_only
}
if (GR_IS_GR_GL(fStandard) ||
if ((GR_IS_GR_GL(fStandard) && (
(glVer >= GR_GL_VER(3,0)) ||
fExtensions.has("GL_ARB_vertex_array_object") ||
fExtensions.has("GL_APPLE_vertex_array_object"))) ||
(GR_IS_GR_GL_ES(fStandard) && (
(glVer >= GR_GL_VER(3,0)) ||
fExtensions.has("GL_OES_vertex_array_object"))) ||

View File

@ -79,7 +79,9 @@
},
{
"GL": [{"ext": "<core>"}],
"GL": [{"min_version": [3, 0], "ext": "<core>"},
{/* else if */ "ext": "GL_ARB_vertex_array_object"},
{/* else if */ "ext": "GL_APPLE_vertex_array_object"}],
"GLES": [{"min_version": [3, 0], "ext": "<core>"},
{/* else if */ "ext": "GL_OES_vertex_array_object"}],
"WebGL": [{"min_version": [2, 0], "ext": "<core>"},