IDirect3DVolumeTexture8::LockBox
ボリューム テクスチャ リソース上のボックスをロックする。
HRESULT LockBox(
UINT Level,
D3DLOCKED_BOX* pLockedVolume,
CONST D3DBOX* pBox,
DWORD Flags
);
パラメータ
- Level
- [in] ロックするボリューム テクスチャ リソースのレベルを指定する。
- pLockedVolume
- [out] ロックされた領域を記述する D3DLOCKED_BOX 構造体へのポインタ。
- pBox
- [in] ロックするボリュームへのポインタ。このパラメータは、D3DBOX 構造体へのポインタで指定される。このパラメータに NULL を指定すると、ボリューム レベル全体がロックされる。
- Flags
- [in] 実行するロックのタイプを記述する、0 個以上のロッキング フラグの組み合わせ。
- D3DLOCK_NO_DIRTY_UPDATE
- デフォルトでは、リソースのロックはダーティー領域をそのリソースに追加する。このフラグは、リソースのダーティー状態への変更を防ぐ。アプリケーションは、ロック処理の間に変更される実際のボリューム セットについての追加情報を保持していて、その情報を IDirect3DVolumeTexture8::AddDirtyBox に渡すことができるときは、このフラグを使用しなければならない。
- D3DLOCK_NOSYSLOCK
- ビデオ メモリ ロックのデフォルトの動作は、システムのクリティカル セクションを確保することで、ロック中にディスプレイ モードの変更が行われないことを保証する。このフラグは、システムワイドなクリティカル セクションがロックの間保持されないようにする。
ロック処理は若干負荷が高くなるが、マウス カーソルの移動など、システムでほかの処理を実行することが可能になる。このフラグは、ソフトウェア レンダリングのバックバッファのロックのように、ロックが長時間に及び、システムの応答性に悪影響を与えてしまうようなロックに対して有効である。
- D3DLOCK_READONLY
- アプリケーションはバッファに書き込みを行わない。これによって、ネイティブでないフォーマットで格納されたリソースが、アンロック時に再圧縮手順を保存できる。
戻り値
成功した場合は、D3D_OK を返す。
失敗した場合は、D3DERR_INVALIDCALL を返す。
注意
パフォーマンスの理由によって、ダーティーな範囲はテクスチャのレベル ゼロに対して記録されるのみである。D3DLOCK_NO_DIRTY_UPDATE または D3DLOCK_READONLY なしで LockRect か LockBox が呼び出されたとき、ダーティーな範囲は自動的に記録される。詳細については、「IDirect3DDevice8::UpdateTexture」を参照すること。
ヘッダー : d3d8.h で宣言。
インポート ライブラリ : D3d8.lib を使用。
参照
IDirect3DVolumeTexture8::UnlockBox