다음을 통해 공유


XMVector3Unproject 함수(directxmath.h)

화면 공간에서 개체 공간으로 3D 벡터를 프로젝터합니다.

구문

XMVECTOR XM_CALLCONV XMVector3Unproject(
  [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 벡터입니다. X와 Y는 픽셀 단위이고 Z는 0.0( ViewportMinZ)에서 1.0( ViewportMaxZ)입니다.

[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

세계 행렬입니다.

반환 값

개체 공간의 벡터를 반환합니다.

설명

ViewportX, ViewportY, ViewportWidthViewportHeight 매개 변수는 렌더링 대상 화면에서 뷰포트의 위치와 크기를 설명합니다. 일반적으로 애플리케이션은 전체 대상 화면에 렌더링됩니다. 640*480 화면에서 렌더링할 때 이러한 매개 변수는 각각 0, 0, 640 및 480이어야 합니다. ViewportMinZViewportMaxZ는 일반적으로 0.0f 및 1.0f로 설정되지만 특정 효과를 얻기 위해 다른 값으로 설정할 수 있습니다.

플랫폼 요구 사항

Windows 8 Windows SDK를 사용하는 Microsoft Visual Studio 2010 또는 Microsoft Visual Studio 2012. Win32 데스크톱 앱, Windows 스토어 앱 및 Windows Phone 8개 앱에 지원됩니다.

요구 사항

요구 사항
대상 플랫폼 Windows
헤더 directxmath.h(DirectXMath.h 포함)

추가 정보

DirectXMath 라이브러리 3D 벡터 변환 함수

XMVector3UnprojectStream