D3DXLoadSurfaceFromResource 関数

D3DXLoadSurfaceFromResource 関数

リソースからサーフェイスをロードする。

構文

HRESULT D3DXLoadSurfaceFromResource(      
    LPDIRECT3DSURFACE9 pDestSurface,
    const PALETTEENTRY *pDestPalette,
    const RECT *pDestRect,
    HMODULE hSrcModule,
    LPCTSTR pSrcResource,
    const RECT *pSrcRect,
    DWORD Filter,
    D3DCOLOR ColorKey,
    D3DXIMAGE_INFO *pSrcInfo
);

パラメータ

  • pDestSurface
    [in] IDirect3DSurface9 インターフェイスへのポインタ。転送先のサーフェイスを指定する。このサーフェイスがイメージを受け取る。
  • pDestPalette
    [in] 256 色の転送先パレットである PALETTEENTRY 構造体へのポインタ、または NULL。
  • pDestRect
    [in] RECT 構造体へのポインタ。転送先矩形を指定する。このパラメータに NULL を設定して、サーフェイス全体を指定する。
  • hSrcModule
    [in] リソースを特定しているモジュールへのハンドル。または、オペレーティング システムが現在のプロセスに使うイメージに関連付けられているモジュールの場合は NULL。
  • pSrcResource
    [in] リソース名を指定する文字列へのポインタ。コンパイラの設定が Unicode を要求している場合、データ タイプ LPCTSTR は LPCWSTR になる。それ以外の場合は、この文字列のデータ タイプは LPCSTR になる。「注意」を参照すること。
  • pSrcRect
    [in] RECT 構造体へのポインタ。転送元矩形を指定する。このパラメータに NULL を設定して、イメージ全体を指定する。
  • Filter
    [in] イメージをフィルタリングする方法を制御する 1 つあるいは複数の D3DX_FILTER の組み合わせ。このパラメータに D3DX_DEFAULT を指定することは、D3DX_FILTER_TRIANGLE | D3DX_FILTER_DITHER を指定することと等しい。
  • ColorKey
    [in] 透明となる D3DCOLOR の値。カラー キーを無効にする場合は 0 を指定する。ソース イメージのフォーマットとは関係なく、これは常に 32 ビットの ARGB カラーである。アルファが有意であり、通常はカラー キーを不透明にする場合は FF を指定する。したがって、不透明な黒の場合、値は 0xFF000000 となる。
  • pSrcInfo
    [in, out] ソース イメージ ファイル内のデータの記述を格納する D3DXIMAGE_INFO 構造体へのポインタ、または NULL。

戻り値

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

失敗した場合は、次のいずれかの値を返す。

D3DERR_INVALIDCALL メソッドの呼び出しが無効である。たとえば、メソッドのパラメータに無効な値が設定されている場合などである。
D3DXERR_INVALIDDATA データが無効である。

注意

コンパイラの設定によって関数のバージョンも決まる。Unicode が定義されている場合、この関数の呼び出しは D3DXLoadSurfaceFromResourceW になる。それ以外の場合は ANSI 文字列を使うので、この関数の呼び出しは D3DXLoadSurfaceFromResourceA になる。

ロードするリソースは、リソース タイプが RT_BITMAP または RT_RCDATA でなければならない。ビットマップ以外のフォーマット (.tga、.jpg、.dds など) をロードする場合は、リソース タイプ RT_RCDATA を使う。

この関数は、圧縮テクスチャ フォーマット間の変換を処理する。

レベル ゼロ以外のサーフェイスに書き込んでも、ダーティー矩形は更新されない。D3DXLoadSurfaceFromFile を呼び出したときに、サーフェイスがまだダーティーでない (そのようなことは、通常の使用方法ではあり得ない) 場合、アプリケーションはサーフェイスに対して IDirect3DTexture9::AddDirtyRect を明示的に呼び出す必要がある。

関数の情報

ヘッダー d3dx9tex.h
インポート ライブラリ d3dx9.lib
最低限のオペレーティング システム Windows 98

参照

テクスチャの色変換