Add support for GLSL 4.30 and GLSL ES 3.10, via #pragma language glsl4.

macOS and iOS won't support glsl4 until a Metal backend is implemented.

--HG--
branch : minor
This commit is contained in:
Alex Szpakowski
2019-11-16 14:33:48 -04:00
parent 8801161f09
commit 37c579929b
5 changed files with 42 additions and 15 deletions
+4 -2
View File
@@ -189,7 +189,8 @@ bool Graphics::setMode(int width, int height, int pixelwidth, int pixelheight, b
gl.setTextureUnit(0);
// Set pixel row alignment
// Set pixel row alignment - code that calls glTexSubImage and glReadPixels
// assumes there's no row alignment, but OpenGL defaults to 4 bytes.
glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
glPixelStorei(GL_PACK_ALIGNMENT, 1);
@@ -1384,8 +1385,9 @@ void Graphics::initCapabilities()
capabilities.features[FEATURE_PIXEL_SHADER_HIGHP] = gl.isPixelShaderHighpSupported();
capabilities.features[FEATURE_SHADER_DERIVATIVES] = GLAD_VERSION_2_0 || GLAD_ES_VERSION_3_0 || GLAD_OES_standard_derivatives;
capabilities.features[FEATURE_GLSL3] = GLAD_ES_VERSION_3_0 || gl.isCoreProfile();
capabilities.features[FEATURE_GLSL4] = GLAD_ES_VERSION_3_1 || (gl.isCoreProfile() && GLAD_VERSION_4_3);
capabilities.features[FEATURE_INSTANCING] = gl.isInstancingSupported();
static_assert(FEATURE_MAX_ENUM == 8, "Graphics::initCapabilities must be updated when adding a new graphics feature!");
static_assert(FEATURE_MAX_ENUM == 9, "Graphics::initCapabilities must be updated when adding a new graphics feature!");
capabilities.limits[LIMIT_POINT_SIZE] = gl.getMaxPointSize();
capabilities.limits[LIMIT_TEXTURE_SIZE] = gl.getMax2DTextureSize();