Share via


IDirect3DCubeTexture9::LockRect

キューブ テクスチャー リソース上の矩形をロックします。

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

パラメータ

  • FaceType
    D3DCUBEMAP_FACES 列挙型のメンバー。キューブ マップの面を識別します。
  • Level
    ミップマップ キューブ テクスチャーのレベルを指定します。
  • pLockedRect
    ロックする領域を表す D3DLOCKED_RECT 構造体へのポインターです。
  • pRect
    ロックする矩形へのポインター。RECT 構造体へのポインターにより指定されます。このパラメーターに NULL を指定すると、キューブ テクスチャー全体を覆うようにダーティ領域が拡大します。
  • Flags
    実行するロックのタイプを指定する、0 個以上のロッキング フラグの組み合わせ。このメソッドに使用できるフラグを次に示します。
    • D3DLOCK_DISCARD
    • D3DLOCK_NO_DIRTY_UPDATE
    • D3DLOCK_NOSYSLOCK
    • D3DLOCK_READONLY D3DLOCK_DISCARD を使用するときに対象を指定することはできません。フラグについては、「D3DLOCK」を参照してください。

戻り値

メソッドが成功した場合は、D3D_OK を返します。1 つ以上の引数が無効な場合は、D3DERR_INVALIDCALL が返されます。

解説 

パフォーマンス上の理由から、ダーティ領域はレベル ゼロのテクスチャーについてのみ記録されます。D3DLOCK_NO_DIRTY_UPDATE または D3DLOCK_READONLY なしで IDirect3DCubeTexture9::LockRect を呼び出した場合、ダーティ領域も自動的に記録されます。詳細については、「IDirect3DDevice9::UpdateTexture」を参照してください。

D3DPOOL_DEFAULT を使用して作成されたキューブ テクスチャーはロック可能ではありません。ビデオ メモリーで作成されたキューブ テクスチャーは、USAGE_DYNAMIC を使用して作成された場合、ロック可能です。

深度ステンシル テクスチャーでロック可能な唯一のフォーマットは、D3DFMT_D16_LOCKABLE です。

要件

ヘッダー: D3D9.h 宣言

ライブラリ: D3D9.lib 内容

関連項目

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