Microsoft DirectX 8.0 (Visual Basic)

サーフェスへのコピー

Direct3DDevice8.CopyRects メソッドを使用するときは、転送元サーフェス上の矩形の配列または Nothing を渡して、サーフェス全体を指定する。また、転送元イメージの各矩形の左上隅がコピーされる転送先サーフェス上のポイントの配列を渡す。ByVal 0 を渡して、転送元と同じ左上隅を持つ矩形をコピーすることができる。このメソッドはクリッピングをサポートしていない。すべての転送元矩形および対応する転送先矩形が、それぞれ転送元および転送先サーフェス内に完全に含まれていない場合には、このメソッドが失敗する。このメソッドは、アルファ ブレンディング、カラー キー、およびフォーマット変換はサポートしていない。転送元サーフェスと転送先サーフェスは異ならなければならない点に注意すること。

CopyRects の例

次に示す例では、2 つの矩形が転送元サーフェスから転送先サーフェスにコピーされる。最初の矩形は、転送元サーフェス上の (0, 0, 50, 50) から転送先サーフェス上の同じ位置にコピーされ、2 番目の矩形は、転送元サーフェス上の (50, 50, 100, 100) から転送先サーフェス上の (150 ,150, 200, 200) にコピーされる。

'このコードでは、
'-d3dDevice は有効な IDirect3DDevice8 オブジェクトであり、
'-Source と Dest は有効な Direct3DSurface8 オブジェクトであると仮定している。

Dim rcSource(1) As RECT
Dim ptDest(1) As Point

rcSource(0).left = 0
rcSource(0).top = 0
rcSource(0).right= 0
rcSource(0).bottom = 0

rcSource(1).left = 50
rcSource(1).top = 50
rcSource(1).right = 100
rcSource(1).bottom = 100

ptDest(0).x = 0
ptDest(0).y = 0

ptDest(1).x = 150
ptDest(1).y = 150

d3dDevice.CopyRects Source, rcSource, 2, Dest, ptDest

Microsoft® Visual Basic® では、Microsoft Direct3D® サーフェスにイメージをコピーする場合に、次のメソッドも使用できる。