File: spv.nontemporalbuffer.frag

package info (click to toggle)
glslang 16.2.0-2
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 51,712 kB
  • sloc: cpp: 92,305; yacc: 4,320; sh: 603; python: 305; ansic: 94; javascript: 74; makefile: 17
file content (36 lines) | stat: -rw-r--r-- 780 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#version 460

#pragma use_vulkan_memory_model

#extension GL_EXT_nontemporal_keyword: require

layout(binding=0) buffer nontemporal NONTEMPORAL_BUFFER {
    int b_i;
    int b_o;
};
layout(binding=1) buffer BUFFER_NONTEMPORAL {
    nontemporal int bntemp_i;
    nontemporal int bntemp_o;
};
layout(binding=2) uniform nontemporal NONTEMPORAL_UNIFORMS {
    ivec2 u_uv;
};
layout(binding=3) buffer nontemporal NONTEMPORAL_ATOMIC {
    int bn_atom;
};
layout(binding=4) buffer ATOMIC_NONTEMPORAL {
    nontemporal int b_natom;
    int b_atom;
};
layout(binding=5, rgba8) uniform readonly image2D u_image;

layout(location=0) out vec4 out_color;

void main() {
    b_o = b_i;
    bntemp_i = bntemp_o;

    atomicAdd(bn_atom, 1);
    atomicAdd(b_natom, 1);
    atomicAdd(b_atom, 1);
}