다음을 통해 공유


가상 키보드 지원

물리적으로 연결된 키보드는 PC에서 일반적인 가정이지만 게임 패드 및 터치와 같은 새로운 입력 양식은 이 가정에 도전합니다. 이는 핸드헬드 및 콘솔 게이머에게 특히 중요합니다. 플랫폼에 따라 가상 키보드를 불러올 수 있는 다양한 솔루션이 있습니다. 타이틀은 자체 가상 키보드를 구현하고 만들 수 있지만, 시스템은 플랫폼에 최적화된 자체 가상 키보드 대안을 제공하고 모든 게임에서 일관된 사용자 환경을 제공합니다.

Windows에서는 TryShowCoreInputViewKind::Gamepad 옵션으로 API를 활용할 수 있습니다. TryHide 그런 다음, 필요하지 않은 경우 API를 사용하여 키보드를 해제할 수 있습니다. 이는 다음 코드 샘플에서 설명합니다.

#include <winrt/windows.ui.viewmanagement.core.h>
using namespace winrt::Windows::UI::ViewManagement::Core;

// CoreInputViewKind::Gamepad enum requires headers from 26100.3624 Windows SDK or greater
// Otherwise, use static_cast<CoreInputViewKind>(7) for earlier SDKs

CoreInputView::GetForCurrentView().TryShow(CoreInputViewKind::Gamepad));

CoreInputView::GetForCurrentView().TryHide();

콘솔의 경우 GDK는 가상 키보드를 사용하여 텍스트 입력을 처리하는 두 가지 솔루션을 제공합니다. 대부분의 게임에서 최상의 솔루션은 XGameUiShowTextEntryAsync에 의존하는 것입니다. 여러 줄 텍스트 또는 1024자 이상의 입력을 렌더링해야 하는 게임의 경우 XGameUiTextEntryOpen을 사용할 수 있습니다.

다음 표는 이 두 가지 솔루션을 비교한 것입니다.

설명 XGameUiShowTextEntryAsync XGameUiTextEntryOpen
다중 회선 지원 아니요
최대 문자 수 1024 1024 * 32
입력 포커스 가상 키보드가 입력 포커스를 얻음 가상 키보드가 입력 포커스를 얻음
포지셔닝 자위 게임에 의한 포지셔닝
텍스트 렌더링 가상 키보드로 처리 게임에서 처리
클라우드 스트리밍 동작 클라이언트에서 가상 키보드 활용 스트리밍 서버에서 렌더링

참고 항목

Windows 핸드헬드 디바이스의 GDK 게임 검사 목록 - 확인 3: 텍스트 입력XGameUiShowTextEntryAsync
XGameUiTextEntryOpen