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 内容

関連項目

D3DX 関数