diff options
Diffstat (limited to 'include/render/gles2.h')
-rw-r--r-- | include/render/gles2.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/include/render/gles2.h b/include/render/gles2.h index 41af0593..3006872c 100644 --- a/include/render/gles2.h +++ b/include/render/gles2.h @@ -4,9 +4,16 @@ #include <string.h> #include <stdbool.h> #include <GLES2/gl2.h> +#include <GLES2/gl2ext.h> +#include <EGL/egl.h> +#include <EGL/eglext.h> +#include <wlr/egl.h> +#include <wlr/backend.h> #include <wlr/render.h> #include <wlr/util/log.h> +extern PFNGLEGLIMAGETARGETTEXTURE2DOESPROC glEGLImageTargetTexture2DOES; + struct pixel_format { uint32_t wl_format; GLint gl_format, gl_type; @@ -14,10 +21,17 @@ struct pixel_format { GLuint *shader; }; +struct wlr_renderer_state { + struct wlr_renderer *renderer; + struct wlr_egl *egl; +}; + struct wlr_texture_state { struct wlr_texture *wlr_texture; + struct wlr_egl *egl; GLuint tex_id; const struct pixel_format *pixel_format; + EGLImageKHR image; }; struct shaders { @@ -25,6 +39,7 @@ struct shaders { GLuint rgba, rgbx; GLuint quad; GLuint ellipse; + GLuint external; }; extern struct shaders shaders; @@ -39,6 +54,7 @@ extern const GLchar ellipse_fragment_src[]; extern const GLchar vertex_src[]; extern const GLchar fragment_src_rgba[]; extern const GLchar fragment_src_rgbx[]; +extern const GLchar fragment_src_external[]; bool _gles2_flush_errors(const char *file, int line); #define gles2_flush_errors(...) \ |