D3DXCreateVolumeTextureFromResourceEx 函式

從字串所指定的資源建立磁片區紋理。 這是比 D3DXCreateVolumeTextureFromResource更進階的函式。

語法

HRESULT D3DXCreateVolumeTextureFromResourceEx(
  _In_    LPDIRECT3DDEVICE9        pDevice,
  _In_    HMODULE                  hSrcModule,
  _In_    LPCTSTR                  pSrcResource,
  _In_    UINT                     Width,
  _In_    UINT                     Height,
  _In_    UINT                     Depth,
  _In_    UINT                     MipLevels,
  _In_    DWORD                    Usage,
  _In_    D3DFORMAT                Format,
  _In_    D3DPOOL                  Pool,
  _In_    DWORD                    Filter,
  _In_    DWORD                    MipFilter,
  _In_    D3DCOLOR                 ColorKey,
  _Inout_ D3DXIMAGE_INFO           *pSrcInfo,
  _Out_   PALETTEENTRY             *pPalette,
  _Out_   LPDIRECT3DVOLUMETEXTURE9 *ppVolumeTexture
);

參數

pDevice [in]

類型: LPDIRECT3DDEVICE9

IDirect3DDevice9介面的指標,代表要與紋理相關聯的裝置。

hSrcModule [in]

類型: HMODULE

處理資源所在的模組,或針對與作業系統用來建立目前進程之映射相關聯的模組 Null

pSrcResource [in]

類型: LPCTSTR

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

寬度 [in]

類型: UINT

以圖元為單位的寬度。 如果此值為零或D3DX_DEFAULT,則會從檔案取得維度。 驅動程式支援寬度、高度和深度) (的最大維度,可以在 D3DCAPS9的 MaxVolumeExtent 中找到。

高度 [in]

類型: UINT

高度,以圖元為單位。 如果此值為零或D3DX_DEFAULT,則會從檔案取得維度。 驅動程式支援寬度、高度和深度) (的最大維度,可以在 D3DCAPS9的 MaxVolumeExtent 中找到。

深度 [in]

類型: UINT

深度,以圖元為單位。 如果此值為零或D3DX_DEFAULT,則會從檔案取得維度。 驅動程式支援寬度、高度和深度) (的最大維度,可以在 D3DCAPS9的 MaxVolumeExtent 中找到。

MipLevels [in]

類型: UINT

要求的 Mip 層級數目。 如果此值為零或D3DX_DEFAULT,則會建立完整的 mipmap 鏈結。

使用量 [in]

類型: DWORD

0、D3DUSAGE_RENDERTARGET或D3DUSAGE_DYNAMIC。 將此旗標設定為 D3DUSAGE_RENDERTARGET 表示表面要當做轉譯目標使用。 然後,資源可以傳遞至SetRenderTarget 方法的 pNewRenderTarget參數。 如果指定D3DUSAGE_RENDERTARGET或D3DUSAGE_DYNAMIC, 則 Pool 必須設定為 D3DPOOL_DEFAULT,而且應用程式應該呼叫 CheckDeviceFormat來檢查裝置是否支援此作業。 D3DUSAGE_DYNAMIC表示應該動態處理介面。 如需使用動態紋理的詳細資訊,請參閱 使用動態紋理

格式 [in]

類型: D3DFORMAT

D3DFORMAT列舉型別的成員,描述紋理的要求像素格式。 傳回的紋理可能與 Format所指定的格式不同。 應用程式應該檢查傳回紋理的格式。 如果 D3DFMT_UNKNOWN,則會從檔案取得格式。 如果D3DFMT_FROM_FILE,格式會與檔案中的格式完全相同,而且如果這違反裝置功能,則呼叫將會失敗。

集區 [in]

類型: D3DPOOL

D3DPOOL列舉型別的成員,描述應該放置紋理的記憶體類別。

篩選 [in]

類型: DWORD

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

MipFilter [in]

類型: DWORD

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

ColorKey [in]

類型: D3DCOLOR

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

pSrcInfo [in, out]

類型: D3DXIMAGE_INFO*

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

pPalette [out]

類型: PALETTEENTRY*

PALETTEENTRY結構的指標,代表要填入的 256 色盤或Null

ppVolumeTexture [out]

類型: LPDIRECT3DVOLUMETEXTURE9*

代表所建立紋理物件的 IDirect3DVolumeTexture9 介面指標位址。

傳回值

類型: HRESULT

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

備註

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

正在載入的資源必須是應用程式定義的資源 (RT_RCDATA) 。

此函式支援下列檔案格式:.bmp、.dds、.dib、.hdr、.jpg、.pfm、.png、.ppm 和 .tga。 請參閱 D3DXIMAGE_FILEFORMAT

規格需求

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

另請參閱

D3DXCreateVolumeTextureFromFile

D3DXCreateVolumeTextureFromFileEx

D3DXCreateVolumeTextureFromFileInMemory

D3DXCreateVolumeTextureFromFileInMemoryEx

D3DXCreateVolumeTextureFromResource

D3DX 9 中的紋理函式