IDirect3DCubeTexture9::AddDirtyRect 方法 (d3d9helper.h)

將已變更的區域新增至 Cube 紋理資源。

語法

HRESULT AddDirtyRect(
  [in] D3DCUBEMAP_FACES FaceType,
  [in] const RECT       *pDirtyRect
);

參數

[in] FaceType

類型: D3DCUBEMAP_FACES

D3DCUBEMAP_FACES列舉型別的成員,識別 Cube 地圖臉部。

[in] pDirtyRect

類型:const RECT*

RECT結構的指標,指定已變更的區域。 指定 Null 會展開已變更的區域,以涵蓋整個 Cube 紋理。

傳回值

類型: HRESULT

如果方法成功,傳回值會D3D_OK。 如果方法失敗,則傳回值可以是:D3DERR_INVALIDCALL。

備註

基於效能考慮,只會記錄紋理層級零的已變更區域。 針對子層級,假設對應的 (縮放) 矩形或方塊也會遭到變更。 在呼叫 IDirect3DCubeTexture9::LockRect時,系統會自動記錄未D3DLOCK_NO_DIRTY_UPDATE或D3DLOCK_READONLYIDirect3DDevice9::UpdateSurface的目的地介面也會自動標示為已變更。

使用 D3DLOCK_NO_DIRTY_UPDATE 並明確指定已變更的區域,可用來提升 IDirect3DDevice9::UpdateTexture的效率。 使用此方法,應用程式可以藉由在資源上指定已變更的區域,將資源子集複製的子集優化。 不過,可能會擴充已變更的區域,以優化對齊方式。

需求

   
目標平台 Windows
標頭 d3d9helper.h (包含 D3D9.h)
程式庫 D3D9.lib

另請參閱

IDirect3DCubeTexture9

IDirect3DCubeTexture9::GetLevelDesc

IDirect3DCubeTexture9::LockRect

IDirect3DCubeTexture9::UnlockRect