John Kessenich | a84079d | 2019-02-20 03:03:40 -0700 | [diff] [blame] | 1 | #version 450 core |
| 2 | |
| 3 | #define PASTER2(type, suffix) type##suffix |
| 4 | #define PASTER3(type, suffix) type## suffix |
| 5 | #define MAKE_TYPE1 image1D dest ## 1; |
| 6 | #define MAKE_TYPE2(type, suffix) PASTER2(type, suffix) |
| 7 | #define MAKE_TYPE3(type, suffix) PASTER3(type, suffix) |
| 8 | |
| 9 | #define PREFIX image |
| 10 | #define PREFIX3 imag |
| 11 | #define SUFFIX2 1D |
| 12 | #define SUFFIX3 e1 D |
| 13 | |
| 14 | #define RESOURCE_TYPE1 MAKE_TYPE1 |
| 15 | #define RESOURCE_TYPE2 MAKE_TYPE2(PREFIX, SUFFIX2) |
| 16 | #define RESOURCE_TYPE3 MAKE_TYPE3(PREFIX3, SUFFIX3) |
| 17 | |
| 18 | layout (set = 0, binding = 0) uniform writeonly RESOURCE_TYPE1 |
| 19 | layout (set = 0, binding = 0) uniform writeonly RESOURCE_TYPE2 dest2; |
| 20 | layout (set = 0, binding = 0) uniform writeonly RESOURCE_TYPE3 dest3; |
| 21 | |
| 22 | void main() |
| 23 | { |
| 24 | } |