Поделиться через


Метод ID3DUserDefinedAnnotation::SetMarker (d3d11_1.h)

Помечает единую точку выполнения в коде.

Синтаксис

void SetMarker(
  [in] LPCWSTR Name
);

Параметры

[in] Name

Строка ЮНИКОД, завершающаяся значением NULL, которая содержит имя маркера. Имя не относится к операционной системе. Вы можете выбрать понятное имя, если вызывающее приложение выполняется в средстве профилирования Direct3D. Указатель NULL создает неопределенные результаты.

Возвращаемое значение

None

Remarks

Пользователь может визуализировать маркер, когда вызывающее приложение работает с включенным средством профилирования Direct3D, например Microsoft Visual Studio Ultimate 2012.

SetMarker не действует, если вызывающее приложение не выполняется с включенным средством профилирования Direct3D.

Примеры

В следующем коде показано, как использовать 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 8 и обновление платформы для Windows 7 [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2012 и обновление платформы для Windows Server 2008 R2 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header d3d11_1.h
Библиотека D3D11.lib

См. также раздел

ID3DUserDefinedAnnotation