mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-05-29 13:20:54 +00:00
In D3D11 support setting friendly names on shaders
This commit is contained in:
@@ -208,6 +208,39 @@ namespace renderdocui.Code
|
||||
return ResourceId.Null;
|
||||
}
|
||||
|
||||
public string GetShaderName(ShaderStageType stage)
|
||||
{
|
||||
if (LogLoaded)
|
||||
{
|
||||
if (IsLogD3D11)
|
||||
{
|
||||
switch (stage)
|
||||
{
|
||||
case ShaderStageType.Vertex: return m_D3D11.m_VS.ShaderName;
|
||||
case ShaderStageType.Domain: return m_D3D11.m_DS.ShaderName;
|
||||
case ShaderStageType.Hull: return m_D3D11.m_HS.ShaderName;
|
||||
case ShaderStageType.Geometry: return m_D3D11.m_GS.ShaderName;
|
||||
case ShaderStageType.Pixel: return m_D3D11.m_PS.ShaderName;
|
||||
case ShaderStageType.Compute: return m_D3D11.m_CS.ShaderName;
|
||||
}
|
||||
}
|
||||
else if (IsLogGL)
|
||||
{
|
||||
switch (stage)
|
||||
{
|
||||
case ShaderStageType.Vertex: return String.Format("Shader {0}", m_GL.m_VS.Shader);
|
||||
case ShaderStageType.Tess_Control: return String.Format("Shader {0}", m_GL.m_TCS.Shader);
|
||||
case ShaderStageType.Tess_Eval: return String.Format("Shader {0}", m_GL.m_TES.Shader);
|
||||
case ShaderStageType.Geometry: return String.Format("Shader {0}", m_GL.m_GS.Shader);
|
||||
case ShaderStageType.Fragment: return String.Format("Shader {0}", m_GL.m_FS.Shader);
|
||||
case ShaderStageType.Compute: return String.Format("Shader {0}", m_GL.m_CS.Shader);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return "";
|
||||
}
|
||||
|
||||
public void GetIBuffer(out ResourceId buf, out uint ByteOffset, out ResourceFormat IndexFormat)
|
||||
{
|
||||
if (LogLoaded)
|
||||
|
||||
@@ -103,6 +103,9 @@ namespace renderdoc
|
||||
}
|
||||
|
||||
public ResourceId Shader;
|
||||
[CustomMarshalAs(CustomUnmanagedType.WideTemplatedString)]
|
||||
public string ShaderName;
|
||||
public bool customName;
|
||||
private IntPtr _ptr_ShaderDetails;
|
||||
[CustomMarshalAs(CustomUnmanagedType.Skip)]
|
||||
public ShaderReflection ShaderDetails;
|
||||
|
||||
@@ -192,7 +192,7 @@ namespace renderdocui.Windows.PipelineState
|
||||
if (stage.Shader == ResourceId.Null)
|
||||
shader.Text = "Unbound";
|
||||
else
|
||||
shader.Text = "Shader " + stage.Shader.ToString();
|
||||
shader.Text = stage.ShaderName;
|
||||
|
||||
if (shaderDetails != null && shaderDetails.DebugInfo.entryFunc != "" && shaderDetails.DebugInfo.files.Length > 0)
|
||||
shader.Text = shaderDetails.DebugInfo.entryFunc + "()" + " - " +
|
||||
|
||||
@@ -308,9 +308,9 @@ namespace renderdocui.Windows
|
||||
}
|
||||
|
||||
if (trace != null)
|
||||
Text = String.Format("Debug Shader {0} - {1}", m_Core.CurPipelineState.GetShader(stage), debugContext);
|
||||
Text = String.Format("Debugging {0} - {1}", m_Core.CurPipelineState.GetShaderName(stage), debugContext);
|
||||
else
|
||||
Text = String.Format("Shader {0}", m_Core.CurPipelineState.GetShader(stage));
|
||||
Text = m_Core.CurPipelineState.GetShaderName(stage);
|
||||
|
||||
var disasm = shader.Disassembly;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user