핸드헬드의 도킹 동작
일부 핸드헬드는 도킹 상태로 플레이됩니다. 핸드헬드가 도킹되었는지 확인하는 API는 없지만, 도킹된 기기에는 외부 디스플레이가 연결되어 있을 수 있습니다. EnumDisplayDevices와 EnumDisplaySettings API로 외부 디스플레이를 확인할 수 있습니다. 핸드헬드 기기가 도킹되면 다음 방법을 사용해 연결된 외부 디스플레이를 확인하세요.- 추가 게임패드를 확인하세요. 핸드헬드의 내장 게임패드는 항상 사용할 수 있지만, 사용자가 추가 게임패드를 연결할 수도 있습니다.
- 연결된 디스플레이의 화면 크기를 확인하세요.
- 게임패드가 여전히 기본 입력 수단이므로 가상 키보드 권장 사항은 유지됩니다.
- 일부 플레이어는 콘솔에서처럼 마우스와 키보드를 연결할 수 있습니다.
보장된 입력
다양한 게이밍 핸드헬드에는 추가 입력 옵션이 있을 수 있지만, 핸드헬드 기기에는 다음 입력이 있습니다.- A, B, X, Y 버튼
- 왼쪽 범퍼와 오른쪽 범퍼
- 왼쪽 트리거와 오른쪽 트리거
- 왼쪽 썸스틱과 오른쪽 썸스틱
- D-pad
- Menu 버튼
- View 버튼
전원
핸드헬드 기기가 배터리 대신 AC 전원을 사용하는지 확인하려면 GetSystemPowerStatus 함수를 호출하세요. 이 함수는 기기가 AC 전원을 사용하는지 보여주고 배터리 충전 상태(high, low, critical, 또는 충전 중)의 요약을 제공합니다. 게임이 필요로 하는 전력이 항상 자명한 것은 아니므로, 게임이 기기의 배터리 수명에 어떤 영향을 미치는지 고려하세요. XBOX Sustainability Toolkit의 가능한 전력 절감 권장 사항은 핸드헬드에도 적용될 수 있습니다. 전력 절감을 극대화하려면 다음을 수행하세요.- VSync를 활성화해 GPU에 더 많은 유휴 시간을 주고 전력 사용을 줄입니다.
- 내부 렌더링 해상도를 낮추고 업스케일 패스를 적용합니다.
- 프레임 레이트를 낮춰 전력을 절약합니다. 참고: 더 낮은 프레임 레이트는 게임 플레이에 영향을 줄 수 있습니다.
- 전체 화면 메뉴나 UI 요소가 나타나거나 게임이 일시 정지된 경우 월드 렌더링을 중단합니다.
- 입력 유휴가 감지되고 플레이어가 비활성 상태이면 게임을 일시 정지합니다.
화면 크기
다양한 게이밍 핸드헬드마다 화면 해상도가 다르지만 다음 표준에 의존할 수 있습니다.- 대각선 화면 크기는 최소 7인치(17.8 cm)입니다.
- 화면 종횡비는 16:9 또는 16:10입니다.
핸드헬드 경험 모범 사례 샘플
핸드헬드 기기용으로 게임을 빌드하고 최적화하는 방법에 대한 추가 인사이트를 위해 Microsoft는 네이티브 C++ 샘플과 Unity 관리형 C# 샘플, 두 가지 샘플을 공개했습니다. 두 샘플 모두 API를 활용해 게임의 핸드헬드 경험을 손쉽게 관리하는 유사한 모범 사례 집합을 제공합니다.- 기기가 핸드헬드인지 판별합니다.
- 기기가 배터리로 실행 중인지, 충전 중인지, 또는 외부 전원을 사용 중인지 판별합니다.
- 통합 디스플레이 속성을 포함한 기기별 속성을 조회합니다.
- DPI 변경을 처리하고 UI를 그에 맞게 스케일링합니다.
- 텍스트 입력에 가상 키보드를 사용합니다.
- 네트워크 기기와 유형을 조회합니다.
- 네트워크 및 Bluetooth® 연결 상태를 판별합니다.
- 게임패드, 키보드, 마우스로부터의 입력을 처리합니다.
- 입력 모달리티를 판별합니다. 예를 들어 가장 최근에 사용된 입력 기기를 식별합니다.
- 네이티브 C++ 샘플: GitHub의 C++ Sample.
- Unity 관리형 C# 샘플: GitHub의 Unity Managed C# Sample.
