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

# Dynamic Latency Input do GameInput

> Dynamic Latency Input

> [!NOTE]
>
> O Dynamic Latency Input está disponível apenas no console XBOX. O recurso não está disponível no PC e, portanto, a API não está implementada na plataforma PC. As APIs do DLI também não estão mais disponíveis a partir do GameInput v.1, mas o sistema de sincronização subjacente continua disponível nos dispositivos compatíveis. Um título ainda pode optar por fornecer essas sincronizações fazendo a conversão de uma versão futura da API de volta para a v.0 para essa chamada específica.

Use este artigo para entender como o Dynamic Latency Input (DLI) sincroniza a entrada e a saída de dispositivos no jogo. *Atraso de entrada*, ou *latência de entrada*, é o atraso entre o momento em que ocorre uma entrada física e o momento em que uma saída é enviada. Em jogos, esse atraso é o tempo entre o pressionamento de um botão e a saída na tela. Manter essa latência baixa é crucial para manter os usuários envolvidos e imersos na jogabilidade.

A latência de entrada é o tempo entre o pressionamento de um botão e a leitura dele pelo jogo. O DLI é uma arquitetura de entrada projetada para reduzir a latência nessa parte da equação.

## Visão geral do Dynamic Latency Input

O DLI é um sistema de sincronização entre o controle e a plataforma de jogo. Ele avalia o padrão de chamadas de entrada do jogo e ajusta a taxa de relatório do controle para fornecer entradas atualizadas logo antes da chamada de entrada. A seguir estão os principais componentes necessários para concluir uma chamada de entrada.

* Um controle capaz de ajustar dinamicamente a frequência com que relata e lê seus botões.
* A capacidade de monitorar os padrões de leitura de entrada do jogo para prever quando a próxima entrada será necessária.
* A capacidade de usar esses padrões para ajustar os relatórios do controle de modo que se alinhem às necessidades do jogo.

## Precisão do DLI

O DLI é executado quando um dispositivo compatível está em uso. Ele monitora a qualidade da sua previsão de quando ocorrerá a próxima leitura de entrada. Ele mantém esse valor como uma confiança interna. Se as previsões estiverem consistentemente erradas, a confiança fica baixa demais e o DLI se desabilita.
O motivo mais comum para um valor de confiança baixo é o comportamento inconsistente. O DLI pressupõe que a entrada é lida em uma cadência consistente e se sincroniza com ela. Alguns jogos usam threads de simulação que superam o DLI ou que leem a entrada em intervalos inconsistentes. Esses casos confundem o DLI e reduzem sua confiança, porque ele não consegue encontrar uma taxa estável com a qual se sincronizar.

> [!NOTE]
>
> O DLI é limitado a uma cadência de 125 Hz. Tentar uma cadência maior que esse valor faz com que o DLI se desabilite.

### Usar dicas para aumentar a precisão

Para atenuar valores de confiança baixos e auxiliar o DLI, envie dicas à plataforma que lhe deem controle sobre quando a entrada é sincronizada. Quando você chama [SendInputSynchronizationHint](https://docs.xbox.com/pt-BR/reference/input/gameinput/deprecated/interfaces/igameinputdevice/methods/igameinputdevice_sendinputsynchronizationhint.md), o DLI ignora o tempo de leitura da entrada e se sincroniza com a chamada de dica. Para garantir que as entradas não cheguem atrasadas, use `SendInputSynchronizationHint` logo antes da primeira leitura de entrada de cada passagem de simulação, conforme mostrado no código a seguir.

```c++ theme={null}
IGameInputDevice::SendInputSynchronizationHint()
```

## Desabilitando o DLI

Atualmente, não há nenhuma situação recomendada para desativar a sincronização de entrada, mas desabilitá-la pode ajudar ao avaliar seus benefícios. Use [SetInputSynchronizationState](https://docs.xbox.com/pt-BR/reference/input/gameinput/deprecated/interfaces/igameinputdevice/methods/igameinputdevice_setinputsynchronizationstate.md) para desabilitar ou reabilitar o DLI, conforme mostrado no código a seguir.

```c++ theme={null}
IGameInputDevice::SetInputSynchronizationState(bool enabled)
```

## Analisando o desempenho do DLI

Para obter mais informações sobre o desempenho do DLI em relação a um título, consulte [Analisando o desempenho do Dynamic Latency Input (tópico sob NDA)](https://docs.xbox.com/pt-BR/tools/tools-console/pix/pix-input-sync.md).

## Suporte a dispositivos

O DLI só é executado em dispositivos de entrada com firmware compatível. Para obter mais informações sobre os dispositivos compatíveis com o DLI, consulte [GameInputDeviceCapabilities](https://docs.xbox.com/pt-BR/reference/input/gameinput/deprecated/enums/gameinputdevicecapabilities.md).

## Documentação de referência da API

* [GameInput (conteúdo da API)](https://docs.xbox.com/pt-BR/reference/input/gameinput/gameinput_members.md)

## Confira também

[Conceitos básicos do GameInput](https://docs.xbox.com/pt-BR/build/core-features/common/input/overviews/input-fundamentals.md)

[Tópicos avançados do GameInput](https://docs.xbox.com/pt-BR/build/core-features/common/input/advanced/input-advanced-topics.md)

[Referência da API de entrada](https://docs.xbox.com/pt-BR/reference/input/gc-reference-input-toc.md)


## Related topics

- [Fundamentos do GameInput](https://docs.xbox.com/pt-BR/build/core-features/common/input/overviews/input-fundamentals.md)
- [Leituras do GameInput](https://docs.xbox.com/pt-BR/build/core-features/common/input/overviews/input-readings.md)
- [Dispositivos do GameInput](https://docs.xbox.com/pt-BR/build/core-features/common/input/overviews/input-devices.md)
- [Portabilidade do XInput para o GameInput](https://docs.xbox.com/pt-BR/build/core-features/common/input/porting/input-porting-xinput.md)
- [Teclado e mouse do GameInput](https://docs.xbox.com/pt-BR/build/core-features/common/input/advanced/input-keyboard-mouse.md)
