diff options
Diffstat (limited to 'Assets')
-rw-r--r-- | Assets/Common/Shaders/Qt6/guageMask.frag | 17 | ||||
-rw-r--r-- | Assets/Common/Shaders/Qt6/guageMask.vert | 13 |
2 files changed, 30 insertions, 0 deletions
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; +} |