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
    IDirect3DSurface9 インターフェイスへのポインターです。イメージを受け取る転送先サーフェスを指定します。
  • pDestPalette
    転送先の 256 色パレットである PALETTEENTRY 構造体へのポインター、または NULL です。
  • pDestRect
    RECT 構造体へのポインターです。転送元の矩形を指定します。サーフェス全体を指定する場合は、このパラメーターを NULL にします。
  • hSrcModule
    リソースが存在するモジュールのハンドルです。現在のプロセスの作成に使用されたオペレーティング システムにイメージに関連付けられたモジュールの場合は、NULL です。
  • pSrcResource
    リソース名を指定する文字列へのポインターです。コンパイラーの設定で Unicode が必要な場合、データ型 LPCTSTR は LPCWSTR に解決されます。それ以外の場合、文字列データ型は LPCSTR に解決されます。「解説」を参照してください。
  • pSrcRect
    RECT 構造体へのポインターです。転送元の矩形を指定します。イメージ全体を指定する場合は、このパラメーターを NULL にします。
  • Filter
    イメージのフィルタリング方法を指定する、1 つ以上の D3DX_FILTER の組み合わせです。このパラメーターに D3DX_DEFAULT を指定すると、D3DX_FILTER_TRIANGLE | D3DX_FILTER_DITHER を指定したのと同じ結果になります。
  • ColorKey
    透明な黒と置き換える D3DCOLOR 値、またはカラーキーを無効にする 0 を指定します。この値は、元のイメージのフォーマットに関係なく常に 32 ビットの ARGB カラーになります。アルファが大きい状況でカラーキーを不透明にする場合は、FF で指定します。したがって、不透明な黒の場合、値は 0xFF000000 となります。
  • pSrcInfo
    ソース イメージ ファイル内のデータの記述を格納する D3DXIMAGE_INFO 構造体へのポインター、または NULL です。

戻り値

成功すると、D3D_OK を返します。失敗した場合は、次のいずれかの値を返します。D3DERR_INVALIDCALL と D3DXERR_INVALIDDATA のいずれかです。

解説 

コンパイラ設定により、関数のバージョンも決定されます。Unicode が定義されている場合、関数呼び出しは D3DXLoadSurfaceFromResourceW に解決されます。それ以外の場合は、ANSI 文字列が使用されるため、D3DXLoadSurfaceFromResourceA に解決されます。

ロードするリソースは、タイプ RT_BITMAP またはタイプ RT_RCDATA である必要があります。リソース タイプ RT_RCDATA は、ビットマップ (..tga、.jpg、.dds など) 以外のフォーマットのロードに使用されます。

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

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

要件

ヘッダー: D3dx9tex.h 宣言

ライブラリ: D3dx9.lib 内容

関連項目

D3DX 9 のテクスチャー関数