Insert bitcast for assignment of fragment integer outputs on GLSL (#4369)
* Insert bitcast for assignment of fragment integer outputs on GLSL * Shader cache version bump
This commit is contained in:
parent
780627e7b0
commit
43081c16c4
@ -22,7 +22,7 @@ namespace Ryujinx.Graphics.Gpu.Shader.DiskCache
|
|||||||
private const ushort FileFormatVersionMajor = 1;
|
private const ushort FileFormatVersionMajor = 1;
|
||||||
private const ushort FileFormatVersionMinor = 2;
|
private const ushort FileFormatVersionMinor = 2;
|
||||||
private const uint FileFormatVersionPacked = ((uint)FileFormatVersionMajor << 16) | FileFormatVersionMinor;
|
private const uint FileFormatVersionPacked = ((uint)FileFormatVersionMajor << 16) | FileFormatVersionMinor;
|
||||||
private const uint CodeGenVersion = 4336;
|
private const uint CodeGenVersion = 4369;
|
||||||
|
|
||||||
private const string SharedTocFileName = "shared.toc";
|
private const string SharedTocFileName = "shared.toc";
|
||||||
private const string SharedDataFileName = "shared.data";
|
private const string SharedDataFileName = "shared.data";
|
||||||
|
@ -485,6 +485,16 @@ namespace Ryujinx.Graphics.Shader.CodeGen.Glsl
|
|||||||
|
|
||||||
AttributeType type = context.Config.GpuAccessor.QueryAttributeType(location);
|
AttributeType type = context.Config.GpuAccessor.QueryAttributeType(location);
|
||||||
|
|
||||||
|
return type.ToAggregateType();
|
||||||
|
}
|
||||||
|
else if (context.Config.Stage == ShaderStage.Fragment && isAsgDest &&
|
||||||
|
operand.Value >= AttributeConsts.FragmentOutputColorBase &&
|
||||||
|
operand.Value < AttributeConsts.FragmentOutputColorEnd)
|
||||||
|
{
|
||||||
|
int location = (operand.Value - AttributeConsts.FragmentOutputColorBase) / 16;
|
||||||
|
|
||||||
|
AttributeType type = context.Config.GpuAccessor.QueryFragmentOutputType(location);
|
||||||
|
|
||||||
return type.ToAggregateType();
|
return type.ToAggregateType();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user