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旗標。

通道 [in]

類型: DWORD

個D3DX_CHANNEL 旗標,指定高度資訊的來源。

Amplitude [in]

類型: FLOAT

常數值乘數,可增加 (或減少) 法向圖中的值。 較高的值通常會讓凸起更可見,較低的值通常會使凸起較不可見。

傳回值

類型: HRESULT

如果函式成功,傳回值會D3D_OK。 如果函式失敗,傳回值可以是下列值:D3DERR_INVALIDCALL。

備註

此方法會使用核心大小為 3x3 的中央差異來計算標準。 使用的中央差異分母為 2.0。 目的地中的 RGB 通道包含標準 (x,y,z) 元件偏差。

規格需求

需求
標頭
D3dx9tex.h
程式庫
D3dx9.lib

另請參閱

D3DX 9 中的紋理函式