ID3D11DeviceCoNtext1::CSGetConstantBuffers1 方法 (d3d11_1.h)
取得計算著色器階段所使用的常數緩衝區。
語法
void CSGetConstantBuffers1(
[in] UINT StartSlot,
[in] UINT NumBuffers,
[out, optional] ID3D11Buffer **ppConstantBuffers,
[out, optional] UINT *pFirstConstant,
[out, optional] UINT *pNumConstants
);
參數
[in] StartSlot
索引到裝置的以零起始的陣列,以開始從 0 到 D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1) 範圍從 (範圍擷取常數緩衝區。
[in] NumBuffers
要擷取 (範圍從 0 到 D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT 的緩衝區數目 - StartSlot) 。
[out, optional] ppConstantBuffers
方法所傳回的常數緩衝區介面指標陣列。
[out, optional] pFirstConstant
陣列的指標,這個陣列會接收 ppConstantBuffers 所指定的緩衝區中的位移。 每個位移會指定從著色器的觀點開始每個常數緩衝區的位置。 每個位移都是以著色器常數來測量,其為 16 個位元組, (4*32 位元件) 。 因此,2 的位移表示相關聯常數緩衝區的開頭是常數緩衝區的 32 個位元組。 如果緩衝區沒有位移,執行時間會將 pFirstConstant 設定為 Null 。
[out, optional] pNumConstants
陣列的指標,這個陣列會接收 ppConstantBuffers 所指定之緩衝區中的常數數目。 每個數位都會指定著色器所使用的常數緩衝區中包含的常數數目。 每個常數數目都會從 pFirstConstant 陣列中指定的個別位移開始。 如果執行時間未指定每個緩衝區中的常數數目,則執行時間會將 pNumConstants 設定為 Null 。
傳回值
無
備註
如果沒有緩衝區系結于某個位置, pFirstConstant 和 pNumConstants 則為該位置的 Null 。
規格需求
最低支援的用戶端 | 適用于 Windows 7 的 Windows 8 和平臺更新 [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | 適用于 Windows Server 2008 R2 的 Windows Server 2012 和平臺更新 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | d3d11_1.h |
程式庫 | D3D11.lib |