共用方式為


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。 否則,函式呼叫會解析為 D3DXCreateTextureFromFileA,因為正在使用 ANSI 字串。

此函式支援下列檔案格式:.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. 請考慮使用 DirectDraw surface (DDS) 檔案。 因為 DDS 檔案可以用來代表任何 Direct3D 9 紋理格式,所以 D3DX 很容易讀取。 此外,它們可以儲存 mipmap,因此任何 mipmap 產生演算法都可以用來撰寫影像。

規格需求

需求
標頭
D3dx9tex.h
程式庫
D3dx9.lib

另請參閱

D3DXCreateTextureFromFileEx

D3DX 9 中的紋理函式