Bagikan melalui


Fungsi D3DX11ComputeNormalMap

Catatan

Pustaka utilitas D3DX (D3DX 9, D3DX 10, dan D3DX 11) tidak digunakan lagi untuk Windows 8 dan tidak didukung untuk aplikasi Windows Store.

Catatan

Alih-alih menggunakan fungsi ini, kami sarankan Anda menggunakan pustaka DirectXTex , ComputeNormalMap.

Mengonversi peta tinggi menjadi peta normal. Komponen (x,y,z) dari setiap normal dipetakan ke saluran (r,g,b) dari tekstur output.

Sintaks

HRESULT D3DX11ComputeNormalMap(
  _In_ ID3D11DeviceContext *pContext,
  _In_ ID3D11Texture2D     *pSrcTexture,
  _In_ UINT                Flags,
  _In_ UINT                Channel,
  _In_ FLOAT               Amplitude,
  _In_ ID3D11Texture2D     *pDestTexture
);

Parameter

pContext [in]

Jenis: ID3D11DeviceContext*

Penunjuk ke antarmuka ID3D11DeviceContext , mewakili tekstur peta tinggi sumber.

pSrcTexture [in]

Jenis: ID3D11Texture2D*

Arahkan ke antarmuka ID3D11Texture2D , yang mewakili tekstur peta tinggi sumber.

Bendera [in]

Jenis: UINT

Satu atau beberapa bendera D3DX_NORMALMAP yang mengontrol pembuatan peta normal.

Saluran [in]

Jenis: UINT

Satu bendera D3DX_CHANNEL menentukan sumber informasi tinggi.

Amplitude [in]

Jenis: FLOAT

Pengali nilai konstanta yang meningkatkan (atau mengurangi) nilai dalam peta normal. Nilai yang lebih tinggi biasanya membuat benjolan lebih terlihat, nilai yang lebih rendah biasanya membuat benjolan kurang terlihat.

pDestTexture [in]

Jenis: ID3D11Texture2D*

Arahkan ke antarmuka ID3D11Texture2D , yang mewakili tekstur tujuan.

Nilai kembali

Jenis: HRESULT

Jika fungsi berhasil, nilai yang dikembalikan adalah D3D_OK. Jika fungsi gagal, nilai yang dikembalikan bisa menjadi nilai berikut: D3DERR_INVALIDCALL.

Keterangan

Metode ini menghitung normal dengan menggunakan perbedaan pusat dengan ukuran kernel 3x3. Saluran RGB di tujuan berisi komponen bias (x,y,z) normal. Denominator pembeda pusat dikodekan secara permanen menjadi 2,0.

Persyaratan

Persyaratan Nilai
Header
D3DX11tex.h
Pustaka
D3DX11.lib

Lihat juga

Fungsi D3DX