Merge branch 'master' of https://github.com/xenia-project/xenia into canary_experimental

This commit is contained in:
Gliniak 2022-10-18 12:19:52 +02:00
commit 48fea6d9aa
1 changed files with 8 additions and 9 deletions

View File

@ -693,15 +693,14 @@ void DxbcShaderTranslator::StartPixelShader() {
if (i == param_gen_interpolator) { if (i == param_gen_interpolator) {
continue; continue;
} }
a_.OpMov( a_.OpMov(uses_register_dynamic_addressing ? dxbc::Dest::X(0, i)
uses_register_dynamic_addressing ? dxbc::Dest::X(0, i) : dxbc::Dest::R(i),
: dxbc::Dest::R(i), (i < xenos::kMaxInterpolators &&
(i < xenos::kMaxInterpolators && (interpolator_mask & (UINT32_C(1) << i)))
(interpolator_mask & (UINT32_C(1) << i))) ? dxbc::Src::V1D(in_reg_ps_interpolators_ +
? dxbc::Src::V1D( xe::bit_count(interpolator_mask &
in_reg_ps_interpolators_ + ((UINT32_C(1) << i) - 1)))
xe::bit_count((interpolator_mask & (UINT32_C(1) << i)) - 1)) : dxbc::Src::LF(0.0f));
: dxbc::Src::LF(0.0f));
} }
// Write the pixel parameters to the specified interpolator register // Write the pixel parameters to the specified interpolator register