IDirect3DCubeTexture9::LockRect 方法 (d3d9.h)

锁定立方体纹理资源上的矩形。

语法

HRESULT LockRect(
  [in]  D3DCUBEMAP_FACES FaceType,
  [in]  UINT             Level,
  [out] D3DLOCKED_RECT   *pLockedRect,
  [in]  const RECT       *pRect,
  [in]  DWORD            Flags
);

参数

[in] FaceType

类型: D3DCUBEMAP_FACES

D3DCUBEMAP_FACES枚举类型的成员,用于标识多维数据集映射面。

[in] Level

类型: UINT

指定被误贴的立方体纹理的级别。

[out] pLockedRect

类型: D3DLOCKED_RECT*

指向 D3DLOCKED_RECT 结构的指针,描述要锁定的区域。

[in] pRect

类型: const RECT*

指向要锁定的矩形的指针。 由指向 RECT 结构的指针指定。 为此参数指定 NULL 会扩展脏区域以覆盖整个立方体纹理。

[in] Flags

类型: DWORD

描述要执行的锁类型的零个或多个锁定标志的组合。 对于此方法,有效标志为:

  • D3DLOCK_DISCARD
  • D3DLOCK_NO_DIRTY_UPDATE
  • D3DLOCK_NOSYSLOCK
  • D3DLOCK_READONLY
使用 D3DLOCK_DISCARD 时,不得指定子项。 有关标志的说明,请参阅 D3DLOCK

返回值

类型: HRESULT

如果该方法成功,则返回值D3D_OK。 如果一个或多个参数无效,则返回D3DERR_INVALIDCALL。

备注

出于性能原因,仅针对纹理的零级记录脏区域。 在不D3DLOCK_NO_DIRTY_UPDATE或D3DLOCK_READONLY的情况下调用 IDirect3DCubeTexture9::LockRect 时,会自动记录脏区域。 有关详细信息,请参阅 IDirect3DDevice9::UpdateTexture

使用D3DPOOL_DEFAULT创建的立方体纹理不可锁定。 使用 USAGE_DYNAMIC 创建视频内存中创建的立方体纹理可锁定。

深度模具纹理的唯一可锁定格式是 D3DFMT_D16_LOCKABLE

要求

   
目标平台 Windows
标头 d3d9.h (包括 D3D9.h)
Library D3D9.lib

请参阅

IDirect3DCubeTexture9

IDirect3DCubeTexture9::AddDirtyRect

IDirect3DCubeTexture9::GetLevelDesc

IDirect3DCubeTexture9::UnlockRect