D3D11_BIND_FLAG列舉 (d3d11.h)

識別如何將資源系結至管線。

Syntax

typedef enum D3D11_BIND_FLAG {
  D3D11_BIND_VERTEX_BUFFER = 0x1L,
  D3D11_BIND_INDEX_BUFFER = 0x2L,
  D3D11_BIND_CONSTANT_BUFFER = 0x4L,
  D3D11_BIND_SHADER_RESOURCE = 0x8L,
  D3D11_BIND_STREAM_OUTPUT = 0x10L,
  D3D11_BIND_RENDER_TARGET = 0x20L,
  D3D11_BIND_DEPTH_STENCIL = 0x40L,
  D3D11_BIND_UNORDERED_ACCESS = 0x80L,
  D3D11_BIND_DECODER = 0x200L,
  D3D11_BIND_VIDEO_ENCODER = 0x400L
} ;

常數

 
D3D11_BIND_VERTEX_BUFFER
值: 0x1L
將緩衝區系結為頂點緩衝區至輸入組合器階段。
D3D11_BIND_INDEX_BUFFER
值: 0x2L
將緩衝區系結為索引緩衝區至輸入組合器階段。
D3D11_BIND_CONSTANT_BUFFER
值: 0x4L
將緩衝區系結為常數緩衝區至著色器階段;此旗標不可與任何其他系結旗標結合。
D3D11_BIND_SHADER_RESOURCE
值: 0x8L
將緩衝區或紋理系結至著色器階段;這個旗標不能與 D3D11_MAP_WRITE_NO_OVERWRITE 旗標搭配使用。

注意 從 Windows 8 開始提供的 Direct3D 11.1 執行時間,可讓動態常數緩衝區和著色器資源檢視 (SRV) 動態緩衝區與 D3D11_MAP_WRITE_NO_OVERWRITE。 Direct3D 11 和更早的執行時間限制對應至頂點或索引緩衝區。 若要判斷 Direct3D 裝置是否支援這些功能,請使用D3D11_FEATURE_D3D11_OPTIONS呼叫ID3D11Device::CheckFeatureSupportCheckFeatureSupport 會以裝置的功能填入 D3D11_FEATURE_DATA_D3D11_OPTIONS 結構的成員。 這裡的相關成員包括 MapNoOverwriteOnDynamicConstantBufferMapNoOverwriteOnDynamicBufferSRV

 
D3D11_BIND_STREAM_OUTPUT
值: 0x10L
系結資料流程輸出階段的輸出緩衝區。
D3D11_BIND_RENDER_TARGET
值: 0x20L
將紋理系結為輸出合併階段的轉譯目標。
D3D11_BIND_DEPTH_STENCIL
值: 0x40L
將紋理系結為輸出合併階段的深度樣板目標。
D3D11_BIND_UNORDERED_ACCESS
值: 0x80L
系結 未排序的存取 資源。
D3D11_BIND_DECODER
值: 0x200L
設定此旗標,指出 2D 紋理 是用來接收解碼器 API 的輸出。 建立解碼器輸出資源的常見方式是呼叫 ID3D11Device::CreateTexture2D 方法來建立 2D 紋理陣列。 不過,您無法在呼叫 ID3D11Device::CreateShaderResourceView時使用此旗標所建立的紋理陣列。

Direct3D 11: 在 Direct3D 11.1 之前,不支援此值。
D3D11_BIND_VIDEO_ENCODER
值: 0x400L
設定此旗標以指出 2D 紋理 是用來接收視訊編碼器 API 的輸入。 建立視訊編碼器資源的常見方式是呼叫 ID3D11Device::CreateTexture2D 方法來建立 2D 紋理陣列。 不過,您無法在呼叫 ID3D11Device::CreateShaderResourceView時使用此旗標所建立的紋理陣列。

Direct3D 11: 在 Direct3D 11.1 之前,不支援此值。

備註

一般而言,系結旗標可以使用位 OR (來結合,但常數緩衝區旗標) 除外;不過,您應該使用單一旗標來允許裝置優化資源使用量。

此列舉是由下列專案使用:

著色器資源緩衝區不是常數緩衝區;而是系結至著色器的紋理或緩衝區資源,其中包含紋理或緩衝區資料, (它不限於緩衝區) 中的單一元素類型。 使用 D3D11_BIND_SHADER_RESOURCE 旗標建立著色器資源緩衝區,並使用下列其中一個 API 系結至管線: ID3D11DeviceCoNtext::GSSetShaderResourcesID3D11DeviceCoNtext::P SSetShaderResourcesID3D11DeviceCoNtext::VSSetShaderResources。 此外,著色器資源緩衝區無法使用 D3D11_MAP_WRITE_NO_OVERWRITE 旗標。
注意 從 Windows 8 開始提供的 Direct3D 11.1 執行時間,可讓動態常數緩衝區和著色器資源檢視 (SRV) 動態緩衝區與 D3D11_MAP_WRITE_NO_OVERWRITE。 Direct3D 11 和更早的執行時間限制對應至頂點或索引緩衝區。 若要判斷 Direct3D 裝置是否支援這些功能,請使用D3D11_FEATURE_D3D11_OPTIONS呼叫ID3D11Device::CheckFeatureSupportCheckFeatureSupport 會以裝置的功能填入 D3D11_FEATURE_DATA_D3D11_OPTIONS 結構的成員。 這裡的相關成員包括 MapNoOverwriteOnDynamicConstantBufferMapNoOverwriteOnDynamicBufferSRV
 

規格需求

   
標頭 d3d11.h

另請參閱

資源列舉