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


Метод ID3D11ShaderTrace::TraceReady (d3d11shadertracing.h)

Указывает, что трассировка шейдера записана и готова к использованию.

Синтаксис

HRESULT TraceReady(
  [out, optional] UINT64 *pTestCount
);

Параметры

[out, optional] pTestCount

Необязательный указатель на переменную, получающую количество вызовов, соответствующих трассировке. Если не используется, задайте значение NULL. Дополнительные сведения об этом числе см. в разделе Примечания.

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

TraceReady возвращает:

  • S_OK , если трассировка готова.
  • S_FALSE , если трассировка не готова.
  • E_OUTOFMEMORY , если память закончилась во время записи трассировки. Вы можете повторить запись трассировки, вызвав ID3D11ShaderTrace::ResetTrace , а затем перерисовка. Если вы решили больше не записывать трассировку, отпустите интерфейс ID3D11ShaderTrace .
  • Возможно, другие коды ошибок, описанные в разделе Коды возврата Direct3D 11.

Комментарии

Если трассировка предназначена для записи вызова 3, но на данный момент произошло только два вызова, TraceReady устанавливает переменную, на которую указывает pTestCount , значение 2. Это значение можно использовать, чтобы понять, почему трассировка еще не готова. И наоборот, переменная, для которой точки pTestCount могут быть больше запрошенного количества вызовов для готовой трассировки. Это значение можно использовать для определения количества вызовов, которые выполнялись после требуемого количества вызовов трассировки. Например, вы можете не знать количество перерисовок, возникающих в пикселе для заданного шейдера в вызове рисования. Если вы можете перерисовывать сцену одинаково, вы можете настроить трассировки в следующий раз на основе значения, возвращенного TraceReady в pTestCount при первом проходе.

Если трассировка шейдера записана, можно успешно вызвать методы ID3D11ShaderTrace::GetTraceStats, ID3D11ShaderTrace::GetInitialRegisterContents и ID3D11ShaderTrace::GetStep . Методы ID3D11ShaderTrace::ResetTrace и ID3D11ShaderTrace::P SSelectStamp можно вызывать независимо от того, была ли записана трассировка шейдера.

Примечание Для этого API требуется пакет средств разработки программного обеспечения Windows (SDK) для Windows 8.
 

Требования

Требование Значение
Минимальная версия клиента Windows 8 [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2012 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header d3d11shadertracing.h
DLL D3D11SDKLayers.dll; D3D11_1SDKLayers.dll; D3D11_2SDKLayers.dll

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

ID3D11ShaderTrace