Giovanni Mascellani (@giomasce) commented about include/vkd3d_shader.h:
| ((w & VKD3D_SHADER_SWIZZLE_MASK) << VKD3D_SHADER_SWIZZLE_SHIFT(3));
}
+/**
- A chained structure containing signatures scanned from a DXBC shader.
- All members (except for \ref type and \ref next) are output-only.
- This structure is passed to vkd3d_shader_scan() and extends
- vkd3d_shader_compile_info.
- Members of this structure are allocated by vkd3d-shader and should be freed
- with vkd3d_shader_free_scan_signature_info() when no longer needed.
Does this new interface supersede `vkd3d_shader_parse_input_signature()`, or are there some use cases of the latter which are not covered? If not, I wonder whether it would make sense to add a notice on `vkd3d_shader_parse_input_signature()` saying that it's a legacy call and `struct vkd3d_shader_scan_signature_info` now allows queried for the same information and more. That's mostly because it can be confusing for a reader to have two ways to do (mostly) the same thing.