다음을 통해 공유


D3D11_VIEWPORT 구조체(d3d11.h)

뷰포트의 차원을 정의합니다.

구문

typedef struct D3D11_VIEWPORT {
  FLOAT TopLeftX;
  FLOAT TopLeftY;
  FLOAT Width;
  FLOAT Height;
  FLOAT MinDepth;
  FLOAT MaxDepth;
} D3D11_VIEWPORT;

멤버

TopLeftX

형식: FLOAT

뷰포트 왼쪽의 X 위치입니다. D3D11_VIEWPORT_BOUNDS_MIN D3D11_VIEWPORT_BOUNDS_MAX 사이의 범위입니다.

TopLeftY

형식: FLOAT

뷰포트 위쪽의 Y 위치입니다. D3D11_VIEWPORT_BOUNDS_MIN D3D11_VIEWPORT_BOUNDS_MAX 사이의 범위입니다.

Width

형식: FLOAT

뷰포트의 너비입니다.

Height

형식: FLOAT

뷰포트의 높이입니다.

MinDepth

형식: FLOAT

뷰포트의 최소 깊이입니다. 0에서 1 사이의 범위입니다.

MaxDepth

형식: FLOAT

뷰포트의 최대 깊이입니다. 0에서 1 사이의 범위입니다.

설명

모든 경우에 WidthHeight 는 = 0이어야 >하고 TopLeftX + WidthTopLeftY + Height 는 <= D3D11_VIEWPORT_BOUNDS_MAX 합니다.

Direct3D 11과 Direct3D 10 간의 뷰포트 크기 및 기능 수준 지원 차이점:

최소 및 최대 뷰포트 크기의 범위는 D3D_FEATURE_LEVEL 정의된 기능 수준에 따라 달라집니다.

  • Direct3D 11은 소수 뷰포트를 지원합니다. 매개 변수 형식은 부동 소수점 숫자입니다. 기능 수준(D3D_FEATURE_LEVEL_11_0)은 (-32768, 32,767) 사이의 (D3D11_VIEWPORT_BOUNDS_MIN, D3D11_VIEWPORT_BOUNDS_MAX) 값을 지원합니다.
  • Direct3D 10은 소수 뷰포트를 지원하지 않습니다. 기능 수준(D3D_FEATURE_LEVEL_10_1 이하)은 (-16384, 16383) 사이의 (D3D10_VIEWPORT_BOUNDS_MIN, D3D10_VIEWPORT_BOUNDS_MAX) 값을 지원합니다.
 
참고기능수준 9_x 대한 ID3D11DeviceContext::RSSetViewports 호출에서 pViewports 배열에 대한 D3D11_VIEWPORT 구조의 멤버에 float 값을 지정하더라도 RSSetViewports는 내부적으로 DWORD를 사용합니다. 이 동작으로 인해 뷰포트에 음의 왼쪽 위 모서리를 사용하면 기능 수준 9_x RSSetViewports 에 대한 호출이 실패합니다. 이 오류는 9_x 대한 RSSetViewports 가 부동 소수점 값을 유효성 검사 없이 부호 없는 정수로 캐스팅하여 정수 오버플로를 초래하기 때문에 발생합니다.
 

요구 사항

요구 사항
헤더 d3d11.h

추가 정보

핵심 구조체