共用方式為


(Direct3D 9) 的資源屬性

所有資源都會共用下列屬性。

  • 使用狀況。 例如,資源作為紋理或轉譯目標使用的方式。
  • 格式化。 資料的格式,例如 2D 表面的像素格式。
  • 池。 配置資源的記憶體類型。
  • 類型。 例如,頂點緩衝區或轉譯目標的資源類型。

會強制執行資源使用。 將在特定作業中使用資源的應用程式必須在資源建立時指定該作業。 如需針對資源定義的使用常數清單,請參閱 D3DUSAGE

D3DUSAGE_RTPATCHES、D3DUSAGE_NPATCHES和D3DUSAGE_POINTS常數會向驅動程式指出這些緩衝區中的資料可能分別用於三角形或格線修補程式、N 修補程式或點 sprite。 如果硬體無法在主機處理的情況下執行這些作業,則會提供這些旗標。 因此,驅動程式會想要在系統記憶體中配置這些介面,讓 CPU 可以存取它們。 如果驅動程式可以在硬體中完全執行這些作業,它可以在視訊或 AGP 記憶體中配置這些介面,以避免主機複本並改善至少兩倍的效能。 請注意,這些旗標提供的資訊並非絕對必要。 驅動程式可以偵測到這類作業正在資料上執行,並將緩衝區移回系統記憶體以供後續畫面格使用。

如需使用旗標及其與特定資源關聯的詳細資訊,請參閱個別資源建立方法上的參考頁面。

如需資源介面格式的詳細資訊,請參閱 D3DFORMAT 列舉類型。

保留資源緩衝區的記憶體類別稱為集區。 集區值是由 D3DPOOL 列舉型別所定義。 單一資源中包含的不同物件不能混合集區,也就是 mipmap 中的 mip 層級,而且當為資源選擇集區時,就無法變更集區。

當應用程式呼叫 IDirect3DDevice9::CreateCubeTexture等資源建立方法時,會在執行時間隱含地設定資源類型。 資源類型是由 D3DRESOURCETYPE 列舉型別所定義。 應用程式可以在執行時間查詢這些類型;不過,大部分的案例都不需要執行時間類型檢查。

Direct3D 資源