|
11 | 11 | #define shd_f32vec4_type(arena) vector_type(arena, (VectorType) { .width = 4, .element_type = shd_fp32_type(arena) }) |
12 | 12 |
|
13 | 13 | #define SHADY_BUILTINS() \ |
14 | | -BUILTIN(BaseInstance, AsInput, Invocation, shd_uint32_type(arena) )\ |
15 | | -BUILTIN(BaseVertex, AsInput, Invocation, shd_uint32_type(arena) )\ |
16 | | -BUILTIN(DeviceIndex, AsInput, Invocation, shd_uint32_type(arena) )\ |
17 | | -BUILTIN(DrawIndex, AsInput, Invocation, shd_uint32_type(arena) )\ |
18 | | -BUILTIN(VertexIndex, AsInput, Invocation, shd_int32_type(arena) )\ |
19 | | -BUILTIN(FragCoord, AsInput, Invocation, shd_f32vec4_type(arena) )\ |
20 | | -BUILTIN(FragDepth, AsOutput, Invocation, shd_fp32_type(arena) )\ |
21 | | -BUILTIN(InstanceId, AsInput, Invocation, shd_uint32_type(arena) )\ |
22 | | -BUILTIN(InvocationId, AsInput, Invocation, shd_uint32_type(arena) )\ |
23 | | -BUILTIN(InstanceIndex, AsInput, Invocation, shd_uint32_type(arena) )\ |
24 | | -BUILTIN(LocalInvocationId, AsInput, Invocation, shd_u32vec3_type(arena) )\ |
25 | | -BUILTIN(LocalInvocationIndex, AsInput, Invocation, shd_uint32_type(arena) )\ |
26 | | -BUILTIN(GlobalInvocationId, AsInput, Invocation, shd_u32vec3_type(arena) )\ |
27 | | -BUILTIN(LaunchIdKHR, AsInput, Invocation, shd_u32vec3_type(arena) )\ |
28 | | -BUILTIN(LaunchSizeKHR, AsInput, Invocation, shd_u32vec3_type(arena) )\ |
29 | | -BUILTIN(WorkgroupId, AsUInput, Workgroup, shd_u32vec3_type(arena) )\ |
30 | | -BUILTIN(WorkgroupSize, AsUInput, Device, shd_u32vec3_type(arena) )\ |
31 | | -BUILTIN(NumSubgroups, AsUInput, Invocation, shd_uint32_type(arena) )\ |
32 | | -BUILTIN(NumWorkgroups, AsUInput, Device, shd_u32vec3_type(arena) )\ |
33 | | -BUILTIN(Position, AsOutput, Invocation, shd_f32vec4_type(arena) )\ |
34 | | -BUILTIN(PrimitiveId, AsInput, Invocation, shd_uint32_type(arena) )\ |
35 | | -BUILTIN(SubgroupLocalInvocationId, AsInput, Invocation, shd_uint32_type(arena) )\ |
36 | | -BUILTIN(SubgroupId, AsUInput, Subgroup, shd_uint32_type(arena) )\ |
37 | | -BUILTIN(SubgroupSize, AsInput, Device, shd_uint32_type(arena) )\ |
| 14 | +BUILTIN(BaseInstance, AsInput, Invocation, shd_uint32_type(arena) )\ |
| 15 | +BUILTIN(BaseVertex, AsInput, Invocation, shd_uint32_type(arena) )\ |
| 16 | +BUILTIN(DeviceIndex, AsInput, Invocation, shd_uint32_type(arena) )\ |
| 17 | +BUILTIN(DrawIndex, AsInput, Invocation, shd_uint32_type(arena) )\ |
| 18 | +BUILTIN(VertexIndex, AsInput, Invocation, shd_int32_type(arena) )\ |
| 19 | +BUILTIN(FragCoord, AsInput, Invocation, shd_f32vec4_type(arena) )\ |
| 20 | +BUILTIN(FragDepth, AsOutput, Invocation, shd_fp32_type(arena) )\ |
| 21 | +BUILTIN(InstanceId, AsInput, Invocation, shd_uint32_type(arena) )\ |
| 22 | +BUILTIN(InvocationId, AsInput, Invocation, shd_uint32_type(arena) )\ |
| 23 | +BUILTIN(InstanceIndex, AsInput, Invocation, shd_uint32_type(arena) )\ |
| 24 | +BUILTIN(LocalInvocationId, AsInput, Invocation, shd_u32vec3_type(arena) )\ |
| 25 | +BUILTIN(LocalInvocationIndex, AsInput, Invocation, shd_uint32_type(arena) )\ |
| 26 | +BUILTIN(GlobalInvocationId, AsInput, Invocation, shd_u32vec3_type(arena) )\ |
| 27 | +BUILTIN(LaunchIdKHR, AsInput, Invocation, shd_u32vec3_type(arena) )\ |
| 28 | +BUILTIN(LaunchSizeKHR, AsInput, Invocation, shd_u32vec3_type(arena) )\ |
| 29 | +BUILTIN(WorkgroupId, AsUInput, Workgroup, shd_u32vec3_type(arena) )\ |
| 30 | +BUILTIN(WorkgroupSize, AsUInput, Device, shd_u32vec3_type(arena) )\ |
| 31 | +BUILTIN(NumSubgroups, AsUInput, Invocation, shd_uint32_type(arena) )\ |
| 32 | +BUILTIN(NumWorkgroups, AsUInput, Device, shd_u32vec3_type(arena) )\ |
| 33 | +BUILTIN(Position, AsOutput, Invocation, shd_f32vec4_type(arena) )\ |
| 34 | +BUILTIN(PrimitiveTriangleIndicesEXT, AsOutput, Invocation, arr_type_helper(arena, 0, shd_u32vec3_type(arena), NULL) )\ |
| 35 | +BUILTIN(PrimitiveId, AsInput, Invocation, shd_uint32_type(arena) )\ |
| 36 | +BUILTIN(SubgroupLocalInvocationId, AsInput, Invocation, shd_uint32_type(arena) )\ |
| 37 | +BUILTIN(SubgroupId, AsUInput, Subgroup, shd_uint32_type(arena) )\ |
| 38 | +BUILTIN(SubgroupSize, AsInput, Device, shd_uint32_type(arena) )\ |
38 | 39 |
|
39 | 40 | typedef enum { |
40 | 41 | #define BUILTIN(name, as, scope, datatype) ShdBuiltin##name, |
|
0 commit comments