次の方法で共有


IDirect3DTexture9::AddDirtyRect

ダーティ領域をテクスチャー リソースに追加します。

HRESULT 
AddDirtyRect(
  CONST RECT * pDirtyRect
);

パラメータ

  • pDirtyRect
    追加するダーティ領域を指定する RECT 構造体へのポインター。NULL を指定すると、テクスチャー全体を覆うダーティ領域となります。

戻り値

メソッドが成功した場合は、D3D_OK を返します。失敗した場合は、D3DERR_INVALIDCALL を返します。

解説 

パフォーマンス上の理由から、ダーティ領域はレベル ゼロのテクスチャーについてのみ記録されます。サブレベルの場合、対応する (倍率設定された) 矩形またはボックスもダーティであることを前提としています。D3DLOCK_NO_DIRTY_UPDATE または D3DLOCK_READONLY なしで IDirect3DTexture9::LockRect を呼び出した場合、ダーティ領域も自動的に記録されます。IDirect3DDevice9::UpdateSurface の処理後のサーフェスも自動的にダーティとしてマークされます。

D3DLOCK_NO_DIRTY_UPDATE を使用し、ダーティ領域を明示的に指定することで、IDirect3DDevice9::UpdateTexture の効率を高めることもできます。このメソッドを使用することで、リソース上のダーティ領域を指定してコピーされるリソースのサブセットを最適化できます。ただし、ダーティ領域を展開してアライメントを最適化できます。

要件

ヘッダー: D3D9.h 宣言

ライブラリ: D3D9.lib 内容