Fonction D3DXMatrixShadow (D3DX10Math.h)
Notes
La bibliothèque d’utilitaireS D3DX10 est déconseillée. Nous vous recommandons d’utiliser DirectXMath à la place.
Génère une matrice qui aplatit la géométrie dans un plan.
Syntaxe
D3DXMATRIX* D3DXMatrixShadow(
_Inout_ D3DXMATRIX *pOut,
_In_ const D3DXVECTOR4 *pLight,
_In_ const D3DXPLANE *pPlane
);
Paramètres
-
pOut [in, out]
-
Type : D3DXMATRIX*
Pointeur vers la structure D3DXMATRIX qui est le résultat de l’opération.
-
pLight [in]
-
Type : const D3DXVECTOR4*
Pointeur vers un D3DXVECTOR4 décrivant la position de la lumière.
-
pPlane [in]
-
Type : const D3DXPLANE*
Pointeur vers la source D3DXPLANE.
Valeur retournée
Type : D3DXMATRIX*
Pointeur vers une structure D3DXMATRIX qui aplatit la géométrie dans un plan.
Notes
La fonction D3DXMatrixShadow aplatit la géométrie dans un plan, comme si elle projettait une ombre à partir d’une lumière.
La valeur de retour de cette fonction est la même valeur retournée dans le paramètre pOut. De cette façon, la fonction D3DXMatrixShadow peut être utilisée comme paramètre pour une autre fonction.
Cette fonction utilise la formule suivante pour calculer la matrice retournée.
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
Si le composant w de la lumière est 0, le rayon de l’origine à la lumière représente une lumière directionnelle. S’il est 1, la lumière est une lumière de point.
Spécifications
Condition requise | Valeur |
---|---|
En-tête |
|
Bibliothèque |
|
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour