diff options
author | Rainer Hochecker <fernetmenta@online.de> | 2017-09-27 08:34:58 +0200 |
---|---|---|
committer | Rainer Hochecker <fernetmenta@online.de> | 2017-10-05 18:06:27 +0200 |
commit | 18953026cff8473da43275ba49c5471d4ce33b9f (patch) | |
tree | c947e58e39e1ad18a13f32fd62bd798a0fca53b0 | |
parent | c4c88062582ca87d6df4e48aa4cf79a5adb3301c (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.cpp | 15 | ||||
-rw-r--r-- | xbmc/rendering/RenderSystem.h | 2 | ||||
-rw-r--r-- | xbmc/rendering/gl/RenderSystemGL.cpp | 6 | ||||
-rw-r--r-- | xbmc/rendering/gl/RenderSystemGL.h | 2 |
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(); |