xref: /third_party/glslang/Test/spv.discard-dce.frag
  • Home
  • History
  • Annotate Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
  • only in /third_party/glslang/Test/
1617a3babSopenharmony_ci#version 140
2617a3babSopenharmony_ciin vec2 tex_coord;
3617a3babSopenharmony_ci
4617a3babSopenharmony_civoid main (void)
5617a3babSopenharmony_ci{
6617a3babSopenharmony_ci    vec4 white = vec4(1.0);
7617a3babSopenharmony_ci    vec4 black = vec4(0.2);
8617a3babSopenharmony_ci    vec4 color = white;
9617a3babSopenharmony_ci
10617a3babSopenharmony_ci    // First, cut out our circle
11617a3babSopenharmony_ci    float x = tex_coord.x*2.0 - 1.0;
12617a3babSopenharmony_ci    float y = tex_coord.y*2.0 - 1.0;
13617a3babSopenharmony_ci
14617a3babSopenharmony_ci    float radius = sqrt(x*x + y*y);
15617a3babSopenharmony_ci    if (radius > 1.0) {
16617a3babSopenharmony_ci        if (radius > 1.1) {
17617a3babSopenharmony_ci            ++color;
18617a3babSopenharmony_ci        }
19617a3babSopenharmony_ci
20617a3babSopenharmony_ci        gl_FragColor = color;
21617a3babSopenharmony_ci
22617a3babSopenharmony_ci        if (radius > 1.2) {
23617a3babSopenharmony_ci            ++color;
24617a3babSopenharmony_ci        }
25617a3babSopenharmony_ci
26617a3babSopenharmony_ci        discard;
27617a3babSopenharmony_ci    }
28617a3babSopenharmony_ci
29617a3babSopenharmony_ci    // If we're near an edge, darken us a tiny bit
30617a3babSopenharmony_ci    if (radius >= 0.75)
31617a3babSopenharmony_ci        color -= abs(pow(radius, 16.0)/2.0);
32617a3babSopenharmony_ci
33617a3babSopenharmony_ci    gl_FragColor = color;
34617a3babSopenharmony_ci
35617a3babSopenharmony_ci}
36

Indexes created Thu Nov 07 10:32:03 CST 2024