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


Функция D3DXComputeNormalMap

Преобразует карту высоты в обычную. Компоненты (x,y,z) каждой нормы сопоставляются с каналами (r,g,b) выходной текстуры.

Синтаксис

HRESULT D3DXComputeNormalMap(
  _Out_       LPDIRECT3DTEXTURE9 pTexture,
  _In_        LPDIRECT3DTEXTURE9 pSrcTexture,
  _In_  const PALETTEENTRY       *pSrcPalette,
  _In_        DWORD              Flags,
  _In_        DWORD              Channel,
  _In_        FLOAT              Amplitude
);

Параметры

pTexture [out]

Тип: LPDIRECT3DTEXTURE9

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

pSrcTexture [in]

Тип: LPDIRECT3DTEXTURE9

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

pSrcPalette [in]

Тип: const PALETTEENTRY*

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

Флаги [in]

Тип: DWORD

Один или несколько флагов D3DX_NORMALMAP , управляющих созданием обычных карт.

Канал [в]

Тип: DWORD

Один D3DX_CHANNEL флаг, указывающий источник сведений о высоте.

Амплитуды [in]

Тип: FLOAT

Множитель константного значения, который увеличивает (или уменьшает) значения в обычной карте. Более высокие значения обычно делают удары более заметными, а более низкие значения обычно делают удары менее заметными.

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

Тип: HRESULT

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

Комментарии

Этот метод вычисляет норму с использованием центрального различия с размером ядра 3x3. Используется центральный знаменатель отличий — 2.0. Rgb-каналы в назначении содержат смещенные (x, y, z) компоненты нормального.

Требования

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

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

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