ID3DX10ThreadPump::P rocessDeviceWorkItems 方法
在工作專案完成載入和處理之後,將工作專案設定為裝置。 當執行緒幫浦完成載入和處理資源或著色器時,它會將它保留在佇列中,直到呼叫此 API 為止,此時處理的專案會設定為裝置。 這適用于控制將資源系結至每個畫面的裝置所花費的處理量。 請參閱<備註>。
語法
HRESULT ProcessDeviceWorkItems(
[in] UINT iWorkItemCount
);
參數
-
iWorkItemCount [in]
-
類型: UINT
要設定為裝置的工作專案數目。 ProcessDeviceObjectCreation 最多會建立 iWorkItemCount 物件。 如果佇列中沒有足夠的工作專案來處理 iWorkItemCount 物件,ProcessDeviceObjectCreation 將會建立與佇列中有專案一樣多的裝置物件。
傳回值
類型: HRESULT
傳回值是 Direct3D 10 傳回碼中列出的其中一個值。
備註
舉例來說,假設您在遊戲中接近一個層級的結尾,而且想要開始預先載入下一個層級的紋理、著色器和其他資源。 執行緒幫浦會開始載入、解壓縮和處理個別執行緒上的資源和著色器,直到它們準備好設定為裝置為止,此時會將資源與著色器保留在佇列中。 一個可能不想一次將所有資源和著色器設定為裝置,因為這可能會導致遊戲效能的暫時性變慢。 因此,每個畫面都可以呼叫此 API 一次,讓每個畫面上只有少量的工作專案會設定為裝置,藉此將系結資源的工作負載分散到裝置上數個畫面,並將遊戲效能中無法辨別的緩慢的可能性降到最低。
規格需求
需求 | 值 |
---|---|
標頭 |
|
程式庫 |
|
另請參閱