Added a hint to control whether the OpenGL driver uses shaders.
This commit is contained in:
parent
752dd42dea
commit
9c86971ac9
2 changed files with 24 additions and 1 deletions
|
@ -77,11 +77,26 @@ extern "C" {
|
|||
* This variable is case insensitive and can be set to the following values:
|
||||
* "direct3d"
|
||||
* "opengl"
|
||||
* "opengles2"
|
||||
* "opengles"
|
||||
* "software"
|
||||
*
|
||||
* The default varies by platform, but it's the first one in the list that
|
||||
* is available on the current platform.
|
||||
*/
|
||||
#define SDL_HINT_RENDER_DRIVER "SDL_RENDER_DRIVER"
|
||||
|
||||
/**
|
||||
* \brief A variable controlling whether the OpenGL render driver uses shaders if they are available.
|
||||
*
|
||||
* This variable can be set to the following values:
|
||||
* "0" - Disable shaders
|
||||
* "1" - Enable shaders
|
||||
*
|
||||
* By default shaders are used if OpenGL supports them.
|
||||
*/
|
||||
#define SDL_HINT_RENDER_OPENGL_SHADERS "SDL_RENDER_OPENGL_SHADERS"
|
||||
|
||||
/**
|
||||
* \brief A variable controlling whether updates to the SDL 1.2 screen surface should be synchronized with the vertical refresh, to avoid tearing.
|
||||
*
|
||||
|
|
|
@ -23,6 +23,8 @@
|
|||
|
||||
#if SDL_VIDEO_RENDER_OGL && !SDL_RENDER_DISABLED
|
||||
|
||||
#include "SDL_hints.h"
|
||||
#include "SDL_log.h"
|
||||
#include "SDL_opengl.h"
|
||||
#include "../SDL_sysrender.h"
|
||||
#include "SDL_shaders_gl.h"
|
||||
|
@ -183,6 +185,7 @@ GL_CreateRenderer(SDL_Window * window, Uint32 flags)
|
|||
{
|
||||
SDL_Renderer *renderer;
|
||||
GL_RenderData *data;
|
||||
const char *hint;
|
||||
GLint value;
|
||||
Uint32 window_flags;
|
||||
|
||||
|
@ -282,7 +285,12 @@ GL_CreateRenderer(SDL_Window * window, Uint32 flags)
|
|||
}
|
||||
|
||||
/* Check for shader support */
|
||||
hint = SDL_GetHint(SDL_HINT_RENDER_OPENGL_SHADERS);
|
||||
if (!hint || *hint != '0') {
|
||||
data->shaders = GL_CreateShaderContext();
|
||||
}
|
||||
SDL_LogInfo(SDL_LOG_CATEGORY_RENDER, "OpenGL shaders: %s",
|
||||
data->shaders ? "ENABLED" : "DISABLED");
|
||||
|
||||
#if 0
|
||||
/* We support YV12 textures using 3 textures and a shader */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue