I am using Nsight 3.0 (build 22.214.171.12427) with Visual Studio 2010. I am using the release candidate version because it allows shader debugging locally with a single GPU.
According to the documentation, all I have to do to be able to debug my shaders is to compile them "using D3DXCompileShader, D3DX10CompileFromFile, etc. " with the flags D3DXSHADER_PREFER_FLOW_CONTROL | D3DXSHADER_DEBUG | D3DXSHADER_SKIPOPTIMIZATION. Since I am using DirectX 11, I am compiling my shaders with D3DX11CompileFromFileA as follows:
DWORD dwShaderFlags = D3DCOMPILE_ENABLE_STRICTNESS; dwShaderFlags |= D3DCOMPILE_DEBUG | D3DCOMPILE_SKIP_OPTIMIZATION | D3DCOMPILE_WARNINGS_ARE_ERRORS | D3DXSHADER_DEBUG | D3DXSHADER_SKIPOPTIMIZATION | D3DXSHADER_PREFER_FLOW_CONTROL; D3DX11CompileFromFileA( fileName, defines, nullptr, entryPoint, shaderModel, dwShaderFlags, 0, nullptr, ppBlobOut, &pErrorBlob, nullptr );
Everything compiles and runs, but, when in Graphics Debugging mode, I cannot make my shaders appear in the Graphics Focus Picker after selecting them from the Shaders window.
Any help would be appreciated. Thx in advance.