Estados separam sincronização, visibilidade, entrada, parada e perda de sessão. Veja como evitar travamentos e desperdício de GPU.

Resposta direta

O OpenXR define oito estados de ciclo de vida para uma sessão, de IDLE a EXITING. Em SYNCHRONIZED, a aplicação mantém o frame loop mas pode evitar renderização pesada; em VISIBLE, continua renderizando sem receber input XR; em FOCUSED, também recebe entrada. STOPPING pede encerramento do loop e xrEndSession, enquanto LOSS_PENDING exige destruir a sessão e, se apropriado, recriar sistema e recursos gráficos.

Visível não significa interativo

Um pop-up do sistema pode manter a cena visível e retirar foco. A aplicação deve pausar ações e ocultar avatares de input inativo sem apagar a cena.

Sincronizado permite economizar GPU

O frame loop continua, mas shouldRender pode indicar que camadas não precisam ser enviadas. Trabalho pesado nesse estado disputa recursos sem benefício visual.

STOPPING é uma ordem de protocolo

Ignorar o evento e seguir renderizando pode bloquear transições. Saia do loop e encerre a sessão na sequência esperada.

Perda de sessão pede reconstrução controlada

Conexão de display perdida torna handles inutilizáveis. Recursos dependentes do sistema devem ser destruídos e recriados, sem prometer retomada invisível.

Leitura Nexus

Modele cada estado explicitamente, registre transições e teste suspensão, modal, retirada do headset, troca de app e perda de hardware em todo runtime suportado.

Perguntas frequentes

Quando o aplicativo recebe input XR?

No estado FOCUSED; VISIBLE mostra a cena, mas não torna as ações elegíveis para entrada.

Devo parar o frame loop em SYNCHRONIZED?

Não. Ele deve continuar sincronizado, evitando trabalho pesado quando não for necessário renderizar.

LOSS_PENDING pode ser recuperado?

A aplicação pode destruir a sessão, consultar um novo sistema e recriar recursos, se o contexto permitir.

Guias essenciais para aprofundar a decisão

Fontes primárias e referências

Esta análise editorial foi produzida pela Nexus a partir das fontes oficiais abaixo, consultadas em 24 de outubro de 2026. O texto é original e interpreta implicações práticas para empresas.

Data informada pela fonte principal: OpenXR 1.1.65 consultado em 24 de outubro de 2026; análise de padrão técnico.