diff options
author | Yahan Zhou <yahan@google.com> | 2017-07-06 15:40:44 -0700 |
---|---|---|
committer | Greg Hartman <ghartman@google.com> | 2018-08-23 17:30:51 -0700 |
commit | 0ae8848efb2b8cb86dfb5f127d39fbf674335601 (patch) | |
tree | 713297e26e2e8bda84b7d826f1a927ad48e162fe /host | |
parent | 9c7aff1e6963ba734a9cf7a8c24506fcaeee5fc7 (diff) | |
download | opengl-transport-0ae8848efb2b8cb86dfb5f127d39fbf674335601.tar.gz |
[ANGLE Snapshot] GLES2 translator on top of ANGLE
This patch modifies our GLES2 translator to allow it to mount on top of
ANGLE. Because ANGLE is a GLES2 backend while previously our translator
assumes desktop GL backend, some modifications are required.
The main changes in this patch include:
(1) Pass a flag to GLES translator to tell if it is running on top of
another GLES backend
(2) Desktop GL sometimes assume EXT postfix for some functions while
GLES does not. Modify dispatcher so that it loads func as well funcEXT
and funcOES as alias.
(3) ANGLE does not like GL_RGB8 and GL_RGBA8 texture internal formats.
Change them to GL_RGB and GL_RGBA.
(4) Bypass some texture parameter validations when using ANGLE backend.
(5) Ignore the parsed shader and use orignal shader source when using
ANGLE backend.
Change-Id: I6c5a770a0157c020920a432f3c949e2f8d67e0eb
Diffstat (limited to 'host')
-rw-r--r-- | host/libs/virglrenderer/OpenGLESDispatch/gles2_core.entries | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/host/libs/virglrenderer/OpenGLESDispatch/gles2_core.entries b/host/libs/virglrenderer/OpenGLESDispatch/gles2_core.entries index 1e2285447..24e2214d2 100644 --- a/host/libs/virglrenderer/OpenGLESDispatch/gles2_core.entries +++ b/host/libs/virglrenderer/OpenGLESDispatch/gles2_core.entries @@ -4,6 +4,7 @@ void glBlendColor(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask); void glStencilMaskSeparate(GLenum face, GLuint mask); +void glStencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass); GLboolean glIsProgram(GLuint program); GLboolean glIsShader(GLuint shader); void glVertexAttrib1f(GLuint indx, GLfloat x); @@ -78,5 +79,6 @@ void glGenRenderbuffers(GLsizei n, GLuint *renderbuffers); void glRenderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); void glGetRenderbufferParameteriv(GLenum target, GLenum pname, GLint *params); void glFramebufferRenderbuffer(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); +void glGetFramebufferAttachmentParameteriv(GLenum target, GLenum attachment, GLenum pname, GLint *params); void glGenerateMipmap(GLenum target); |