Fonction D3DXSHEvalConeLight (D3DX10.h)
Notes
La bibliothèque utilitaire D3DX (D3DX 9, D3DX 10 et D3DX 11) est déconseillée et n’est pas prise en charge pour les applications du Windows Store.
Notes
Au lieu d’utiliser cette fonction, nous vous recommandons d’utiliser la fonction de bibliothèque Spherical Harmonics MathXMSHEvalConeLight.
Évalue une lumière qui est un cône d’intensité constante et retourne des données harmoniques sphériques (SH) spectrales.
Syntaxe
HRESULT D3DXSHEvalConeLight(
_In_ UINT Order,
_In_ const D3DXVECTOR3 *pDir,
_In_ FLOAT Radius,
_In_ FLOAT RIntensity,
_In_ FLOAT GIntensity,
_In_ FLOAT BIntensity,
_In_ FLOAT *pROut,
_In_ FLOAT *pGOut,
_In_ FLOAT *pBOut
);
Paramètres
-
Ordre [in]
-
Type : UINT
Ordre de l’évaluation sh. Doit être dans la plage de D3DXSH_MINORDER à D3DXSH_MAXORDER, inclusif. L’évaluation génère des coefficients Order². Le degré de l’évaluation est Order - 1.
-
pDir [in]
-
Type : const D3DXVECTOR3*
Pointeur vers le vecteur de direction de l’axe de l’hémisphère (x, y, z) dans lequel évaluer les fonctions de base SH. Consultez la section Notes.
-
Radius [in]
-
Type : FLOAT
Rayon de cône en radians.
-
RIntensity [in]
-
Type : FLOAT
Intensité rouge de la lumière.
-
GIntensity [in]
-
Type : FLOAT
Intensité verte de la lumière.
-
BIntensity [in]
-
Type : FLOAT
Intensité bleue de la lumière.
-
pROut [in]
-
Type : FLOAT*
Pointeur vers le vecteur SH de sortie pour le composant rouge.
-
pGOut [in]
-
Type : FLOAT*
Pointeur vers le vecteur SH de sortie pour le composant vert.
-
pBOut [in]
-
Type : FLOAT*
Pointeur vers le vecteur SH de sortie pour le composant bleu.
Valeur retournée
Type : HRESULT
Si la fonction réussit, la valeur de retour est D3D_OK. Si la fonction échoue, la valeur de retour peut être : D3DERR_INVALIDCALL.
Notes
Évalue une lumière qui est un cône d’intensité constante et retourne des données sh spectrales. Le vecteur de sortie est calculé de sorte que si le rapport d’intensité R/G/B est égal à 1, le rayonnement de sortie d’un point directement sous la lumière (orienté dans le sens cône sur un objet diffus avec un albédo de 1) soit de 1,0. Cela permet de calculer trois échantillons spectrals ; pROut est retourné, tandis que pGOut et pBOut peuvent être retournés.
Sur la sphère avec un rayon unitaire, comme illustré dans l’illustration suivante, la direction peut être spécifiée simplement avec theta, l’angle de l’axe z dans le sens droitier, et phi, l’angle de z.
Les équations suivantes montrent la relation entre les coordonnées cartésiennes (x, y, z) et sphériques (theta, phi) sur la sphère unitaire. L’angle de 0 à 2 pi varie sur la plage de 0 à 2 pi, tandis que le phi varie de 0 à pi.
Spécifications
Condition requise | Valeur |
---|---|
En-tête |
|
Bibliothèque |
|
Voir aussi