forked from Mirror/Ryujinx
Do not attempt to read unused attribute, fix attributes count (#520)
This commit is contained in:
parent
0f5b6dfbe8
commit
1fd1ec5664
2 changed files with 6 additions and 1 deletions
|
@ -878,7 +878,7 @@ namespace Ryujinx.Graphics.Gal.Shader
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (DeclInfo.Index >= 16)
|
if (DeclInfo.Index >= 32)
|
||||||
{
|
{
|
||||||
throw new InvalidOperationException($"Shader attribute offset {Abuf.Offs} is invalid.");
|
throw new InvalidOperationException($"Shader attribute offset {Abuf.Offs} is invalid.");
|
||||||
}
|
}
|
||||||
|
|
|
@ -734,6 +734,11 @@ namespace Ryujinx.Graphics.Graphics3d
|
||||||
|
|
||||||
long VbPosition = MakeInt64From2xInt32(NvGpuEngine3dReg.VertexArrayNAddress + ArrayIndex * 4);
|
long VbPosition = MakeInt64From2xInt32(NvGpuEngine3dReg.VertexArrayNAddress + ArrayIndex * 4);
|
||||||
|
|
||||||
|
if (VbPosition == 0)
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
bool IsConst = ((Packed >> 6) & 1) != 0;
|
bool IsConst = ((Packed >> 6) & 1) != 0;
|
||||||
|
|
||||||
int Offset = (Packed >> 7) & 0x3fff;
|
int Offset = (Packed >> 7) & 0x3fff;
|
||||||
|
|
Reference in a new issue