Direct3D Surface (Direct3D 9)

介面代表顯示記憶體的線性區域,通常位於顯示卡的顯示記憶體中,雖然表面可以存在於系統記憶體中。 Surface 是由 IDirect3DSurface9 介面所管理。

  • 前端緩衝區。 圖形配接器轉譯並在監視器上顯示的記憶體矩形。 在 Direct3D 中,應用程式永遠不會直接寫入前端緩衝區。
  • 返回緩衝區。 應用程式可以直接寫入的記憶體矩形。 後端緩衝區永遠不會直接顯示在監視器上。
  • 翻轉表面。 將背景緩衝區移至前端緩衝區的程式。
  • 交換鏈結。 一或多個後端緩衝區的集合,可以串列方式呈現給前端緩衝區。

取得 Surface

呼叫下列任一方法來建立介面:

Surface 格式會決定如何解譯表面記憶體中每個圖元的資料。 Direct3D 會使用D3DSURFACE_DESC 結構的D3DFORMAT成員來描述表面格式。 您可以呼叫 GetDesc 方法,以擷取現有表面的格式。

建立表面之後,您可以藉由呼叫下列任一方法來取得其指標:

IDirect3DSurface9介面可讓您透過UpdateSurface方法間接存取記憶體。 這個方法可讓您將圖元的矩形區域從一個 IDirect3DSurface9 介面複製到另一個 IDirect3DSurface9 介面。 介面介面也有直接存取顯示記憶體的方法。 例如,您可以使用 LockRect 方法來鎖定顯示記憶體的矩形區域。 當您完成在介面上使用鎖定的矩形區域之後,請務必呼叫 UnlockRect

其他 Surface 主題

深入瞭解如何搭配下列任何主題使用表面:

快速入門