mirror of https://github.com/mgba-emu/mgba.git
OpenGL: Bump minimum to 3.2
This commit is contained in:
parent
a2ed0785d9
commit
d1ef6d258e
|
@ -86,7 +86,7 @@ Other Unix-like platforms, such as OpenBSD, are known to work as well, but are u
|
|||
|
||||
### System requirements
|
||||
|
||||
Requirements are minimal. Any computer that can run Windows Vista or newer should be able to handle emulation. Support for OpenGL 1.1 or newer is also required, with OpenGL 3.0 or newer for shaders and advanced features.
|
||||
Requirements are minimal. Any computer that can run Windows Vista or newer should be able to handle emulation. Support for OpenGL 1.1 or newer is also required, with OpenGL 3.2 or newer for shaders and advanced features.
|
||||
|
||||
Downloads
|
||||
---------
|
||||
|
|
|
@ -64,7 +64,7 @@ static const GLchar* const _gles3Header =
|
|||
"precision highp isampler2D;\n";
|
||||
|
||||
static const GLchar* const _gl3Header =
|
||||
"#version 130\n"
|
||||
"#version 150 core\n"
|
||||
"#define OUT(n)\n"
|
||||
PALETTE_ENTRY
|
||||
"precision highp float;\n";
|
||||
|
|
|
@ -21,8 +21,17 @@ static const GLchar* const _gles2Header =
|
|||
"#version 100\n"
|
||||
"precision mediump float;\n";
|
||||
|
||||
static const GLchar* const _gl3Header =
|
||||
"#version 120\n";
|
||||
static const GLchar* const _gl32VHeader =
|
||||
"#version 150 core\n"
|
||||
"#define attribute in\n"
|
||||
"#define varying out\n";
|
||||
|
||||
static const GLchar* const _gl32FHeader =
|
||||
"#version 150 core\n"
|
||||
"#define varying in\n"
|
||||
"#define texture2D texture\n"
|
||||
"out vec4 compat_FragColor;\n"
|
||||
"#define gl_FragColor compat_FragColor\n";
|
||||
|
||||
static const char* const _vertexShader =
|
||||
"attribute vec4 position;\n"
|
||||
|
@ -449,7 +458,7 @@ void mGLES2ShaderInit(struct mGLES2Shader* shader, const char* vs, const char* f
|
|||
const GLchar* shaderBuffer[2];
|
||||
const GLubyte* version = glGetString(GL_VERSION);
|
||||
if (strncmp((const char*) version, "OpenGL ES ", strlen("OpenGL ES "))) {
|
||||
shaderBuffer[0] = _gl3Header;
|
||||
shaderBuffer[0] = _gl32VHeader;
|
||||
} else {
|
||||
shaderBuffer[0] = _gles2Header;
|
||||
}
|
||||
|
@ -460,6 +469,9 @@ void mGLES2ShaderInit(struct mGLES2Shader* shader, const char* vs, const char* f
|
|||
}
|
||||
glShaderSource(shader->vertexShader, 2, shaderBuffer, 0);
|
||||
|
||||
if (strncmp((const char*) version, "OpenGL ES ", strlen("OpenGL ES "))) {
|
||||
shaderBuffer[0] = _gl32FHeader;
|
||||
}
|
||||
if (fs) {
|
||||
shaderBuffer[1] = fs;
|
||||
} else {
|
||||
|
|
|
@ -26,7 +26,8 @@ Display* Display::create(QWidget* parent) {
|
|||
switch (s_driver) {
|
||||
#if defined(BUILD_GL) || defined(BUILD_GLES2) || defined(USE_EPOXY)
|
||||
case Driver::OPENGL:
|
||||
format.setVersion(3, 0);
|
||||
format.setVersion(3, 2);
|
||||
format.setProfile(QSurfaceFormat::CoreProfile);
|
||||
return new DisplayGL(format, parent);
|
||||
#endif
|
||||
#ifdef BUILD_GL
|
||||
|
|
Loading…
Reference in New Issue