次の方法で共有


D3DXCreateTextureFromFile 関数

ファイルからテクスチャを作成します。

構文

HRESULT D3DXCreateTextureFromFile(
  _In_  LPDIRECT3DDEVICE9  pDevice,
  _In_  LPCTSTR            pSrcFile,
  _Out_ LPDIRECT3DTEXTURE9 *ppTexture
);

パラメーター

pDevice [in]

種類: LPDIRECT3DDEVICE9

テクスチャに関連付けるデバイスを表す IDirect3DDevice9 インターフェイスへのポインター。

pSrcFile [in]

種類: LPCTSTR

ファイル名を指定する文字列へのポインター。 コンパイラ設定で Unicode が必要な場合、データ型 LPCTSTR は LPCWSTR に解決されます。 それ以外の場合、文字列データ型は LPCSTR に解決されます。 「解説」を参照してください。

ppTexture [out]

種類: LPDIRECT3DTEXTURE9*

作成されたテクスチャ オブジェクトを表す IDirect3DTexture9 インターフェイスへのポインターのアドレス。

戻り値

型: HRESULT

関数が成功した場合、戻り値はD3D_OK。 関数が失敗した場合、戻り値は、D3DERR_NOTAVAILABLE、D3DERR_OUTOFVIDEOMEMORY、D3DERR_INVALIDCALL、D3DXERR_INVALIDDATA、E_OUTOFMEMORYのいずれかになります。

解説

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

この関数は、.bmp、.dds、.dib、.hdr、.jpg、.pfm、.png、.ppm、および .tga のファイル形式をサポートします。 「D3DXIMAGE_FILEFORMAT」を参照してください。

この関数は、D3DXCreateTextureFromFileEx(pDevice、pSrcFile、D3DX_DEFAULT、D3DX_DEFAULT、D3DX_DEFAULT、0、D3DFMT_UNKNOWN、D3DPOOL_MANAGED、D3DX_DEFAULT、D3DX_DEFAULT、0、 NULLNULL、ppTexture) と同じです。

Mipmapped テクスチャでは、読み込まれたテクスチャで各レベルが自動的に塗りつぶされます。

mipmapped テクスチャにイメージを読み込むと、一部のデバイスは 1x1 イメージに移動できず、この関数は失敗します。 このような場合は、イメージを手動で読み込む必要があります。

この関数で作成されたリソースは、D3DPOOL_MANAGEDで示されるメモリ クラスに配置されることに注意してください。

フィルター処理は、このメソッドを使用して作成されたテクスチャに自動的に適用されます。 フィルター処理は、D3DX_FILTER_TRIANGLE |D3DX_FILTERで D3DX_FILTER_DITHERします。

D3DXCreateTextureFromFile を使用する場合に最適なパフォーマンスを得るには、次のようにします。

  1. 読み込み時にイメージのスケーリングとフォーマット変換を行うと、時間がかかる場合があります。 画像は、使用される形式と解像度で保存します。 ターゲット ハードウェアに 2 次元の累乗が必要な場合は、2 次元の累乗を使用してイメージを作成して格納します。
  2. DirectDraw Surface (DDS) ファイルの使用を検討してください。 DDS ファイルは Direct3D 9 テクスチャ形式を表すために使用できるため、D3DX では非常に簡単に読み取ることができます。 また、ミップマップを格納できるため、mipmap 生成アルゴリズムを使用して画像を作成できます。

要件

要件
ヘッダー
D3dx9tex.h
ライブラリ
D3dx9.lib

関連項目

D3DXCreateTextureFromFileEx

D3DX 9 のテクスチャ関数