Fungsi D3DXMatrixShadow (D3DX10Math.h)
Catatan
Pustaka utilitas D3DX10 tidak digunakan lagi. Kami menyarankan agar Anda menggunakan DirectXMath sebagai gantinya.
Membangun matriks yang meratakan geometri ke dalam bidang.
Sintaks
D3DXMATRIX* D3DXMatrixShadow(
_Inout_ D3DXMATRIX *pOut,
_In_ const D3DXVECTOR4 *pLight,
_In_ const D3DXPLANE *pPlane
);
Parameter
-
pOut [masuk, keluar]
-
Jenis: D3DXMATRIX*
Arahkan ke struktur D3DXMATRIX yang merupakan hasil operasi.
-
pLight [in]
-
Jenis: const D3DXVECTOR4*
Arahkan ke D3DXVECTOR4 yang menjelaskan posisi lampu.
-
pPlane [in]
-
Jenis: const D3DXPLANE*
Arahkan ke sumber D3DXPLANE.
Menampilkan nilai
Jenis: D3DXMATRIX*
Arahkan ke struktur D3DXMATRIX yang meratakan geometri ke dalam bidang.
Keterangan
Fungsi D3DXMatrixShadow meratakan geometri ke dalam bidang, seolah-olah mentransmisikan bayangan dari cahaya.
Nilai yang dikembalikan untuk fungsi ini adalah nilai yang sama yang dikembalikan dalam parameter pOut. Dengan cara ini, fungsi D3DXMatrixShadow dapat digunakan sebagai parameter untuk fungsi lain.
Fungsi ini menggunakan rumus berikut untuk menghitung matriks yang dikembalikan.
P = normalize(Plane);
L = Light;
d = dot(P, L)
P.a * L.x + d P.a * L.y P.a * L.z P.a * L.w
P.b * L.x P.b * L.y + d P.b * L.z P.b * L.w
P.c * L.x P.c * L.y P.c * L.z + d P.c * L.w
P.d * L.x P.d * L.y P.d * L.z P.d * L.w + d
Jika komponen-w lampu adalah 0, sinar dari asal ke cahaya mewakili cahaya arah. Jika 1, cahaya adalah cahaya titik.
Persyaratan
Persyaratan | Nilai |
---|---|
Header |
|
Pustaka |
|
Lihat juga