| #version 450 core |
| |
| #define PASTER2(type, suffix) type##suffix |
| #define PASTER3(type, suffix) type## suffix |
| #define MAKE_TYPE1 image1D dest ## 1; |
| #define MAKE_TYPE2(type, suffix) PASTER2(type, suffix) |
| #define MAKE_TYPE3(type, suffix) PASTER3(type, suffix) |
| |
| #define PREFIX image |
| #define PREFIX3 imag |
| #define SUFFIX2 1D |
| #define SUFFIX3 e1 D |
| |
| #define RESOURCE_TYPE1 MAKE_TYPE1 |
| #define RESOURCE_TYPE2 MAKE_TYPE2(PREFIX, SUFFIX2) |
| #define RESOURCE_TYPE3 MAKE_TYPE3(PREFIX3, SUFFIX3) |
| |
| layout (set = 0, binding = 0) uniform writeonly RESOURCE_TYPE1 |
| layout (set = 0, binding = 0) uniform writeonly RESOURCE_TYPE2 dest2; |
| layout (set = 0, binding = 0) uniform writeonly RESOURCE_TYPE3 dest3; |
| |
| void main() |
| { |
| } |