# OpenXR

OpenXR é um padrão aberto e livre de royalties para acesso a plataformas e dispositivos de realidade virtual e realidade aumentada. É desenvolvido por um grupo de trabalho administrado pelo consórcio Khronos Group. O OpenXR foi anunciado pelo Khronos Group em 27 de fevereiro de 2017 durante o GDC 2017. Uma versão provisória do padrão foi lançada em 18 de março de 2019 para permitir que desenvolvedores e implementadores forneçam feedback sobre o mesmo. Em 29 de julho de 2019, o OpenXR 1.0 foi lançado ao público pelo Khronos Group na SIGGRAPH 2019.
Os revisores da versão provisória 0,90 consideraram que o objetivo do OpenXR era "resolver a fragmentação AR/VR".

## Arquitetura

O padrão fornece uma API destinada a desenvolvedores de aplicativos visando hardware de realidade virtual ou realidade aumentada. Isso permite que os desenvolvedores criem aplicativos que funcionarão numa ampla variedade de dispositivos.
Os elementos fundamentais desta API são:
* XrSpace: uma representação do espaço 3D
* XrInstance: uma representação do tempo de execução OpenXR
* System e XrSystemId: uma representação dos dispositivos, incluindo a realidade virtual ou dispositivos e controladores de realidade aumentada
* XrActions : usado para lidar com as entradas de utilizador
* XrSession: representa a sessão de interação entre o aplicativo e o utilizador

## Implementações

O Grupo Khronos mantém a lista de plataformas e produtos em conformidade com o OpenXR.
As plataformas OpenXR atualmente em conformidade são:
* HoloLens 2 da Microsoft e os fones de realidade mista do Windows
* Plataforma Oculus PC e os dispositivos Quest / Quest2
A pré-visualização e as versões iniciais de desenvolvimento do OpenXR estão disponíveis para as seguintes plataformas:
* Plataforma Varjo PC, com um primeiro lançamento em julho de 2019
* Collabora Monado Runtime para GNU / Linux, com um primeiro lançamento em agosto de 2019
* Suporte para Valve SteamVR, com um primeiro lançamento em junho de 2020

## Suporte para jogos e mecanismo de renderização

O suporte para o desenvolvimento de aplicativos OpenXR pode ser encontrado nos seguintes mecanismos:
* Unreal Engine da Epic Games, com suporte inicial na versão 4.23 de setembro de 2019
* Blender, com suporte inicial na versão 2.83 LTS de junho de 2020
Próximo suporte anunciado:
* Unity, com um primeiro lançamento previsto para o final de 2020

## Suporte de navegador

* Os navegadores Google Chrome e Microsoft Edge têm ambos WebXR o OpenXR por padrão usando o código base Chromium.

## Roteiro

Após o lançamento do OpenXR 1.0, o avanço provavelmente será concretizado através do desenvolvimento de extensões para a API principal. Isso pode ser verificado no lançamento subsequente de extensões para suporte de rastreamento manual e rastreamento de olhar fixo.
À medida que os implementadores e desenvolvedores obtêm mais experiência com as extensões, elas podem ser integradas na API OpenXR principal em versões futuras.

## Contribuidores

As seguintes empresas são listadas pela Khronos como apoiadoras públicas do OpenXR:
* Antilatency
* AREA
* ARM Holdings
* Collabora
* DisplayLink
* Epic Games
* Facebook
* Google
* HP
* Holochip
* HTC
* Huawei Technologies
* Imagination Technologies
* Intel Corporation
* LG Electronics
* Logitech
* LunarG
* Magic Leap
* MediaTek
* Microsoft
* Mozilla
* Nokia
* Nvidia
* PicoVR
* Pluto VR
* Qualcomm
* Razer Inc.
* Samsung Electronics
* Sony Interactive Entertainment
* Tobii Technology
* Ultraleap
* Unity Technologies
* Valve
* Varjo
* VeriSilicon
* VIA Alliance Semiconductor Co., Ltd.
* zSpace