Do not initialize geometry shader passthrough attributes (#3196)
This commit is contained in:
parent
aac7bbd378
commit
1f93fd52d9
1 changed files with 9 additions and 2 deletions
|
@ -218,10 +218,17 @@ namespace Ryujinx.Graphics.Shader.Translation
|
||||||
while (usedAttributes != UInt128.Zero)
|
while (usedAttributes != UInt128.Zero)
|
||||||
{
|
{
|
||||||
int index = usedAttributes.TrailingZeroCount();
|
int index = usedAttributes.TrailingZeroCount();
|
||||||
|
int vecIndex = index / 4;
|
||||||
InitializeOutputComponent(context, AttributeConsts.UserAttributeBase + index * 4, perPatch: false);
|
|
||||||
|
|
||||||
usedAttributes &= ~UInt128.Pow2(index);
|
usedAttributes &= ~UInt128.Pow2(index);
|
||||||
|
|
||||||
|
// We don't need to initialize passthrough attributes.
|
||||||
|
if ((context.Config.PassthroughAttributes & (1 << vecIndex)) != 0)
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
InitializeOutputComponent(context, AttributeConsts.UserAttributeBase + index * 4, perPatch: false);
|
||||||
}
|
}
|
||||||
|
|
||||||
UInt128 usedAttributesPerPatch = context.Config.NextInputAttributesPerPatchComponents;
|
UInt128 usedAttributesPerPatch = context.Config.NextInputAttributesPerPatchComponents;
|
||||||
|
|
Reference in a new issue