shader: Better interpolation and disabled attributes support

This commit is contained in:
ReinUsesLisp 2021-03-27 04:59:58 -03:00 committed by ameerj
parent 675a82416d
commit dbd882ddeb
9 changed files with 101 additions and 25 deletions

View file

@ -151,16 +151,8 @@ void TranslatorVisitor::IPA(u64 insn) {
value = ir.FPMul(value, position_w);
}
}
switch (ipa.interpolation_mode) {
case InterpolationMode::Pass:
break;
case InterpolationMode::Multiply:
if (ipa.interpolation_mode == InterpolationMode::Multiply) {
value = ir.FPMul(value, F(ipa.multiplier));
break;
case InterpolationMode::Constant:
throw NotImplementedException("IPA.CONSTANT");
case InterpolationMode::Sc:
throw NotImplementedException("IPA.SC");
}
// Saturated IPAs are generally generated out of clamped varyings.