D3DX11ComputeNormalMap
高さマップを法線マップに変換します。各法線の (x,y,z) 成分は、出力テクスチャーの (r,g,b) チャンネルにマッピングされます。
HRESULT
D3DX11ComputeNormalMap(
ID3D11DeviceContext *pContext,
ID3D11Texture2D *pSrcTexture,
UINT Flags,
UINT Channel,
FLOAT Amplitude,
ID3D11Texture2D *pDestTexture
);
パラメータ
- pContext
ID3D11DeviceContext インターフェイスへのポインターです。転送元の高さマップ テクスチャーを示します。 - pSrcTexture
ID3D11Texture2D インターフェイスへのポインターです。転送元の高さマップ テクスチャーを示します。 - Flags
法線マップの生成を制御する 1 つ以上の D3DX_NORMALMAP フラグです。 - Channel
高さの情報のソースを指定する 1 つの D3DX_CHANNEL フラグです。 - Amplitude
法線マップの値を増加 (または減少) させる、定数値の乗数です。通常は、値が大きいほどバンプがはっきりと表示され、値が小さいほどバンプが少なく表示されます。 - pDestTexture
ID3D11Texture2D インターフェイスへのポインターです。出力先テクスチャーを示します。
戻り値
成功すると、D3D_OK を返します。失敗すると、次の値を返します。D3DERR_INVALIDCALL
解説
このメソッドは、3 × 3 の周囲と中心との違いを利用して法線を計算します。転送先の RGB チャンネルには、法線のバイアスをかけた (x,y,z) 成分が含まれます。中心差分の基準は 2.0 にハードコードされます。
要件
ヘッダー: D3DX11tex.h 宣言
ライブラリ: D3DX11.lib 内容