Sign in to follow this  

PIX not working?

This topic is 1640 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I decided to start using PIX to debug my shaders after i spent days trying to figure out why my damn atmospheric scattering shader isn't working. But of course, PIX won't work and i hate computers and i'm about to punch my screen.

 

Anyway, i'm running the samples from the SDK and the DX9 ones work fine. The DX11 ones don't. They keep crashing and i get the following error dump: (This is the output when i run the BasicHLSL11 sample)

3E668)
Frame 000001 ........PRE: <this=0x06930010>ID3D11Texture2D::GetDesc(0x000000000023E638)
Frame 000001 ........POST: <><this=0x06930010> ID3D11Texture2D::GetDesc(0x000000000023E638)
Frame 000001 ........PRE: <this=0x067a4f00>ID3D11Device::AddRef()
Frame 000001 ........POST: <22><this=0x067a4f00> ID3D11Device::AddRef()
Frame 000001 ........PRE: <this=0x067a4f00>ID3D11Device::CreateTexture2D(0x000000000023E240, 0x00000000004AC730, 0x000000000023E228)
Frame 000001 ............PRE: AddObject(D3D11 Texture2D, 0x00000000069857E0, 0x0000000006FE6A50)
Frame 000001 ............POST: <TRUE> AddObject(D3D11 Texture2D, 0x00000000069857E0, 0x0000000006FE6A50)
Frame 000001 ........POST: <S_OK><this=0x067a4f00> ID3D11Device::CreateTexture2D(0x000000000023E240, 0x00000000004AC730, 0x000000000023E228)
Frame 000001 ........PRE: <this=0x067a4f00>ID3D11Device::Release()
Frame 000001 ........POST: <22><this=0x067a4f00> ID3D11Device::Release()
Frame 000001 ........PRE: <this=0x069857e0>ID3D11Texture2D::SetPrivateData({0x429b8c22, 0x9188, 0x4b0c, 0x87, 0x42, 0xac, 0xb0, 0xbf, 0x85, 0xc2, 0x00}, 18, 0x00000000FFF04B78)
Frame 000001 ........POST: <S_OK><this=0x069857e0> ID3D11Texture2D::SetPrivateData({0x429b8c22, 0x9188, 0x4b0c, 0x87, 0x42, 0xac, 0xb0, 0xbf, 0x85, 0xc2, 0x00}, 18, 0x00000000FFF04B78)
Frame 000001 ........PRE: <this=0x067a4f00>ID3D11Device::CreateTexture2D(0x000000000023E638, NULL, 0x000000000023E420)
Frame 000001 ............PRE: AddObject(D3D11 Texture2D, 0x00000000069858E0, 0x0000000006FE6C90)
Frame 000001 ............POST: <TRUE> AddObject(D3D11 Texture2D, 0x00000000069858E0, 0x0000000006FE6C90)
Frame 000001 ........POST: <S_OK><this=0x067a4f00> ID3D11Device::CreateTexture2D(0x000000000023E638, NULL, 0x000000000023E420)
Frame 000001 ........PRE: <this=0x069858e0>ID3D11Texture2D::SetPrivateData({0x429b8c22, 0x9188, 0x4b0c, 0x87, 0x42, 0xac, 0xb0, 0xbf, 0x85, 0xc2, 0x00}, 18, 0x00000000FFF04B78)
Frame 000001 ........POST: <S_OK><this=0x069858e0> ID3D11Texture2D::SetPrivateData({0x429b8c22, 0x9188, 0x4b0c, 0x87, 0x42, 0xac, 0xb0, 0xbf, 0x85, 0xc2, 0x00}, 18, 0x00000000FFF04B78)
Frame 000001 ........PRE: <this=0x06831890>ID3D11DeviceContext::CopyResource(0x00000000069858E0, 0x00000000069857E0)
Frame 000001 ........POST: <><this=0x06831890> ID3D11DeviceContext::CopyResource(0x00000000069858E0, 0x00000000069857E0)
Frame 000001 ........PRE: <this=0x06930010>ID3D11Texture2D::GetDesc(0x000000000023E638)
Frame 000001 ........POST: <><this=0x06930010> ID3D11Texture2D::GetDesc(0x000000000023E638)
Frame 000001 ........PRE: <this=0x067a4f00>ID3D11Device::CreateTexture2D(0x000000000023E638, NULL, 0x000000000023E480)
Frame 000001 ............PRE: AddObject(D3D11 Texture2D, 0x00000000069859E0, 0x0000000006FE6E90)
Frame 000001 ............POST: <TRUE> AddObject(D3D11 Texture2D, 0x00000000069859E0, 0x0000000006FE6E90)
Frame 000001 ........POST: <S_OK><this=0x067a4f00> ID3D11Device::CreateTexture2D(0x000000000023E638, NULL, 0x000000000023E480)
Frame 000001 ........PRE: <this=0x06831890>ID3D11DeviceContext::CopyResource(0x00000000069859E0, 0x00000000069858E0)
Frame 000001 ........POST: <><this=0x06831890> ID3D11DeviceContext::CopyResource(0x00000000069859E0, 0x00000000069858E0)
Frame 000001 ........PRE: <this=0x06930010>ID3D11Texture2D::Release()
Frame 000001 ............PRE: RemoveObject(D3D11 Texture2D, 0x0000000006930010, 0x0000000006FE6850)
Frame 000001 ............POST: <> RemoveObject(D3D11 Texture2D, 0x0000000006930010, 0x0000000006FE6850)
Frame 000001 ........POST: <0><this=0x06930010> ID3D11Texture2D::Release()
Frame 000001 ........PRE: <this=0x069858e0>ID3D11Texture2D::Release()
Frame 000001 ............PRE: RemoveObject(D3D11 Texture2D, 0x00000000069858E0, 0x0000000006FE6C90)
Frame 000001 ............POST: <> RemoveObject(D3D11 Texture2D, 0x00000000069858E0, 0x0000000006FE6C90)
Frame 000001 ........POST: <0><this=0x069858e0> ID3D11Texture2D::Release()
Frame 000001 ........PRE: <this=0x069857e0>ID3D11Texture2D::Release()
Frame 000001 ............PRE: RemoveObject(D3D11 Texture2D, 0x00000000069857E0, 0x0000000006FE6A50)
Frame 000001 ............POST: <> RemoveObject(D3D11 Texture2D, 0x00000000069857E0, 0x0000000006FE6A50)
Frame 000001 ........POST: <0><this=0x069857e0> ID3D11Texture2D::Release()
Frame 000001 ........PRE: <this=0x069859e0>ID3D11Texture2D::SetPrivateData({0x429b8c22, 0x9188, 0x4b0c, 0x87, 0x42, 0xac, 0xb0, 0xbf, 0x85, 0xc2, 0x00}, 13, 0x000000000023E95C)
Frame 000001 ........POST: <S_OK><this=0x069859e0> ID3D11Texture2D::SetPrivateData({0x429b8c22, 0x9188, 0x4b0c, 0x87, 0x42, 0xac, 0xb0, 0xbf, 0x85, 0xc2, 0x00}, 13, 0x000000000023E95C)
Frame 000001 ........PRE: <this=0x067a4f00>ID3D11Device::CreateShaderResourceView(0x00000000069859E0, 0x000000000023E460, 0x00000000020DC680)
Frame 000001 ............PRE: AddObject(D3D11 Shader Resource View, 0x0000000006798F70, 0x0000000006FE67D0)
Frame 000001 ............POST: <TRUE> AddObject(D3D11 Shader Resource View, 0x0000000006798F70, 0x0000000006FE67D0)
Frame 000001 ........POST: <S_OK><this=0x067a4f00> ID3D11Device::CreateShaderResourceView(0x00000000069859E0, 0x000000000023E460, 0x00000000020DC680)
Frame 000001 ........PRE: <this=0x069859e0>ID3D11Texture2D::Release()
Frame 000001 ........POST: <0><this=0x069859e0> ID3D11Texture2D::Release()
Frame 000001 ........PRE: <this=0x06798f70>ID3D11ShaderResourceView::SetPrivateData({0x429b8c22, 0x9188, 0x4b0c, 0x87, 0x42, 0xac, 0xb0, 0xbf, 0x85, 0xc2, 0x00}, 13, 0x000000000023E95C)
Frame 000001 ........POST: <S_OK><this=0x06798f70> ID3D11ShaderResourceView::SetPrivateData({0x429b8c22, 0x9188, 0x4b0c, 0x87, 0x42, 0xac, 0xb0, 0xbf, 0x85, 0xc2, 0x00}, 13, 0x000000000023E95C)
Frame 000001 ........PRE: <this=0x06798f70>ID3D11ShaderResourceView::QueryInterface(IID_ID3D11ShaderResourceView, 0x000000000023E908)
Frame 000001 ........POST: <S_OK><this=0x06798f70> ID3D11ShaderResourceView::QueryInterface(IID_ID3D11ShaderResourceView, 0x000000000023E908)
Frame 000001 ........PRE: <this=0x067a4f00>ID3D11Device::CreateSamplerState(0x000000000023F168, 0x00000000FFF76930)
Frame 000001 ............PRE: AddObject(D3D11 Sampler State, 0x0000000006799090, 0x0000000006FE68E8)
Frame 000001 ............POST: <TRUE> AddObject(D3D11 Sampler State, 0x0000000006799090, 0x0000000006FE68E8)
Frame 000001 ........POST: <S_OK><this=0x067a4f00> ID3D11Device::CreateSamplerState(0x000000000023F168, 0x00000000FFF76930)
Frame 000001 ........PRE: <this=0x06799090>ID3D11SamplerState::SetPrivateData({0x429b8c22, 0x9188, 0x4b0c, 0x87, 0x42, 0xac, 0xb0, 0xbf, 0x85, 0xc2, 0x00}, 7, 0x00000000FFF01A48)
Frame 000001 ........POST: <S_OK><this=0x06799090> ID3D11SamplerState::SetPrivateData({0x429b8c22, 0x9188, 0x4b0c, 0x87, 0x42, 0xac, 0xb0, 0xbf, 0x85, 0xc2, 0x00}, 7, 0x00000000FFF01A48)
Frame 000001 ........PRE: <this=0x067a4f00>ID3D11Device::CreateBuffer(0x000000000023F130, NULL, 0x00000000FFF76940)
Frame 000001 ............PRE: AddObject(D3D11 Buffer, 0x0000000006985AE0, 0x0000000006FE6A90)
Frame 000001 ............POST: <TRUE> AddObject(D3D11 Buffer, 0x0000000006985AE0, 0x0000000006FE6A90)
Frame 000001 ........POST: <S_OK><this=0x067a4f00> ID3D11Device::CreateBuffer(0x000000000023F130, NULL, 0x00000000FFF76940)
Frame 000001 ........PRE: <this=0x06985ae0>ID3D11Buffer::SetPrivateData({0x429b8c22, 0x9188, 0x4b0c, 0x87, 0x42, 0xac, 0xb0, 0xbf, 0x85, 0xc2, 0x00}, 16, 0x00000000FFF01A78)
Frame 000001 ........POST: <S_OK><this=0x06985ae0> ID3D11Buffer::SetPrivateData({0x429b8c22, 0x9188, 0x4b0c, 0x87, 0x42, 0xac, 0xb0, 0xbf, 0x85, 0xc2, 0x00}, 16, 0x00000000FFF01A78)
Frame 000001 ........PRE: <this=0x067a4f00>ID3D11Device::CreateBuffer(0x000000000023F130, NULL, 0x00000000FFF76948)
Frame 000001 ............PRE: AddObject(D3D11 Buffer, 0x0000000006985BB0, 0x0000000006FE78D0)
Frame 000001 ............POST: <TRUE> AddObject(D3D11 Buffer, 0x0000000006985BB0, 0x0000000006FE78D0)
Frame 000001 ........POST: <S_OK><this=0x067a4f00> ID3D11Device::CreateBuffer(0x000000000023F130, NULL, 0x00000000FFF76948)
Frame 000001 ........PRE: <this=0x06985bb0>ID3D11Buffer::SetPrivateData({0x429b8c22, 0x9188, 0x4b0c, 0x87, 0x42, 0xac, 0xb0, 0xbf, 0x85, 0xc2, 0x00}, 16, 0x00000000FFF01A90)
Frame 000001 ........POST: <S_OK><this=0x06985bb0> ID3D11Buffer::SetPrivateData({0x429b8c22, 0x9188, 0x4b0c, 0x87, 0x42, 0xac, 0xb0, 0xbf, 0x85, 0xc2, 0x00}, 16, 0x00000000FFF01A90)
Frame 000001 ........PRE: <this=0x067a4f00>ID3D11Device::CreateBuffer(0x000000000023F130, NULL, 0x00000000FFF76950)
Frame 000001 ............PRE: AddObject(D3D11 Buffer, 0x0000000006985C80, 0x0000000006FE7AD0)
Frame 000001 ............POST: <TRUE> AddObject(D3D11 Buffer, 0x0000000006985C80, 0x0000000006FE7AD0)
Frame 000001 ........POST: <S_OK><this=0x067a4f00> ID3D11Device::CreateBuffer(0x000000000023F130, NULL, 0x00000000FFF76950)
Frame 000001 ........PRE: <this=0x06985c80>ID3D11Buffer::SetPrivateData({0x429b8c22, 0x9188, 0x4b0c, 0x87, 0x42, 0xac, 0xb0, 0xbf, 0x85, 0xc2, 0x00}, 15, 0x00000000FFF01AA8)
Frame 000001 ........POST: <S_OK><this=0x06985c80> ID3D11Buffer::SetPrivateData({0x429b8c22, 0x9188, 0x4b0c, 0x87, 0x42, 0xac, 0xb0, 0xbf, 0x85, 0xc2, 0x00}, 15, 0x00000000FFF01AA8)
Frame 000001 ........PRE: <this=0x01fdbc30>IDXGISwapChain::GetBuffer(0, IID_ID3D11Texture2D, 0x000000000023F1B0)
Frame 000001 ........POST: <S_OK><this=0x01fdbc30> IDXGISwapChain::GetBuffer(0, IID_ID3D11Texture2D, 0x000000000023F1B0)
Frame 000001 ........PRE: <this=0x067d46e0>ID3D10Texture2D::Map(2355736, Unknown D3D10_MAP, 1, 0x00000000067D46E0)
Frame 000001 ........POST: <E_INVALIDARG><this=0x067d46e0> ID3D10Texture2D::Map(2355736, Unknown D3D10_MAP, 1, 0x00000000067D46E0)
Frame 000001 ........PRE: <this=0x067a4f00>ID3D11Device::CreateRenderTargetView(0x00000000067D46E0, NULL, 0x000000000023F1C8)
Frame 000001 ........POST: <E_INVALIDARG><this=0x067a4f00> ID3D11Device::CreateRenderTargetView(0x00000000067D46E0, NULL, 0x000000000023F1C8)
An unhandled exception occurred.

Share this post


Link to post
Share on other sites

If you are using windows 8 PIX doesn't work because it doesn't understand the DX11.1 runtime, you need to switch to the full version of VS2012 which has a graphics debugger included in it. Or you use GPUPerfHud or GPUPerfStudio from NVidia or AMD depending on which GPU you are running this on.

Share this post


Link to post
Share on other sites

Do these programs have the option to check shader variable values at runtime?

Share this post


Link to post
Share on other sites

These programs have the option to change the shader code and then debug the same draw call again. These applications know about what the shader is doing and how the driver will handle the commands and send them on to the GPU. These applications are written by the people who write the drivers.

Share this post


Link to post
Share on other sites
Sign in to follow this