From 5c8f09d2c3c99f621b467ed5c1be4fac3a708e85 Mon Sep 17 00:00:00 2001 From: Jiu Shanheng Date: Tue, 10 Sep 2024 19:15:25 +0900 Subject: Port the cluster-refgui demo supports both Qt5 and Qt6 This demo can now run on both Qt5 and Qt6, also added a macro to switch with or without the backend so that it can be developed easily on the Windows desktop. Bug-AGL: SPEC-5243 Change-Id: I99b12ad9779a477784df13b83a850387747bb588 Signed-off-by: Jiu Shanheng --- Assets/Common/Shaders/Qt6/guageMask.frag | 17 +++++++++++++++++ Assets/Common/Shaders/Qt6/guageMask.vert | 13 +++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 Assets/Common/Shaders/Qt6/guageMask.frag create mode 100644 Assets/Common/Shaders/Qt6/guageMask.vert (limited to 'Assets/Common/Shaders/Qt6') diff --git a/Assets/Common/Shaders/Qt6/guageMask.frag b/Assets/Common/Shaders/Qt6/guageMask.frag new file mode 100644 index 0000000..28c8784 --- /dev/null +++ b/Assets/Common/Shaders/Qt6/guageMask.frag @@ -0,0 +1,17 @@ +#version 440 +layout(location = 0) in vec2 coord; +layout(location = 0) out vec4 fragColor; +layout(std140, binding = 0) uniform buf { + mat4 qt_Matrix; + float qt_Opacity; + float angleBase; + float angle; +}; +layout(binding = 1) uniform sampler2D src; + +void main(){ + mediump vec2 d=2.0*coord-vec2(1.0,1.0); + mediump float a=atan(d.x,-d.y); + mediump vec4 tex = texture(src, coord); + fragColor = (angleBase<=a && a<=angle) ? tex * qt_Opacity : tex * 0.0; +} diff --git a/Assets/Common/Shaders/Qt6/guageMask.vert b/Assets/Common/Shaders/Qt6/guageMask.vert new file mode 100644 index 0000000..481dc61 --- /dev/null +++ b/Assets/Common/Shaders/Qt6/guageMask.vert @@ -0,0 +1,13 @@ +#version 440 +layout(location = 0) in vec4 qt_Vertex; +layout(location = 1) in vec2 qt_MultiTexCoord0; +layout(location = 0) out vec2 coord; +layout(std140, binding = 0) uniform buf { + mat4 qt_Matrix; + float qt_Opacity; +}; + +void main(){ + coord = qt_MultiTexCoord0; + gl_Position = qt_Matrix * qt_Vertex; +} -- cgit