IDirect3DCubeTexture9::LockRect メソッド

IDirect3DCubeTexture9::LockRect メソッド

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

構文

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

パラメータ

  • FaceType
    [in] D3DCUBEMAP_FACES 列挙型のメンバ。 キューブ マップ サーフェイスを識別する。

  • Level
    [in] ミップマップ化キューブ テクスチャのレベルを指定する。

  • pLockedRect
    [out] ロックする領域を記述する D3DLOCKED_RECT 構造体へのポインタ。

  • pRect
    [in] ロックする矩形へのポインタ。RECT 構造体へのポインタで指定される。このパラメータに NULL を指定すると、キューブ テクスチャ全体を覆うようにダーティー領域が拡大する。

  • Flags
    [in] 実行するロックのタイプを記述する、0 個以上のロッキング フラグの組み合わせ。このメソッドに使えるフラグは次のとおり。

    • D3DLOCK_DISCARD
    • D3DLOCK_NO_DIRTY_UPDATE
    • D3DLOCK_NO_SYSLOCK
    • D3DLOCK_READONLY

    フラグについては、「D3DLOCK」を参照すること。

戻り値

成功した場合は、D3D_OK を返す。

引数の 1 つまたは複数が無効な場合は、D3DERR_INVALIDCALL を返す。

注意

パフォーマンス上の理由から、ダーティー領域はテクスチャのレベル 0 についてのみ記録する。D3DLOCK_NO_DIRTY_UPDATE または D3DLOCK_READONLY を指定せずに IDirect3DCubeTexture9::LockRect を呼び出すと、ダーティー領域が自動的に記録される。詳細については「IDirect3DDevice9::UpdateTexture」を参照すること。

D3DPOOL_DEFAULT を指定して作成したキューブ テクスチャはロックできない。ビデオ メモリで作成したキューブ テクスチャは、USAGE_DYNAMIC を指定して作成した場合はロックできる。使用方法の詳細については、「D3DUSAGE」を参照すること。

深度ステンシル テクスチャのロック可能なフォーマットは、D3DFMT_D16_LOCKABLE だけである。

参照

IDirect3DCubeTexture9::AddDirtyRectIDirect3DCubeTexture9::GetLevelDescIDirect3DCubeTexture9::UnlockRect