IDirect3DCubeTexture9::AddDirtyRect method (d3d9.h)

Adds a dirty region to a cube texture resource.

Syntax

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

Parameters

[in] FaceType

Type: D3DCUBEMAP_FACES

Member of the D3DCUBEMAP_FACES enumerated type, identifying the cube map face.

[in] pDirtyRect

Type: const RECT*

Pointer to a RECT structure, specifying the dirty region. Specifying NULL expands the dirty region to cover the entire cube texture.

Return value

Type: HRESULT

If the method succeeds, the return value is D3D_OK. If the method fails, the return value can be: D3DERR_INVALIDCALL.

Remarks

For performance reasons, dirty regions are only recorded for level zero of a texture. For sublevels, it is assumed that the corresponding (scaled) rectangle or box is also dirty. Dirty regions are automatically recorded when IDirect3DCubeTexture9::LockRect is called without D3DLOCK_NO_DIRTY_UPDATE or D3DLOCK_READONLY. The destination surface of IDirect3DDevice9::UpdateSurface is also marked dirty automatically.

Using D3DLOCK_NO_DIRTY_UPDATE and explicitly specifying dirty regions can be used to increase the efficiency of IDirect3DDevice9::UpdateTexture. Using this method, applications can optimize what subset of a resource is copied by specifying dirty regions on the resource. However, the dirty regions may be expanded to optimize alignment.

Requirements

Requirement Value
Target Platform Windows
Header d3d9.h (include D3D9.h)
Library D3D9.lib

See also

IDirect3DCubeTexture9

IDirect3DCubeTexture9::GetLevelDesc

IDirect3DCubeTexture9::LockRect

IDirect3DCubeTexture9::UnlockRect