描述項數據表概觀
每個描述元數據表都會儲存一或多個類型的描述項:SRV、UAV、CBV 和取樣器。 描述項數據表不是記憶體的配置;這隻是描述項堆積的位移和長度。
參考描述符表
圖形管線透過根簽章,藉由依索引參考描述元數據表來取得資源的存取權。
描述項數據表實際上只是描述元堆積的子範圍。 描述項堆積代表描述元集合的基礎記憶體配置。 由於記憶體配置是建立描述堆的屬性,因此,從中定義一個描述表一定會像將堆中的區域指派給硬體一樣便宜。 描述符表不需要在 API 層級建立或銷毀,它們僅在參考時被識別為堆中的位移和大小,以供驅動程式使用。
一個應用程式確實可能定義非常大的描述符表,以便其著色器在需要時能夠自由選擇一組可用的描述符(通常參考紋理),這可能由材料數據驅動。
根簽會參考描述符表項目,包含對堆積的引用、表的起始位置(相對於堆積開始的偏移量),以及表的長度(以項目為單位)。 下圖顯示這些概念:來自根簽章的描述元數據表指標,以及描述元堆積內的描述項,參考堆積中完整紋理或緩衝區數據(如果是紋理,則為預設堆積)。