XMVector3Project 函式 (directxmath.h)

將物件空間中的 3D 向量投影到螢幕空間。

語法

XMVECTOR XM_CALLCONV XMVector3Project(
  [in] FXMVECTOR V,
  [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;

參數

[in] V

物件空間中投影到螢幕空間中的 3D 向量。

[in] ViewportX

檢視區左上角的圖元座標。 除非您想要轉譯為介面的子集,否則此參數可以設定為 0。

[in] ViewportY

轉譯目標介面上檢視區左上角的圖元座標。 除非您想要轉譯為介面的子集,否則此參數可以設定為 0。

[in] ViewportWidth

裁剪磁片區的寬度維度,以圖元為單位。 除非您只轉譯為表面的子集,否則此參數應該設定為轉譯目標表面的寬度維度。

[in] ViewportHeight

剪輯音量的高度維度,以圖元為單位。 除非您只轉譯為表面的子集,否則此參數應該設定為轉譯目標表面的高度維度。

[in] ViewportMinZ

ViewportMaxZ一起,描述要呈現場景的深度值範圍,以及剪輯音量的最小值和最大值。 大部分的應用程式都會將此值設定為 0.0f。 套用投影矩陣之後,會執行裁剪。

[in] ViewportMaxZ

MinZ一起,值會描述要呈現場景的深度值範圍,以及剪輯音量的最小值和最大值。 大部分的應用程式都會將此值設定為 1.0f。 套用投影矩陣之後,會執行裁剪。

[in] Projection

投影矩陣。

[in] View

檢視矩陣。

[in] World

世界矩陣。

傳回值

傳回螢幕空間中的向量。

備註

ViewportXViewportYViewportWidthViewportHeight參數會描述轉譯目標介面上檢視區的位置和維度。 通常,應用程式會轉譯至整個目標介面;在 640*480 介面上呈現時,這些參數分別應該是 0、0、640 和 480。 ViewportMinZViewportMaxZ通常會設定為 0.0f 和 1.0f,但可以設定為其他值來達成特定效果。

平臺需求

Microsoft Visual Studio 2010 或 Microsoft Visual Studio 2012 搭配 Windows SDK for Windows 8。 支援 Win32 傳統型應用程式、Windows 市集應用程式和 Windows Phone 8 個應用程式。

需求

   
目標平台 Windows
標頭 directxmath.h (包含 DirectXMath.h)

另請參閱

DirectXMath 程式庫 3D 向量轉換函式

XMVector3ProjectStream