Browse Source

Remove legacy shader reading code

Donald Carr 8 years ago
parent
commit
38cdc561b9

+ 2 - 2
qml/3rdparty/effects/Billboard.qml

@@ -48,7 +48,7 @@
 **
 ****************************************************************************/
 
-import QtQuick 2.5
+import QtQuick 2.8
 
 Effect {
     property real grid: 15.0
@@ -56,5 +56,5 @@ Effect {
     property real step_x: 0.0015625
     property real step_y: targetHeight ? (step_x * targetWidth / targetHeight) : 0.0
 
-    fragmentShaderFilename: "billboard.fsh"
+    fragmentShader: Qt.resolvedUrl("shaders/billboard.fsh")
 }

+ 0 - 24
qml/3rdparty/effects/Effect.qml

@@ -54,30 +54,6 @@ ShaderEffect {
     property variant source
     property real targetWidth: 0
     property real targetHeight: 0
-    property string fragmentShaderFilename
-    property string vertexShaderFilename
 
     blending: false
-
-    QtObject {
-        id: d
-        property string fragmentShaderCommon: "
-            #ifdef GL_ES
-                precision mediump float;
-            #else
-            #   define lowp
-            #   define mediump
-            #   define highp
-            #endif // GL_ES
-        "
-    }
-
-    // The following is a workaround for the fact that ShaderEffect
-    // doesn't provide a way for shader programs to be read from a file,
-    // rather than being inline in the QML file
-
-    onFragmentShaderFilenameChanged:
-        fragmentShader = d.fragmentShaderCommon + fileReader.readFile("shaders/" + fragmentShaderFilename)
-    onVertexShaderFilenameChanged:
-        vertexShader = fileReader.readFile("shaders/" + vertexShaderFilename)
 }

+ 2 - 2
qml/3rdparty/effects/Emboss.qml

@@ -48,8 +48,8 @@
 **
 ****************************************************************************/
 
-import QtQuick 2.5
+import QtQuick 2.8
 
 Effect {
-    fragmentShaderFilename: "emboss.fsh"
+    fragmentShader: Qt.resolvedUrl("shaders/emboss.fsh")
 }

+ 3 - 3
qml/3rdparty/effects/GaussianBlur.qml

@@ -50,7 +50,7 @@
 
 // Based on http://www.geeks3d.com/20100909/shader-library-gaussian-blur-post-processing-filter-in-glsl/
 
-import QtQuick 2.5
+import QtQuick 2.8
 
 Item {
     id: root
@@ -82,14 +82,14 @@ Item {
         onTargetWidthChanged: {
             updateBlurSize()
         }
-        fragmentShaderFilename: "gaussianblur_v.fsh"
+        fragmentShader: Qt.resolvedUrl("shaders/gaussianblur_v.fsh")
     }
 
     Effect {
         id: horizontalShader
         anchors.fill: parent
         property real blurSize: 0.0
-        fragmentShaderFilename: "gaussianblur_h.fsh"
+        fragmentShader: Qt.resolvedUrl("shaders/gaussianblur_h.fsh")
         source: horizontalShaderSource
 
         ShaderEffectSource {

+ 8 - 0
qml/3rdparty/effects/shaders/billboard.fsh

@@ -50,6 +50,14 @@
 
 // Based on http://kodemongki.blogspot.com/2011/06/kameraku-custom-shader-effects-example.html
 
+#ifdef GL_ES
+    precision mediump float;
+#else
+#   define lowp
+#   define mediump
+#   define highp
+#endif // GL_ES
+
 uniform float grid;
 uniform float step_x;
 uniform float step_y;

+ 8 - 0
qml/3rdparty/effects/shaders/emboss.fsh

@@ -50,6 +50,14 @@
 
 // Based on http://kodemongki.blogspot.com/2011/06/kameraku-custom-shader-effects-example.html
 
+#ifdef GL_ES
+    precision mediump float;
+#else
+#   define lowp
+#   define mediump
+#   define highp
+#endif // GL_ES
+
 const float step_w = 0.0015625;
 const float step_h = 0.0027778;
 

+ 8 - 0
qml/3rdparty/effects/shaders/gaussianblur_h.fsh

@@ -48,6 +48,14 @@
 **
 ****************************************************************************/
 
+#ifdef GL_ES
+    precision mediump float;
+#else
+#   define lowp
+#   define mediump
+#   define highp
+#endif // GL_ES
+
 uniform float blurSize;
 
 uniform sampler2D source;

+ 8 - 0
qml/3rdparty/effects/shaders/gaussianblur_v.fsh

@@ -48,6 +48,14 @@
 **
 ****************************************************************************/
 
+#ifdef GL_ES
+    precision mediump float;
+#else
+#   define lowp
+#   define mediump
+#   define highp
+#endif // GL_ES
+
 uniform float blurSize;
 
 uniform sampler2D source;

+ 0 - 27
src/filereader.h

@@ -1,27 +0,0 @@
-#ifndef FILEREADER_H
-#define FILEREADER_H
-
-#include <QObject>
-#include <QFile>
-#include <QTextStream>
-
-#include <QCoreApplication>
-
-class FileReader : public QObject {
-    Q_OBJECT
-public:
-    FileReader(QObject *p) : QObject(p) { /**/ }
-    Q_INVOKABLE static QString readFile(const QString &fileName)
-    {
-        QString content;
-        QString qmlPath = QCoreApplication::applicationDirPath() + "/../qml/3rdparty/effects/";
-        QFile file(qmlPath + fileName);
-        if (file.open(QIODevice::ReadOnly)) {
-            QTextStream stream(&file);
-            content = stream.readAll();
-        }
-        return content;
-    }
-};
-
-#endif // FILEREADER_H

+ 0 - 2
src/main.cpp

@@ -17,7 +17,6 @@
 ****************************************************************************/
 
 #include "picturemodel.h"
-#include "filereader.h"
 
 #include <QGuiApplication>
 #include <QQmlApplicationEngine>
@@ -135,7 +134,6 @@ int main(int argc, char *argv[])
 
     engine.addImportPath(qmlPath);
     engine.rootContext()->setContextProperty("nativeUtils", &nativeUtils);
-    engine.rootContext()->setContextProperty("fileReader", new FileReader(&app));
     engine.load(QUrl(qmlPath + "/main.qml"));
 
     return app.exec();

+ 1 - 2
src/src.pro

@@ -6,8 +6,7 @@ CONFIG += c++11
 DEFINES *= QT_USE_QSTRINGBUILDER
 
 HEADERS += \
-    picturemodel.h \
-    filereader.h
+    picturemodel.h
 
 SOURCES += main.cpp \
     picturemodel.cpp