?/TD>
Microsoft DirectX 9.0

IDirect3DCubeTexture9::LockRect Method


Locks a rectangle on a cube texture resource.

Syntax

HRESULT LockRect(      

    D3DCUBEMAP_FACES FaceType,     UINT Level,     D3DLOCKED_RECT *pLockedRect,     CONST RECT *pRect,     DWORD Flags );

Parameters

FaceType
[in] Member of the D3DCUBEMAP_FACES enumerated type, identifying a cube map face.
Level
[in] Specifies a level of a mipmapped cube texture.
pLockedRect
[out] Pointer to a D3DLOCKED_RECT structure, describing the region to lock.
pRect
[in] Pointer to a rectangle to lock. Specified by a pointer to a RECT structure. Specifying NULL for this parameter expands the dirty region to cover the entire cube texture.
Flags
[in] Combination of zero or more locking flags that describe the type of lock to perform. For this method, the valid flags are:
  • D3DLOCK_DISCARD
  • D3DLOCK_NO_DIRTY_UPDATE
  • D3DLOCK_NO_SYSLOCK
  • D3DLOCK_READONLY

For a description of the flags, see D3DLOCK.

Return Value

If the method succeeds, the return value is D3D_OK.

D3DERR_INVALIDCALL is returned if one or more of the arguments is invalid.



Remarks

For performance reasons, dirty regions are only recorded for level zero of a texture. Dirty regions are automatically recorded when IDirect3DCubeTexture9::LockRect is called without D3DLOCK_NO_DIRTY_UPDATE or D3DLOCK_READONLY. See IDirect3DDevice9::UpdateTexture for more information.

Cube textures created with D3DPOOL_DEFAULT are not lockable. Cube textures created in video memory are lockable when created with USAGE_DYNAMIC. For more information about usages, see D3DUSAGE.

The only lockable format for a depth-stencil texture is D3DFMT_D16_LOCKABLE.

See Also

IDirect3DCubeTexture9::AddDirtyRect, IDirect3DCubeTexture9::GetLevelDesc, IDirect3DCubeTexture9::UnlockRect


© 2002 Microsoft Corporation. All rights reserved.