다음을 통해 공유


D3D9 오버레이 - PresentEx

이 자동화된 테스트는 IDirect3D9DeviceEx::PresentEx를 대상으로 하는 여러 테스트 사례를 실행합니다. DWM 사용 유무에 관계없이 dest rect movement resize, colorkey all에 대한 특정 테스트 사례가 있습니다. 프레젠테이션 중에 오버레이를 숨기고 모드를 변경하는 경우가 있습니다. 기존 대칭 이동 콘텐츠 위에 오버레이 표시. 지원되는 경우 RGB 및 비 RGB 오버레이는 모두 공통 컨텍스트 모드(480p/i, 720p, 1080i 등)에서 테스트됩니다.

테스트 세부 정보

   
사양
  • Device.Graphics.WDDM11.DisplayRender.D3D9Overlay.D3D9Overlay
플랫폼
  • Windows 10, 클라이언트 버전(x86)
  • Windows 10, 클라이언트 버전(x64)
  • Windows Server 2016(x64)
  • Windows 10, 클라이언트 버전(Arm64)
지원되는 릴리스
  • Windows 10
  • Windows 10 버전 1511
  • Windows 10 버전 1607
  • Windows 10, 버전 1703
  • Windows 10, 버전 1709
  • Windows 10, 버전 1803
  • Windows 10, 버전 1809
  • Windows 10, 버전 1903
  • Windows 10에 대한 다음 업데이트
예상 실행 시간(분) 1
범주 호환성
시간 제한(분) 60
다시 부팅 필요 false
특별한 구성 필요 false
형식 automatic

 

추가 설명서

이 기능 영역의 테스트에는 다음 항목에서 찾을 수 있는 필수 조건, 설정, 문제 해결 정보를 포함한 추가 설명서가 있을 수 있습니다.

테스트 실행

테스트를 실행하기 전에 테스트 요구 사항: 그래픽 어댑터 또는 칩셋 테스트 필수 구성 요소에 설명된 대로 테스트 설정을 완료합니다.

또한 이 테스트에는 다음이 필요합니다.

  • D3DCAPS_OVERLAY를 노출하는 D3D9를 지원하는 장치 드라이버

문제 해결

HLK 테스트 실패의 일반적인 문제 해결은 Windows HLK 테스트 실패 문제 해결을 참조하세요.

문제 해결 정보는 Device.Graphics 테스트 문제 해결을 참조하세요.

이 테스트는 다양한 크기와 모드로 색 막대를 표시합니다. 이 테스트는 1-10개 프레임만 표시하며, 대부분의 경우 테스트를 한 단계씩 실행하지 않으면 표시되지 않습니다. 내부 테스트를 위해서는 프레임 캡처 디바이스가 필요하며 화면 콘텐츠를 캡처하는 속도가 매우 느릴 수 있습니다. 1-10개가 넘는 프레임의 유효성을 검사하는 것은 부담이 됩니다.

드라이버가 D3DCAPS_OVERLAY를 노출하지 않거나 D3D 디바이스를 만드는 동안 백 버퍼 형식 또는 모드가 지원되지 않는 경우 테스트는 SKIP을 반환할 수 있습니다.

추가 정보

이러한 사례는 함께 테스트해야 합니다. 자동화된 확인은 VGA 및 DVI 이미지 캡처를 사용하여 수행되며 호환되는 참조 이미지와 비교됩니다.

이 테스트는 다음 테스트 작업을 실행합니다.

  • PresentEx:

    • 창의 대상 사각형 이동, 크기 조정, 폐색 해제 및 변경 시 색 키 데이터가 적절하게 업데이트되는지 확인합니다. 테스트는 DWM(데스크톱 창 관리자)을 켰다 끈 후 테스트 사례를 실행합니다.

    • D3DPRESENT_UPDATEOVERLAYONLY를 사용하여 PresentEx를 호출한 후 창을 이동해도 실제 대칭 이동이 발생하지 않고 위치 및 colorkey 데이터가 업데이트되는지 확인합니다. DWM을 켜고 끕니다.

    • 먼저 D3DPRESENT_HIDEOVERLAY를 사용하여 오버레이를 비활성화하지 않고 디바이스 또는 스왑 체인이 제거되면 오버레이가 어떻게든 정리되는지 확인합니다. Microsoft® DirectX® 그래픽 커널 하위 시스템(DxgKrnl)은 정리할 것으로 예상되지만 D3D9는 대부분의 경우 정리를 처리합니다.

    • D3DPRESENT_HIDEOVERLAY가 오버레이를 비활성화하는지 확인합니다.

    • 디바이스 또는 모니터와 다른 구성에서 테스트 사례를 실행할 수 있도록 디바이스 매개 변수 추가.

    • 오버레이 프레임이 이미 표시되는 동안 현재 모드에서 오버레이가 아닌 프레임을 성공적으로 표시하는지 확인합니다. 그런 다음, 릴리스하면 오버레이를 표시하는 후속 호출이 성공적으로 표시된 이미지를 생성합니다.

    • 오버레이 프레임이 이미 표시되는 동안 현재 데스크톱 모드와 다른 모드에서 오버레이가 아닌 프레임을 성공적으로 표시하는지 확인합니다. 그런 다음, 릴리스하면 오버레이를 표시하는 후속 호출이 성공적으로 표시된 이미지를 생성합니다.

    • 오버레이 프레임이 이미 표시되는 동안 창 모드에서 오버레이가 아닌 프레임을 성공적으로 표시하는지 확인합니다. 그런 다음, 릴리스하면 오버레이가 여전히 올바르게 표시되는 이미지입니다.

  • PresentStatistics:

    • 현재 통계가 사용할 수 없는 상태이거나 지원되지 않는지 확인합니다.
  • 전원 관리:

    • 모든 절전 상태를 확인합니다.
  • 프레임 캡처 및 비교 구현:

    • 소프트웨어 참조 프레임과 렌더링된 오버레이를 비교하면 테스트 가능한 단위가 구성됩니다. 이 구현에서는 지정된 허용 오차 수준의 PSNR(최대 신호 대 잡음 비율)을 사용합니다. 하드웨어 프레임 캡처 디바이스로 인해 이 허용 오차가 높아야 합니다. 아날로그 연결에서 이 디바이스는 색 범위를 압축하거나 스톰프하여 렌더링된 프레임과 실제 표시된 프레임 간의 차이를 증가시킬 수 있습니다.

    • 이 비교는 서로 다른 D3DFORMAT를 포함하여 매개 변수화된 각 테스트 사례에서 구현할 수 있습니다. 그런 다음, 렌더링될 때 각 프레임의 유효성을 검사합니다.

명령 구문

명령 옵션 설명

D3D9OverlayTest PresentEx -whql -logclean

이 명령은 D3D9 오버레이 - PresentEx 테스트 작업을 실행합니다.

아무 옵션도 없으면 테스트는 극단적이며 유효하지 않은 인수 테스트 사례 일부를 제외한 모든 사례를 열거합니다.

TestCasePriority:[0, 1, 2]

실행할 테스트 사례의 우선 순위를 지정합니다. 0은 BVT(빌드 확인 테스트) 수준 테스트 사례 1, 2의 더 적극적인 테스트 사례를 실행합니다.

LogLevel[0, 1, 2]

테스트는 로깅 메서드에서 매우 자세한 정보를 표시할 수 있습니다. 기본적으로 수준 0이 설정되지만, 수준 1은 많은 스트림 상태/blt 상태 집합을 포함하여 테스트 사례당 증가된 로깅 정보를 수집합니다. 수준 2는 조정된 모든 스트림 상태 및 blt 상태와 모든 구성 정보를 수집합니다.

참고

   이 테스트 이진에 대한 명령줄 도움말을 보려면 /?를 입력합니다.

 

파일 목록

파일 위치

Configdisplay.exe

<[testbinroot]>\nttest\windowstest\tools\

D3D9OverlayTest.exe

<[testbinroot]>\nttest\windowstest\graphics\d3d\func\

TDRWatch.exe

< >[testbinroot]\nttest\windowstest\graphics\

 

매개 변수

매개 변수 이름 매개 변수 설명
MODIFIEDCMDLINE 테스트 실행 파일에 대한 추가 명령줄 인수
LLU_NetAccessOnly NET 사용자의 LLU 이름
ConfigDisplayCommandLine ConfigDisplay용 사용자 지정 명령줄 기본값: 로고