aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRainer Hochecker <fernetmenta@online.de>2017-09-27 08:34:58 +0200
committerRainer Hochecker <fernetmenta@online.de>2017-10-05 18:06:27 +0200
commit18953026cff8473da43275ba49c5471d4ce33b9f (patch)
treec947e58e39e1ad18a13f32fd62bd798a0fca53b0
parentc4c88062582ca87d6df4e48aa4cf79a5adb3301c (diff)
OpenGL: move shaders to version dpendent subfolder
-rw-r--r--system/shaders/GL/1.2/gl_convolution-4x4.glsl (renamed from system/shaders/gl_convolution-4x4.glsl)0
-rw-r--r--system/shaders/GL/1.2/gl_convolution-6x6.glsl (renamed from system/shaders/gl_convolution-6x6.glsl)0
-rw-r--r--system/shaders/GL/1.2/gl_output.glsl (renamed from system/shaders/gl_output.glsl)0
-rw-r--r--system/shaders/GL/1.2/gl_shader_frag_default.glsl (renamed from system/shaders/gl_shader_frag_default.glsl)0
-rw-r--r--system/shaders/GL/1.2/gl_shader_frag_fonts.glsl (renamed from system/shaders/gl_shader_frag_fonts.glsl)0
-rw-r--r--system/shaders/GL/1.2/gl_shader_frag_multi.glsl (renamed from system/shaders/gl_shader_frag_multi.glsl)0
-rw-r--r--system/shaders/GL/1.2/gl_shader_frag_multi_blendcolor.glsl (renamed from system/shaders/gl_shader_frag_multi_blendcolor.glsl)0
-rw-r--r--system/shaders/GL/1.2/gl_shader_frag_texture.glsl (renamed from system/shaders/gl_shader_frag_texture.glsl)0
-rw-r--r--system/shaders/GL/1.2/gl_shader_frag_texture_noblend.glsl (renamed from system/shaders/gl_shader_frag_texture_noblend.glsl)0
-rw-r--r--system/shaders/GL/1.2/gl_shader_vert.glsl (renamed from system/shaders/gl_shader_vert.glsl)0
-rw-r--r--system/shaders/GL/1.2/gl_shader_vert_default.glsl (renamed from system/shaders/gl_shader_vert_default.glsl)0
-rw-r--r--system/shaders/GL/1.2/gl_streatch.glsl (renamed from system/shaders/gl_streatch.glsl)0
-rw-r--r--system/shaders/GL/1.2/gl_videofilter_frag.glsl (renamed from system/shaders/gl_videofilter_frag.glsl)0
-rw-r--r--system/shaders/GL/1.2/gl_videofilter_vertex.glsl (renamed from system/shaders/gl_videofilter_vertex.glsl)0
-rw-r--r--system/shaders/GL/1.2/gl_yuv2rgb_basic.glsl (renamed from system/shaders/gl_yuv2rgb_basic.glsl)0
-rw-r--r--system/shaders/GL/1.2/gl_yuv2rgb_vertex.glsl (renamed from system/shaders/gl_yuv2rgb_vertex.glsl)0
-rw-r--r--xbmc/guilib/Shader.cpp15
-rw-r--r--xbmc/rendering/RenderSystem.h2
-rw-r--r--xbmc/rendering/gl/RenderSystemGL.cpp6
-rw-r--r--xbmc/rendering/gl/RenderSystemGL.h2
20 files changed, 19 insertions, 6 deletions
diff --git a/system/shaders/gl_convolution-4x4.glsl b/system/shaders/GL/1.2/gl_convolution-4x4.glsl
index cf2a0f5378..cf2a0f5378 100644
--- a/system/shaders/gl_convolution-4x4.glsl
+++ b/system/shaders/GL/1.2/gl_convolution-4x4.glsl
diff --git a/system/shaders/gl_convolution-6x6.glsl b/system/shaders/GL/1.2/gl_convolution-6x6.glsl
index c4f51fd431..c4f51fd431 100644
--- a/system/shaders/gl_convolution-6x6.glsl
+++ b/system/shaders/GL/1.2/gl_convolution-6x6.glsl
diff --git a/system/shaders/gl_output.glsl b/system/shaders/GL/1.2/gl_output.glsl
index d3294a8bb5..d3294a8bb5 100644
--- a/system/shaders/gl_output.glsl
+++ b/system/shaders/GL/1.2/gl_output.glsl
diff --git a/system/shaders/gl_shader_frag_default.glsl b/system/shaders/GL/1.2/gl_shader_frag_default.glsl
index d9aba5f5fe..d9aba5f5fe 100644
--- a/system/shaders/gl_shader_frag_default.glsl
+++ b/system/shaders/GL/1.2/gl_shader_frag_default.glsl
diff --git a/system/shaders/gl_shader_frag_fonts.glsl b/system/shaders/GL/1.2/gl_shader_frag_fonts.glsl
index fdc50c1130..fdc50c1130 100644
--- a/system/shaders/gl_shader_frag_fonts.glsl
+++ b/system/shaders/GL/1.2/gl_shader_frag_fonts.glsl
diff --git a/system/shaders/gl_shader_frag_multi.glsl b/system/shaders/GL/1.2/gl_shader_frag_multi.glsl
index 804a716ea3..804a716ea3 100644
--- a/system/shaders/gl_shader_frag_multi.glsl
+++ b/system/shaders/GL/1.2/gl_shader_frag_multi.glsl
diff --git a/system/shaders/gl_shader_frag_multi_blendcolor.glsl b/system/shaders/GL/1.2/gl_shader_frag_multi_blendcolor.glsl
index 20622d2375..20622d2375 100644
--- a/system/shaders/gl_shader_frag_multi_blendcolor.glsl
+++ b/system/shaders/GL/1.2/gl_shader_frag_multi_blendcolor.glsl
diff --git a/system/shaders/gl_shader_frag_texture.glsl b/system/shaders/GL/1.2/gl_shader_frag_texture.glsl
index c15681f85c..c15681f85c 100644
--- a/system/shaders/gl_shader_frag_texture.glsl
+++ b/system/shaders/GL/1.2/gl_shader_frag_texture.glsl
diff --git a/system/shaders/gl_shader_frag_texture_noblend.glsl b/system/shaders/GL/1.2/gl_shader_frag_texture_noblend.glsl
index 16a1f8bed9..16a1f8bed9 100644
--- a/system/shaders/gl_shader_frag_texture_noblend.glsl
+++ b/system/shaders/GL/1.2/gl_shader_frag_texture_noblend.glsl
diff --git a/system/shaders/gl_shader_vert.glsl b/system/shaders/GL/1.2/gl_shader_vert.glsl
index 7c10b5f1bf..7c10b5f1bf 100644
--- a/system/shaders/gl_shader_vert.glsl
+++ b/system/shaders/GL/1.2/gl_shader_vert.glsl
diff --git a/system/shaders/gl_shader_vert_default.glsl b/system/shaders/GL/1.2/gl_shader_vert_default.glsl
index 554e15c3fd..554e15c3fd 100644
--- a/system/shaders/gl_shader_vert_default.glsl
+++ b/system/shaders/GL/1.2/gl_shader_vert_default.glsl
diff --git a/system/shaders/gl_streatch.glsl b/system/shaders/GL/1.2/gl_streatch.glsl
index dc42318d50..dc42318d50 100644
--- a/system/shaders/gl_streatch.glsl
+++ b/system/shaders/GL/1.2/gl_streatch.glsl
diff --git a/system/shaders/gl_videofilter_frag.glsl b/system/shaders/GL/1.2/gl_videofilter_frag.glsl
index ff7af3b678..ff7af3b678 100644
--- a/system/shaders/gl_videofilter_frag.glsl
+++ b/system/shaders/GL/1.2/gl_videofilter_frag.glsl
diff --git a/system/shaders/gl_videofilter_vertex.glsl b/system/shaders/GL/1.2/gl_videofilter_vertex.glsl
index aa124b5350..aa124b5350 100644
--- a/system/shaders/gl_videofilter_vertex.glsl
+++ b/system/shaders/GL/1.2/gl_videofilter_vertex.glsl
diff --git a/system/shaders/gl_yuv2rgb_basic.glsl b/system/shaders/GL/1.2/gl_yuv2rgb_basic.glsl
index 268d8c6682..268d8c6682 100644
--- a/system/shaders/gl_yuv2rgb_basic.glsl
+++ b/system/shaders/GL/1.2/gl_yuv2rgb_basic.glsl
diff --git a/system/shaders/gl_yuv2rgb_vertex.glsl b/system/shaders/GL/1.2/gl_yuv2rgb_vertex.glsl
index cdf3c56a71..cdf3c56a71 100644
--- a/system/shaders/gl_yuv2rgb_vertex.glsl
+++ b/system/shaders/GL/1.2/gl_yuv2rgb_vertex.glsl
diff --git a/xbmc/guilib/Shader.cpp b/xbmc/guilib/Shader.cpp
index 803ec50965..93bc427b7f 100644
--- a/xbmc/guilib/Shader.cpp
+++ b/xbmc/guilib/Shader.cpp
@@ -20,12 +20,11 @@
#include "system.h"
-#if defined(HAS_GL) || HAS_GLES >= 2
-
#include "Shader.h"
#include "filesystem/File.h"
#include "utils/log.h"
#include "utils/GLUtils.h"
+#include "windowing/WindowingFactory.h"
#ifdef HAS_GLES
#define GLchar char
@@ -46,7 +45,10 @@ bool CShader::LoadSource(const std::string& filename, const std::string& prefix)
CFileStream file;
- if(!file.Open("special://xbmc/system/shaders/" + filename))
+ std::string path = "special://xbmc/system/shaders/";
+ path += g_Windowing.GetShaderPath();
+ path += filename;
+ if(!file.Open(path))
{
CLog::Log(LOGERROR, "CYUVShaderGLSL::CYUVShaderGLSL - failed to open file %s", filename.c_str());
return false;
@@ -64,7 +66,10 @@ bool CShader::AppendSource(const std::string& filename)
CFileStream file;
std::string temp;
- if(!file.Open("special://xbmc/system/shaders/" + filename))
+ std::string path = "special://xbmc/system/shaders/";
+ path += g_Windowing.GetShaderPath();
+ path += filename;
+ if(!file.Open(path))
{
CLog::Log(LOGERROR, "CShader::AppendSource - failed to open file %s", filename.c_str());
return false;
@@ -480,5 +485,3 @@ void CARBShaderProgram::Disable()
}
#endif
-
-#endif
diff --git a/xbmc/rendering/RenderSystem.h b/xbmc/rendering/RenderSystem.h
index 91a6fae817..51e164ffb6 100644
--- a/xbmc/rendering/RenderSystem.h
+++ b/xbmc/rendering/RenderSystem.h
@@ -98,6 +98,8 @@ public:
*/
virtual void Project(float &x, float &y, float &z) { }
+ virtual std::string GetShaderPath() { return ""; }
+
void GetRenderVersion(unsigned int& major, unsigned int& minor) const;
const std::string& GetRenderVendor() const { return m_RenderVendor; }
const std::string& GetRenderRenderer() const { return m_RenderRenderer; }
diff --git a/xbmc/rendering/gl/RenderSystemGL.cpp b/xbmc/rendering/gl/RenderSystemGL.cpp
index 026d66ee46..cbe4972de3 100644
--- a/xbmc/rendering/gl/RenderSystemGL.cpp
+++ b/xbmc/rendering/gl/RenderSystemGL.cpp
@@ -810,3 +810,9 @@ GLint CRenderSystemGL::ShaderGetModel()
return -1;
}
+
+std::string CRenderSystemGL::GetShaderPath()
+{
+ std::string path = "GL/1.2/";
+ return path;
+}
diff --git a/xbmc/rendering/gl/RenderSystemGL.h b/xbmc/rendering/gl/RenderSystemGL.h
index ec4eb79e54..b5d86ec2ec 100644
--- a/xbmc/rendering/gl/RenderSystemGL.h
+++ b/xbmc/rendering/gl/RenderSystemGL.h
@@ -77,6 +77,8 @@ public:
void Project(float &x, float &y, float &z) override;
+ std::string GetShaderPath() override;
+
void GetGLSLVersion(int& major, int& minor);
void ResetGLErrors();