Метод ID3DX10ThreadPump::P rocessDeviceWorkItems
Установка рабочих элементов на устройство после завершения загрузки и обработки. Когда потоковый насос завершит загрузку и обработку ресурса или шейдера, он будет хранить его в очереди, пока не будет вызван этот API, после чего обработанные элементы будут настроены на устройство. Это полезно для управления объемом обработки, затрачиваемого на привязку ресурсов к устройству для каждого кадра. См. примечания.
Синтаксис
HRESULT ProcessDeviceWorkItems(
[in] UINT iWorkItemCount
);
Параметры
-
iWorkItemCount [in]
-
Тип: UINT
Количество рабочих элементов, устанавливаемых на устройство. ProcessDeviceObjectCreation создает не более объектов iWorkItemCount. Если в очереди недостаточно рабочих элементов для обработки объектов iWorkItemCount, ProcessDeviceObjectCreation создаст столько объектов устройств, сколько элементов в очереди.
Возвращаемое значение
Тип: HRESULT
Возвращаемое значение является одним из значений, перечисленных в коде возврата Direct3D 10.
Комментарии
В качестве примера того, как можно использовать этот API, предположим, что вы приближаетесь к концу одного уровня в игре и хотите начать предварительную загрузку текстур, шейдеров и других ресурсов для следующего уровня. Потоковой насос начнет загрузку, распаковку и обработку ресурсов и шейдеров в отдельном потоке, пока они не будут готовы к настройке на устройстве, после чего они останутся в очереди. Может потребоваться не задавать все ресурсы и шейдеры для устройства одновременно, так как это может привести к заметному временному замедлению производительности игры. Таким образом, этот API можно вызывать один раз для каждого кадра, чтобы на устройстве на каждом кадре было задано только небольшое количество рабочих элементов, тем самым распределяя рабочую нагрузку ресурсов привязки на устройство на несколько кадров и сводя к минимуму возможность заметного замедления производительности игры.
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|
См. также раздел