複製描述項
裝置介面上的 ID3D12Device::CopyDescriptors 和 ID3D12Device::CopyDescriptorsSimple 方法會使用 CPU 立即複製描述元。 只要 CPU 或 GPU 上的多個執行緒不會執行任何潛在的衝突寫入,就可以呼叫免費執行緒。
立即複製描述項 (CPU 時間軸)
要從) 複製的來源描述項數目 (,指定為一組描述項範圍,必須等於 (要複製到) 的目標描述項數目,並指定為個別的描述項範圍集。 來源和目的地範圍不一定必須對齊。 例如,一組疏鬆描述元可以複製到連續目的地,反之亦然,或在某些組合中。
多個描述項堆積可以參與複製作業,同時作為來源和目的地。 使用描述項控制碼做為參數表示複製方法不關心任何指定描述元所在的堆積–它們全都是記憶體。
要從 和 複製的描述項堆積類型必須相符,因此方法會採用單一描述元堆積類型做為輸入。 驅動程式必須知道指定複製作業中所有描述項的堆積類型,因此它知道複製作業中涉及的資料大小。 如果指定的描述項堆積類型保證自訂複製工作,驅動程式可能也需要執行自訂複製工作–實作詳細資料。 請注意,描述元本身不會識別它們所指向的類型;因此,複製作業需要額外的參數。
CopyDescriptors的替代 API 適用于將單一範圍描述元從一個位置複製到另一個位置 – CopyDescriptorsSimple的簡單案例。
針對這些裝置型 (CPU 時間軸) 描述項複製方法,來源描述項必須來自非著色器可見描述元堆積。 目的地描述項可以位於 CPU 可見的任何描述元堆積中, (著色器可見或不) 。
相關主題