ID3DUserDefinedAnnotation::SetMarker 方法 (d3d11_1.h)
在代码中标记单个执行点。
语法
void SetMarker(
[in] LPCWSTR Name
);
参数
[in] Name
一个 以 NULL 结尾的 UNICODE 字符串,其中包含标记的名称。 该名称与操作系统无关。 当调用应用程序在 Direct3D 分析工具下运行时,可以选择有意义的名称。 NULL 指针生成未定义的结果。
返回值
无
备注
当调用应用程序在已启用的 Direct3D 分析工具(如 Microsoft Visual Studio Ultimate 2012)下运行时,用户可以可视化标记。
如果调用应用程序未在已启用的 Direct3D 分析工具下运行,则 SetMarker 不起作用。
示例
以下代码演示如何使用 SetMarker。 它还使用 CComPtr 智能指针类型。
CComPtr< ID3D11DeviceContext > pID3D11DeviceContext;
HRESULT hrCreateDevice = (*pfnD3D11CreateDevice)(
0,
D3D_DRIVER_TYPE_NULL,
0,
0,
NULL,
0,
D3D11_SDK_VERSION,
NULL,
0,
& pID3D11DeviceContext );
VERIFY_SUCCEEDED(hrCreateDevice);
CComPtr<ID3DUserDefinedAnnotation> pPerf;
HRESULT hr = pID3D11DeviceContext->QueryInterface( __uuidof(pPerf), reinterpret_cast<void**>(&pPerf) );
if ( FAILED( hr ) )
return;
pPerf->SetMarker( L”Occlusion test failed- not drawing sun flare” );
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 适用于 Windows 7 的Windows 8和平台更新 [桌面应用 |UWP 应用] |
最低受支持的服务器 | 适用于 Windows Server 2008 R2 的Windows Server 2012和平台更新 [桌面应用 |UWP 应用] |
目标平台 | Windows |
标头 | d3d11_1.h |
Library | D3D11.lib |