[Libreoffice-commits] core.git: Branch 'libreoffice-4-3' - avmedia/source external/libgltf

Zolnai Tamás tamas.zolnai at collabora.com
Sun Aug 17 14:18:10 PDT 2014


 avmedia/source/opengl/oglplayer.cxx                  |   13 --------
 external/libgltf/UnpackedTarball_libgltf.mk          |    1 
 external/libgltf/pathces/append_shader_version.patch |   30 +++++++++++++++++++
 3 files changed, 32 insertions(+), 12 deletions(-)

New commits:
commit 25459cb0c9afdf46c3d90ae8ba0b6ffb375f67da
Author: Zolnai Tamás <tamas.zolnai at collabora.com>
Date:   Sun Aug 17 09:26:33 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/10947
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

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..dd79515
--- /dev/null
+++ b/external/libgltf/pathces/append_shader_version.patch
@@ -0,0 +1,30 @@
+diff -ur libgltf.org/src/Shaders.cpp libgltf/src/Shaders.cpp
+--- libgltf.org/src/Shaders.cpp	2014-08-17 09:15:17.379255115 +0200
++++ libgltf/src/Shaders.cpp	2014-08-17 09:16:43.323258781 +0200
+@@ -11,6 +11,7 @@
+ 
+ #include <GL/glew.h>
+ #include <cstdio>
++#include <cstring>
+ 
+ namespace libgltf
+ {
+@@ -166,7 +167,17 @@
+                                   unsigned int shaderId)
+ {
+     GLint iGLSize = iSize;
+-    glShaderSource(shaderId, 1, &pShader, &iGLSize);
++    const GLchar* aSources[] = {
++        "#version 130\n",
++        pShader,
++    };
++
++    const GLint aSizes[] = {
++        strlen("#version 130\n"),
++        iGLSize,
++    };
++
++    glShaderSource(shaderId, 2, &aSources[0], &aSizes[0]);
+     glCompileShader(shaderId);
+     int iStatus = 0;
+     glGetShaderiv(shaderId, GL_COMPILE_STATUS, &iStatus);


More information about the Libreoffice-commits mailing list