visual studio - How to generate shader debug information (pdb) in VS2012 -
i'm trying debug shaders in directx 11 sdk application using graphics diagnostics tool in vs2012, when click start debugging on 1 of shaders in graphics pixel history panel i'm getting pixel shader.pdb not loaded , i'm not able find pdb file anywhere.
i tried compiling shaders @ runtime using d3dx11compilefromfile
d3dcompile_debug
flag using hlsl compiler debugging information turned on (/od /zi) none of these options producing pdb file use in graphics diagnostics tool.
how generate these files?
i think "pixel shader.pdb not loaded"
message misleading. no .pdb
files generated hlsl-compiler. debug info integrated binary (either memory blob or .cso
file). shader file named "pixel shader"
? maybe says not shader, kind of visual studio's internal source files (shader debugger in vs2012 unstable sometimes)
some ideas that, probably, can solve issue:
- make sure debug , release output binaries not messed up. check both debug , release configuration of project's properties , each shader's properties.
- make sure loading right shader file. check ten times file paths.
- clean project, eliminate binaries hand. rebuild again.
- iirc, in graphics debugger can debug shaders, compiled offline (i.e. not
d3dx11compilefromfile
). - try compile using
fxc.exe
directly. - use filenames not contains spaces , special characters.
- make sure test shader simple enough, debugger not crash. thy use default template.
- if it's still doesn't works, write minimal example project, check doesn't works, post here can test it.
- try vs2013
- try videocard vendor's debugging tool (such nvidia nsight or amd gpu perfstudio), see if problem microsoft tools or not.
hope helps somehow.
Comments
Post a Comment