D3DXLoadSurfaceFromMemory

メモリーからサーフェスをロードします。

HRESULT 
D3DXLoadSurfaceFromMemory(
  LPDIRECT3DSURFACE9 pDestSurface,
  CONST PALETTEENTRY * pDestPalette,
  CONST RECT * pDestRect,
  LPCVOID pSrcMemory,
  D3DFORMAT SrcFormat,
  UINT SrcPitch,
  CONST PALETTEENTRY * pSrcPalette,
  CONST RECT * pSrcRect,
  DWORD Filter,
  D3DCOLOR ColorKey
);

パラメータ

  • pDestSurface
    IDirect3DSurface9 インターフェイスへのポインターです。イメージを受け取る転送先サーフェスを指定します。
  • pDestPalette
    転送先の 256 色パレットである PALETTEENTRY 構造体へのポインター、または NULL です。
  • pDestRect
    RECT 構造体へのポインターです。転送元の矩形を指定します。サーフェス全体を指定する場合は、このパラメーターを NULL にします。
  • pSrcMemory
    メモリー内にあるソース イメージの左上隅へのポインター
  • SrcFormat
    D3DFORMAT 列挙型のメンバーです。ソース イメージのピクセル フォーマットを指定します。
  • SrcPitch
    ソース イメージのピッチ (バイト単位)。DXT フォーマットの場合、この数値にはセルの 1 行の幅をバイト単位で指定します。
  • 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 以外のレベルのサーフェスに書き込んだ場合、ダーティ矩形は更新されません。D3DXLoadSurfaceFromMemory が呼び出されサーフェスがまだダーティでない場合 (通常の使用方法では起こり得ません)、アプリケーションはサーフェス上で明示的に IDirect3DTexture9::AddDirtyRect を呼び出す必要があります。

要件

ヘッダー: D3dx9tex.h 宣言

ライブラリ: D3dx9.lib 内容

関連項目

D3DX 9 のテクスチャー関数