다음을 통해 공유


GameInput 개요

GameInput은 하나의 일관된 인터페이스를 통해 모든 종류의 입력 장치를 제공하는 차세대 입력 API입니다. 이 API는 사용하기 쉬운 간단한 프로그래밍 모델로 설계되었습니다. GameInput은 최상의 성능을 제공하기 위해 처음부터 구축됩니다. GameInput API의 주요 기능은 다음과 같습니다.

  • 가용성

    GameInput은 NuGet을 통해 GDK 및 PC를 통해 Xbox에서 사용할 수 있습니다. Windows 10 19H1(2019년 5월 업데이트)으로 돌아가는 이전 버전의 Windows가 지원됩니다.

  • 일관성

    GameInput은 동기화된 하나의 통합된 입력 모델을 통해 키보드, 마우스, 게임 패드 및 기타 게임 컨트롤러의 입력을 공통 시간 기반으로 보냅니다. 이러한 장치의 입력을 처리하기 위한 코드는 거의 동일하며 많은 동일한 함수를 사용하지만 다른 필터가 적용됩니다. 따라서 입력 코드를 크게 변경하지 않고도 추가 입력 장치에 대한 지원을 쉽게 추가할 수 있습니다.

  • 기능

    GameInput은 XInput, DirectInput, 원시 입력, HID(휴먼 인터페이스 장치) 및 WinRT API 등 모든 레거시 입력 API의 기능 상위 집합이며 자체의 새로운 기능을 추가합니다. GameInput의 기능은 간단한 고정 형식 게임 패드 상태에서 상세한 하위 수준 원시 장치 액세스까지 다양합니다. 입력은 폴링 또는 이벤트 중심 방식의 콜백을 통해 얻을 수 있습니다. 촉각과 힘 피드백은 완전히 지원되며, 타사 장치 SDK는 맞춤형 장치 기능에 액세스할 수 있도록 GameInput 위에 쉽게 쓸 수 있습니다.

  • 성능:

    GameInput은 가능한 가장 낮은 입력 대기 시간과 리소스 사용을 위해 완전히 새로운 DMA(직접 메모리 액세스) 아키텍처를 중심으로 구축되었습니다. 거의 모든 API 함수는 엄격한 성능 보장을 통해 잠금 해제된 상태이며 여전히 100% 스레드 안전 함수입니다. 따라서 렌더 스레드와 같은 시간에 민감한 컨텍스트에서 안전하게 호출할 수 있습니다. 고급 애플리케이션은 GameInput의 내부 비동기 작업 큐를 직접 제어하여 어떤 스레드와 얼마나 자주 작업할지 제어할 수 있습니다.

  • 유용성

    GameInput은 사용 편의성을 최우선 과제로 설계되었습니다. 대부분의 일반적인 입력 작업은 몇 줄의 코드만으로 구현할 수 있습니다.

시작하기

GameInput은 모든 Microsoft 플랫폼(이전 버전 Windows 포함)을 지원하며 기존 API와 비교하여 성능이 우수하므로 대상 플랫폼에 관계없이 모든 새로운 코드에 대해 권장되는 API입니다.

참고 항목

Microsoft GDK(게임 개발 키트)에서 Xbox One용으로 개발된 게임의 경우 GameInput이 유일한 입력 API입니다.

PC를 대상으로 하는 게임을 개발하는 경우 Microsoft.GameInput] NuGet 패키지에서 GameInput을 설치해야 합니다.

GameInput API에 대해 자세히 알아보려면 GameInput 기본 사항으로 시작하세요.

기존 코드베이스에서 입력 코드를 포팅하는 경우 GameInput 포팅 가이드에서 API별 가이드를 참조하세요.

참고 항목

GameInput 기본 사항

NuGet을 사용하여 PC용 GameInput 설치

GameInput 포팅 가이드

GameInput API 참조

Microsoft 게임 개발 키트