Функция D3DXCreateCubeTextureFromResourceEx

Создает текстуру куба из ресурса, указанного строкой. Это более расширенная функция, чем D3DXCreateCubeTextureFromResource.

Синтаксис

HRESULT D3DXCreateCubeTextureFromResourceEx(
  _In_    LPDIRECT3DDEVICE9      pDevice,
  _In_    HMODULE                hSrcModule,
  _In_    LPCTSTR                pSrcResource,
  _In_    UINT                   Size,
  _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_   LPDIRECT3DCUBETEXTURE9 *ppCubeTexture
);

Параметры

pDevice [in]

Тип: LPDIRECT3DDEVICE9

Указатель на интерфейс IDirect3DDevice9 , представляющий устройство, связанное с текстурой куба.

hSrcModule [in]

Тип: HMODULE

Дескриптор к модулю, в котором находится ресурс, или значение NULL для модуля, связанного с образом, используемым операционной системой для создания текущего процесса.

pSrcResource [in]

Тип: LPCTSTR

Указатель на строку, указывающую имя ресурса. Если для параметров компилятора требуется Юникод, тип данных LPCTSTR разрешается в LPCWSTR. В противном случае строковый тип данных разрешается в LPCSTR. См. заметки.

Размер [in]

Тип: UINT

Ширина и высота текстуры куба в пикселях. Например, если текстура куба имеет размер 8 пикселей и 8 пикселей, значение этого параметра должно быть равно 8. Если это значение равно 0 или D3DX_DEFAULT, измерения берутся из файла.

MipLevels [in]

Тип: UINT

Количество запрошенных уровней MIP. Если это значение равно нулю или D3DX_DEFAULT, создается полная цепочка MIP-карты.

Использование [в]

Тип: DWORD

0, D3DUSAGE_RENDERTARGET или D3DUSAGE_DYNAMIC. Установка этого флага D3DUSAGE_RENDERTARGET означает, что поверхность будет использоваться в качестве целевого объекта отрисовки. Затем ресурс можно передать в параметр pNewRenderTarget метода SetRenderTarget . Если указан D3DUSAGE_RENDERTARGET, приложение должно проверка, что устройство поддерживает эту операцию, вызвав CheckDeviceFormat. D3DUSAGE_DYNAMIC указывает, что поверхность должна обрабатываться динамически. Дополнительные сведения об использовании динамических текстур см. в разделе Использование динамических текстур.

Формат [in]

Тип: D3DFORMAT

Член перечисленного типа D3DFORMAT , описывающий запрошенный формат пикселей для текстуры куба. Возвращаемая текстура куба может иметь формат, отличный от формата, заданного параметром Format. Приложения должны проверка формат возвращаемой текстуры куба. Если D3DFMT_UNKNOWN, формат берется из файла. Если D3DFMT_FROM_FILE, формат принимается точно так же, как в файле, и вызов завершится ошибкой, если это нарушает возможности устройства.

Пул [в]

Тип: D3DPOOL

Член перечисленного типа D3DPOOL , описывающий класс памяти, в который следует поместить текстуру куба.

Фильтр [в]

Тип: 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 для отключения клавиши colorkey. Это всегда 32-разрядный цвет ARGB, независимо от формата исходного изображения. Альфа имеет важное значение, и для непрозрачных цветовых клавиш обычно должно быть задано значение FF. Таким образом, для непрозрачного черного цвета значение будет равно 0xFF000000.

pSrcInfo [вход, выход]

Тип: D3DXIMAGE_INFO*

Указатель на D3DXIMAGE_INFO структуру, заполняемую описанием данных в исходном файле изображения или значением NULL.

pPalette [out]

Тип: PALETTEENTRY*

Указатель на структуру PALETTEENTRY , представляющую 256-цветовую палитру для заполнения или значение NULL.

ppCubeTexture [out]

Тип: LPDIRECT3DCUBETEXTURE9*

Адрес указателя на интерфейс IDirect3DCubeTexture9 , представляющий созданный объект текстуры куба.

Возвращаемое значение

Тип: HRESULT

Если функция выполняется успешно, возвращаемое значение будет D3D_OK. В случае сбоя функции возвращается одно из следующих значений: D3DERR_INVALIDCALL, D3DERR_NOTAVAILABLE, D3DERR_OUTOFVIDEOMEMORY, D3DXERR_INVALIDDATA E_OUTOFMEMORY.

Комментарии

Параметр компилятора определяет версию функции. Если юникод определен, вызов функции разрешается в D3DXCreateCubeTextureFromResourceExW. В противном случае вызов функции разрешается в D3DXCreateCubeTextureFromResourceExA , так как используются строки ANSI.

Эта функция поддерживает следующие форматы файлов: .bmp, DDS, DIB, HDR, .jpg, PFM, .png, PPM и TGA. См . D3DXIMAGE_FILEFORMAT.

Текстуры куба отличаются от других поверхностей тем, что они являются коллекциями поверхностей. Чтобы вызвать SetRenderTarget с текстурой куба, необходимо выбрать отдельное лицо с помощью GetCubeMapSurface и передать полученную поверхность в SetRenderTarget.

D3DXCreateCubeTextureFromResourceEx использует формат файла DirectDraw surface (DDS). Редактор текстур DirectX (Dxtex.exe) позволяет создавать карту куба из других форматов файлов и сохранять ее в формате DDS. Вы можете получить Dxtex.exe и узнать о нем из пакета SDK для DirectX. Сведения о пакете SDK для DirectX см. в разделе Где находится пакет SDK DirectX?.

Требования

Требование Значение
Заголовок
D3dx9tex.h
Библиотека
D3dx9.lib

См. также раздел

D3DXCreateCubeTextureFromResource

Функции текстур в D3DX 9