forked from Mirror/Ryujinx
Vulkan: Fix vertex position Z conversion with geometry shader passthrough (#3781)
* Vulkan: Fix vertex position Z conversion with geometry shader passthrough * Shader cache version bump
This commit is contained in:
parent
1e5b45f580
commit
5fdc46ac7f
2 changed files with 5 additions and 2 deletions
|
@ -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 = 3759;
|
private const uint CodeGenVersion = 3781;
|
||||||
|
|
||||||
private const string SharedTocFileName = "shared.toc";
|
private const string SharedTocFileName = "shared.toc";
|
||||||
private const string SharedDataFileName = "shared.data";
|
private const string SharedDataFileName = "shared.data";
|
||||||
|
|
|
@ -306,7 +306,10 @@ namespace Ryujinx.Graphics.Shader.Translation
|
||||||
config._perPatchAttributeLocations = locationsMap;
|
config._perPatchAttributeLocations = locationsMap;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (config.Stage != ShaderStage.Fragment)
|
// We don't consider geometry shaders using the geometry shader passthrough feature
|
||||||
|
// as being the last because when this feature is used, it can't actually modify any of the outputs,
|
||||||
|
// so the stage that comes before it is the last one that can do modifications.
|
||||||
|
if (config.Stage != ShaderStage.Fragment && (config.Stage != ShaderStage.Geometry || !config.GpPassthrough))
|
||||||
{
|
{
|
||||||
LastInVertexPipeline = false;
|
LastInVertexPipeline = false;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue