Condividi tramite


Funzione XMVector3UnprojectStream (directxmath.h)

Trasforma un flusso di vettori 3D dallo spazio dello schermo allo spazio degli oggetti.

Sintassi

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;

Parametri

[out] pOutputStream

Indirizzo del primo XMFLOAT3 nel flusso di destinazione.

[in] OutputStride

Stride, in byte, tra vettori nel flusso di destinazione.

[in] pInputStream

Indirizzo del primo XMFLOAT3 nel flusso da trasformare. X,Y sono in pixel, mentre Z è 0,0 (in ViewportMinZ) a 1,0 (in ViewportMaxZ).

[in] InputStride

Stride, in byte, tra vettori nel flusso di input.

[in] VectorCount

Numero di vettori da trasformare.

[in] ViewportX

Coordinata pixel dell'angolo superiore sinistro del riquadro di visualizzazione. A meno che non si desideri eseguire il rendering in un subset della superficie, questo parametro può essere impostato su 0.

[in] ViewportY

Coordinata in pixel dell'angolo superiore sinistro del riquadro di visualizzazione sulla superficie di destinazione di rendering. A meno che non si desideri eseguire il rendering in un subset della superficie, questo parametro può essere impostato su 0.

[in] ViewportWidth

Dimensione di larghezza del volume clip, in pixel. A meno che non si esegua il rendering solo in un subset della superficie, questo parametro deve essere impostato sulla dimensione di larghezza della superficie di destinazione di rendering.

[in] ViewportHeight

Dimensione dell'altezza del volume clip, in pixel. A meno che non si esegua il rendering solo in un subset della superficie, questo parametro deve essere impostato sulla dimensione altezza della superficie di destinazione di rendering.

[in] ViewportMinZ

Insieme a ViewportMaxZ, valore che descrive l'intervallo di valori di profondità in cui eseguire il rendering di una scena, i valori minimi e massimi del volume di clip. La maggior parte delle applicazioni imposta questo valore su 0,0f. Il ritaglio viene eseguito dopo l'applicazione della matrice di proiezione.

[in] ViewportMaxZ

Insieme a MinZ, valore che descrive l'intervallo di valori di profondità in cui deve essere eseguito il rendering di una scena, i valori minimo e massimo del volume clip. La maggior parte delle applicazioni imposta questo valore su 1,0f. Il ritaglio viene eseguito dopo l'applicazione della matrice di proiezione.

[in] Projection

Matrice di proiezione.

[in] View

Matrice di visualizzazione.

[in] World

Matrice mondiale.

Valore restituito

Restituisce l'indirizzo del primo XMFLOAT3 nel flusso di destinazione.

Commenti

I parametri ViewportX, ViewportY, ViewportWidth e ViewportHeight descrivono la posizione e le dimensioni del riquadro di visualizzazione sulla superficie di destinazione di rendering. In genere, le applicazioni eseguono il rendering nell'intera superficie di destinazione; quando si esegue il rendering su una superficie 640*480, questi parametri devono essere rispettivamente 0, 0, 640 e 480. ViewportMinZ e ViewportMaxZ sono in genere impostati su 0,0f e 1,0f, ma possono essere impostati su altri valori per ottenere effetti specifici.

Requisiti della piattaforma

Microsoft Visual Studio 2010 o Microsoft Visual Studio 2012 con Windows SDK per Windows 8. Supportato per le app desktop Win32, le app di Windows Store e Windows Phone 8 app.

Requisiti

   
Piattaforma di destinazione Windows
Intestazione directxmath.h (include DirectXMath.h)

Vedi anche

Funzioni di trasformazione vettoriale 3D della libreria DirectXMath

XMVector3Unproject