ID3DXPRTEngine::ClosestRayIntersects, méthode
Utilise le suivi de rayons efficace dans les simulations de transfert de rayonnement précalculé (PRT) pour déterminer si un rayon croise un maillage. Si une intersection est trouvée, la méthode retourne l’index du visage de maillage le plus proche atteint par le rayon et les coordonnées barycentriques du point d’intersection.
Syntaxe
BOOL ClosestRayIntersects(
[in] const D3DXVECTOR3 *pRayPos,
[in] const D3DXVECTOR3 *pRayDir,
[in] DWORD *pFaceIndex,
[out] FLOAT *pU,
[out] FLOAT *pV,
[out] FLOAT *pDist
);
Paramètres
-
pRayPos [in]
-
Type : const D3DXVECTOR3*
Pointeur vers une structure D3DXVECTOR3 , spécifiant le point où commence le rayon.
-
pRayDir [in]
-
Type : const D3DXVECTOR3*
Pointeur vers une structure D3DXVECTOR3 , spécifiant la direction normalisée du rayon.
-
pFaceIndex [in]
-
Type : DWORD*
Pointeur vers l’index de la face de maillage actuelle qui est frappée pour la première fois par le rayon donné, en fonction de l’empilement de toutes les faces de maillage de bloqueur devant le maillage actuel.
-
pU [out]
-
Type : FLOAT*
Pointeur vers une coordonnée d’accès barycentrique, U, pour le sommet 0 du triangle.
-
pV [out]
-
Type : FLOAT*
Pointeur vers une coordonnée d’accès barycentrique, V, pour le sommet 1 du triangle.
-
pDist [out]
-
Type : FLOAT*
Pointeur vers la distance du point d’intersection le long du rayon.
Valeur retournée
Type : BOOL
Retourne TRUE si le rayon croise le maillage actuel ; dans le cas contraire, retourne FALSE.
Notes
Utilisez ID3DXPRTEngine::SetMinMaxIntersection pour définir les distances minimales et maximales d’intersection avec le rayon.
La coordonnée barycentrique du troisième sommet (sommet 2) du triangle est 1 - ( U + V ).
Cette méthode s’exécute plus lentement que ID3DXPRTEngine::ShadowRayIntersects. Utilisez ID3DXPRTEngine::ShadowRayIntersects si l’emplacement du point d’intersection n’est pas nécessaire.
Les coordonnées barycentriques définissent un point à l’intérieur d’un triangle en termes de sommets du triangle. Pour obtenir une description plus détaillée des coordonnées barycentriques, consultez Description des coordonnées barycentriques de Mathworld.
Spécifications
Condition requise | Valeur |
---|---|
En-tête |
|
Bibliothèque |
|
Voir aussi