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


Метод ID3DX10ThreadPump::P rocessDeviceWorkItems

Установка рабочих элементов на устройство после завершения загрузки и обработки. Когда потоковый насос завершит загрузку и обработку ресурса или шейдера, он будет хранить его в очереди, пока не будет вызван этот API, после чего обработанные элементы будут настроены на устройство. Это полезно для управления объемом обработки, затрачиваемого на привязку ресурсов к устройству для каждого кадра. См. примечания.

Синтаксис

HRESULT ProcessDeviceWorkItems(
  [in] UINT iWorkItemCount
);

Параметры

iWorkItemCount [in]

Тип: UINT

Количество рабочих элементов, устанавливаемых на устройство. ProcessDeviceObjectCreation создает не более объектов iWorkItemCount. Если в очереди недостаточно рабочих элементов для обработки объектов iWorkItemCount, ProcessDeviceObjectCreation создаст столько объектов устройств, сколько элементов в очереди.

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

Тип: HRESULT

Возвращаемое значение является одним из значений, перечисленных в коде возврата Direct3D 10.

Комментарии

В качестве примера того, как можно использовать этот API, предположим, что вы приближаетесь к концу одного уровня в игре и хотите начать предварительную загрузку текстур, шейдеров и других ресурсов для следующего уровня. Потоковой насос начнет загрузку, распаковку и обработку ресурсов и шейдеров в отдельном потоке, пока они не будут готовы к настройке на устройстве, после чего они останутся в очереди. Может потребоваться не задавать все ресурсы и шейдеры для устройства одновременно, так как это может привести к заметному временному замедлению производительности игры. Таким образом, этот API можно вызывать один раз для каждого кадра, чтобы на устройстве на каждом кадре было задано только небольшое количество рабочих элементов, тем самым распределяя рабочую нагрузку ресурсов привязки на устройство на несколько кадров и сводя к минимуму возможность заметного замедления производительности игры.

Требования

Требование Значение
Заголовок
D3DX10.h
Библиотека
D3DX10.lib

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

ID3DX10ThreadPump

Интерфейсы D3DX