Make sure attributes used on subsequent shader stages are initialized (#2538)
This commit is contained in:
parent
10d649e6d3
commit
ed754af8d5
15 changed files with 347 additions and 262 deletions
|
@ -1,4 +1,4 @@
|
|||
using System;
|
||||
using Ryujinx.Graphics.Shader;
|
||||
using System.IO;
|
||||
|
||||
namespace Ryujinx.Graphics.Gpu.Shader
|
||||
|
@ -30,24 +30,20 @@ namespace Ryujinx.Graphics.Gpu.Shader
|
|||
/// </summary>
|
||||
/// <param name="code">Code to be dumped</param>
|
||||
/// <param name="compute">True for compute shader code, false for graphics shader code</param>
|
||||
/// <param name="fullPath">Output path for the shader code with header included</param>
|
||||
/// <param name="codePath">Output path for the shader code without header</param>
|
||||
public void Dump(byte[] code, bool compute, out string fullPath, out string codePath)
|
||||
/// <returns>Paths where the shader code was dumped</returns>
|
||||
public ShaderDumpPaths Dump(byte[] code, bool compute)
|
||||
{
|
||||
_dumpPath = GraphicsConfig.ShadersDumpPath;
|
||||
|
||||
if (string.IsNullOrWhiteSpace(_dumpPath))
|
||||
{
|
||||
fullPath = null;
|
||||
codePath = null;
|
||||
|
||||
return;
|
||||
return default;
|
||||
}
|
||||
|
||||
string fileName = "Shader" + CurrentDumpIndex.ToString("d4") + ".bin";
|
||||
|
||||
fullPath = Path.Combine(FullDir(), fileName);
|
||||
codePath = Path.Combine(CodeDir(), fileName);
|
||||
string fullPath = Path.Combine(FullDir(), fileName);
|
||||
string codePath = Path.Combine(CodeDir(), fileName);
|
||||
|
||||
CurrentDumpIndex++;
|
||||
|
||||
|
@ -73,6 +69,8 @@ namespace Ryujinx.Graphics.Gpu.Shader
|
|||
{
|
||||
codeWriter.Write(0);
|
||||
}
|
||||
|
||||
return new ShaderDumpPaths(fullPath, codePath);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue