Fix shader texture LOD query (#2397)

This commit is contained in:
gdkchan 2021-06-23 18:31:14 -03:00 committed by GitHub
parent ab9d4b862d
commit c71ae9c85c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 6 additions and 6 deletions

View file

@ -36,7 +36,7 @@ namespace Ryujinx.Graphics.Gpu.Shader
/// <summary> /// <summary>
/// Version of the codegen (to be changed when codegen or guest format change). /// Version of the codegen (to be changed when codegen or guest format change).
/// </summary> /// </summary>
private const ulong ShaderCodeGenVersion = 2362; private const ulong ShaderCodeGenVersion = 2397;
// Progress reporting helpers // Progress reporting helpers
private volatile int _shaderCount; private volatile int _shaderCount;

View file

@ -889,7 +889,7 @@ namespace Ryujinx.Graphics.Shader.Instructions
type, type,
flags, flags,
handle, handle,
compIndex, compIndex ^ 1, // The instruction component order is the inverse of GLSL's.
tempDest, tempDest,
sources); sources);
@ -897,9 +897,9 @@ namespace Ryujinx.Graphics.Shader.Instructions
tempDest = context.FPMultiply(tempDest, ConstF(256.0f)); tempDest = context.FPMultiply(tempDest, ConstF(256.0f));
Operand finalValue = context.FPConvertToS32(tempDest); Operand fixedPointValue = context.FPConvertToS32(tempDest);
context.Copy(dest, finalValue); context.Copy(dest, fixedPointValue);
} }
} }
} }

View file

@ -155,7 +155,7 @@ namespace Ryujinx.Graphics.Shader.Translation
{ {
return node; return node;
} }
bool isGather = (texOp.Flags & TextureFlags.Gather) != 0; bool isGather = (texOp.Flags & TextureFlags.Gather) != 0;
bool hasDerivatives = (texOp.Flags & TextureFlags.Derivatives) != 0; bool hasDerivatives = (texOp.Flags & TextureFlags.Derivatives) != 0;
bool intCoords = (texOp.Flags & TextureFlags.IntCoords) != 0; bool intCoords = (texOp.Flags & TextureFlags.IntCoords) != 0;
@ -360,7 +360,7 @@ namespace Ryujinx.Graphics.Shader.Translation
texOp.Format, texOp.Format,
texOp.Flags, texOp.Flags,
texOp.Handle, texOp.Handle,
1, 0,
lod, lod,
lodSources)); lodSources));