diff --git a/docs/HowTo/HowToDebugShader.aml b/docs/HowTo/HowToDebugShader.aml index d32ff79f2..074659202 100644 --- a/docs/HowTo/HowToDebugShader.aml +++ b/docs/HowTo/HowToDebugShader.aml @@ -45,20 +45,19 @@ Pixel debugging is launched from the texture viewer. For more details on selecting the pixel to debug see . - When a given pixel is selected you can either choose the debug icon on the - toolbar, - or click the debug button underneath the pixel context. Each of these will - launch the shader viewer with the selected pixel being debugged. The + When a given pixel is selected you can + click the debug button underneath the pixel context. This will + launch the shader viewer with the selected pixel and sample being debugged. The inputs to the pixel will be automatically filled in. - There are currently several things to note while pixel debugging: + There are a couple of things to note while pixel debugging: - There is no pixel history at the moment, so the drawcall that you wish to debug - must be selected as the current even when you attempt to debug the pixel. + If the drawcall selected doesn't write to the pixel you have highligted, a pixel + history window will open to let you choose which draw call to debug. If a drawcall overdraws the same pixel several times then the results of debugging - may not be accurate - RenderDoc attempts to pick the fragment that last passed the depth test but this - isn't guaranteed and may not be perfect. There's also no way to choose a different fragment in the case - of blending being used, or sample-frequency rendering. + will come from the last fragment that passed the depth test. If you wish to choose a particular + fragment from the list then first launch the pixel history and choose which fragment to debug + from the list there. @@ -115,6 +114,8 @@ The highlighted instruction at any given point indicates the next instruction to be executed - not the instruction that was just executed. + Hovering over a register in either the disassembly or in the view windows will open + a tooltip showing the value in different interpretations. There is also a toggle available to control the 'default' interpretation of temporary register values - float or int. Since registers are typeless typically they are interpreted as