ID3D11ShaderTraceFactory::CreateShaderTrace method

Creates a shader-trace interface for a shader-trace information object.


HRESULT CreateShaderTrace(
  IUnknown                *pShader,
  D3D11_SHADER_TRACE_DESC *pTraceDesc,
  ID3D11ShaderTrace       **ppShaderTrace



A pointer to the interface of the shader to create the shader-trace interface for. For example, pShader can be an instance of ID3D11VertexShader, ID3D11PixelShader, and so on.


A pointer to a D3D11_SHADER_TRACE_DESC structure that describes the shader-trace object to create. This parameter cannot be NULL.


A pointer to a variable that receives a pointer to the ID3D11ShaderTrace interface for the shader-trace object that CreateShaderTrace creates.

Return value

CreateShaderTrace returns:

  • S_OK if the method created the shader-trace information object.
  • E_FAIL if the reference device, which supports tracing, is not being used.
  • E_OUTOFMEMORY if memory is unavailable to complete the operation.
  • E_INVALIDARG if any parameter is NULL or invalid.
  • Possibly other error codes that are described in Direct3D 11 Return Codes.


This API requires the Windows Software Development Kit (SDK) for Windows 8.


Minimum supported client Windows 8 [desktop apps | UWP apps]
Minimum supported server Windows Server 2012 [desktop apps | UWP apps]
Target Platform Windows
Header d3d11shadertracing.h
DLL D3D11SDKLayers.dll; D3D11_1SDKLayers.dll; D3D11_2SDKLayers.dll

See also