고 DPI 인식 활성화
타이틀이 고 DPI 디스플레이를 지원하도록 하려면
- 게임 실행 파일의 어셈블리 매니페스트 XML을 확인합니다. 이는 titleName.exe, titleName.exe 옆의 매니페스트 파일, 또는 게임 실행 파일에 임베드된 매니페스트일 수 있습니다. sigcheck를 사용해 명령줄로 임베드된 매니페스트를 게임 실행 파일에서 추출할 수 있습니다(다음과 같이 표시됨).
- 매니페스트 XML에 다음
<dpiAware>태그만 보인다면 고 DPI 디스플레이가 지원되지 않는 것입니다. - 임베드된 매니페스트가 별도(loose) 매니페스트보다 우선합니다. 임베드된 매니페스트가 있다면 4단계로 이동하세요. 없다면 다음 콘텐츠를 가진 titleName.exe.manifest 파일을 생성하세요.
- 임베드된 매니페스트가 있다면 Windows SDK의 다음 Mt.exe 도구를 사용해 명령줄로 위치를 찾습니다.
- 임베드된 매니페스트를 편집해 새
<dpiAwareness>태그를 추가합니다(다음과 같이 표시됨). - Windows SDK의 다음 Mt.exe 도구를 사용해 명령줄에서 임베드된 매니페스트를 업데이트합니다.
고 DPI 인식 검증
타이틀이 고 DPI 디스플레이를 지원하는지 확인하려면
- Surface Studio 2와 같은 고 DPI 디스플레이가 있는 PC에서 Settings > Display로 이동해 스케일링을 150 percent로 설정합니다.
- 타이틀을 실행합니다.
- 커서가 표시되는 화면을 살펴보고 타이틀이 예상대로 표시되는지 확인합니다. 예를 들어 전체 화면 타이틀은 전체 화면을 차지해야 합니다.
- 커서를 화면 전반에 걸쳐 이동시키고, 타이틀 창의 전체 표면 영역에 도달할 수 있는지 확인합니다.
- 인터랙티브 UI 요소(예: 버튼) 위에 커서를 올리고, 시각적 상태와 상호작용이 예상대로 동작하는지 확인합니다. 예를 들어 버튼은 커서가 인접한 위치가 아니라 바로 위에 있을 때 시각적 상태가 변해야 합니다.
참고 사항
- 레지스트리 가상화를 비활성화하는 것이 고 DPI 인식 문제의 해결책으로 제안되기도 하지만, 권장하지 않습니다.
- Visual Studio에는 Configuration Properties에 DPI Awareness 옵션이 있지만, 이는 이전
<dpiAware>태그를 사용하며 MSIXVC 패키지 타이틀에는 동작하지 않습니다.
