D3DXLoadSurfaceFromSurface
別のサーフェスからサーフェスをロードし、さらにカラーを変換します。
HRESULT
D3DXLoadSurfaceFromSurface(
LPDIRECT3DSURFACE9 pDestSurface,
CONST PALETTEENTRY * pDestPalette,
CONST RECT * pDestRect,
LPDIRECT3DSURFACE9 pSrcSurface,
CONST PALETTEENTRY * pSrcPalette,
CONST RECT * pSrcRect,
DWORD Filter,
D3DCOLOR ColorKey
);
パラメータ
- pDestSurface
IDirect3DSurface9 インターフェイスへのポインターです。イメージを受け取る転送先サーフェスを指定します。 - pDestPalette
転送先の 256 色パレットである PALETTEENTRY 構造体へのポインター、または NULL です。 - pDestRect
RECT 構造体へのポインターです。転送元の矩形を指定します。サーフェス全体を指定する場合は、このパラメーターを NULL にします。 - pSrcSurface
ソース サーフェスを表す IDirect3DSurface9 インターフェイスへのポインターです。 - pSrcPalette
転送元の 256 色パレットである PALETTEENTRY 構造体へのポインター、または NULL です。 - pSrcRect
RECT 構造体へのポインターです。転送元の矩形を指定します。サーフェス全体を指定する場合は、このパラメーターを NULL にします。 - Filter
イメージのフィルタリング方法を指定する、1 つ以上の D3DX_FILTER の組み合わせです。このパラメーターに D3DX_DEFAULT を指定すると、D3DX_FILTER_TRIANGLE | D3DX_FILTER_DITHER を指定したのと同じ結果になります。 - ColorKey
透明な黒と置き換える D3DCOLOR 値、またはカラーキーを無効にする 0 を指定します。この値は、元のイメージのフォーマットに関係なく常に 32 ビットの ARGB カラーになります。最上位にはアルファ値を指定します。カラー キーを不透明にする場合には FF に設定します。したがって、不透明な黒の場合には、値が 0xFF000000 になります。
戻り値
成功すると、D3D_OK を返します。失敗した場合は、次の戻り値のいずれかを返します。D3DERR_INVALIDCALL と D3DXERR_INVALIDDATA のいずれかです。
解説
この関数は、圧縮されたテクスチャー フォーマット間の変換を処理します。
0 以外のレベルのサーフェスに書き込んだ場合、ダーティ矩形は更新されません。D3DXLoadSurfaceFromSurface が呼び出されサーフェスがまだダーティでない場合 (通常の使用方法では起こり得ません)、アプリケーションはサーフェス上で明示的に IDirect3DTexture9::AddDirtyRect を呼び出す必要があります。
要件
ヘッダー: D3dx9tex.h 宣言
ライブラリ: D3dx9.lib 内容