From f6c6cf83ee56401fc25be064f97bf9f65ddf4401 Mon Sep 17 00:00:00 2001 From: Elias Steurer Date: Sun, 27 Sep 2020 16:59:24 +0200 Subject: [PATCH] Cleanup shadertoy shader and files --- ScreenPlayShader/ShadertoyShader.qml | 51 ++++++++---------- ScreenPlayShader/assets/Shadertoy_Bayer.png | Bin 0 -> 761 bytes .../assets/Shadertoy_Gray_Noise_Medium.png | Bin 0 -> 18521 bytes ScreenPlayShader/assets/Shadertoy_Lichen.jpg | Bin 0 -> 12364 bytes ScreenPlayShader/shader.qrc | 1 - ScreenPlayShader/shaderlibrary.cpp | 1 + ScreenPlayShader/shaderlibrary.h | 1 + 7 files changed, 25 insertions(+), 29 deletions(-) create mode 100644 ScreenPlayShader/assets/Shadertoy_Bayer.png create mode 100644 ScreenPlayShader/assets/Shadertoy_Gray_Noise_Medium.png create mode 100644 ScreenPlayShader/assets/Shadertoy_Lichen.jpg diff --git a/ScreenPlayShader/ShadertoyShader.qml b/ScreenPlayShader/ShadertoyShader.qml index 74a55886..d0106b40 100644 --- a/ScreenPlayShader/ShadertoyShader.qml +++ b/ScreenPlayShader/ShadertoyShader.qml @@ -3,27 +3,16 @@ import QtQuick.Controls 2.12 ShaderEffect { id: root - property real speed: 1 - - readonly property vector3d defaultResolution: Qt.vector3d( - root.width, root.height, - root.width / root.height) - function calcResolution(channel) { - if (channel) { - return Qt.vector3d(channel.width, channel.height, - channel.width / channel.height) - } else { - return defaultResolution - } - } // based on shadertoy default variables readonly property vector3d iResolution: defaultResolution + readonly property vector3d defaultResolution: Qt.vector3d( + root.width, root.height, + root.width / root.height) property real iTime: 0 property real iTimeDelta: 100 property int iFrame: 10 property real iFrameRate - property double shaderSpeed: 1.0 property vector4d iMouse //only Image or ShaderEffectSource @@ -38,6 +27,24 @@ ShaderEffect { property vector4d iDate property real iSampleRate: 44100 + property bool hoverEnabled: false + property bool running: true + + function restart() { + root.iTime = 0 + running = true + timer1.restart() + } + + function calcResolution(channel) { + if (channel) { + return Qt.vector3d(channel.width, channel.height, + channel.width / channel.height) + } else { + return defaultResolution + } + } + Image { id: ich0 visible: false @@ -55,13 +62,6 @@ ShaderEffect { visible: false } - property bool hoverEnabled: false - property bool running: true - function restart() { - root.iTime = 0 - running = true - timer1.restart() - } Timer { id: timer1 running: root.running @@ -69,9 +69,10 @@ ShaderEffect { interval: 16 repeat: true onTriggered: { - root.iTime += 0.016 * speed + root.iTime += 0.016 } } + Timer { running: root.running interval: 1000 @@ -155,12 +156,6 @@ uniform sampler2D iChannel3;" void main(void) { mainImage(gl_FragColor, vec2(vertex.x, iResolution.y - vertex.y)); -}" - - readonly property string defaultPixelShader: " -void mainImage(out vec4 fragColor, in vec2 fragCoord) -{ -fragColor = vec4(fragCoord, fragCoord.x, fragCoord.y); }" property bool runShader: true diff --git a/ScreenPlayShader/assets/Shadertoy_Bayer.png b/ScreenPlayShader/assets/Shadertoy_Bayer.png new file mode 100644 index 0000000000000000000000000000000000000000..6eef5259f1c01375fe5956d142d146df7072459f GIT binary patch literal 761 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 literal 0 HcmV?d00001 diff --git a/ScreenPlayShader/assets/Shadertoy_Lichen.jpg b/ScreenPlayShader/assets/Shadertoy_Lichen.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9c60a6e54fdc858ae89acb3995bb7c0895daaf4d GIT binary patch literal 12364 zcmbuFc{H2b|L^s5t}3dAQdCVqNJ>H zQdL(^|E$3|Q!{gm-!EI*UbnM%xB+s!?RLlA!_y1u_rU*QKp+Ac5*ijBfsKqxOiE5k zO?#T2llvkszu@neh2<5MxGH>g&6}oXBB_Pk+D7T=?du;H{P6J;l|~nR(5hWc{uCDOE(EdBw{~cJu{}b8& z0{h=wEUBY=_w2sBz4B5vQj$0^cm{LWo1MXqKO)NL-;sKlTn@8Q!>*4E^?C#kFn6TB zAfL~>v^2aK;LU6~xDm&JMQs2t<1;TGv~?FggvR&@CE0a93eBIyZG>Cq7ge!A6Qf#Dd?0MsuLYr^!~nXTUSd{mh5>+vPhp>nrym~8nv}x30SUe zSPWh$j7Y9uGLfj-zJX4BHS3g=T34~w^UMmbR*de0rsT>dn|Utlk+Y%!P!*%K8=>1* z+5~2KrSBlpw?wh`raO%&pDB(3V(0^adxO&VzD^oVfJljH@AS*w>p^Q-zQ*gqJh0e+e z&hwZ?QYlO~b_Sh;uEqOz_gG^39uwEu=Z@4PhauQDU4Eyy({8GOm zDqQsHqzHDT63v`teHWtg@gXzn$X~sz`r>-EVa*#1z|su$8T3h82dRr(vOxVh;mqbB zx|OXj4r`{UO>gu$r)@HxS9zh%`=a7yD+GQbm|Ob7`W%=k_L#Bq?W4@~Ks;_H-pra< z!H;#EVtSZw-fe3U%7csM*&gpK$w}P-n#V=@eI*w~TV+$&QG0sWu+J8k*(=@do5nF1 zCpw=(LfzuD1bs>o8s}*-TIdSVYlq+}#FXGAHh*U8%+EzH=7H=-e|as)hdLF{(_dW1 zxwz)wNA+rcRpTL-bqe~Z!5Mi>Q*>oyZmktgQ8UV55n&P;@_YZMb#QIEhcj+vbuPiE zBbE!$?Dsh>Y7^FScchYHg1J_E`xF*5WgB83Hi^JXUMD4tW z?C1MT9VXCFJt?0VRZ?1IpKtjOV{=ua@Hxyz*7wU4Hr>j6*OpQ)|h&qTemcAxx z+&UCvyIm8uawx`Aw5MUw=QmMC6^iBYEC$6>*Y59<9`91N3#ni9C@e_RA_*Q*in9tr zlsc;rEm2CfewVxug_yLQ9yhvnTk17yzzpVq-CQyMcy#}A+iN}Y5p~tM8!hb=W`}K6KO%I%m&E!+h57g_ zT>N-6&Tf*BpoU_D8XCgXYVY!YsWbaA`$SAHW|ur?o@pZ;+MTMD?_sH&2sE3?)-?Uo z$2RN{C97b1OU7JQb)gvj>7)Q-al#nZcmqX$Q!X2r! z0x$ZS`ZdNH;~!+nDgU-?_ksa)IR!tt@t_i|S`p?t6_;bc=NtK@4F-qTxqrVB-Ma6q zev0*Ju^OG&9-nL&8DnC+I_c2w^Sh9ohQZVUwaW+ZDYG9DLU*K&iQ;>pDed+1KALZH zT^Yt=yIRhC6pkP%((3~6QqzI9VX^)ytt|;dH;7k5^oJy-+kbbcPk&go(!SFM zS9ZxW<_A#4AXM$VtDTNvkRKg*wU(5b++nW7Wa0R@{01bG71Mw~p`*q~{omvU&fGcE z*5(S^T1T3IP!Vdi_KPojxmnDO#w6~cR@7KkC%e7hjK!a@f^WgS7ds+_Mcj5fZf&<5 z$_FTz%jhzi&$p5H@S=?KJG5RSd}3v-k&?*RqrDM;%kwR zO0SQV6Wb-j00P^UX|mSWNw1HK7f3P%<%=_#yuM}A?E&sW5qRfi{LrH8YhNt8c}!}s%X3_K6U z*PH4MW<%!-tMW`O(04b33V6;}-kHapN?7%UBS!I7+gu85%0Am+j9*5EIIA$8l^3&e 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 ZLqeP&mF(Gwyl-o+)N}CLPE$J*{|yt^cYy!^ literal 0 HcmV?d00001 diff --git a/ScreenPlayShader/shader.qrc b/ScreenPlayShader/shader.qrc index fb1b05ec..beb6f9cd 100644 --- a/ScreenPlayShader/shader.qrc +++ b/ScreenPlayShader/shader.qrc @@ -7,7 +7,6 @@ assets/Shadertoy_Bayer.png assets/Shadertoy_Gray_Noise_Medium.png assets/Shadertoy_Lichen.jpg - Noise_Watery.frag ShadertoyShader.qml diff --git a/ScreenPlayShader/shaderlibrary.cpp b/ScreenPlayShader/shaderlibrary.cpp index 5984b6c2..4911a69e 100644 --- a/ScreenPlayShader/shaderlibrary.cpp +++ b/ScreenPlayShader/shaderlibrary.cpp @@ -19,3 +19,4 @@ ShaderLibrary::ShaderLibrary(QQuickItem* parent) ShaderLibrary::~ShaderLibrary() { } + diff --git a/ScreenPlayShader/shaderlibrary.h b/ScreenPlayShader/shaderlibrary.h index cc870d06..6747f92c 100644 --- a/ScreenPlayShader/shaderlibrary.h +++ b/ScreenPlayShader/shaderlibrary.h @@ -27,6 +27,7 @@ public: { return m_fragment; } + public slots: void setVertex(QString vertex) {