diff --git a/src/shader_recompiler/specialization.h b/src/shader_recompiler/specialization.h index 54fd5026a..e40309aaf 100644 --- a/src/shader_recompiler/specialization.h +++ b/src/shader_recompiler/specialization.h @@ -13,7 +13,7 @@ namespace Shader { struct VsAttribSpecialization { - AmdGpu::DataFormat data_format{}; + s32 num_components{}; AmdGpu::NumberClass num_class{}; AmdGpu::CompMapping dst_select{}; @@ -95,8 +95,9 @@ struct StageSpecialization { // Specialize shader on VS input number types to follow spec. ForEachSharp(vs_attribs, fetch_shader_data->attributes, [&profile_](auto& spec, const auto& desc, AmdGpu::Buffer sharp) { - spec.data_format = - desc.UsesStepRates() ? sharp.GetDataFmt() : AmdGpu::DataFormat{}; + spec.num_components = desc.UsesStepRates() + ? AmdGpu::NumComponents(sharp.GetDataFmt()) + : 0; spec.num_class = profile_.support_legacy_vertex_attributes ? AmdGpu::NumberClass{} : AmdGpu::GetNumberClass(sharp.GetNumberFmt());