Fonction XMVector3UnprojectStream (directxmath.h)
Transforme un flux de vecteurs 3D de l’espace d’écran en espace objet.
Syntaxe
XMFLOAT3 *XM_CALLCONV XMVector3UnprojectStream(
[out] XMFLOAT3 *pOutputStream,
[in] size_t OutputStride,
[in] const XMFLOAT3 *pInputStream,
[in] size_t InputStride,
[in] size_t VectorCount,
[in] float ViewportX,
[in] float ViewportY,
[in] float ViewportWidth,
[in] float ViewportHeight,
[in] float ViewportMinZ,
[in] float ViewportMaxZ,
[in] FXMMATRIX Projection,
[in] CXMMATRIX View,
[in] CXMMATRIX World
) noexcept;
Paramètres
[out] pOutputStream
Adresse du premier XMFLOAT3 dans le flux de destination.
[in] OutputStride
Stride, en octets, entre les vecteurs dans le flux de destination.
[in] pInputStream
Adresse du premier XMFLOAT3 dans le flux à transformer. X,Y sont en pixels, tandis que Z est de 0,0 (à ViewportMinZ) à 1.0 (dans ViewportMaxZ).
[in] InputStride
Stride, en octets, entre les vecteurs dans le flux d’entrée.
[in] VectorCount
Nombre de vecteurs à transformer.
[in] ViewportX
Coordonnées de pixels du coin supérieur gauche de la fenêtre d’affichage. Sauf si vous souhaitez effectuer un rendu sur un sous-ensemble de la surface, ce paramètre peut être défini sur 0.
[in] ViewportY
Coordonnées de pixels du coin supérieur gauche de la fenêtre d’affichage sur la surface cible de rendu. Sauf si vous souhaitez effectuer un rendu sur un sous-ensemble de la surface, ce paramètre peut être défini sur 0.
[in] ViewportWidth
Dimension de largeur du volume de l’élément, en pixels. Sauf si vous effectuez un rendu uniquement sur un sous-ensemble de la surface, ce paramètre doit être défini sur la dimension de largeur de la surface cible de rendu.
[in] ViewportHeight
Dimension de hauteur du volume de l’élément, en pixels. Sauf si vous effectuez un rendu uniquement sur un sous-ensemble de la surface, ce paramètre doit être défini sur la dimension de hauteur de la surface cible de rendu.
[in] ViewportMinZ
Avec ViewportMaxZ, valeur décrivant la plage de valeurs de profondeur dans laquelle une scène doit être affichée, les valeurs minimales et maximales du volume de clip. La plupart des applications définissent cette valeur sur 0,0f. Le découpage est effectué après l’application de la matrice de projection.
[in] ViewportMaxZ
Avec MinZ, valeur décrivant la plage de valeurs de profondeur dans laquelle une scène doit être affichée, les valeurs minimales et maximales du volume de clip. La plupart des applications définissent cette valeur sur 1.0f. Le découpage est effectué après l’application de la matrice de projection.
[in] Projection
Matrice de projection.
[in] View
Matrice d’affichage.
[in] World
Matrice mondiale.
Valeur retournée
Retourne l’adresse du premier XMFLOAT3 dans le flux de destination.
Notes
Les paramètres ViewportX, ViewportY, ViewportWidth et ViewportHeight décrivent la position et les dimensions de la fenêtre d’affichage sur la surface cible de rendu. Généralement, les applications s’affichent sur l’ensemble de la surface cible ; lors du rendu sur une surface 640*480, ces paramètres doivent être 0, 0, 640 et 480, respectivement. ViewportMinZ et ViewportMaxZ sont généralement définis sur 0.0f et 1.0f, mais peuvent être définis sur d’autres valeurs pour obtenir des effets spécifiques.
Configuration requise pour la plateforme
Microsoft Visual Studio 2010 ou Microsoft Visual Studio 2012 avec le Kit de développement logiciel (SDK) Windows pour Windows 8. Pris en charge pour les applications de bureau Win32, les applications du Windows Store et Windows Phone 8 applications.Spécifications
Plateforme cible | Windows |
En-tête | directxmath.h (inclure DirectXMath.h) |
Voir aussi
Fonctions de transformation vectorielle 3D de la bibliothèque DirectXMath