Files
wgpu/tests/in/resource-binding-map.param.ron
Arman Uguray 00be08e9f8 [msl-out] Replace per_stage_map with per_entry_point_map (#2237)
The existing `per_stage_map` field of MSL backend options specifies
resource binding maps that apply to all entry points of each stage type.
It is useful to have the ability to provide a separate binding index map
for each entry point, especially when the same shader module defines
multiple entry points of the same stage kind.

This patch replaces `per_stage_map` with a new `per_entry_point_map`
option where resources are keyed by the entry-point function name.
2023-02-22 18:15:39 +01:00

54 lines
1.4 KiB
Plaintext

(
god_mode: true,
msl: (
lang_version: (2, 0),
per_entry_point_map: {
"entry_point_one": (
resources: {
(group: 0, binding: 0): (texture: Some(0)),
(group: 0, binding: 2): (sampler: Some(Inline(0))),
(group: 0, binding: 4): (buffer: Some(0)),
}
),
"entry_point_two": (
resources: {
(group: 0, binding: 0): (texture: Some(0)),
(group: 0, binding: 2): (sampler: Some(Resource(0))),
(group: 0, binding: 4): (buffer: Some(0)),
}
),
"entry_point_three": (
resources: {
(group: 0, binding: 0): (texture: Some(0)),
(group: 0, binding: 1): (texture: Some(1)),
(group: 0, binding: 2): (sampler: Some(Inline(0))),
(group: 0, binding: 3): (sampler: Some(Resource(1))),
(group: 0, binding: 4): (buffer: Some(0)),
(group: 1, binding: 0): (buffer: Some(1)),
}
)
},
inline_samplers: [
(
coord: Normalized,
address: (ClampToEdge, ClampToEdge, ClampToEdge),
mag_filter: Linear,
min_filter: Linear,
mip_filter: None,
border_color: TransparentBlack,
compare_func: Never,
lod_clamp: Some((start: 0.5, end: 10.0)),
max_anisotropy: Some(8),
),
],
spirv_cross_compatibility: false,
fake_missing_bindings: false,
zero_initialize_workgroup_memory: true,
),
bounds_check_policies: (
index: ReadZeroSkipWrite,
buffer: ReadZeroSkipWrite,
image: ReadZeroSkipWrite,
)
)