// Copyright 2019 The Cobalt Authors. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

#ifndef COBALT_RENDERER_EGL_AND_GLES_H_
#define COBALT_RENDERER_EGL_AND_GLES_H_

#include "base/logging.h"
#include "starboard/common/log.h"
#include "starboard/configuration.h"

// Defining COBALT_EGL_AND_GLES_LOGGING enables a greater amount of logging and
// error reporting with EGL and GLES calls throughout Cobalt. Each invoked
// function will be logged, and when checks are failed the EGL or GLES error
// code will be outputted.
#undef COBALT_EGL_AND_GLES_LOGGING

#if SB_API_VERSION >= 11
#include "starboard/egl.h"
#include "starboard/gles.h"
#define EGL_CALL_PREFIX ::cobalt::renderer::CobaltGetEglInterface().
#define GL_CALL_PREFIX ::cobalt::renderer::CobaltGetGlesInterface().
#else  // SB_API_VERSION < 11
#include <EGL/egl.h>
#include <EGL/eglext.h>
#include <GLES2/gl2.h>
#include <GLES2/gl2ext.h>
#if defined(GLES3_SUPPORTED)
#include <GLES3/gl3.h>
#endif  // defined(GLES3_SUPPORTED)
#define EGL_CALL_PREFIX
#define GL_CALL_PREFIX
#endif  // SB_API_VERSION >= 11

#if defined(COBALT_EGL_AND_GLES_LOGGING)
#define EGL_DCHECK(x)                                                 \
  do {                                                                \
    SB_LOG(INFO) << #x;                                               \
    const int32_t COBALT_EGL_ERRNO = (EGL_CALL_PREFIX eglGetError()); \
    SB_DCHECK(COBALT_EGL_ERRNO == EGL_SUCCESS)                        \
        << #x << " exited with code: " << COBALT_EGL_ERRNO;           \
  } while (false)
#define GL_DCHECK(x)                                               \
  do {                                                             \
    SB_LOG(INFO) << #x;                                            \
    const int32_t COBALT_GL_ERRNO = (GL_CALL_PREFIX glGetError()); \
    SB_DCHECK(COBALT_GL_ERRNO == GL_NO_ERROR)                      \
        << #x << " exited with code: " << COBALT_GL_ERRNO;         \
  } while (false)
#else  // !defined(COBALT_EGL_AND_GLES_LOGGING)
#define EGL_DCHECK(x)                                          \
  do {                                                         \
    SB_DCHECK((EGL_CALL_PREFIX eglGetError()) == EGL_SUCCESS); \
  } while (false)
#define GL_DCHECK(x)                                         \
  do {                                                       \
    SB_DCHECK((GL_CALL_PREFIX glGetError()) == GL_NO_ERROR); \
  } while (false)
#endif  // defined(COBALT_EGL_AND_GLES_LOGGING)

#if SB_API_VERSION >= 11
namespace cobalt {
namespace renderer {

inline const SbEglInterface& CobaltGetEglInterface() {
  static const SbEglInterface* egl_interface = SbGetEglInterface();

  return *egl_interface;
}

inline const SbGlesInterface& CobaltGetGlesInterface() {
  static const SbGlesInterface* gles_interface = SbGetGlesInterface();

  return *gles_interface;
}

}  // namespace renderer
}  // namespace cobalt
#endif  // SB_API_VERSION >= 11

// The following *_CALL, *_CALL_SIMPLE macros provide a mechanism to
// transparently use the Starboard OpenGL ES and EGL interfaces if available,
// while also providing error-checking. The *_CALL macros should be used when
// the return value of the function to invoke is not desired, otherwise use
// *_CALL_SIMPLE to propagate the returned value. For example:
//
// eglMakeCurrent(...) becomes EGL_CALL(eglMakeCurrent(...)).
// ... = eglGetError() becomes ... = EGL_CALL_SIMPLE(eglGetError()).

#define EGL_CALL(x)    \
  do {                 \
    EGL_CALL_PREFIX x; \
    EGL_DCHECK(x);     \
  } while (false)

#define GL_CALL(x)    \
  do {                \
    GL_CALL_PREFIX x; \
    GL_DCHECK(x);     \
  } while (false)

#if defined(COBALT_EGL_AND_GLES_LOGGING)
#define EGL_CALL_SIMPLE(x)    \
  ([&]() {                    \
    SB_LOG(INFO) << #x;       \
    return EGL_CALL_PREFIX x; \
  }())
#define GL_CALL_SIMPLE(x)    \
  ([&]() {                   \
    SB_LOG(INFO) << #x;      \
    return GL_CALL_PREFIX x; \
  }())
#else  // !defined(COBALT_EGL_AND_GLES_LOGGING)
#define EGL_CALL_SIMPLE(x) (EGL_CALL_PREFIX x)
#define GL_CALL_SIMPLE(x) (GL_CALL_PREFIX x)
#endif  // defined(COBALT_EGL_AND_GLES_LOGGING)

#if SB_API_VERSION >= 11

// EGL TYPES
#define EGLint SbEglInt32
#define EGLNativeDisplayType SbEglNativeDisplayType
#define EGLNativePixmapType SbEglNativePixmapType
#define EGLNativeWindowType SbEglNativeWindowType
#define __eglMustCastToProperFunctionPointerType \
  SbEglCastsToProperFunctionPointerType
#define EGLAttrib SbEglAttrib
#define EGLBoolean SbEglBoolean
#define EGLClientBuffer SbEglClientBuffer
#define EGLConfig SbEglConfig
#define EGLContext SbEglContext
#define EGLDisplay SbEglDisplay
#define EGLenum SbEglEnum
#define EGLImage SbEglImage
#define EGLSurface SbEglSurface
#define EGLSync SbEglSync
#define EGLTime SbEglTime

// GL TYPES
#define GLboolean SbGlBoolean
#define GLbitfield SbGlBitfield
#define GLchar SbGlChar
#define GLclampf SbGlClampf
#define GLenum SbGlEnum
#define GLfixed SbGlFixed
#define GLfloat SbGlFloat
#define GLbyte SbGlByte
#define GLshort SbGlInt16
#define GLfixed SbGlFixed
#define GLint SbGlInt32
#define GLint64 SbGlInt64
#define GLintptr SbGlIntPtr
#define GLsizei SbGlSizei
#define GLsizeiptr SbGlSizeiPtr
#define GLsync SbGlSync
#define GLubyte SbGlUInt8
#define GLushort SbGlUInt16
#define GLuint SbGlUInt32
#define GLuint64 SbGlUInt64
#define GLvoid SbGlVoid
#define GLhalf SbGlUInt16

// EGL_VERSION_1_0
#define EGL_ALPHA_SIZE SB_EGL_ALPHA_SIZE
#define EGL_BAD_ACCESS SB_EGL_BAD_ACCESS
#define EGL_BAD_ALLOC SB_EGL_BAD_ALLOC
#define EGL_BAD_ATTRIBUTE SB_EGL_BAD_ATTRIBUTE
#define EGL_BAD_CONFIG SB_EGL_BAD_CONFIG
#define EGL_BAD_CONTEXT SB_EGL_BAD_CONTEXT
#define EGL_BAD_CURRENT_SURFACE SB_EGL_BAD_CURRENT_SURFACE
#define EGL_BAD_DISPLAY SB_EGL_BAD_DISPLAY
#define EGL_BAD_MATCH SB_EGL_BAD_MATCH
#define EGL_BAD_NATIVE_PIXMAP SB_EGL_BAD_NATIVE_PIXMAP
#define EGL_BAD_NATIVE_WINDOW SB_EGL_BAD_NATIVE_WINDOW
#define EGL_BAD_PARAMETER SB_EGL_BAD_PARAMETER
#define EGL_BAD_SURFACE SB_EGL_BAD_SURFACE
#define EGL_BLUE_SIZE SB_EGL_BLUE_SIZE
#define EGL_BUFFER_SIZE SB_EGL_BUFFER_SIZE
#define EGL_CONFIG_CAVEAT SB_EGL_CONFIG_CAVEAT
#define EGL_CONFIG_ID SB_EGL_CONFIG_ID
#define EGL_CORE_NATIVE_ENGINE SB_EGL_CORE_NATIVE_ENGINE
#define EGL_DEPTH_SIZE SB_EGL_DEPTH_SIZE
#define EGL_DONT_CARE SB_EGL_DONT_CARE
#define EGL_DRAW SB_EGL_DRAW
#define EGL_EXTENSIONS SB_EGL_EXTENSIONS
#define EGL_FALSE SB_EGL_FALSE
#define EGL_GREEN_SIZE SB_EGL_GREEN_SIZE
#define EGL_HEIGHT SB_EGL_HEIGHT
#define EGL_LARGEST_PBUFFER SB_EGL_LARGEST_PBUFFER
#define EGL_LEVEL SB_EGL_LEVEL
#define EGL_MAX_PBUFFER_HEIGHT SB_EGL_MAX_PBUFFER_HEIGHT
#define EGL_MAX_PBUFFER_PIXELS SB_EGL_MAX_PBUFFER_PIXELS
#define EGL_MAX_PBUFFER_WIDTH SB_EGL_MAX_PBUFFER_WIDTH
#define EGL_NATIVE_RENDERABLE SB_EGL_NATIVE_RENDERABLE
#define EGL_NATIVE_VISUAL_ID SB_EGL_NATIVE_VISUAL_ID
#define EGL_NATIVE_VISUAL_TYPE SB_EGL_NATIVE_VISUAL_TYPE
#define EGL_NONE SB_EGL_NONE
#define EGL_NON_CONFORMANT_CONFIG SB_EGL_NON_CONFORMANT_CONFIG
#define EGL_NOT_INITIALIZED SB_EGL_NOT_INITIALIZED
#define EGL_NO_CONTEXT SB_EGL_NO_CONTEXT
#define EGL_NO_DISPLAY SB_EGL_NO_DISPLAY
#define EGL_NO_SURFACE SB_EGL_NO_SURFACE
#define EGL_PBUFFER_BIT SB_EGL_PBUFFER_BIT
#define EGL_PIXMAP_BIT SB_EGL_PIXMAP_BIT
#define EGL_READ SB_EGL_READ
#define EGL_RED_SIZE SB_EGL_RED_SIZE
#define EGL_SAMPLES SB_EGL_SAMPLES
#define EGL_SAMPLE_BUFFERS SB_EGL_SAMPLE_BUFFERS
#define EGL_SLOW_CONFIG SB_EGL_SLOW_CONFIG
#define EGL_STENCIL_SIZE SB_EGL_STENCIL_SIZE
#define EGL_SUCCESS SB_EGL_SUCCESS
#define EGL_SURFACE_TYPE SB_EGL_SURFACE_TYPE
#define EGL_TRANSPARENT_BLUE_VALUE SB_EGL_TRANSPARENT_BLUE_VALUE
#define EGL_TRANSPARENT_GREEN_VALUE SB_EGL_TRANSPARENT_GREEN_VALUE
#define EGL_TRANSPARENT_RED_VALUE SB_EGL_TRANSPARENT_RED_VALUE
#define EGL_TRANSPARENT_RGB SB_EGL_TRANSPARENT_RGB
#define EGL_TRANSPARENT_TYPE SB_EGL_TRANSPARENT_TYPE
#define EGL_TRUE SB_EGL_TRUE
#define EGL_VENDOR SB_EGL_VENDOR
#define EGL_VERSION SB_EGL_VERSION
#define EGL_WIDTH SB_EGL_WIDTH
#define EGL_WINDOW_BIT SB_EGL_WINDOW_BIT

// EGL_VERSION_1_1
#define EGL_BACK_BUFFER SB_EGL_BACK_BUFFER
#define EGL_BIND_TO_TEXTURE_RGB SB_EGL_BIND_TO_TEXTURE_RGB
#define EGL_BIND_TO_TEXTURE_RGBA SB_EGL_BIND_TO_TEXTURE_RGBA
#define EGL_CONTEXT_LOST SB_EGL_CONTEXT_LOST
#define EGL_MIN_SWAP_INTERVAL SB_EGL_MIN_SWAP_INTERVAL
#define EGL_MAX_SWAP_INTERVAL SB_EGL_MAX_SWAP_INTERVAL
#define EGL_MIPMAP_TEXTURE SB_EGL_MIPMAP_TEXTURE
#define EGL_MIPMAP_LEVEL SB_EGL_MIPMAP_LEVEL
#define EGL_NO_TEXTURE SB_EGL_NO_TEXTURE
#define EGL_TEXTURE_2D SB_EGL_TEXTURE_2D
#define EGL_TEXTURE_FORMAT SB_EGL_TEXTURE_FORMAT
#define EGL_TEXTURE_RGB SB_EGL_TEXTURE_RGB
#define EGL_TEXTURE_RGBA SB_EGL_TEXTURE_RGBA
#define EGL_TEXTURE_TARGET SB_EGL_TEXTURE_TARGET

// EGL_VERSION_1_2
#define EGL_ALPHA_FORMAT SB_EGL_ALPHA_FORMAT
#define EGL_ALPHA_FORMAT_NONPRE SB_EGL_ALPHA_FORMAT_NONPRE
#define EGL_ALPHA_FORMAT_PRE SB_EGL_ALPHA_FORMAT_PRE
#define EGL_ALPHA_MASK_SIZE SB_EGL_ALPHA_MASK_SIZE
#define EGL_BUFFER_PRESERVED SB_EGL_BUFFER_PRESERVED
#define EGL_BUFFER_DESTROYED SB_EGL_BUFFER_DESTROYED
#define EGL_CLIENT_APIS SB_EGL_CLIENT_APIS
#define EGL_COLORSPACE SB_EGL_COLORSPACE
#define EGL_COLORSPACE_sRGB SB_EGL_COLORSPACE_sRGB
#define EGL_COLORSPACE_LINEAR SB_EGL_COLORSPACE_LINEAR
#define EGL_COLOR_BUFFER_TYPE SB_EGL_COLOR_BUFFER_TYPE
#define EGL_CONTEXT_CLIENT_TYPE SB_EGL_CONTEXT_CLIENT_TYPE
#define EGL_DISPLAY_SCALING SB_EGL_DISPLAY_SCALING
#define EGL_HORIZONTAL_RESOLUTION SB_EGL_HORIZONTAL_RESOLUTION
#define EGL_LUMINANCE_BUFFER SB_EGL_LUMINANCE_BUFFER
#define EGL_LUMINANCE_SIZE SB_EGL_LUMINANCE_SIZE
#define EGL_OPENGL_ES_BIT SB_EGL_OPENGL_ES_BIT
#define EGL_OPENVG_BIT SB_EGL_OPENVG_BIT
#define EGL_OPENGL_ES_API SB_EGL_OPENGL_ES_API
#define EGL_OPENVG_API SB_EGL_OPENVG_API
#define EGL_OPENVG_IMAGE SB_EGL_OPENVG_IMAGE
#define EGL_PIXEL_ASPECT_RATIO SB_EGL_PIXEL_ASPECT_RATIO
#define EGL_RENDERABLE_TYPE SB_EGL_RENDERABLE_TYPE
#define EGL_RENDER_BUFFER SB_EGL_RENDER_BUFFER
#define EGL_RGB_BUFFER SB_EGL_RGB_BUFFER
#define EGL_SINGLE_BUFFER SB_EGL_SINGLE_BUFFER
#define EGL_SWAP_BEHAVIOR SB_EGL_SWAP_BEHAVIOR
#define EGL_UNKNOWN SB_EGL_UNKNOWN
#define EGL_VERTICAL_RESOLUTION SB_EGL_VERTICAL_RESOLUTION

// EGL_VERSION_1_3
#define EGL_CONFORMANT SB_EGL_CONFORMANT
#define EGL_CONTEXT_CLIENT_VERSION SB_EGL_CONTEXT_CLIENT_VERSION
#define EGL_MATCH_NATIVE_PIXMAP SB_EGL_MATCH_NATIVE_PIXMAP
#define EGL_OPENGL_ES2_BIT SB_EGL_OPENGL_ES2_BIT
#define EGL_VG_ALPHA_FORMAT SB_EGL_VG_ALPHA_FORMAT
#define EGL_VG_ALPHA_FORMAT_NONPRE SB_EGL_VG_ALPHA_FORMAT_NONPRE
#define EGL_VG_ALPHA_FORMAT_PRE SB_EGL_VG_ALPHA_FORMAT_PRE
#define EGL_VG_ALPHA_FORMAT_PRE_BIT SB_EGL_VG_ALPHA_FORMAT_PRE_BIT
#define EGL_VG_COLORSPACE SB_EGL_VG_COLORSPACE
#define EGL_VG_COLORSPACE_sRGB SB_EGL_VG_COLORSPACE_sRGB
#define EGL_VG_COLORSPACE_LINEAR SB_EGL_VG_COLORSPACE_LINEAR
#define EGL_VG_COLORSPACE_LINEAR_BIT SB_EGL_VG_COLORSPACE_LINEAR_BIT

// EGL_VERSION_1_4
#define EGL_DEFAULT_DISPLAY SB_EGL_DEFAULT_DISPLAY
#define EGL_MULTISAMPLE_RESOLVE_BOX_BIT SB_EGL_MULTISAMPLE_RESOLVE_BOX_BIT
#define EGL_MULTISAMPLE_RESOLVE SB_EGL_MULTISAMPLE_RESOLVE
#define EGL_MULTISAMPLE_RESOLVE_DEFAULT SB_EGL_MULTISAMPLE_RESOLVE_DEFAULT
#define EGL_MULTISAMPLE_RESOLVE_BOX SB_EGL_MULTISAMPLE_RESOLVE_BOX
#define EGL_OPENGL_API SB_EGL_OPENGL_API
#define EGL_OPENGL_BIT SB_EGL_OPENGL_BIT
#define EGL_SWAP_BEHAVIOR_PRESERVED_BIT SB_EGL_SWAP_BEHAVIOR_PRESERVED_BIT

// EGL_VERSION_1_5
#define EGL_CONTEXT_MAJOR_VERSION SB_EGL_CONTEXT_MAJOR_VERSION
#define EGL_CONTEXT_MINOR_VERSION SB_EGL_CONTEXT_MINOR_VERSION
#define EGL_CONTEXT_OPENGL_PROFILE_MASK SB_EGL_CONTEXT_OPENGL_PROFILE_MASK
#define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY \
  SB_EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY
#define EGL_NO_RESET_NOTIFICATION SB_EGL_NO_RESET_NOTIFICATION
#define EGL_LOSE_CONTEXT_ON_RESET SB_EGL_LOSE_CONTEXT_ON_RESET
#define EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT \
  SB_EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT
#define EGL_CONTEXT_OPENGL_COMPATIBILITY_PROFILE_BIT \
  SB_EGL_CONTEXT_OPENGL_COMPATIBILITY_PROFILE_BIT
#define EGL_CONTEXT_OPENGL_DEBUG SB_EGL_CONTEXT_OPENGL_DEBUG
#define EGL_CONTEXT_OPENGL_FORWARD_COMPATIBLE \
  SB_EGL_CONTEXT_OPENGL_FORWARD_COMPATIBLE
#define EGL_CONTEXT_OPENGL_ROBUST_ACCESS SB_EGL_CONTEXT_OPENGL_ROBUST_ACCESS
#define EGL_OPENGL_ES3_BIT SB_EGL_OPENGL_ES3_BIT
#define EGL_CL_EVENT_HANDLE SB_EGL_CL_EVENT_HANDLE
#define EGL_SYNC_CL_EVENT SB_EGL_SYNC_CL_EVENT
#define EGL_SYNC_CL_EVENT_COMPLETE SB_EGL_SYNC_CL_EVENT_COMPLETE
#define EGL_SYNC_PRIOR_COMMANDS_COMPLETE SB_EGL_SYNC_PRIOR_COMMANDS_COMPLETE
#define EGL_SYNC_TYPE SB_EGL_SYNC_TYPE
#define EGL_SYNC_STATUS SB_EGL_SYNC_STATUS
#define EGL_SYNC_CONDITION SB_EGL_SYNC_CONDITION
#define EGL_SIGNALED SB_EGL_SIGNALED
#define EGL_UNSIGNALED SB_EGL_UNSIGNALED
#define EGL_SYNC_FLUSH_COMMANDS_BIT SB_EGL_SYNC_FLUSH_COMMANDS_BIT
#define EGL_FOREVER SB_EGL_FOREVER
#define EGL_TIMEOUT_EXPIRED SB_EGL_TIMEOUT_EXPIRED
#define EGL_CONDITION_SATISFIED SB_EGL_CONDITION_SATISFIED
#define EGL_NO_SYNC SB_EGL_NO_SYNC
#define EGL_SYNC_FENCE SB_EGL_SYNC_FENCE
#define EGL_GL_COLORSPACE SB_EGL_GL_COLORSPACE
#define EGL_GL_COLORSPACE_SRGB SB_EGL_GL_COLORSPACE_SRGB
#define EGL_GL_COLORSPACE_LINEAR SB_EGL_GL_COLORSPACE_LINEAR
#define EGL_GL_RENDERBUFFER SB_EGL_GL_RENDERBUFFER
#define EGL_GL_TEXTURE_2D SB_EGL_GL_TEXTURE_2D
#define EGL_GL_TEXTURE_LEVEL SB_EGL_GL_TEXTURE_LEVEL
#define EGL_GL_TEXTURE_3D SB_EGL_GL_TEXTURE_3D
#define EGL_GL_TEXTURE_ZOFFSET SB_EGL_GL_TEXTURE_ZOFFSET
#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X SB_EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X
#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X SB_EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X
#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y SB_EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y
#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y SB_EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y
#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z SB_EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z
#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z SB_EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z
#define EGL_IMAGE_PRESERVED SB_EGL_IMAGE_PRESERVED
#define EGL_NO_IMAGE SB_EGL_NO_IMAGE

#define GL_DEPTH_BUFFER_BIT SB_GL_DEPTH_BUFFER_BIT
#define GL_STENCIL_BUFFER_BIT SB_GL_STENCIL_BUFFER_BIT
#define GL_COLOR_BUFFER_BIT SB_GL_COLOR_BUFFER_BIT

#define GL_FALSE SB_GL_FALSE
#define GL_TRUE SB_GL_TRUE

#define GL_POINTS SB_GL_POINTS
#define GL_LINES SB_GL_LINES
#define GL_LINE_LOOP SB_GL_LINE_LOOP
#define GL_LINE_STRIP SB_GL_LINE_STRIP
#define GL_TRIANGLES SB_GL_TRIANGLES
#define GL_TRIANGLE_STRIP SB_GL_TRIANGLE_STRIP
#define GL_TRIANGLE_FAN SB_GL_TRIANGLE_FAN
#define GL_ZERO SB_GL_ZERO
#define GL_ONE SB_GL_ONE
#define GL_SRC_COLOR SB_GL_SRC_COLOR
#define GL_ONE_MINUS_SRC_COLOR SB_GL_ONE_MINUS_SRC_COLOR
#define GL_SRC_ALPHA SB_GL_SRC_ALPHA
#define GL_ONE_MINUS_SRC_ALPHA SB_GL_ONE_MINUS_SRC_ALPHA
#define GL_DST_ALPHA SB_GL_DST_ALPHA
#define GL_ONE_MINUS_DST_ALPHA SB_GL_ONE_MINUS_DST_ALPHA
#define GL_DST_COLOR SB_GL_DST_COLOR
#define GL_ONE_MINUS_DST_COLOR SB_GL_ONE_MINUS_DST_COLOR
#define GL_SRC_ALPHA_SATURATE SB_GL_SRC_ALPHA_SATURATE
#define GL_FUNC_ADD SB_GL_FUNC_ADD
#define GL_BLEND_EQUATION SB_GL_BLEND_EQUATION
#define GL_BLEND_EQUATION_RGB SB_GL_BLEND_EQUATION_RGB
#define GL_BLEND_EQUATION_ALPHA SB_GL_BLEND_EQUATION_ALPHA
#define GL_FUNC_SUBTRACT SB_GL_FUNC_SUBTRACT
#define GL_FUNC_REVERSE_SUBTRACT SB_GL_FUNC_REVERSE_SUBTRACT
#define GL_BLEND_DST_RGB SB_GL_BLEND_DST_RGB
#define GL_BLEND_SRC_RGB SB_GL_BLEND_SRC_RGB
#define GL_BLEND_DST_ALPHA SB_GL_BLEND_DST_ALPHA
#define GL_BLEND_SRC_ALPHA SB_GL_BLEND_SRC_ALPHA
#define GL_CONSTANT_COLOR SB_GL_CONSTANT_COLOR
#define GL_ONE_MINUS_CONSTANT_COLOR SB_GL_ONE_MINUS_CONSTANT_COLOR
#define GL_CONSTANT_ALPHA SB_GL_CONSTANT_ALPHA
#define GL_ONE_MINUS_CONSTANT_ALPHA SB_GL_ONE_MINUS_CONSTANT_ALPHA
#define GL_BLEND_COLOR SB_GL_BLEND_COLOR
#define GL_ARRAY_BUFFER SB_GL_ARRAY_BUFFER
#define GL_ELEMENT_ARRAY_BUFFER SB_GL_ELEMENT_ARRAY_BUFFER
#define GL_ARRAY_BUFFER_BINDING SB_GL_ARRAY_BUFFER_BINDING
#define GL_ELEMENT_ARRAY_BUFFER_BINDING SB_GL_ELEMENT_ARRAY_BUFFER_BINDING
#define GL_STREAM_DRAW SB_GL_STREAM_DRAW
#define GL_STATIC_DRAW SB_GL_STATIC_DRAW
#define GL_DYNAMIC_DRAW SB_GL_DYNAMIC_DRAW
#define GL_BUFFER_SIZE SB_GL_BUFFER_SIZE
#define GL_BUFFER_USAGE SB_GL_BUFFER_USAGE
#define GL_CURRENT_VERTEX_ATTRIB SB_GL_CURRENT_VERTEX_ATTRIB
#define GL_FRONT SB_GL_FRONT
#define GL_BACK SB_GL_BACK
#define GL_FRONT_AND_BACK SB_GL_FRONT_AND_BACK
#define GL_TEXTURE_2D SB_GL_TEXTURE_2D
#define GL_CULL_FACE SB_GL_CULL_FACE
#define GL_BLEND SB_GL_BLEND
#define GL_DITHER SB_GL_DITHER
#define GL_STENCIL_TEST SB_GL_STENCIL_TEST
#define GL_DEPTH_TEST SB_GL_DEPTH_TEST
#define GL_SCISSOR_TEST SB_GL_SCISSOR_TEST
#define GL_POLYGON_OFFSET_FILL SB_GL_POLYGON_OFFSET_FILL
#define GL_SAMPLE_ALPHA_TO_COVERAGE SB_GL_SAMPLE_ALPHA_TO_COVERAGE
#define GL_SAMPLE_COVERAGE SB_GL_SAMPLE_COVERAGE
#define GL_NO_ERROR SB_GL_NO_ERROR
#define GL_INVALID_ENUM SB_GL_INVALID_ENUM
#define GL_INVALID_VALUE SB_GL_INVALID_VALUE
#define GL_INVALID_OPERATION SB_GL_INVALID_OPERATION
#define GL_OUT_OF_MEMORY SB_GL_OUT_OF_MEMORY
#define GL_CW SB_GL_CW
#define GL_CCW SB_GL_CCW
#define GL_LINE_WIDTH SB_GL_LINE_WIDTH
#define GL_ALIASED_POINT_SIZE_RANGE SB_GL_ALIASED_POINT_SIZE_RANGE
#define GL_ALIASED_LINE_WIDTH_RANGE SB_GL_ALIASED_LINE_WIDTH_RANGE
#define GL_CULL_FACE_MODE SB_GL_CULL_FACE_MODE
#define GL_FRONT_FACE SB_GL_FRONT_FACE
#define GL_DEPTH_RANGE SB_GL_DEPTH_RANGE
#define GL_DEPTH_WRITEMASK SB_GL_DEPTH_WRITEMASK
#define GL_DEPTH_CLEAR_VALUE SB_GL_DEPTH_CLEAR_VALUE
#define GL_DEPTH_FUNC SB_GL_DEPTH_FUNC
#define GL_STENCIL_CLEAR_VALUE SB_GL_STENCIL_CLEAR_VALUE
#define GL_STENCIL_FUNC SB_GL_STENCIL_FUNC
#define GL_STENCIL_FAIL SB_GL_STENCIL_FAIL
#define GL_STENCIL_PASS_DEPTH_FAIL SB_GL_STENCIL_PASS_DEPTH_FAIL
#define GL_STENCIL_PASS_DEPTH_PASS SB_GL_STENCIL_PASS_DEPTH_PASS
#define GL_STENCIL_REF SB_GL_STENCIL_REF
#define GL_STENCIL_VALUE_MASK SB_GL_STENCIL_VALUE_MASK
#define GL_STENCIL_WRITEMASK SB_GL_STENCIL_WRITEMASK
#define GL_STENCIL_BACK_FUNC SB_GL_STENCIL_BACK_FUNC
#define GL_STENCIL_BACK_FAIL SB_GL_STENCIL_BACK_FAIL
#define GL_STENCIL_BACK_PASS_DEPTH_FAIL SB_GL_STENCIL_BACK_PASS_DEPTH_FAIL
#define GL_STENCIL_BACK_PASS_DEPTH_PASS SB_GL_STENCIL_BACK_PASS_DEPTH_PASS
#define GL_STENCIL_BACK_REF SB_GL_STENCIL_BACK_REF
#define GL_STENCIL_BACK_VALUE_MASK SB_GL_STENCIL_BACK_VALUE_MASK
#define GL_STENCIL_BACK_WRITEMASK SB_GL_STENCIL_BACK_WRITEMASK
#define GL_VIEWPORT SB_GL_VIEWPORT
#define GL_SCISSOR_BOX SB_GL_SCISSOR_BOX
#define GL_COLOR_CLEAR_VALUE SB_GL_COLOR_CLEAR_VALUE
#define GL_COLOR_WRITEMASK SB_GL_COLOR_WRITEMASK
#define GL_UNPACK_ALIGNMENT SB_GL_UNPACK_ALIGNMENT
#define GL_PACK_ALIGNMENT SB_GL_PACK_ALIGNMENT
#define GL_MAX_TEXTURE_SIZE SB_GL_MAX_TEXTURE_SIZE
#define GL_MAX_VIEWPORT_DIMS SB_GL_MAX_VIEWPORT_DIMS
#define GL_SUBPIXEL_BITS SB_GL_SUBPIXEL_BITS
#define GL_RED_BITS SB_GL_RED_BITS
#define GL_GREEN_BITS SB_GL_GREEN_BITS
#define GL_BLUE_BITS SB_GL_BLUE_BITS
#define GL_ALPHA_BITS SB_GL_ALPHA_BITS
#define GL_DEPTH_BITS SB_GL_DEPTH_BITS
#define GL_STENCIL_BITS SB_GL_STENCIL_BITS
#define GL_POLYGON_OFFSET_UNITS SB_GL_POLYGON_OFFSET_UNITS
#define GL_POLYGON_OFFSET_FACTOR SB_GL_POLYGON_OFFSET_FACTOR
#define GL_TEXTURE_BINDING_2D SB_GL_TEXTURE_BINDING_2D
#define GL_SAMPLE_BUFFERS SB_GL_SAMPLE_BUFFERS
#define GL_SAMPLES SB_GL_SAMPLES
#define GL_SAMPLE_COVERAGE_VALUE SB_GL_SAMPLE_COVERAGE_VALUE
#define GL_SAMPLE_COVERAGE_INVERT SB_GL_SAMPLE_COVERAGE_INVERT
#define GL_NUM_COMPRESSED_TEXTURE_FORMATS SB_GL_NUM_COMPRESSED_TEXTURE_FORMATS
#define GL_COMPRESSED_TEXTURE_FORMATS SB_GL_COMPRESSED_TEXTURE_FORMATS
#define GL_DONT_CARE SB_GL_DONT_CARE
#define GL_FASTEST SB_GL_FASTEST
#define GL_NICEST SB_GL_NICEST
#define GL_GENERATE_MIPMAP_HINT SB_GL_GENERATE_MIPMAP_HINT
#define GL_BYTE SB_GL_BYTE
#define GL_UNSIGNED_BYTE SB_GL_UNSIGNED_BYTE
#define GL_SHORT SB_GL_SHORT
#define GL_UNSIGNED_SHORT SB_GL_UNSIGNED_SHORT
#define GL_INT SB_GL_INT
#define GL_UNSIGNED_INT SB_GL_UNSIGNED_INT
#define GL_FLOAT SB_GL_FLOAT
#define GL_FIXED SB_GL_FIXED
#define GL_DEPTH_COMPONENT SB_GL_DEPTH_COMPONENT
#define GL_ALPHA SB_GL_ALPHA
#define GL_RGB SB_GL_RGB
#define GL_RGBA SB_GL_RGBA
#define GL_LUMINANCE SB_GL_LUMINANCE
#define GL_LUMINANCE_ALPHA SB_GL_LUMINANCE_ALPHA
#define GL_UNSIGNED_SHORT_4_4_4_4 SB_GL_UNSIGNED_SHORT_4_4_4_4
#define GL_UNSIGNED_SHORT_5_5_5_1 SB_GL_UNSIGNED_SHORT_5_5_5_1
#define GL_UNSIGNED_SHORT_5_6_5 SB_GL_UNSIGNED_SHORT_5_6_5
#define GL_FRAGMENT_SHADER SB_GL_FRAGMENT_SHADER
#define GL_VERTEX_SHADER SB_GL_VERTEX_SHADER
#define GL_MAX_VERTEX_ATTRIBS SB_GL_MAX_VERTEX_ATTRIBS
#define GL_MAX_VERTEX_UNIFORM_VECTORS SB_GL_MAX_VERTEX_UNIFORM_VECTORS
#define GL_MAX_VARYING_VECTORS SB_GL_MAX_VARYING_VECTORS
#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS \
  SB_GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS
#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS SB_GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS
#define GL_MAX_TEXTURE_IMAGE_UNITS SB_GL_MAX_TEXTURE_IMAGE_UNITS
#define GL_MAX_FRAGMENT_UNIFORM_VECTORS SB_GL_MAX_FRAGMENT_UNIFORM_VECTORS
#define GL_SHADER_TYPE SB_GL_SHADER_TYPE
#define GL_DELETE_STATUS SB_GL_DELETE_STATUS
#define GL_LINK_STATUS SB_GL_LINK_STATUS
#define GL_VALIDATE_STATUS SB_GL_VALIDATE_STATUS
#define GL_ATTACHED_SHADERS SB_GL_ATTACHED_SHADERS
#define GL_ACTIVE_UNIFORMS SB_GL_ACTIVE_UNIFORMS
#define GL_ACTIVE_UNIFORM_MAX_LENGTH SB_GL_ACTIVE_UNIFORM_MAX_LENGTH
#define GL_ACTIVE_ATTRIBUTES SB_GL_ACTIVE_ATTRIBUTES
#define GL_ACTIVE_ATTRIBUTE_MAX_LENGTH SB_GL_ACTIVE_ATTRIBUTE_MAX_LENGTH
#define GL_SHADING_LANGUAGE_VERSION SB_GL_SHADING_LANGUAGE_VERSION
#define GL_CURRENT_PROGRAM SB_GL_CURRENT_PROGRAM
#define GL_NEVER SB_GL_NEVER
#define GL_LESS SB_GL_LESS
#define GL_EQUAL SB_GL_EQUAL
#define GL_LEQUAL SB_GL_LEQUAL
#define GL_GREATER SB_GL_GREATER
#define GL_NOTEQUAL SB_GL_NOTEQUAL
#define GL_GEQUAL SB_GL_GEQUAL
#define GL_ALWAYS SB_GL_ALWAYS
#define GL_KEEP SB_GL_KEEP
#define GL_REPLACE SB_GL_REPLACE
#define GL_INCR SB_GL_INCR
#define GL_DECR SB_GL_DECR
#define GL_INVERT SB_GL_INVERT
#define GL_INCR_WRAP SB_GL_INCR_WRAP
#define GL_DECR_WRAP SB_GL_DECR_WRAP
#define GL_VENDOR SB_GL_VENDOR
#define GL_RENDERER SB_GL_RENDERER
#define GL_VERSION SB_GL_VERSION
#define GL_EXTENSIONS SB_GL_EXTENSIONS
#define GL_NEAREST SB_GL_NEAREST
#define GL_LINEAR SB_GL_LINEAR
#define GL_NEAREST_MIPMAP_NEAREST SB_GL_NEAREST_MIPMAP_NEAREST
#define GL_LINEAR_MIPMAP_NEAREST SB_GL_LINEAR_MIPMAP_NEAREST
#define GL_NEAREST_MIPMAP_LINEAR SB_GL_NEAREST_MIPMAP_LINEAR
#define GL_LINEAR_MIPMAP_LINEAR SB_GL_LINEAR_MIPMAP_LINEAR
#define GL_TEXTURE_MAG_FILTER SB_GL_TEXTURE_MAG_FILTER
#define GL_TEXTURE_MIN_FILTER SB_GL_TEXTURE_MIN_FILTER
#define GL_TEXTURE_WRAP_S SB_GL_TEXTURE_WRAP_S
#define GL_TEXTURE_WRAP_T SB_GL_TEXTURE_WRAP_T
#define GL_TEXTURE SB_GL_TEXTURE
#define GL_TEXTURE_CUBE_MAP SB_GL_TEXTURE_CUBE_MAP
#define GL_TEXTURE_BINDING_CUBE_MAP SB_GL_TEXTURE_BINDING_CUBE_MAP
#define GL_TEXTURE_CUBE_MAP_POSITIVE_X SB_GL_TEXTURE_CUBE_MAP_POSITIVE_X
#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X SB_GL_TEXTURE_CUBE_MAP_NEGATIVE_X
#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y SB_GL_TEXTURE_CUBE_MAP_POSITIVE_Y
#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y SB_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y
#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z SB_GL_TEXTURE_CUBE_MAP_POSITIVE_Z
#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z SB_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z
#define GL_MAX_CUBE_MAP_TEXTURE_SIZE SB_GL_MAX_CUBE_MAP_TEXTURE_SIZE
#define GL_TEXTURE0 SB_GL_TEXTURE0
#define GL_TEXTURE1 SB_GL_TEXTURE1
#define GL_TEXTURE2 SB_GL_TEXTURE2
#define GL_TEXTURE3 SB_GL_TEXTURE3
#define GL_TEXTURE4 SB_GL_TEXTURE4
#define GL_TEXTURE5 SB_GL_TEXTURE5
#define GL_TEXTURE6 SB_GL_TEXTURE6
#define GL_TEXTURE7 SB_GL_TEXTURE7
#define GL_TEXTURE8 SB_GL_TEXTURE8
#define GL_TEXTURE9 SB_GL_TEXTURE9
#define GL_TEXTURE10 SB_GL_TEXTURE10
#define GL_TEXTURE11 SB_GL_TEXTURE11
#define GL_TEXTURE12 SB_GL_TEXTURE12
#define GL_TEXTURE13 SB_GL_TEXTURE13
#define GL_TEXTURE14 SB_GL_TEXTURE14
#define GL_TEXTURE15 SB_GL_TEXTURE15
#define GL_TEXTURE16 SB_GL_TEXTURE16
#define GL_TEXTURE17 SB_GL_TEXTURE17
#define GL_TEXTURE18 SB_GL_TEXTURE18
#define GL_TEXTURE19 SB_GL_TEXTURE19
#define GL_TEXTURE20 SB_GL_TEXTURE20
#define GL_TEXTURE21 SB_GL_TEXTURE21
#define GL_TEXTURE22 SB_GL_TEXTURE22
#define GL_TEXTURE23 SB_GL_TEXTURE23
#define GL_TEXTURE24 SB_GL_TEXTURE24
#define GL_TEXTURE25 SB_GL_TEXTURE25
#define GL_TEXTURE26 SB_GL_TEXTURE26
#define GL_TEXTURE27 SB_GL_TEXTURE27
#define GL_TEXTURE28 SB_GL_TEXTURE28
#define GL_TEXTURE29 SB_GL_TEXTURE29
#define GL_TEXTURE30 SB_GL_TEXTURE30
#define GL_TEXTURE31 SB_GL_TEXTURE31
#define GL_ACTIVE_TEXTURE SB_GL_ACTIVE_TEXTURE
#define GL_REPEAT SB_GL_REPEAT
#define GL_CLAMP_TO_EDGE SB_GL_CLAMP_TO_EDGE
#define GL_MIRRORED_REPEAT SB_GL_MIRRORED_REPEAT
#define GL_FLOAT_VEC2 SB_GL_FLOAT_VEC2
#define GL_FLOAT_VEC3 SB_GL_FLOAT_VEC3
#define GL_FLOAT_VEC4 SB_GL_FLOAT_VEC4
#define GL_INT_VEC2 SB_GL_INT_VEC2
#define GL_INT_VEC3 SB_GL_INT_VEC3
#define GL_INT_VEC4 SB_GL_INT_VEC4
#define GL_BOOL SB_GL_BOOL
#define GL_BOOL_VEC2 SB_GL_BOOL_VEC2
#define GL_BOOL_VEC3 SB_GL_BOOL_VEC3
#define GL_BOOL_VEC4 SB_GL_BOOL_VEC4
#define GL_FLOAT_MAT2 SB_GL_FLOAT_MAT2
#define GL_FLOAT_MAT3 SB_GL_FLOAT_MAT3
#define GL_FLOAT_MAT4 SB_GL_FLOAT_MAT4
#define GL_SAMPLER_2D SB_GL_SAMPLER_2D
#define GL_SAMPLER_CUBE SB_GL_SAMPLER_CUBE
#define GL_VERTEX_ATTRIB_ARRAY_ENABLED SB_GL_VERTEX_ATTRIB_ARRAY_ENABLED
#define GL_VERTEX_ATTRIB_ARRAY_SIZE SB_GL_VERTEX_ATTRIB_ARRAY_SIZE
#define GL_VERTEX_ATTRIB_ARRAY_STRIDE SB_GL_VERTEX_ATTRIB_ARRAY_STRIDE
#define GL_VERTEX_ATTRIB_ARRAY_TYPE SB_GL_VERTEX_ATTRIB_ARRAY_TYPE
#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED SB_GL_VERTEX_ATTRIB_ARRAY_NORMALIZED
#define GL_VERTEX_ATTRIB_ARRAY_POINTER SB_GL_VERTEX_ATTRIB_ARRAY_POINTER
#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING \
  SB_GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING
#define GL_IMPLEMENTATION_COLOR_READ_TYPE SB_GL_IMPLEMENTATION_COLOR_READ_TYPE
#define GL_IMPLEMENTATION_COLOR_READ_FORMAT \
  SB_GL_IMPLEMENTATION_COLOR_READ_FORMAT
#define GL_COMPILE_STATUS SB_GL_COMPILE_STATUS
#define GL_INFO_LOG_LENGTH SB_GL_INFO_LOG_LENGTH
#define GL_SHADER_SOURCE_LENGTH SB_GL_SHADER_SOURCE_LENGTH
#define GL_SHADER_COMPILER SB_GL_SHADER_COMPILER
#define GL_SHADER_BINARY_FORMATS SB_GL_SHADER_BINARY_FORMATS
#define GL_NUM_SHADER_BINARY_FORMATS SB_GL_NUM_SHADER_BINARY_FORMATS
#define GL_LOW_FLOAT SB_GL_LOW_FLOAT
#define GL_MEDIUM_FLOAT SB_GL_MEDIUM_FLOAT
#define GL_HIGH_FLOAT SB_GL_HIGH_FLOAT
#define GL_LOW_INT SB_GL_LOW_INT
#define GL_MEDIUM_INT SB_GL_MEDIUM_INT
#define GL_HIGH_INT SB_GL_HIGH_INT
#define GL_FRAMEBUFFER SB_GL_FRAMEBUFFER
#define GL_RENDERBUFFER SB_GL_RENDERBUFFER
#define GL_RGBA4 SB_GL_RGBA4
#define GL_RGB5_A1 SB_GL_RGB5_A1
#define GL_RGB565 SB_GL_RGB565
#define GL_DEPTH_COMPONENT16 SB_GL_DEPTH_COMPONENT16
#define GL_STENCIL_INDEX8 SB_GL_STENCIL_INDEX8
#define GL_RENDERBUFFER_WIDTH SB_GL_RENDERBUFFER_WIDTH
#define GL_RENDERBUFFER_HEIGHT SB_GL_RENDERBUFFER_HEIGHT
#define GL_RENDERBUFFER_INTERNAL_FORMAT SB_GL_RENDERBUFFER_INTERNAL_FORMAT
#define GL_RENDERBUFFER_RED_SIZE SB_GL_RENDERBUFFER_RED_SIZE
#define GL_RENDERBUFFER_GREEN_SIZE SB_GL_RENDERBUFFER_GREEN_SIZE
#define GL_RENDERBUFFER_BLUE_SIZE SB_GL_RENDERBUFFER_BLUE_SIZE
#define GL_RENDERBUFFER_ALPHA_SIZE SB_GL_RENDERBUFFER_ALPHA_SIZE
#define GL_RENDERBUFFER_DEPTH_SIZE SB_GL_RENDERBUFFER_DEPTH_SIZE
#define GL_RENDERBUFFER_STENCIL_SIZE SB_GL_RENDERBUFFER_STENCIL_SIZE
#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE \
  SB_GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE
#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME \
  SB_GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME
#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL \
  SB_GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL
#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE \
  SB_GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE
#define GL_COLOR_ATTACHMENT0 SB_GL_COLOR_ATTACHMENT0
#define GL_DEPTH_ATTACHMENT SB_GL_DEPTH_ATTACHMENT
#define GL_STENCIL_ATTACHMENT SB_GL_STENCIL_ATTACHMENT
#define GL_NONE SB_GL_NONE
#define GL_FRAMEBUFFER_COMPLETE SB_GL_FRAMEBUFFER_COMPLETE
#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT \
  SB_GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT
#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT \
  SB_GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT
#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS \
  SB_GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS
#define GL_FRAMEBUFFER_UNSUPPORTED SB_GL_FRAMEBUFFER_UNSUPPORTED
#define GL_FRAMEBUFFER_BINDING SB_GL_FRAMEBUFFER_BINDING
#define GL_RENDERBUFFER_BINDING SB_GL_RENDERBUFFER_BINDING
#define GL_MAX_RENDERBUFFER_SIZE SB_GL_MAX_RENDERBUFFER_SIZE
#define GL_INVALID_FRAMEBUFFER_OPERATION SB_GL_INVALID_FRAMEBUFFER_OPERATION

#include "cobalt/renderer/gles_ext.h"

// Previously defined in
// https://www.khronos.org/registry/OpenGL/api/GLES3/gl3.h.
#define GL_READ_BUFFER SB_GL_READ_BUFFER
#define GL_UNPACK_ROW_LENGTH SB_GL_UNPACK_ROW_LENGTH
#define GL_UNPACK_SKIP_ROWS SB_GL_UNPACK_SKIP_ROWS
#define GL_UNPACK_SKIP_PIXELS SB_GL_UNPACK_SKIP_PIXELS
#define GL_PACK_ROW_LENGTH SB_GL_PACK_ROW_LENGTH
#define GL_PACK_SKIP_ROWS SB_GL_PACK_SKIP_ROWS
#define GL_PACK_SKIP_PIXELS SB_GL_PACK_SKIP_PIXELS
#define GL_COLOR SB_GL_COLOR
#define GL_DEPTH SB_GL_DEPTH
#define GL_STENCIL SB_GL_STENCIL
#define GL_RED SB_GL_RED
#define GL_RGB8 SB_GL_RGB8
#define GL_RGBA8 SB_GL_RGBA8
#define GL_RGB10_A2 SB_GL_RGB10_A2
#define GL_TEXTURE_BINDING_3D SB_GL_TEXTURE_BINDING_3D
#define GL_UNPACK_SKIP_IMAGES SB_GL_UNPACK_SKIP_IMAGES
#define GL_UNPACK_IMAGE_HEIGHT SB_GL_UNPACK_IMAGE_HEIGHT
#define GL_TEXTURE_3D SB_GL_TEXTURE_3D
#define GL_TEXTURE_WRAP_R SB_GL_TEXTURE_WRAP_R
#define GL_MAX_3D_TEXTURE_SIZE SB_GL_MAX_3D_TEXTURE_SIZE
#define GL_UNSIGNED_INT_2_10_10_10_REV SB_GL_UNSIGNED_INT_2_10_10_10_REV
#define GL_MAX_ELEMENTS_VERTICES SB_GL_MAX_ELEMENTS_VERTICES
#define GL_MAX_ELEMENTS_INDICES SB_GL_MAX_ELEMENTS_INDICES
#define GL_TEXTURE_MIN_LOD SB_GL_TEXTURE_MIN_LOD
#define GL_TEXTURE_MAX_LOD SB_GL_TEXTURE_MAX_LOD
#define GL_TEXTURE_BASE_LEVEL SB_GL_TEXTURE_BASE_LEVEL
#define GL_TEXTURE_MAX_LEVEL SB_GL_TEXTURE_MAX_LEVEL
#define GL_MIN SB_GL_MIN
#define GL_MAX SB_GL_MAX
#define GL_DEPTH_COMPONENT24 SB_GL_DEPTH_COMPONENT24
#define GL_MAX_TEXTURE_LOD_BIAS SB_GL_MAX_TEXTURE_LOD_BIAS
#define GL_TEXTURE_COMPARE_MODE SB_GL_TEXTURE_COMPARE_MODE
#define GL_TEXTURE_COMPARE_FUNC SB_GL_TEXTURE_COMPARE_FUNC
#define GL_CURRENT_QUERY SB_GL_CURRENT_QUERY
#define GL_QUERY_RESULT SB_GL_QUERY_RESULT
#define GL_QUERY_RESULT_AVAILABLE SB_GL_QUERY_RESULT_AVAILABLE
#define GL_BUFFER_MAPPED SB_GL_BUFFER_MAPPED
#define GL_BUFFER_MAP_POINTER SB_GL_BUFFER_MAP_POINTER
#define GL_STREAM_READ SB_GL_STREAM_READ
#define GL_STREAM_COPY SB_GL_STREAM_COPY
#define GL_STATIC_READ SB_GL_STATIC_READ
#define GL_STATIC_COPY SB_GL_STATIC_COPY
#define GL_DYNAMIC_READ SB_GL_DYNAMIC_READ
#define GL_DYNAMIC_COPY SB_GL_DYNAMIC_COPY
#define GL_MAX_DRAW_BUFFERS SB_GL_MAX_DRAW_BUFFERS
#define GL_DRAW_BUFFER0 SB_GL_DRAW_BUFFER0
#define GL_DRAW_BUFFER1 SB_GL_DRAW_BUFFER1
#define GL_DRAW_BUFFER2 SB_GL_DRAW_BUFFER2
#define GL_DRAW_BUFFER3 SB_GL_DRAW_BUFFER3
#define GL_DRAW_BUFFER4 SB_GL_DRAW_BUFFER4
#define GL_DRAW_BUFFER5 SB_GL_DRAW_BUFFER5
#define GL_DRAW_BUFFER6 SB_GL_DRAW_BUFFER6
#define GL_DRAW_BUFFER7 SB_GL_DRAW_BUFFER7
#define GL_DRAW_BUFFER8 SB_GL_DRAW_BUFFER8
#define GL_DRAW_BUFFER9 SB_GL_DRAW_BUFFER9
#define GL_DRAW_BUFFER10 SB_GL_DRAW_BUFFER10
#define GL_DRAW_BUFFER11 SB_GL_DRAW_BUFFER11
#define GL_DRAW_BUFFER12 SB_GL_DRAW_BUFFER12
#define GL_DRAW_BUFFER13 SB_GL_DRAW_BUFFER13
#define GL_DRAW_BUFFER14 SB_GL_DRAW_BUFFER14
#define GL_DRAW_BUFFER15 SB_GL_DRAW_BUFFER15
#define GL_MAX_FRAGMENT_UNIFORM_COMPONENTS SB_GL_MAX_FRAGMENT_UNIFORM_COMPONENTS
#define GL_MAX_VERTEX_UNIFORM_COMPONENTS SB_GL_MAX_VERTEX_UNIFORM_COMPONENTS
#define GL_SAMPLER_3D SB_GL_SAMPLER_3D
#define GL_SAMPLER_2D_SHADOW SB_GL_SAMPLER_2D_SHADOW
#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT SB_GL_FRAGMENT_SHADER_DERIVATIVE_HINT
#define GL_PIXEL_PACK_BUFFER SB_GL_PIXEL_PACK_BUFFER
#define GL_PIXEL_UNPACK_BUFFER SB_GL_PIXEL_UNPACK_BUFFER
#define GL_PIXEL_PACK_BUFFER_BINDING SB_GL_PIXEL_PACK_BUFFER_BINDING
#define GL_PIXEL_UNPACK_BUFFER_BINDING SB_GL_PIXEL_UNPACK_BUFFER_BINDING
#define GL_FLOAT_MAT2x3 SB_GL_FLOAT_MAT2x3
#define GL_FLOAT_MAT2x4 SB_GL_FLOAT_MAT2x4
#define GL_FLOAT_MAT3x2 SB_GL_FLOAT_MAT3x2
#define GL_FLOAT_MAT3x4 SB_GL_FLOAT_MAT3x4
#define GL_FLOAT_MAT4x2 SB_GL_FLOAT_MAT4x2
#define GL_FLOAT_MAT4x3 SB_GL_FLOAT_MAT4x3
#define GL_SRGB SB_GL_SRGB
#define GL_SRGB8 SB_GL_SRGB8
#define GL_SRGB8_ALPHA8 SB_GL_SRGB8_ALPHA8
#define GL_COMPARE_REF_TO_TEXTURE SB_GL_COMPARE_REF_TO_TEXTURE
#define GL_MAJOR_VERSION SB_GL_MAJOR_VERSION
#define GL_MINOR_VERSION SB_GL_MINOR_VERSION
#define GL_NUM_EXTENSIONS SB_GL_NUM_EXTENSIONS
#define GL_RGBA32F SB_GL_RGBA32F
#define GL_RGB32F SB_GL_RGB32F
#define GL_RGBA16F SB_GL_RGBA16F
#define GL_RGB16F SB_GL_RGB16F
#define GL_VERTEX_ATTRIB_ARRAY_INTEGER SB_GL_VERTEX_ATTRIB_ARRAY_INTEGER
#define GL_MAX_ARRAY_TEXTURE_LAYERS SB_GL_MAX_ARRAY_TEXTURE_LAYERS
#define GL_MIN_PROGRAM_TEXEL_OFFSET SB_GL_MIN_PROGRAM_TEXEL_OFFSET
#define GL_MAX_PROGRAM_TEXEL_OFFSET SB_GL_MAX_PROGRAM_TEXEL_OFFSET
#define GL_MAX_VARYING_COMPONENTS SB_GL_MAX_VARYING_COMPONENTS
#define GL_TEXTURE_2D_ARRAY SB_GL_TEXTURE_2D_ARRAY
#define GL_TEXTURE_BINDING_2D_ARRAY SB_GL_TEXTURE_BINDING_2D_ARRAY
#define GL_R11F_G11F_B10F SB_GL_R11F_G11F_B10F
#define GL_UNSIGNED_INT_10F_11F_11F_REV SB_GL_UNSIGNED_INT_10F_11F_11F_REV
#define GL_RGB9_E5 SB_GL_RGB9_E5
#define GL_UNSIGNED_INT_5_9_9_9_REV SB_GL_UNSIGNED_INT_5_9_9_9_REV
#define GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH \
  SB_GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH
#define GL_TRANSFORM_FEEDBACK_BUFFER_MODE SB_GL_TRANSFORM_FEEDBACK_BUFFER_MODE
#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS \
  SB_GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS
#define GL_TRANSFORM_FEEDBACK_VARYINGS SB_GL_TRANSFORM_FEEDBACK_VARYINGS
#define GL_TRANSFORM_FEEDBACK_BUFFER_START SB_GL_TRANSFORM_FEEDBACK_BUFFER_START
#define GL_TRANSFORM_FEEDBACK_BUFFER_SIZE SB_GL_TRANSFORM_FEEDBACK_BUFFER_SIZE
#define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN \
  SB_GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN
#define GL_RASTERIZER_DISCARD SB_GL_RASTERIZER_DISCARD
#define GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS \
  SB_GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS
#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS \
  SB_GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS
#define GL_INTERLEAVED_ATTRIBS SB_GL_INTERLEAVED_ATTRIBS
#define GL_SEPARATE_ATTRIBS SB_GL_SEPARATE_ATTRIBS
#define GL_TRANSFORM_FEEDBACK_BUFFER SB_GL_TRANSFORM_FEEDBACK_BUFFER
#define GL_TRANSFORM_FEEDBACK_BUFFER_BINDING \
  SB_GL_TRANSFORM_FEEDBACK_BUFFER_BINDING
#define GL_RGBA32UI SB_GL_RGBA32UI
#define GL_RGB32UI SB_GL_RGB32UI
#define GL_RGBA16UI SB_GL_RGBA16UI
#define GL_RGB16UI SB_GL_RGB16UI
#define GL_RGBA8UI SB_GL_RGBA8UI
#define GL_RGB8UI SB_GL_RGB8UI
#define GL_RGBA32I SB_GL_RGBA32I
#define GL_RGB32I SB_GL_RGB32I
#define GL_RGBA16I SB_GL_RGBA16I
#define GL_RGB16I SB_GL_RGB16I
#define GL_RGBA8I SB_GL_RGBA8I
#define GL_RGB8I SB_GL_RGB8I
#define GL_RED_INTEGER SB_GL_RED_INTEGER
#define GL_RGB_INTEGER SB_GL_RGB_INTEGER
#define GL_RGBA_INTEGER SB_GL_RGBA_INTEGER
#define GL_SAMPLER_2D_ARRAY SB_GL_SAMPLER_2D_ARRAY
#define GL_SAMPLER_2D_ARRAY_SHADOW SB_GL_SAMPLER_2D_ARRAY_SHADOW
#define GL_SAMPLER_CUBE_SHADOW SB_GL_SAMPLER_CUBE_SHADOW
#define GL_UNSIGNED_INT_VEC2 SB_GL_UNSIGNED_INT_VEC2
#define GL_UNSIGNED_INT_VEC3 SB_GL_UNSIGNED_INT_VEC3
#define GL_UNSIGNED_INT_VEC4 SB_GL_UNSIGNED_INT_VEC4
#define GL_INT_SAMPLER_2D SB_GL_INT_SAMPLER_2D
#define GL_INT_SAMPLER_3D SB_GL_INT_SAMPLER_3D
#define GL_INT_SAMPLER_CUBE SB_GL_INT_SAMPLER_CUBE
#define GL_INT_SAMPLER_2D_ARRAY SB_GL_INT_SAMPLER_2D_ARRAY
#define GL_UNSIGNED_INT_SAMPLER_2D SB_GL_UNSIGNED_INT_SAMPLER_2D
#define GL_UNSIGNED_INT_SAMPLER_3D SB_GL_UNSIGNED_INT_SAMPLER_3D
#define GL_UNSIGNED_INT_SAMPLER_CUBE SB_GL_UNSIGNED_INT_SAMPLER_CUBE
#define GL_UNSIGNED_INT_SAMPLER_2D_ARRAY SB_GL_UNSIGNED_INT_SAMPLER_2D_ARRAY
#define GL_BUFFER_ACCESS_FLAGS SB_GL_BUFFER_ACCESS_FLAGS
#define GL_BUFFER_MAP_LENGTH SB_GL_BUFFER_MAP_LENGTH
#define GL_BUFFER_MAP_OFFSET SB_GL_BUFFER_MAP_OFFSET
#define GL_DEPTH_COMPONENT32F SB_GL_DEPTH_COMPONENT32F
#define GL_DEPTH32F_STENCIL8 SB_GL_DEPTH32F_STENCIL8
#define GL_FLOAT_32_UNSIGNED_INT_24_8_REV SB_GL_FLOAT_32_UNSIGNED_INT_24_8_REV
#define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING \
  SB_GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING
#define GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE \
  SB_GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE
#define GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE SB_GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE
#define GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE \
  SB_GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE
#define GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE \
  SB_GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE
#define GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE \
  SB_GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE
#define GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE \
  SB_GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE
#define GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE \
  SB_GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE
#define GL_FRAMEBUFFER_DEFAULT SB_GL_FRAMEBUFFER_DEFAULT
#define GL_FRAMEBUFFER_UNDEFINED SB_GL_FRAMEBUFFER_UNDEFINED
#define GL_DEPTH_STENCIL_ATTACHMENT SB_GL_DEPTH_STENCIL_ATTACHMENT
#define GL_DEPTH_STENCIL SB_GL_DEPTH_STENCIL
#define GL_UNSIGNED_INT_24_8 SB_GL_UNSIGNED_INT_24_8
#define GL_DEPTH24_STENCIL8 SB_GL_DEPTH24_STENCIL8
#define GL_UNSIGNED_NORMALIZED SB_GL_UNSIGNED_NORMALIZED
#define GL_DRAW_FRAMEBUFFER_BINDING SB_GL_DRAW_FRAMEBUFFER_BINDING
#define GL_READ_FRAMEBUFFER SB_GL_READ_FRAMEBUFFER
#define GL_DRAW_FRAMEBUFFER SB_GL_DRAW_FRAMEBUFFER
#define GL_READ_FRAMEBUFFER_BINDING SB_GL_READ_FRAMEBUFFER_BINDING
#define GL_RENDERBUFFER_SAMPLES SB_GL_RENDERBUFFER_SAMPLES
#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER \
  SB_GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER
#define GL_MAX_COLOR_ATTACHMENTS SB_GL_MAX_COLOR_ATTACHMENTS
#define GL_COLOR_ATTACHMENT1 SB_GL_COLOR_ATTACHMENT1
#define GL_COLOR_ATTACHMENT2 SB_GL_COLOR_ATTACHMENT2
#define GL_COLOR_ATTACHMENT3 SB_GL_COLOR_ATTACHMENT3
#define GL_COLOR_ATTACHMENT4 SB_GL_COLOR_ATTACHMENT4
#define GL_COLOR_ATTACHMENT5 SB_GL_COLOR_ATTACHMENT5
#define GL_COLOR_ATTACHMENT6 SB_GL_COLOR_ATTACHMENT6
#define GL_COLOR_ATTACHMENT7 SB_GL_COLOR_ATTACHMENT7
#define GL_COLOR_ATTACHMENT8 SB_GL_COLOR_ATTACHMENT8
#define GL_COLOR_ATTACHMENT9 SB_GL_COLOR_ATTACHMENT9
#define GL_COLOR_ATTACHMENT10 SB_GL_COLOR_ATTACHMENT10
#define GL_COLOR_ATTACHMENT11 SB_GL_COLOR_ATTACHMENT11
#define GL_COLOR_ATTACHMENT12 SB_GL_COLOR_ATTACHMENT12
#define GL_COLOR_ATTACHMENT13 SB_GL_COLOR_ATTACHMENT13
#define GL_COLOR_ATTACHMENT14 SB_GL_COLOR_ATTACHMENT14
#define GL_COLOR_ATTACHMENT15 SB_GL_COLOR_ATTACHMENT15
#define GL_COLOR_ATTACHMENT16 SB_GL_COLOR_ATTACHMENT16
#define GL_COLOR_ATTACHMENT17 SB_GL_COLOR_ATTACHMENT17
#define GL_COLOR_ATTACHMENT18 SB_GL_COLOR_ATTACHMENT18
#define GL_COLOR_ATTACHMENT19 SB_GL_COLOR_ATTACHMENT19
#define GL_COLOR_ATTACHMENT20 SB_GL_COLOR_ATTACHMENT20
#define GL_COLOR_ATTACHMENT21 SB_GL_COLOR_ATTACHMENT21
#define GL_COLOR_ATTACHMENT22 SB_GL_COLOR_ATTACHMENT22
#define GL_COLOR_ATTACHMENT23 SB_GL_COLOR_ATTACHMENT23
#define GL_COLOR_ATTACHMENT24 SB_GL_COLOR_ATTACHMENT24
#define GL_COLOR_ATTACHMENT25 SB_GL_COLOR_ATTACHMENT25
#define GL_COLOR_ATTACHMENT26 SB_GL_COLOR_ATTACHMENT26
#define GL_COLOR_ATTACHMENT27 SB_GL_COLOR_ATTACHMENT27
#define GL_COLOR_ATTACHMENT28 SB_GL_COLOR_ATTACHMENT28
#define GL_COLOR_ATTACHMENT29 SB_GL_COLOR_ATTACHMENT29
#define GL_COLOR_ATTACHMENT30 SB_GL_COLOR_ATTACHMENT30
#define GL_COLOR_ATTACHMENT31 SB_GL_COLOR_ATTACHMENT31
#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE \
  SB_GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE
#define GL_MAX_SAMPLES SB_GL_MAX_SAMPLES
#define GL_HALF_FLOAT SB_GL_HALF_FLOAT
#define GL_MAP_READ_BIT SB_GL_MAP_READ_BIT
#define GL_MAP_WRITE_BIT SB_GL_MAP_WRITE_BIT
#define GL_MAP_INVALIDATE_RANGE_BIT SB_GL_MAP_INVALIDATE_RANGE_BIT
#define GL_MAP_INVALIDATE_BUFFER_BIT SB_GL_MAP_INVALIDATE_BUFFER_BIT
#define GL_MAP_FLUSH_EXPLICIT_BIT SB_GL_MAP_FLUSH_EXPLICIT_BIT
#define GL_MAP_UNSYNCHRONIZED_BIT SB_GL_MAP_UNSYNCHRONIZED_BIT
#define GL_RG SB_GL_RG
#define GL_RG_INTEGER SB_GL_RG_INTEGER
#define GL_R8 SB_GL_R8
#define GL_RG8 SB_GL_RG8
#define GL_R16F SB_GL_R16F
#define GL_R32F SB_GL_R32F
#define GL_RG16F SB_GL_RG16F
#define GL_RG32F SB_GL_RG32F
#define GL_R8I SB_GL_R8I
#define GL_R8UI SB_GL_R8UI
#define GL_R16I SB_GL_R16I
#define GL_R16UI SB_GL_R16UI
#define GL_R32I SB_GL_R32I
#define GL_R32UI SB_GL_R32UI
#define GL_RG8I SB_GL_RG8I
#define GL_RG8UI SB_GL_RG8UI
#define GL_RG16I SB_GL_RG16I
#define GL_RG16UI SB_GL_RG16UI
#define GL_RG32I SB_GL_RG32I
#define GL_RG32UI SB_GL_RG32UI
#define GL_VERTEX_ARRAY_BINDING SB_GL_VERTEX_ARRAY_BINDING
#define GL_R8_SNORM SB_GL_R8_SNORM
#define GL_RG8_SNORM SB_GL_RG8_SNORM
#define GL_RGB8_SNORM SB_GL_RGB8_SNORM
#define GL_RGBA8_SNORM SB_GL_RGBA8_SNORM
#define GL_SIGNED_NORMALIZED SB_GL_SIGNED_NORMALIZED
#define GL_PRIMITIVE_RESTART_FIXED_INDEX SB_GL_PRIMITIVE_RESTART_FIXED_INDEX
#define GL_COPY_READ_BUFFER SB_GL_COPY_READ_BUFFER
#define GL_COPY_WRITE_BUFFER SB_GL_COPY_WRITE_BUFFER
#define GL_COPY_READ_BUFFER_BINDING SB_GL_COPY_READ_BUFFER_BINDING
#define GL_COPY_WRITE_BUFFER_BINDING SB_GL_COPY_WRITE_BUFFER_BINDING
#define GL_UNIFORM_BUFFER SB_GL_UNIFORM_BUFFER
#define GL_UNIFORM_BUFFER_BINDING SB_GL_UNIFORM_BUFFER_BINDING
#define GL_UNIFORM_BUFFER_START SB_GL_UNIFORM_BUFFER_START
#define GL_UNIFORM_BUFFER_SIZE SB_GL_UNIFORM_BUFFER_SIZE
#define GL_MAX_VERTEX_UNIFORM_BLOCKS SB_GL_MAX_VERTEX_UNIFORM_BLOCKS
#define GL_MAX_FRAGMENT_UNIFORM_BLOCKS SB_GL_MAX_FRAGMENT_UNIFORM_BLOCKS
#define GL_MAX_COMBINED_UNIFORM_BLOCKS SB_GL_MAX_COMBINED_UNIFORM_BLOCKS
#define GL_MAX_UNIFORM_BUFFER_BINDINGS SB_GL_MAX_UNIFORM_BUFFER_BINDINGS
#define GL_MAX_UNIFORM_BLOCK_SIZE SB_GL_MAX_UNIFORM_BLOCK_SIZE
#define GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS \
  SB_GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS
#define GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS \
  SB_GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS
#define GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT SB_GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT
#define GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH \
  SB_GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH
#define GL_ACTIVE_UNIFORM_BLOCKS SB_GL_ACTIVE_UNIFORM_BLOCKS
#define GL_UNIFORM_TYPE SB_GL_UNIFORM_TYPE
#define GL_UNIFORM_SIZE SB_GL_UNIFORM_SIZE
#define GL_UNIFORM_NAME_LENGTH SB_GL_UNIFORM_NAME_LENGTH
#define GL_UNIFORM_BLOCK_INDEX SB_GL_UNIFORM_BLOCK_INDEX
#define GL_UNIFORM_OFFSET SB_GL_UNIFORM_OFFSET
#define GL_UNIFORM_ARRAY_STRIDE SB_GL_UNIFORM_ARRAY_STRIDE
#define GL_UNIFORM_MATRIX_STRIDE SB_GL_UNIFORM_MATRIX_STRIDE
#define GL_UNIFORM_IS_ROW_MAJOR SB_GL_UNIFORM_IS_ROW_MAJOR
#define GL_UNIFORM_BLOCK_BINDING SB_GL_UNIFORM_BLOCK_BINDING
#define GL_UNIFORM_BLOCK_DATA_SIZE SB_GL_UNIFORM_BLOCK_DATA_SIZE
#define GL_UNIFORM_BLOCK_NAME_LENGTH SB_GL_UNIFORM_BLOCK_NAME_LENGTH
#define GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS SB_GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS
#define GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES \
  SB_GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES
#define GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER \
  SB_GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER
#define GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER \
  SB_GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER
#define GL_INVALID_INDEX SB_GL_INVALID_INDEX
#define GL_MAX_VERTEX_OUTPUT_COMPONENTS SB_GL_MAX_VERTEX_OUTPUT_COMPONENTS
#define GL_MAX_FRAGMENT_INPUT_COMPONENTS SB_GL_MAX_FRAGMENT_INPUT_COMPONENTS
#define GL_MAX_SERVER_WAIT_TIMEOUT SB_GL_MAX_SERVER_WAIT_TIMEOUT
#define GL_OBJECT_TYPE SB_GL_OBJECT_TYPE
#define GL_SYNC_CONDITION SB_GL_SYNC_CONDITION
#define GL_SYNC_STATUS SB_GL_SYNC_STATUS
#define GL_SYNC_FLAGS SB_GL_SYNC_FLAGS
#define GL_SYNC_FENCE SB_GL_SYNC_FENCE
#define GL_SYNC_GPU_COMMANDS_COMPLETE SB_GL_SYNC_GPU_COMMANDS_COMPLETE
#define GL_UNSIGNALED SB_GL_UNSIGNALED
#define GL_SIGNALED SB_GL_SIGNALED
#define GL_ALREADY_SIGNALED SB_GL_ALREADY_SIGNALED
#define GL_TIMEOUT_EXPIRED SB_GL_TIMEOUT_EXPIRED
#define GL_CONDITION_SATISFIED SB_GL_CONDITION_SATISFIED
#define GL_WAIT_FAILED SB_GL_WAIT_FAILED
#define GL_SYNC_FLUSH_COMMANDS_BIT SB_GL_SYNC_FLUSH_COMMANDS_BIT
#define GL_TIMEOUT_IGNORED SB_GL_TIMEOUT_IGNORED
#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR SB_GL_VERTEX_ATTRIB_ARRAY_DIVISOR
#define GL_ANY_SAMPLES_PASSED SB_GL_ANY_SAMPLES_PASSED
#define GL_ANY_SAMPLES_PASSED_CONSERVATIVE SB_GL_ANY_SAMPLES_PASSED_CONSERVATIVE
#define GL_SAMPLER_BINDING SB_GL_SAMPLER_BINDING
#define GL_RGB10_A2UI SB_GL_RGB10_A2UI
#define GL_TEXTURE_SWIZZLE_R SB_GL_TEXTURE_SWIZZLE_R
#define GL_TEXTURE_SWIZZLE_G SB_GL_TEXTURE_SWIZZLE_G
#define GL_TEXTURE_SWIZZLE_B SB_GL_TEXTURE_SWIZZLE_B
#define GL_TEXTURE_SWIZZLE_A SB_GL_TEXTURE_SWIZZLE_A
#define GL_GREEN SB_GL_GREEN
#define GL_BLUE SB_GL_BLUE
#define GL_INT_2_10_10_10_REV SB_GL_INT_2_10_10_10_REV
#define GL_TRANSFORM_FEEDBACK SB_GL_TRANSFORM_FEEDBACK
#define GL_TRANSFORM_FEEDBACK_PAUSED SB_GL_TRANSFORM_FEEDBACK_PAUSED
#define GL_TRANSFORM_FEEDBACK_ACTIVE SB_GL_TRANSFORM_FEEDBACK_ACTIVE
#define GL_TRANSFORM_FEEDBACK_BINDING SB_GL_TRANSFORM_FEEDBACK_BINDING
#define GL_PROGRAM_BINARY_RETRIEVABLE_HINT SB_GL_PROGRAM_BINARY_RETRIEVABLE_HINT
#define GL_PROGRAM_BINARY_LENGTH SB_GL_PROGRAM_BINARY_LENGTH
#define GL_NUM_PROGRAM_BINARY_FORMATS SB_GL_NUM_PROGRAM_BINARY_FORMATS
#define GL_PROGRAM_BINARY_FORMATS SB_GL_PROGRAM_BINARY_FORMATS
#define GL_COMPRESSED_R11_EAC SB_GL_COMPRESSED_R11_EAC
#define GL_COMPRESSED_SIGNED_R11_EAC SB_GL_COMPRESSED_SIGNED_R11_EAC
#define GL_COMPRESSED_RG11_EAC SB_GL_COMPRESSED_RG11_EAC
#define GL_COMPRESSED_SIGNED_RG11_EAC SB_GL_COMPRESSED_SIGNED_RG11_EAC
#define GL_COMPRESSED_RGB8_ETC2 SB_GL_COMPRESSED_RGB8_ETC2
#define GL_COMPRESSED_SRGB8_ETC2 SB_GL_COMPRESSED_SRGB8_ETC2
#define GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 \
  SB_GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2
#define GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 \
  SB_GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2
#define GL_COMPRESSED_RGBA8_ETC2_EAC SB_GL_COMPRESSED_RGBA8_ETC2_EAC
#define GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC \
  SB_GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC
#define GL_TEXTURE_IMMUTABLE_FORMAT SB_GL_TEXTURE_IMMUTABLE_FORMAT
#define GL_MAX_ELEMENT_INDEX SB_GL_MAX_ELEMENT_INDEX
#define GL_NUM_SAMPLE_COUNTS SB_GL_NUM_SAMPLE_COUNTS
#define GL_TEXTURE_IMMUTABLE_LEVELS SB_GL_TEXTURE_IMMUTABLE_LEVELS

#endif  // SB_API_VERSION >= EGL_AND_GL_INTERFACE_VERSION

#endif  // COBALT_RENDERER_EGL_AND_GLES_H_
