D3DXLoadSurfaceFromFile 函式

從檔案載入表面。

語法

HRESULT D3DXLoadSurfaceFromFile(
  _In_          LPDIRECT3DSURFACE9 pDestSurface,
  _In_    const PALETTEENTRY       *pDestPalette,
  _In_    const RECT               *pDestRect,
  _In_          LPCTSTR            pSrcFile,
  _In_    const RECT               *pSrcRect,
  _In_          DWORD              Filter,
  _In_          D3DCOLOR           ColorKey,
  _Inout_       D3DXIMAGE_INFO     *pSrcInfo
);

參數

pDestSurface [in]

類型: LPDIRECT3DSURFACE9

IDirect3DSurface9介面的指標。 指定接收影像的目的地介面。

pDestPalette [in]

類型:const PALETTEENTRY*

PALETTEENTRY結構的指標,目的地調色盤為 256 種色彩或Null

pDestRect [in]

類型:const RECT*

RECT結構的指標。 指定目的矩形。 將此參數設定為 Null 以指定整個表面。

pSrcFile [in]

類型: LPCTSTR

指定檔案名的字串指標。 如果編譯器設定需要 Unicode,LPCTSTR 資料類型會解析為 LPCWSTR。 否則,字串資料類型會解析為 LPCSTR。 請參閱<備註>。

pSrcRect [in]

類型:const RECT*

RECT結構的指標。 指定來源矩形。 將此參數設定為 Null ,以指定整個映射。

篩選 [in]

類型: DWORD

一或多個 D3DX_FILTER 控制影像篩選方式的組合。 為此參數指定D3DX_DEFAULT相當於指定D3DX_FILTER_TRIANGLE |D3DX_FILTER_DITHER。

ColorKey [in]

類型: D3DCOLOR

要以透明黑色取代的D3DCOLOR值,或以 0 取代色彩機碼。 這一律是 32 位 ARGB 色彩,與來源影像格式無關。 Alpha 很重要,而且通常應該針對不透明色彩索引鍵設定為 FF。因此,對於不透明黑色,值會等於0xFF000000。

pSrcInfo [in, out]

類型: D3DXIMAGE_INFO*

要填入來源影像檔或Null中資料描述之D3DXIMAGE_INFO結構的指標。

傳回值

類型: HRESULT

如果函式成功,傳回值會D3D_OK。 如果函式失敗,傳回值可以是下列其中一個值:D3DERR_INVALIDCALL,D3DXERR_INVALIDDATA。

備註

編譯器設定也會決定函式版本。 如果定義 Unicode,函式呼叫會解析為 D3DXLoadSurfaceFromFileW。 否則,函式呼叫會解析為 D3DXLoadSurfaceFromFileA,因為正在使用 ANSI 字串。

此函式會處理與壓縮紋理格式之間的轉換,並支援下列檔案格式:.bmp、.dds、.dib、.hdr、.jpg、.pfm、.png、.ppm 和 .tga。 請參閱 D3DXIMAGE_FILEFORMAT

寫入至非層級零表面並不會更新已變更的矩形。 如果呼叫 D3DXLoadSurfaceFromFile ,而且介面尚未變更 (在正常使用案例中不太可能) ,應用程式必須在介面上明確呼叫 AddDirtyRect

規格需求

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

另請參閱

D3DX 9 中的紋理函式