ID3D12GraphicsCommandList1::AtomicCopyBufferUINT 方法 (d3d12.h)
以不可部分完成的方式,將 UINT 類型的主要資料元素從一個資源複製到另一個資源,以及選擇性相依資源。
這些「相依資源」因此命名,因為它們相依于主要資料元素來尋找它們,通常是索引鍵元素是位址、索引或其他參考一或多個相依資源的控制碼。
此函式支援 UINT (32 位) 類型的主要資料元素。 此函式的不同版本 AtomicCopyBufferUINT64 支援 UINT64類型的主要資料元素, (64 位) 。
語法
void AtomicCopyBufferUINT(
[in] ID3D12Resource *pDstBuffer,
UINT64 DstOffset,
[in] ID3D12Resource *pSrcBuffer,
UINT64 SrcOffset,
UINT Dependencies,
[in] ID3D12Resource * const *ppDependentResources,
[in] const D3D12_SUBRESOURCE_RANGE_UINT64 *pDependentSubresourceRanges
);
參數
[in] pDstBuffer
類型: ID3D12Resource*
SAL: In
UINT 主要資料元素複製到的資源。
DstOffset
類型: UINT64
目的地資源緩衝區的位移,指定主要資料元素以位元組為單位複製到何處。 結合資源緩衝區基底位址的這個位移,必須產生自然對齊 UINT 值的記憶體位址。
[in] pSrcBuffer
類型: ID3D12Resource*
SAL: In
從中複製 UINT 主要資料元素的資源。 此資料通常是著色器程式碼可用來尋找最新版延遲敏感性資訊的位址、索引或其他控制碼。
SrcOffset
類型: UINT64
來源資源緩衝區的位移,指定從中複製主要資料元素的位置,以位元組為單位。 結合資源緩衝區基底位址的這個位移,必須產生自然對齊 UINT 值的記憶體位址。
Dependencies
類型: UINT
相依資源的數目。
[in] ppDependentResources
類型: ID3D12Resource*
SAL: In_reads(Dependencies)
資源陣列,其中包含資料承載的相依專案。
[in] pDependentSubresourceRanges
類型:const D3D12_SUBRESOURCE_RANGE_UINT64*
SAL: In_reads(Dependencies)
子資源範圍的陣列,指定資料承載的相依專案。 在主要資料元素本身以不可部分完成的方式複製之前,會完全更新這些專案。 這可確保整個作業在邏輯上是不可部分完成的;也就是說,主要資料元素永遠不會參考不完整的資料承載。
傳回值
無
備註
此方法通常用於更新資源,而一般轉譯管線延遲可能會對使用者體驗造成負面影響。 例如,應用程式可以從最新的使用者輸入計算檢視矩陣 (,例如從前端顯示器的感應器) ,並使用此函式來更新並啟用命令清單中的此矩陣,以降低輸入與轉譯之間的感知延遲。
需求
目標平台 | Windows |
標頭 | d3d12.h |
程式庫 | D3d12.lib |
Dll | D3d12.dll |