Поделиться через


Функция D3DXLoadSurfaceFromSurface

Загружает поверхность с другой поверхности с преобразованием цвета.

Синтаксис

HRESULT D3DXLoadSurfaceFromSurface(
  _In_       LPDIRECT3DSURFACE9 pDestSurface,
  _In_ const PALETTEENTRY       *pDestPalette,
  _In_ const RECT               *pDestRect,
  _In_       LPDIRECT3DSURFACE9 pSrcSurface,
  _In_ const PALETTEENTRY       *pSrcPalette,
  _In_ const RECT               *pSrcRect,
  _In_       DWORD              Filter,
  _In_       D3DCOLOR           ColorKey
);

Параметры

pDestSurface [in]

Тип: LPDIRECT3DSURFACE9

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

pDestPalette [in]

Тип: const PALETTEENTRY*

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

pDestRect [in]

Тип: const RECT*

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

pSrcSurface [in]

Тип: LPDIRECT3DSURFACE9

Указатель на интерфейс IDirect3DSurface9 , представляющий поверхность источника.

pSrcPalette [in]

Тип: const PALETTEENTRY*

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

pSrcRect [in]

Тип: const RECT*

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

Фильтр [вход]

Тип: DWORD

Сочетание одного или нескольких D3DX_FILTER, управляющих фильтрацией изображения. Указание D3DX_DEFAULT для этого параметра эквивалентно указанию D3DX_FILTER_TRIANGLE | D3DX_FILTER_DITHER.

ColorKey [in]

Тип: D3DCOLOR

Значение D3DCOLOR для замены на прозрачный черный или 0 для отключения цветовой клавиши. Это всегда 32-разрядный цвет ARGB, независимо от формата исходного изображения. Альфа-канал имеет важное значение и обычно должен иметь значение FF для непрозрачных цветовых клавиш. Таким образом, для непрозрачного черного цвета значение будет равно 0xFF000000.

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

Тип: HRESULT

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

Комментарии

Эта функция обрабатывает преобразование в сжатые форматы текстур и из нее.

Запись на поверхности, отличной от нуля, не приведет к обновлению прямоугольника грязное. Если вызывается D3DXLoadSurfaceFromSurface и поверхность еще не грязное (это маловероятно в обычных сценариях использования), приложение должно явно вызвать AddDirtyRect на поверхности.

Требования

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

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

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