Microsoft DirectX 8.0 (C++)

IDirect3DDevice8::CopyRects

あるサーフェスから別のサーフェスに、ピクセルの矩形サブセットをコピーする。

HRESULT CopyRects(
  IDirect3DSurface8* pSourceSurface,
  CONST RECT* pSourceRectsArray,
  UINT cRects,
  IDirect3DSurface8* pDestinationSurface,
  CONST POINT* pDestPointsArray
);

パラメータ

pSourceSurface
[in] 転送元サーフェスを表す IDirect3DSurface8 インターフェイスへのポインタ。このパラメータは、pDestinationSurface と異なるサーフェスを示していなければならない。
pSourceRectsArray
[in] RECT 構造体の配列へのポインタ。転送する矩形を表している。各矩形は転送先のサーフェスに転送されて、矩形の左上角は pDestPointsArray の対応する要素で示されている位置になる。このパラメータに NULL を指定すると、サーフェス全体がコピーされる。
cRects
[in] pSourceRectsArray に格納されている RECT 構造体の数。
pDestinationSurface
[in] 転送先サーフェスを表す IDirect3DSurface8 インターフェイスへのポインタ。このパラメータは、pSourceSurface と異なるサーフェスを示していなければならない。
pDestPointsArray
[in] POINT 構造体の配列へのポインタ。pSourceRectsArray に格納されている各矩形の左上角の位置を示す。このパラメータが NULL の場合、RECT の矩形は転送元の矩形と同じオフセット (左上角の位置が同じ) にコピーされる。

戻り値

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

失敗した場合は、D3DERR_INVALIDCALL を返す。

注意

このメソッドは、拡大、カラー キー、アルファ ブレンド、フォーマット変換、および転送元または転送先矩形のいずれかのクリッピングをサポートしていない。すべての転送元矩形および対応する転送先矩形が、それぞれ転送元および転送先サーフェス内に完全に含まれていない場合には、このメソッドが失敗することに注意する。2 つのサーフェスのフォーマットは一致していなければならないが、サイズは異なっていてもかまわない。

サーフェスのフォーマットが深度ステンシル フォーマットの場合、このメソッドは適用できない。

POINT 構造体では、左上角の x 座標と y 座標を定義する。POINT の詳細については、Microsoft® Platform Software Development Kit (SDK) を参照すること。

宛先サーフェスがテクスチャのレベルゼロなら、それはダーティーとマークされる。詳細については、「IDirect3DDevice8::UpdateTexture」および「IDirect3DTexture8::AddDirtyRect」を参照すること。

動作環境

  ヘッダー : d3d8.h で宣言。
  インポート ライブラリ : D3d8.lib を使用。