Compartir a través de


Función D3DXCreateVolumeTextureFromResourceEx

Crea una textura de volumen a partir de un recurso especificado por una cadena. Se trata de una función más avanzada que D3DXCreateVolumeTextureFromResource.

Sintaxis

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
);

Parámetros

pDevice [in]

Tipo: LPDIRECT3DDEVICE9

Puntero a una interfaz IDirect3DDevice9 , que representa el dispositivo que se va a asociar a la textura.

hSrcModule [in]

Tipo: HMODULE

Controle el módulo donde se encuentra el recurso o NULL para el módulo asociado a la imagen que el sistema operativo usó para crear el proceso actual.

pSrcResource [in]

Tipo: LPCTSTR

Puntero a una cadena que especifica el nombre del recurso. Si la configuración del compilador requiere Unicode, el tipo de datos LPCTSTR se resuelve en LPCWSTR. De lo contrario, el tipo de datos de cadena se resuelve en LPCSTR. Vea la sección Comentarios.

Ancho [in]

Tipo: UINT

Ancho en píxeles. Si este valor es cero o D3DX_DEFAULT, las dimensiones se toman del archivo. La dimensión máxima que admite un controlador (para ancho, alto y profundidad) se puede encontrar en MaxVolumeExtent en D3DCAPS9.

Alto [in]

Tipo: UINT

Alto, en píxeles. Si este valor es cero o D3DX_DEFAULT, las dimensiones se toman del archivo. La dimensión máxima que admite un controlador (para ancho, alto y profundidad) se puede encontrar en MaxVolumeExtent en D3DCAPS9.

Profundidad [in]

Tipo: UINT

Profundidad, en píxeles. Si este valor es cero o D3DX_DEFAULT, las dimensiones se toman del archivo. La dimensión máxima que admite un controlador (para ancho, alto y profundidad) se puede encontrar en MaxVolumeExtent en D3DCAPS9.

MipLevels [in]

Tipo: UINT

Número de niveles mip solicitados. Si este valor es cero o D3DX_DEFAULT, se crea una cadena de mapas mip completa.

Uso [in]

Tipo: DWORD

0, D3DUSAGE_RENDERTARGET o D3DUSAGE_DYNAMIC. Establecer esta marca en D3DUSAGE_RENDERTARGET indica que la superficie se va a usar como destino de representación. A continuación, el recurso se puede pasar al parámetro pNewRenderTarget del método SetRenderTarget . Si se especifica D3DUSAGE_RENDERTARGET o D3DUSAGE_DYNAMIC, Pool debe establecerse en D3DPOOL_DEFAULT y la aplicación debe comprobar que el dispositivo admite esta operación llamando a CheckDeviceFormat. D3DUSAGE_DYNAMIC indica que la superficie debe controlarse dinámicamente. Para obtener más información sobre el uso de texturas dinámicas, consulte Uso de texturas dinámicas.

Formato [in]

Tipo: D3DFORMAT

Miembro del tipo enumerado D3DFORMAT , que describe el formato de píxel solicitado para la textura. La textura devuelta puede tener un formato diferente al especificado por Format. Las aplicaciones deben comprobar el formato de la textura devuelta. Si D3DFMT_UNKNOWN, el formato se toma del archivo. Si D3DFMT_FROM_FILE, el formato se toma exactamente como está en el archivo y se producirá un error en la llamada si esto infringe las funcionalidades del dispositivo.

Grupo [in]

Tipo: D3DPOOL

Miembro del tipo enumerado D3DPOOL , que describe la clase de memoria en la que se debe colocar la textura.

Filtro [in]

Tipo: DWORD

Combinación de una o varias D3DX_FILTER controlar cómo se filtra la imagen. Especificar D3DX_DEFAULT para este parámetro es el equivalente a especificar D3DX_FILTER_TRIANGLE | D3DX_FILTER_DITHER.

MipFilter [in]

Tipo: DWORD

Combinación de una o varias D3DX_FILTER controlar cómo se filtra la imagen. Especificar D3DX_DEFAULT para este parámetro es equivalente a especificar D3DX_FILTER_BOX.

ColorKey [in]

Tipo: D3DCOLOR

Valor D3DCOLOR para reemplazar por negro transparente o 0 para deshabilitar la clave de color. Siempre es un color ARGB de 32 bits, independientemente del formato de imagen de origen. El alfa es significativo y normalmente debe establecerse en FF para las teclas de color opacos. Por lo tanto, para negro opaco, el valor sería igual a 0xFF000000.

pSrcInfo [in, out]

Tipo: D3DXIMAGE_INFO*

Puntero a una estructura de D3DXIMAGE_INFO que se va a rellenar con una descripción de los datos en el archivo de imagen de origen o NULL.

pPalette [out]

Tipo: PALETTEENTRY*

Puntero a una estructura PALETTEENTRY , que representa una paleta de 256 colores para rellenar o NULL.

ppVolumeTexture [out]

Tipo: LPDIRECT3DVOLUMETEXTURE9*

Dirección de un puntero a una interfaz IDirect3DVolumeTexture9 , que representa el objeto de textura creado.

Valor devuelto

Tipo: HRESULT

Si la función se ejecuta correctamente, el valor devuelto es D3D_OK. Si se produce un error en la función, el valor devuelto puede ser uno de los siguientes: D3DERR_NOTAVAILABLE, D3DERR_OUTOFVIDEOMEMORY, D3DERR_INVALIDCALL, D3DXERR_INVALIDDATA, E_OUTOFMEMORY.

Observaciones

La configuración del compilador también determina la versión de la función. Si se define Unicode, la llamada de función se resuelve en D3DXCreateVolumeTextureFromResourceExW. De lo contrario, la llamada de función se resuelve en D3DXCreateVolumeTextureFromResourceExA porque se usan cadenas ANSI.

El recurso que se carga debe ser un recurso definido por la aplicación (RT_RCDATA).

Esta función admite los siguientes formatos de archivo: .bmp, .dds, .dib, .hdr, .jpg, .pfm, .png, .ppm y .tga. Consulte D3DXIMAGE_FILEFORMAT.

Requisitos

Requisito Value
Encabezado
D3dx9tex.h
Biblioteca
D3dx9.lib

Vea también

D3DXCreateVolumeTextureFromFile

D3DXCreateVolumeTextureFromFileEx

D3DXCreateVolumeTextureFromFileInMemory

D3DXCreateVolumeTextureFromFileInMemoryEx

D3DXCreateVolumeTextureFromResource

Funciones de textura en D3DX 9