共用方式為


D3D11_TEXTURE2D_DESC 結構 (d3d11.h)

描述 2D 紋理。

語法

typedef struct D3D11_TEXTURE2D_DESC {
  UINT             Width;
  UINT             Height;
  UINT             MipLevels;
  UINT             ArraySize;
  DXGI_FORMAT      Format;
  DXGI_SAMPLE_DESC SampleDesc;
  D3D11_USAGE      Usage;
  UINT             BindFlags;
  UINT             CPUAccessFlags;
  UINT             MiscFlags;
} D3D11_TEXTURE2D_DESC;

成員

Width

類型: UINT

材質) 中的紋理寬度 (。 範圍從 1 到 D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION (16384) 。 對於紋理立方體貼圖,範圍是從 1 到 D3D11_REQ_TEXTURECUBE_DIMENSION (16384) 。 不過,範圍實際上受限於您建立轉譯裝置 的功能層級 。 如需限制的詳細資訊,請參閱。

Height

類型: UINT

材質 () 紋理高度。 範圍從 1 到 D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION (16384) 。 對於紋理立方體貼圖,範圍是從 1 到 D3D11_REQ_TEXTURECUBE_DIMENSION (16384) 。 不過,範圍實際上受限於您建立轉譯裝置 的功能層級 。 如需限制的詳細資訊,請參閱。

MipLevels

類型: UINT

紋理中的Mipmap層級數目上限。 請參閱 D3D11_TEX1D_SRV中的備註。 針對多重取樣紋理使用 1;或 0 以產生一組完整的子文字。

ArraySize

類型: UINT

紋理陣列中的紋理數目。 範圍從 1 到 D3D11_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION (2048) 。 對於紋理立方體貼圖,此值是6個 (的倍數,也就是6倍D3D11_TEXCUBE_ARRAY_SRV) 的 NumCubes成員值,範圍是從6到2046。 範圍實際上受限於您建立轉譯裝置 的功能層級 。 如需限制的詳細資訊,請參閱。

Format

類型: DXGI_FORMAT

紋理格式 (請參閱 DXGI_FORMAT) 。

SampleDesc

類型: DXGI_SAMPLE_DESC

結構,指定紋理的多取樣參數。 請參閱 DXGI_SAMPLE_DESC

Usage

類型: D3D11_USAGE

值,識別紋理的讀取和寫入方式。 最常見的值為 D3D11_USAGE_DEFAULT;如需所有可能的值 ,請參閱D3D11_USAGE

BindFlags

類型: UINT

旗標 (請參閱 結至管線階段D3D11_BIND_FLAG) 。 旗標可以由位 OR 合併。

CPUAccessFlags

類型: UINT

旗標 (請參閱 D3D11_CPU_ACCESS_FLAG) ,以指定允許的CPU存取類型。 如果不需要 CPU 存取,請使用 0。 這些旗標可以與位 OR 結合。

MiscFlags

類型: UINT

旗標 (請參閱 D3D11_RESOURCE_MISC_FLAG) ,以識別其他較不常見的資源選項。 如果沒有套用這些旗標,請使用 0。 您可以使用位 OR 來結合這些旗標。 針對紋理立方體貼圖,請設定 D3D11_RESOURCE_MISC_TEXTURECUBE 旗標。 Cube 對應陣列 (也就是 ArraySize> 6) 需要功能層級 D3D_FEATURE_LEVEL_10_1 或更高版本。

備註

此結構用於 ID3D11Device::CreateTexture2D的呼叫中。

除了這個結構之外,您也可以使用 CD3D11_TEXTURE2D_DESC 衍生結構,此結構定義於 D3D11.h 中,且行為類似繼承類別,以協助建立紋理描述。

裝置會將某些大小限制 (必須是子取樣、區塊壓縮或位格式資源的最小大小) 倍數。

紋理大小範圍取決於您建立裝置 的功能層級 ,而不是 Microsoft Direct3D 介面版本。 例如,如果您在功能層級 10 (使用 Microsoft Direct3D 10 硬體 D3D_FEATURE_LEVEL_10_0) ,並呼叫 D3D11CreateDevice 來建立 ID3D11Device,您必須將紋理大小上限限制為在建立 2D 紋理時D3D10_REQ_TEXTURE2D_U_OR_V_DIMENSION (8192) 。

規格需求

需求
標頭 d3d11.h

另請參閱

資源結構