Specialize vertex attributes on dst_sel

This commit is contained in:
Frodo Baggins 2025-03-01 19:52:02 -08:00
parent 0bdd21b4e4
commit 2bc8a944d4

View File

@ -14,6 +14,7 @@ namespace Shader {
struct VsAttribSpecialization { struct VsAttribSpecialization {
AmdGpu::NumberClass num_class{}; AmdGpu::NumberClass num_class{};
AmdGpu::CompMapping dst_select{};
auto operator<=>(const VsAttribSpecialization&) const = default; auto operator<=>(const VsAttribSpecialization&) const = default;
}; };
@ -95,6 +96,7 @@ struct StageSpecialization {
ForEachSharp(vs_attribs, fetch_shader_data->attributes, ForEachSharp(vs_attribs, fetch_shader_data->attributes,
[](auto& spec, const auto& desc, AmdGpu::Buffer sharp) { [](auto& spec, const auto& desc, AmdGpu::Buffer sharp) {
spec.num_class = AmdGpu::GetNumberClass(sharp.GetNumberFmt()); spec.num_class = AmdGpu::GetNumberClass(sharp.GetNumberFmt());
spec.dst_select = sharp.DstSelect();
}); });
} }
u32 binding{}; u32 binding{};