avmedia/source/opengl/oglplayer.cxx | 13 ------ external/libgltf/UnpackedTarball_libgltf.mk | 1 external/libgltf/pathces/append_shader_version.patch | 37 +++++++++++++++++++ 3 files changed, 39 insertions(+), 12 deletions(-)
New commits: commit cf2afb05dd571bd85d75385a8254454da99951ee Author: Zolnai Tamás <[email protected]> Date: Mon Aug 18 09:31:06 2014 +0200 libgltf: Append shader language version to the shader files In general glTF shader files does not contain version directives and in some case it make shader compiler using GLSL 1.1 which leads to that the shader compiler fails. So we need to append the choosen version number which is GLSL 1.3 in case of libgltf, but this also means that from that point OpenGL 3.0 is the new reuirements since GLSL 1.3 is available only from that version. (cherry picked from commit c67026f27023008d124c8ab76533169f032b04f6) Conflicts: external/libgltf/UnpackedTarball_libgltf.mk Change-Id: Ic4382266432ea474aeb3e603b32a998b9aeed280 Reviewed-on: https://gerrit.libreoffice.org/10948 Reviewed-by: Caolán McNamara <[email protected]> Reviewed-by: Markus Mohrhard <[email protected]> Reviewed-by: David Tardon <[email protected]> Tested-by: David Tardon <[email protected]> diff --git a/avmedia/source/opengl/oglplayer.cxx b/avmedia/source/opengl/oglplayer.cxx index ba7e9f2..a052dc9 100644 --- a/avmedia/source/opengl/oglplayer.cxx +++ b/avmedia/source/opengl/oglplayer.cxx @@ -241,18 +241,7 @@ awt::Size SAL_CALL OGLPlayer::getPreferredPlayerWindowSize() throw ( uno::Runtim static bool lcl_CheckOpenGLRequirements() { - float fVersion = OpenGLHelper::getGLVersion(); - - if( fVersion >= 3.0 ) - { - return true; - } - else if( fVersion >= 2.1 ) - { - return glewIsSupported("GL_ARB_framebuffer_object GL_ARB_vertex_array_object"); - } - - return false; + return OpenGLHelper::getGLVersion() >= 3.0; } uno::Reference< media::XPlayerWindow > SAL_CALL OGLPlayer::createPlayerWindow( const uno::Sequence< uno::Any >& rArguments ) diff --git a/external/libgltf/UnpackedTarball_libgltf.mk b/external/libgltf/UnpackedTarball_libgltf.mk index 3b27c2a..42c821b 100644 --- a/external/libgltf/UnpackedTarball_libgltf.mk +++ b/external/libgltf/UnpackedTarball_libgltf.mk @@ -17,6 +17,7 @@ $(eval $(call gb_UnpackedTarball_set_patchlevel,libgltf,1)) $(eval $(call gb_UnpackedTarball_add_patches,libgltf,\ external/libgltf/pathces/missing_include.patch \ + external/libgltf/pathces/append_shader_version.patch \ )) # vim: set noet sw=4 ts=4: diff --git a/external/libgltf/pathces/append_shader_version.patch b/external/libgltf/pathces/append_shader_version.patch new file mode 100644 index 0000000..27f0cc6 --- /dev/null +++ b/external/libgltf/pathces/append_shader_version.patch @@ -0,0 +1,37 @@ +diff -ur libgltf.org/src/Shaders.cpp libgltf/src/Shaders.cpp +--- libgltf.org/src/Shaders.cpp 2014-08-18 09:19:48.323955939 +0200 ++++ libgltf/src/Shaders.cpp 2014-08-18 09:20:46.711953465 +0200 +@@ -11,6 +11,7 @@ + + #include <GL/glew.h> + #include <cstdio> ++#include <cstring> + + namespace libgltf + { +@@ -166,7 +167,24 @@ + unsigned int shaderId) + { + GLint iGLSize = iSize; +- glShaderSource(shaderId, 1, &pShader, &iGLSize); ++ if( strstr(pShader,"#version") == 0 ) ++ { ++ const GLchar* aSources[] = { ++ "#version 130\n", ++ pShader, ++ }; ++ ++ const GLint aSizes[] = { ++ strlen("#version 130\n"), ++ iGLSize, ++ }; ++ ++ glShaderSource(shaderId, 2, &aSources[0], &aSizes[0]); ++ } ++ else ++ { ++ glShaderSource(shaderId, 1, &pShader, &iGLSize); ++ } + glCompileShader(shaderId); + int iStatus = 0; + glGetShaderiv(shaderId, GL_COMPILE_STATUS, &iStatus);
_______________________________________________ Libreoffice-commits mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
