ID3DUserDefinedAnnotation::BeginEvent 方法 (d3d11_1.h)

标记事件代码部分的开头。

语法

INT BeginEvent(
  [in] LPCWSTR Name
);

参数

[in] Name

包含事件名称的 以 NULL 结尾的 UNICODE 字符串。 该名称与操作系统无关。 当调用应用程序在 Direct3D 分析工具下运行时,可以选择有意义的名称。 NULL 指针生成未定义的结果。

返回值

返回对 BeginEvent 的先前调用数,这些调用尚未通过调用 ID3DUserDefinedAnnotation::EndEvent 方法完成。

如果调用应用程序未在 Direct3D 分析工具下运行,则返回值为 –1。

注解

调用 EndEvent 方法以标记事件代码部分的末尾。

当调用应用程序在启用的 Direct3D 分析工具(如 Microsoft Visual Studio Ultimate 2012)下运行时,用户可以可视化事件。

如果调用应用程序未在已启用的 Direct3D 分析工具下运行,则 BeginEvent 不起作用。

示例

下面的代码演示如何使用对 BeginEventEndEvent 方法的一对调用。 它还使用 CComPtr 智能指针类型。


CComPtr< ID3D11DeviceContext > pContext;

HRESULT hrCreateDevice = (*pfnD3D11CreateDevice)( 
        0,
        D3D_DRIVER_TYPE_NULL,
        0,
        0,
        NULL,
        0,
        D3D11_SDK_VERSION,
        NULL,
        0,
        & pContext );
VERIFY_SUCCEEDED(hrCreateDevice);
CComPtr<ID3DUserDefinedAnnotation> pPerf;
HRESULT hr = pContext->QueryInterface( __uuidof(pPerf), reinterpret_cast<void**>(&pPerf) );
if ( FAILED( hr ) ) 
    return;
pPerf->BeginEvent( L”Now entering ocean rendering code” );
MyDrawOceanRoutine( );
pPerf->EndEvent( );
          

要求

要求
最低受支持的客户端 适用于 Windows 7 的Windows 8和平台更新 [桌面应用 |UWP 应用]
最低受支持的服务器 适用于 Windows Server 2008 R2 的Windows Server 2012和平台更新 [桌面应用 |UWP 应用]
目标平台 Windows
标头 d3d11_1.h
Library D3D11.lib

另请参阅

ID3DUserDefinedAnnotation