From 12294c96aa51ab7a17eff9392abd45391d1ca8b5 Mon Sep 17 00:00:00 2001 From: Brad Parker Date: Tue, 6 Dec 2016 14:42:20 -0500 Subject: [PATCH] check for high precision floats on GLES, then enable if supported --- gfx/drivers/gl_shaders/shaders_common.h | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/gfx/drivers/gl_shaders/shaders_common.h b/gfx/drivers/gl_shaders/shaders_common.h index 587eb69494..2213d5d41d 100644 --- a/gfx/drivers/gl_shaders/shaders_common.h +++ b/gfx/drivers/gl_shaders/shaders_common.h @@ -3,8 +3,25 @@ #if defined(HAVE_OPENGLES) #define CG(src) "" #src -#define GLSL(src) "precision highp float;\n" #src -#define GLSL_330(src) "#version 330 es\nprecision highp float;\n" #src +#define GLSL(src) "#ifdef GL_ES\n" \ + " #ifdef GL_FRAGMENT_PRECISION_HIGH\n" \ + " precision highp float;\n" \ + " #else\n" \ + " precision mediump float;\n" \ + " #endif\n" \ + "#else\n" \ + " precision mediump float;\n" \ + "#endif\n" #src +#define GLSL_330(src) "#version 330 es\n" \ + "#ifdef GL_ES\n" \ + " #ifdef GL_FRAGMENT_PRECISION_HIGH\n" \ + " precision highp float;\n" \ + " #else\n" \ + " precision mediump float;\n" \ + " #endif\n" \ + "#else\n" \ + " precision mediump float;\n" \ + "#endif\n" #src #else #define CG(src) "" #src #define GLSL(src) "" #src