> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# GameInput

> GameInput

# GameInput

As APIs do GameInput são usadas para capturar entradas humanas de uma ampla variedade de dispositivos, como controles de jogo, manches de voo, volantes de corrida e entrada por toque.

<Note>Esta página documenta a API GameInput atual (mais recente). O histórico de versões de cada membro é indicado nas páginas de referência individuais. Os membros que existiam apenas em versões mais antigas da API estão listados na seção [Membros removidos](#removed-members) abaixo. Observe que os runtimes mais recentes da API oferecem suporte a todas as versões disponíveis da API, portanto, os membros removidos ainda podem ser usados com os cabeçalhos de versões mais antigas.</Note>

## Interfaces

| Interface | Descrição |
| - | - |
| [IGameInputDevice](/pt-BR/reference/input/gameinput/interfaces/igameinputdevice/igameinputdevice) | Define um dispositivo de entrada. |
| [IGameInputDispatcher](/pt-BR/reference/input/gameinput/interfaces/IGameInputDispatcher/igameinputdispatcher) | Fornece controle manual sobre o agendamento das tarefas em segundo plano gerenciadas pela API GameInput. |
| [IGameInputForceFeedbackEffect](/pt-BR/reference/input/gameinput/interfaces/igameinputforcefeedbackeffect/igameinputforcefeedbackeffect) | Descreve um efeito de force feedback em um dispositivo de entrada compatível. |
| [IGameInputMapper](/pt-BR/reference/input/gameinput/interfaces/igameinputmapper/igameinputmapper) | Fornece informações sobre como o GameInput mapeia um dispositivo. |
| [IGameInputRawDeviceReport](/pt-BR/reference/input/gameinput/interfaces/igameinputrawdevicereport/igameinputrawdevicereport) | Representa um buffer de bytes brutos passado para um dispositivo de entrada ou recebido dele. |
| [IGameInputReading](/pt-BR/reference/input/gameinput/interfaces/igameinputreading/igameinputreading) | Contém os dados de uma única atualização de entrada. |
| [IGameInput](/pt-BR/reference/input/gameinput/interfaces/igameinput/igameinput) | Um singleton por processo que fornece acesso ao fluxo de entrada dos dispositivos. |

## Funções

| Função | Descrição |
| - | - |
| [GameInputCreate](/pt-BR/reference/input/gameinput/functions/gameinputcreate) | Recupera uma instância da interface IGameInput. |
| [GameInputDeviceCallback](/pt-BR/reference/input/gameinput/functions/gameinputdevicecallback) | Define um retorno de chamada para eventos de conexão e desconexão de dispositivos. |
| [GameInputKeyboardLayoutCallback](/pt-BR/reference/input/gameinput/functions/gameinputkeyboardlayoutcallback) | Define um retorno de chamada para eventos de alteração do layout de teclado. |
| [GameInputReadingCallback](/pt-BR/reference/input/gameinput/functions/gameinputreadingcallback) | Define um retorno de chamada para eventos de chegada de novas leituras. |
| [GameInputSystemButtonCallback](/pt-BR/reference/input/gameinput/functions/gameinputsystembuttoncallback) | Define um retorno de chamada para eventos de pressionamento e liberação do botão Guia ou Compartilhar. |

## Estruturas

| Estrutura | Descrição |
| - | - |
| [GameInputArcadeStickInfo](/pt-BR/reference/input/gameinput/structs/gameinputarcadestickinfo) | Detalha as características de um arcade stick. |
| [GameInputArcadeStickState](/pt-BR/reference/input/gameinput/structs/gameinputarcadestickstate) | Fornece o status atual de um arcade stick. |
| [GameInputAxisMapping](/pt-BR/reference/input/gameinput/structs/gameinputaxismapping) | Descreve como um eixo é mapeado para o controle. |
| [GameInputButtonMapping](/pt-BR/reference/input/gameinput/structs/gameinputbuttonmapping) | Descreve como um botão é mapeado para o controle. |
| [GameInputControllerInfo](/pt-BR/reference/input/gameinput/structs/gameinputcontrollerinfo) | Detalha as características de um controle. |
| [GameInputControllerSwitchInfo](/pt-BR/reference/input/gameinput/structs/gameinputcontrollerswitchinfo) | Especifica um switch em um dispositivo de entrada. |
| [GameInputDeviceInfo](/pt-BR/reference/input/gameinput/structs/gameinputdeviceinfo) | Contém informações abrangentes sobre um dispositivo de entrada. |
| [GameInputFlightStickInfo](/pt-BR/reference/input/gameinput/structs/gameinputflightstickinfo) | Detalha as características de um manche de voo. |
| [GameInputFlightStickState](/pt-BR/reference/input/gameinput/structs/gameinputflightstickstate) | Fornece o status atual de um manche de voo. |
| [GameInputForceFeedbackConditionParams](/pt-BR/reference/input/gameinput/structs/gameinputforcefeedbackconditionparams) | Define determinados aspectos físicos de um efeito de force feedback. |
| [GameInputForceFeedbackConstantParams](/pt-BR/reference/input/gameinput/structs/gameinputforcefeedbackconstantparams) | Define um aspecto físico constante de um efeito de force feedback. |
| [GameInputForceFeedbackEnvelope](/pt-BR/reference/input/gameinput/structs/gameinputforcefeedbackenvelope) | Define um envelope que modifica um efeito de force feedback. |
| [GameInputForceFeedbackMagnitude](/pt-BR/reference/input/gameinput/structs/gameinputforcefeedbackmagnitude) | Define a magnitude da força exercida por um efeito de force feedback. |
| [GameInputForceFeedbackMotorInfo](/pt-BR/reference/input/gameinput/structs/gameinputforcefeedbackmotorinfo) | Fornece informações sobre o motor de force feedback. |
| [GameInputForceFeedbackParams](/pt-BR/reference/input/gameinput/structs/gameinputforcefeedbackparams) | Define os atributos com suporte na API de um efeito de force feedback. |
| [GameInputForceFeedbackPeriodicParams](/pt-BR/reference/input/gameinput/structs/gameinputforcefeedbackperiodicparams) | Define os parâmetros de um efeito de force feedback periódico. |
| [GameInputForceFeedbackRampParams](/pt-BR/reference/input/gameinput/structs/gameinputforcefeedbackrampparams) | Define os parâmetros de um efeito de force feedback em rampa. |
| [GameInputGamepadInfo](/pt-BR/reference/input/gameinput/structs/gameinputgamepadinfo) | Detalha as características de um gamepad. |
| [GameInputGamepadState](/pt-BR/reference/input/gameinput/structs/gameinputgamepadstate) | Fornece o status atual de um dispositivo de entrada gamepad. |
| [GameInputHapticInfo](/pt-BR/reference/input/gameinput/structs/gameinputhapticinfo) | Detalha as características de um motor de feedback háptico. |
| [GameInputKeyState](/pt-BR/reference/input/gameinput/structs/gameinputkeystate) | Fornece o estado atual de uma tecla em um teclado. |
| [GameInputKeyboardInfo](/pt-BR/reference/input/gameinput/structs/gameinputkeyboardinfo) | Detalha as características de um teclado. |
| [GameInputMouseInfo](/pt-BR/reference/input/gameinput/structs/gameinputmouseinfo) | Detalha as características de um mouse. |
| [GameInputMouseState](/pt-BR/reference/input/gameinput/structs/gameinputmousestate) | Fornece o status atual de um mouse. |
| [GameInputRacingWheelInfo](/pt-BR/reference/input/gameinput/structs/gameinputracingwheelinfo) | Detalha as características de um volante de corrida. |
| [GameInputRacingWheelState](/pt-BR/reference/input/gameinput/structs/gameinputracingwheelstate) | Fornece o status atual de um volante de corrida. |
| [GameInputRawDeviceReportInfo](/pt-BR/reference/input/gameinput/structs/gameinputrawdevicereportinfo) | Descreve um relatório bruto de dispositivo. |
| [GameInputRumbleParams](/pt-BR/reference/input/gameinput/structs/gameinputrumbleparams) | Descreve um efeito de vibração produzido por um controle. |
| [GameInputSensorsInfo](/pt-BR/reference/input/gameinput/structs/gameinputsensorsinfo) | Detalha as características dos sensores disponíveis. |
| [GameInputSensorsState](/pt-BR/reference/input/gameinput/structs/gameinputsensorsstate) | Fornece o status atual dos sensores de um dispositivo. |
| [GameInputUsage](/pt-BR/reference/input/gameinput/structs/gameinputusage) | Descreve um uso HID específico. |
| [GameInputVersion](/pt-BR/reference/input/gameinput/structs/gameinputversion) | Descreve um número de versão de quatro partes. |

## Enumerações

| Enumeração | Descrição |
| - | - |
| [GameInputArcadeStickButtons](/pt-BR/reference/input/gameinput/enums/gameinputarcadestickbuttons) | Enumera as entradas de um arcade stick. |
| [GameInputDeviceFamily](/pt-BR/reference/input/gameinput/enums/gameinputdevicefamily) | Enumera as famílias de dispositivos de entrada. |
| [GameInputDeviceStatus](/pt-BR/reference/input/gameinput/enums/gameinputdevicestatus) | Enumera os estados em que um dispositivo de entrada pode estar. |
| [GameInputElementKind](/pt-BR/reference/input/gameinput/enums/gameinputelementkind) | Enumera o tipo de elemento de uma determinada entrada. |
| [GameInputEnumerationKind](/pt-BR/reference/input/gameinput/enums/gameinputenumerationkind) | Enumera os tipos de comportamento para enumerar dispositivos de entrada. |
| [GameInputFeedbackAxes](/pt-BR/reference/input/gameinput/enums/gameinputfeedbackaxes) | Enumera os tipos de direção dos motores de force feedback disponíveis em um dispositivo de entrada. |
| [GameInputFeedbackEffectState](/pt-BR/reference/input/gameinput/enums/gameinputfeedbackeffectstate) | Enumera os estados de um efeito de force feedback. |
| [GameInputFlightStickAxes](/pt-BR/reference/input/gameinput/enums/gameinputflightstickaxes) | Enumera os eixos do manche de voo. |
| [GameInputFlightStickButtons](/pt-BR/reference/input/gameinput/enums/gameinputflightstickbuttons) | Enumera os botões do manche de voo. |
| [GameInputFocusPolicy](/pt-BR/reference/input/gameinput/enums/gameinputfocuspolicy) | Enumera as políticas de foco de um dispositivo de entrada. |
| [GameInputForceFeedbackEffectKind](/pt-BR/reference/input/gameinput/enums/gameinputforcefeedbackeffectkind) | Enumera os tipos de efeitos de magnitude ao longo do tempo que podem ser aplicados a um efeito de force feedback. |
| [GameInputGamepadAxes](/pt-BR/reference/input/gameinput/enums/gameinputgamepadaxes) | Enumera os eixos do gamepad. |
| [GameInputGamepadButtons](/pt-BR/reference/input/gameinput/enums/gameinputgamepadbuttons) | Enumera os botões do gamepad, incluindo o direcional (D-pad). |
| [GameInputKeyboardKind](/pt-BR/reference/input/gameinput/enums/gameinputkeyboardkind) | Enumera os tipos de teclado por layout de teclas. |
| [GameInputKind](/pt-BR/reference/input/gameinput/enums/gameinputkind) | Enumera os tipos de dispositivo válidos do GameInput. |
| [GameInputLabel](/pt-BR/reference/input/gameinput/enums/gameinputlabel) | Enumera os rótulos de botão com suporte. |
| [GameInputMouseButtons](/pt-BR/reference/input/gameinput/enums/gameinputmousebuttons) | Enumera os botões do mouse. |
| [GameInputMousePositions](/pt-BR/reference/input/gameinput/enums/gameInputmousepositions) | Enumera os modos de posicionamento do mouse. |
| [GameInputRacingWheelAxes](/pt-BR/reference/input/gameinput/enums/gameinputracingwheelaxes) | Enumera os eixos de um volante de corrida. |
| [GameInputRacingWheelButtons](/pt-BR/reference/input/gameinput/enums/gameinputracingwheelbuttons) | Enumera os botões de um volante de corrida. |
| [GameInputRawDeviceReportKind](/pt-BR/reference/input/gameinput/enums/gameinputrawdevicereportkind) | Enumera os tipos de relatórios brutos de dispositivo. |
| [GameInputRumbleMotors](/pt-BR/reference/input/gameinput/enums/gameinputrumblemotors) | Enumera os motores de vibração com suporte na API para um dispositivo de entrada. |
| [GameInputSensorAccuracy](/pt-BR/reference/input/gameinput/enums/gameinputsensoraccuracy) | Enumera os níveis de precisão dos sensores. |
| [GameInputSensorsKind](/pt-BR/reference/input/gameinput/enums/gameinputsensorskind) | Enumera os tipos de sensor válidos do GameInput. |
| [GameInputSwitchKind](/pt-BR/reference/input/gameinput/enums/gameinputswitchkind) | Enumera os tipos de switches com suporte em um dispositivo de entrada. |
| [GameInputSwitchPosition](/pt-BR/reference/input/gameinput/enums/gameinputswitchposition) | Enumera as posições de um switch em um dispositivo de entrada. |
| [GameInputSystemButtons](/pt-BR/reference/input/gameinput/enums/gameinputsystembuttons) | Enumera os botões usados para controlar o sistema. |

## Membros removidos

Os membros a seguir estavam presentes em versões mais antigas da API, mas foram removidos da API atual. Para obter a documentação completa de cada membro removido, confira [Membros preteridos da API GameInput](/pt-BR/reference/input/gameinput/deprecated/gameinput_deprecated_members).

### Interfaces removidas

Nenhuma interface foi removida permanentemente. `IGameInputRawDeviceReport` esteve ausente nas v1 e v2, mas foi reintroduzida na API atual.

### Funções removidas

| Função | Última versão | Descrição |
| - | - | - |
| [GameInputGuideButtonCallback](/pt-BR/reference/input/gameinput/deprecated/functions/gameinputguidebuttoncallback) | v0 | Retorno de chamada definido pelo título para eventos do botão Guia. Substituída por `GameInputSystemButtonCallback`. |

### Estruturas removidas

| Estrutura | Última versão | Descrição |
| - | - | - |
| [GameInputBatteryState](/pt-BR/reference/input/gameinput/deprecated/structs/gameinputbatterystate) | v0 | Descrevia o estado da bateria de um dispositivo de entrada. |
| [GameInputControllerAxisInfo](/pt-BR/reference/input/gameinput/deprecated/structs/gameinputcontrolleraxisinfo) | v2 | Descrevia um eixo em um dispositivo de entrada. Substituída por campos em `GameInputControllerInfo`. |
| [GameInputControllerButtonInfo](/pt-BR/reference/input/gameinput/deprecated/structs/gameinputcontrollerbuttoninfo) | v2 | Descrevia um botão em um dispositivo de entrada. Substituída por campos em `GameInputControllerInfo`. |
| [GameInputHapticFeedbackMotorInfo](/pt-BR/reference/input/gameinput/deprecated/structs/gameinputhapticfeedbackmotorinfo) | v0 | Descrevia um motor de feedback háptico. Substituída por `GameInputHapticInfo`. |
| [GameInputHapticFeedbackParams](/pt-BR/reference/input/gameinput/deprecated/structs/gameinputhapticfeedbackparams) | v0 | Descrevia um efeito de feedback háptico. |
| [GameInputHapticWaveformInfo](/pt-BR/reference/input/gameinput/deprecated/structs/gameinputhapticwaveforminfo) | v0 | Descrevia as características de um efeito de feedback háptico. |
| [GameInputMotionInfo](/pt-BR/reference/input/gameinput/deprecated/structs/gameinputmotioninfo) | v0 | Descrevia as propriedades mensuráveis de um dispositivo de entrada com suporte a movimento. |
| [GameInputMotionState](/pt-BR/reference/input/gameinput/deprecated/structs/gameinputmotionstate) | v0 | Descrevia o estado da entrada de movimento. |
| [GameInputRawDeviceItemCollectionInfo](/pt-BR/reference/input/gameinput/deprecated/structs/gameinputrawdeviceitemcollectioninfo) | v0 | Descrevia uma coleção de itens brutos de dispositivo. |
| [GameInputRawDeviceReportItemInfo](/pt-BR/reference/input/gameinput/deprecated/structs/gameinputrawdevicereportiteminfo) | v0 | Descrevia um item de relatório bruto de dispositivo. |
| [GameInputString](/pt-BR/reference/input/gameinput/deprecated/structs/gameinputstring) | v0 | Descrevia uma cadeia de caracteres que contém informações sobre um dispositivo de entrada. |
| [GameInputTouchSensorInfo](/pt-BR/reference/input/gameinput/deprecated/structs/gameinputtouchsensorinfo) | v0 | Descrevia um sensor de toque de um dispositivo de entrada. |
| [GameInputTouchState](/pt-BR/reference/input/gameinput/deprecated/structs/gameinputtouchstate) | v0 | Descrevia o estado de um dispositivo de entrada por toque. |
| [GameInputUiNavigationInfo](/pt-BR/reference/input/gameinput/deprecated/structs/gameinputuinavigationinfo) | v2 | Especificava os rótulos dos botões de navegação na interface do usuário. |
| [GameInputUiNavigationState](/pt-BR/reference/input/gameinput/deprecated/structs/gameinputuinavigationstate) | v2 | Fornecia o status atual da entrada de navegação na interface do usuário. |

### Enumerações removidas

| Enumeração | Última versão | Descrição |
| - | - | - |
| [GameInputBatteryStatus](/pt-BR/reference/input/gameinput/deprecated/enums/gameinputbatterystatus) | v0 | Enumerava os estados da bateria de um dispositivo de entrada. |
| [GameInputDeviceCapabilities](/pt-BR/reference/input/gameinput/deprecated/enums/gameinputdevicecapabilities) | v0 | Enumerava determinadas funcionalidades de um dispositivo de entrada. |
| [GameInputLocation](/pt-BR/reference/input/gameinput/deprecated/enums/gameinputlocation) | v0 | Enumerava as partes de um dispositivo de entrada. |
| [GameInputMotionAccuracy](/pt-BR/reference/input/gameinput/deprecated/enums/gameinputmotionaccuracy) | v0 | Enumerava os níveis de precisão dos sensores de movimento. |
| [GameInputRawDeviceItemCollectionKind](/pt-BR/reference/input/gameinput/deprecated/enums/gameinputrawdeviceitemcollectionkind) | v0 | Enumerava os tipos de coleções de itens brutos de dispositivo. |
| [GameInputRawDevicePhysicalUnitKind](/pt-BR/reference/input/gameinput/deprecated/enums/gameinputrawdevicephysicalunitkind) | v0 | Enumerava as unidades físicas associadas à entrada do dispositivo. |
| [GameInputRawDeviceReportItemFlags](/pt-BR/reference/input/gameinput/deprecated/enums/gameinputrawdevicereportitemflags) | v0 | Enumerava os tipos de itens de relatório bruto de dispositivo. |
| [GameInputTouchShape](/pt-BR/reference/input/gameinput/deprecated/enums/gameinputtouchshape) | v0 | Enumerava as formas de um sensor de toque. |
| [GameInputUiNavigationButtons](/pt-BR/reference/input/gameinput/deprecated/enums/gameinputuinavigationbuttons) | v2 | Enumerava os botões de navegação da interface do usuário. |

## Histórico de versões

| Versão | Alterações |
| - | - |
| **v3** | Adicionada a interface `IGameInputMapper`. Reintroduzida a interface `IGameInputRawDeviceReport` (ausente nas v1/v2). Adicionadas as estruturas `GameInputAxisMapping`, `GameInputButtonMapping`, `GameInputControllerInfo` e `GameInputHapticInfo`. Reintroduzidas a estrutura `GameInputRawDeviceReportInfo` e a enumeração `GameInputRawDeviceReportKind` (ausentes nas v1/v2). Reintroduzida a estrutura `GameInputVersion` (ausente nas v1/v2). Adicionadas as enumerações `GameInputElementKind`, `GameInputFlightStickAxes`, `GameInputGamepadAxes` e `GameInputRacingWheelAxes`. Removidas as estruturas `GameInputControllerAxisInfo`, `GameInputControllerButtonInfo`, `GameInputUiNavigationInfo` e `GameInputUiNavigationState`. Removida a enumeração `GameInputUiNavigationButtons`. |
| **v2** | Adicionadas as estruturas `GameInputSensorsInfo` e `GameInputSensorsState`. Adicionadas as enumerações `GameInputSensorsKind` e `GameInputSensorAccuracy`. Adicionados `IGameInputDevice::DirectInputEscape` e `IGameInputDevice::GetHapticInfo`. Adicionado `IGameInputReading::GetSensorsState`. Reintroduzida a estrutura `GameInputVersion` (ausente na v1). |
| **v1** | Removidas a interface `IGameInputRawDeviceReport`, a estrutura `GameInputRawDeviceReportInfo` e a enumeração `GameInputRawDeviceReportKind`. Removida a estrutura `GameInputVersion`. Adicionada a enumeração `GameInputMousePositions`. Removidos os tipos de háptica, movimento e toque não implementados exclusivos da v0 (`GameInputBatteryState`, `GameInputHapticFeedbackMotorInfo`, `GameInputHapticFeedbackParams`, `GameInputHapticWaveformInfo`, `GameInputMotionInfo`, `GameInputMotionState`, `GameInputTouchSensorInfo`, `GameInputTouchState`, `GameInputString`, `GameInputRawDeviceItemCollectionInfo`, `GameInputRawDeviceReportItemInfo`). |
| **v0** | Introduzida. |

## Documentação conceitual

* [Visão geral da entrada](/pt-BR/build/core-features/common/input/overviews/input-overview)
* [Fundamentos da entrada](/pt-BR/build/core-features/common/input/overviews/input-fundamentals)
* [Dispositivos de entrada](/pt-BR/build/core-features/common/input/overviews/input-devices)

## Confira também

[Referência da API de entrada](/pt-BR/reference/input/gc-reference-input-toc)


## Related topics

- [GameInput](/reference/input/gameinput/gameinput_members.md)
- [Input](/build/core-features/common/input/gc-input-toc.md)
- [Overview of GameInput](/build/core-features/common/input/overviews/input-overview.md)
- [GameInput fundamentals](/build/core-features/common/input/overviews/input-fundamentals.md)
- [GameInput 概述](/zh-CN/build/core-features/common/input/overviews/input-overview.md)
