次の方法で共有


サーフェスへのコピー (Direct3D 9)

IDirect3DDevice9::UpdateSurface を使用する場合は、ソースサーフェスに四角形を渡すか、NULL を使用してサーフェス全体を指定します。 また、ソース イメージ上の四角形の左上の位置がコピーされる宛先サーフェス上のポイントも渡します。 このメソッドはクリッピングをサポートしていません。 ソース四角形と対応する変換先の四角形がそれぞれソースサーフェスとターゲットサーフェス内に完全に含まれている場合を除き、操作は失敗します。 このメソッドでは、アルファ ブレンド、カラー キー、書式変換はサポートされていません。 変換先サーフェスとソース サーフェスは個別である必要があることに注意してください。

UpdateSurface を使用する場合のその他の制限については、「 IDirect3DDevice9::UpdateSurface」を参照してください。

次のメソッドは、イメージを Direct3D サーフェスにコピーするために C++/C でも使用できます。

UpdateSurface の例

次の使用例は、ソース サーフェスからコピー先サーフェスに 2 つの四角形をコピーします。 最初の四角形は、ソース サーフェス上の (0,0, 50, 50) からコピー先サーフェス上の同じ場所にコピーされ、2 番目の四角形はソース サーフェス上の (50, 50, 100, 100, 100) からコピー先サーフェス上の (150, 150, 200, 200) にコピーされます。

//The following assumptions are made:
// -d3dDevice is a valid Direct3DDevice9 object.
// -pSource and pDest are valid IDirect3DSurface9 pointers.

RECT  rcSource[] = {  0,  0,  50,  50,
                     50, 50, 100, 100 };
POINT ptDest[]   = {  0,  0, 150, 150 };

d3dDevice->UpdateSurface( pSource, rcSource, 2, pDest, ptDest);

Direct3D サーフェス

IDirect3DDevice9::StretchRect