From 2fa1c5abb2a91d0bbdcb25cc420cb3c6f6c38430 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Mon, 16 May 2016 20:07:29 +0200 Subject: [PATCH] (GLSM) Expand GLSM --- libretro-common/glsm/glsm.c | 36 ++++++++++++++++++++++++++ libretro-common/include/glsm/glsmsym.h | 13 ++++++++++ 2 files changed, 49 insertions(+) diff --git a/libretro-common/glsm/glsm.c b/libretro-common/glsm/glsm.c index eaaf73e8f2..580db2c0a7 100644 --- a/libretro-common/glsm/glsm.c +++ b/libretro-common/glsm/glsm.c @@ -1338,6 +1338,42 @@ void rglUniform1iv(GLint location, GLsizei count, const GLint *value) glUniform1iv(location, count, value); } +void rglClearBufferfv( GLenum buffer, + GLint drawBuffer, + const GLfloat * value) +{ +#if defined(HAVE_OPENGL) || defined(HAVE_OPENGLES) && defined(HAVE_OPENGLES_3) + glClearBufferfv(buffer, drawBuffer, value); +#endif +} + +void rglTexBuffer(GLenum target, GLenum internalFormat, GLuint buffer) +{ +#if defined(HAVE_OPENGL) || defined(HAVE_OPENGLES) && defined(HAVE_OPENGLES_3_2) + glTexBuffer(target, internalFormat, buffer); +#endif +} + +const GLubyte* rglGetStringi(GLenum name, GLuint index) +{ + glGetStringi(name, index); +} + +void rglClearBufferfi( GLenum buffer, + GLint drawBuffer, + GLfloat depth, + GLint stencil) +{ +#if defined(HAVE_OPENGL) || defined(HAVE_OPENGLES) && defined(HAVE_OPENGLES_3) + glClearBufferfi(buffer, drawBuffer, value); +#endif +} + +/* + * + * Core in: + * OpenGL : 3.0 + */ void rglRenderbufferStorageMultisample( GLenum target, GLsizei samples, GLenum internalformat, diff --git a/libretro-common/include/glsm/glsmsym.h b/libretro-common/include/glsm/glsmsym.h index 1e6a7eda42..7c98daca51 100644 --- a/libretro-common/include/glsm/glsmsym.h +++ b/libretro-common/include/glsm/glsmsym.h @@ -154,7 +154,20 @@ RETRO_BEGIN_DECLS #define glUniform1iv rglUniform1iv #define glUniform1fv rglUniform1fv #define glValidateProgram rglValidateProgram +#define glGetStringi rglGetStringi +#define glTexBuffer rglTexBuffer +#define glClearBufferfv rglClearBufferfv +#define glClearBufferfi rglClearBufferfi +const GLubyte* rglGetStringi(GLenum name, GLuint index); +void rglTexBuffer(GLenum target, GLenum internalFormat, GLuint buffer); +void rglClearBufferfv( GLenum buffer, + GLint drawBuffer, + const GLfloat * value); +void rglClearBufferfi( GLenum buffer, + GLint drawBuffer, + GLfloat depth, + GLint stencil); void rglValidateProgram(GLuint program); void rglRenderbufferStorageMultisample( GLenum target, GLsizei samples,