D3DXLoadVolumeFromMemory 函数

从内存加载卷。

语法

HRESULT D3DXLoadVolumeFromMemory(
  _In_       LPDIRECT3DVOLUME9 pDestVolume,
  _In_ const PALETTEENTRY      *pDestPalette,
  _In_ const D3DBOX            *pDestBox,
  _In_       LPCVOID           pSrcMemory,
  _In_       D3DFORMAT         SrcFormat,
  _In_       UINT              SrcRowPitch,
  _In_       UINT              SrcSlicePitch,
  _In_ const PALETTEENTRY      *pSrcPalette,
  _In_ const D3DBOX            *pSrcBox,
  _In_       DWORD             Filter,
  _In_       D3DCOLOR          ColorKey
);

参数

pDestVolume [in]

类型: LPDIRECT3DVOLUME9

指向 IDirect3DVolume9 接口的 指针。 指定接收映像的目标卷。

pDestPalette [in]

类型: const PALETTEENTRY*

指向 PALETTEENTRY 结构的指针,256 种颜色的目标调色板或 NULL

pDestBox [in]

类型: const D3DBOX*

指向 D3DBOX 结构的指针。 指定目标框。 将此参数设置为 NULL 可指定整个卷。

pSrcMemory [in]

类型: LPCVOID

指向内存中源卷左上角的指针。

SrcFormat [in]

类型: D3DFORMAT

D3DFORMAT 枚举类型的成员,源卷的像素格式。

SrcRowPitch [in]

类型: UINT

源图像的间距(以字节为单位)。 对于 (压缩纹理格式) 的 DXT 格式,此数字应表示一行单元格的大小(以字节为单位)。

SrcSlicePitch [in]

类型: UINT

源图像的间距(以字节为单位)。 对于) 压缩纹理格式 (DXT 格式,此数字应表示一个单元格切片的大小(以字节为单位)。

pSrcPalette [in]

类型: const PALETTEENTRY*

指向 PALETTEENTRY 结构的指针,该结构为 256 种颜色的源调色板或 NULL

pSrcBox [in]

类型: const D3DBOX*

指向 D3DBOX 结构的指针。 指定源框。 NULL 不是此参数的有效值。

筛选器 [in]

类型: DWORD

控制图像筛选方式的一个或多个 D3DX_FILTER 的组合。 为此参数指定D3DX_DEFAULT等效于指定D3DX_FILTER_TRIANGLE |D3DX_FILTER_DITHER。

ColorKey [in]

类型: D3DCOLOR

D3DCOLOR 值替换为透明黑色,或 0 表示禁用颜色键。 这始终是 32 位 ARGB 颜色,与源图像格式无关。 Alpha 非常重要,对于不透明颜色键,通常应设置为 FF。 因此,对于不透明的黑色,该值将等于 0xFF000000。

返回值

类型: HRESULT

如果函数成功,则返回值D3D_OK。 如果函数失败,则返回值可以是以下值之一:D3DERR_INVALIDCALL、D3DXERR_INVALIDDATA。

备注

写入到卷纹理的非零级图面不会导致更新脏矩形。 如果调用了 D3DXLoadVolumeFromMemory,并且纹理尚未脏 (这在) 的正常使用方案中不太可能出现,则应用程序需要在卷纹理上显式调用 IDirect3DVolumeTexture9::AddDirtyBox

要求

要求
标头
D3dx9tex.h

D3dx9.lib

另请参阅

D3DXLoadVolumeFromFile

D3DXLoadVolumeFromResource

D3DXLoadVolumeFromVolume

D3DX 9 中的纹理函数