1234567891011121314151617181920212223242526272829 |
- #version 450 core
- #extension GL_AMD_shader_fragment_mask: enable
- layout(binding = 0) uniform sampler2DMS s2DMS;
- layout(binding = 1) uniform isampler2DMSArray is2DMSArray;
- layout(binding = 2, input_attachment_index = 0) uniform usubpassInputMS usubpassMS;
- layout(location = 0) out vec4 fragColor;
- void main()
- {
- vec4 f4 = vec4(0.0);
- uint fragMask = fragmentMaskFetchAMD(s2DMS, ivec2(2, 3));
- uint fragIndex = (fragMask & 0xF0) >> 4;
- f4 += fragmentFetchAMD(s2DMS, ivec2(2, 3), 1);
- fragMask = fragmentMaskFetchAMD(is2DMSArray, ivec3(2, 3, 1));
- fragIndex = (fragMask & 0xF0) >> 4;
- f4 += fragmentFetchAMD(is2DMSArray, ivec3(2, 3, 1), fragIndex);
- fragMask = fragmentMaskFetchAMD(usubpassMS);
- fragIndex = (fragMask & 0xF0) >> 4;
- f4 += fragmentFetchAMD(usubpassMS, fragIndex);
- fragColor = f4;
- }
|