共用方式為


(Direct3D 11 圖形) 的子資源

本主題描述紋理子資源或資源的一部分。

Direct3D 可以參考整個資源,或參考資源的子集。 子資源這個詞彙指的是資源的子集。

緩衝區定義為單一的子資源。 紋理稍微複雜一點,因為有數種不同的紋理類型 (1D、2D 等) 部分支援 mipmap 層級和/或紋理陣列。 從最簡單的案例開始,1D 紋理定義為單一子資源,如下圖所示。

1D 紋理的圖例

這表示組成 1D 紋理的紋理陣列包含在單一子資源中。

如果您展開具有三個 Mipmap 層級的 1D 紋理,則可以像下圖一樣視覺化。

具有三個 Mipmap 層級的 1d 紋理圖例

將此視為由三個子資源組成的單一紋理。 子資源可以使用單一紋理的詳細層級 (LOD) 編制索引。 使用紋理陣列時,存取特定子資源需要 LOD 和特定紋理。 或者,API 會將這兩個資訊片段結合成單一以零起始的子資源索引,如下圖所示。

以零起始的子資源索引的圖例

選取子資源

某些 API 會存取整個資源 (例如 ID3D11DeviceCoNtext::CopyResource 方法) ,而其他 API 則存取一部分的資源 (,例如 ID3D11DeviceCoNtext::UpdateSubresource 方法或 ID3D11DeviceCoNtext::CopySubresourceRegion 方法) 。 存取資源部分的方法通常會使用檢視描述 (,例如 D3D11_TEX2D_ARRAY_DSV 結構) 來指定要存取的子資源。

下列各節中的圖例顯示存取紋理陣列時,檢視描述所使用的詞彙。

陣列切片

假設有紋理陣列,每個具有 mipmap 的紋理,白色) 矩形所代表的 陣列 配量 (都會包含一個紋理及其所有子資源,如下圖所示。

陣列配量圖例

Mip 切片

白色矩形所代表的 mip 配量 () 陣列中的每個紋理都包含一個 mipmap 層級,如下圖所示。

Mip 配量圖例

選取單一子資源

您可以使用這兩種切片來選擇單一子資源,如下圖所示。

使用陣列配量和 Mip 配量選擇子資源的圖例

選取多個子資源

或者,您可以使用這兩種類型的配量搭配 mipmap 層級和/或紋理數目,來選擇多個子資源,如下圖所示。

選擇多個子資源的圖例

注意

轉譯目標檢視只能使用單一子資源或 mip 配量,而且不能包含多個 Mip 配量中的子資源。 也就是說,轉譯目標檢視中的每個紋理都必須是相同的大小。 著色器資源檢視可以選取子資源的任何矩形區域,如下圖所示。

 

資源