O que é e como funciona a Realidade Virtual

A realidade virtual (do inglês virtual reality – ou VR)é um tópico popular dentro da tecnologia atual. O Google e várias outras empresas estão investimento bastante tempo (e dinheiro) no desenvolvimento de tecnologia VR. Alguns destes produtos promissores são o Google Daydream e o Samsung Dear VR. Mas, afinal, como a realidade virtual funciona? E como ela pode ser implementada no desenvolvimento Android? Temos as respostas.

O que é Realidade Virtual?

A realidade virtual permite que o usuário seja imerso em um mundo virtual, diferente das telas habituais que ficam em frente aos usuários, e não permitem uma experiência tão rica. A realidade virtual pode incluir dos 5 sentidos, incluindo a visão, a audição, o tato e até, possivelmente, o olfato. Com este poder, a tecnologia de realidade virtual podem levar as pessoas para um ambiente virtual facilmente. Os únicos problemas atuais, envolvendo essa tecnologia, estão na disponibilidade do hardware, e o preço que ele pode custar. O Google está combatendo estes problemas através do desenvolvimento do Google Cardboard, e do ecossistema Daydream. Mas, do modo que se encontra hoje, uma tecnologia de realidade virtual de qualidade e detalhada não consegue ser desenvolvida sem um investimento financeiro considerável. A medida que os preços de componentes gráficos caem, não deve demorar muito até que conteúdo de qualidade esteja disponível de forma mais democrática.

Realidade virtual: acredite vendo

Apesar da realidade virtual usar de truques para influenciar seus sentidos, a sensação de estar em um mundo 3D é incomparável. A forma principal com que a realidade virtual consegue fazer isto está na exibição estereoscópica. Essa exibição consiste na exibição de dois ângulos ligeiramente diferentes para cada olho, simulando profundidade. Junto com outras formas de simular profundidade, como o paralaxe (objetos mais distantes parecem se mover mais devagar), técnicas de sombra e de criação de ambientes realistas, a realidade virtual atinge seu objetivo principal. Você pode ver um exemplo de exibição estereoscópica na imagem abaixo: Como você pode ver, o ângulo da arma é ligeiramente diferente em cada lado da imagem, assim como a mira. Mas, quando elas são colocadas no headset e o jogo é executado, tudo fica perfeitamente alinhado. O modo como uma tela de exibição estereoscópica é apresentada varia a partir da plataforma, já que existem tipos diferentes de headset, e suas formas de exibição do conteúdo. A imagem acima é de um jogo feito para o Google Cardboard.

Vive e Rift representam dois dos dispositivos VR mais conhecidos do mercado atual.

As diferentes plataformas de realidade virtual também apresentam especificações diferentes nos headsets. O Vive e o Rift, dispositivos da HTC, possuem displays com taxa de atualização de 90hz, enquanto o Playstation VR possui um display com taxa de atualização de 60hz. A regra geral é simples: você quer que o número de frames por segundo seja condizente com a taxa de atualização do monitor que você está utilizando, então é recomendável que o Vive e o Rift mantenham 90 FPS, enquanto o Playstation VR deve manter 60 FPS. A utilização mobile é pensada de forma diferente, já que os dispositivos possuem resoluções diferentes, mas a meta é manter pelo menos 60 FPS. Em breve falaremos mais sobre o que isso significa exatamente. Para falar mais sobre como os frames por segundo (FPS) e a taxa de atualização funciona, precisamos frisar que elas são coisas diferentes e independentes. O número de frames por segundo diz repeito a velocidade que sua GPU pode exibir imagens, por segundo. 60 FPS significa que a GPU exibe 60 imagens, ou frames, a cada segundo. A taxa de atualização de um monitor diz respeito a quantas imagens seu monitor pode exibir por segundo, sendo medida em hertz (Hz). Isso significa que, se você está jogando um game a 120 FPS, mas a taxa de atualização do seu monitor é de 60Hz, você será capaz de exibir apenas 60 frames por segundo. Você estará, basicamente, perdendo metade de seus frames, o que não é algo bom, já que pode causar o algo conhecido como “tearing”. O Tearing é um fenômeno que ocorre em games, onde objetos são divididos em partes sendo exibidas em dois locais diferentes, parecendo “rasgadas”. É aqui que a sincronização vertical (VSync) entra. Ela limita o número de frames disponíveis de acordo com a taxa de atualização de seu monitor, fazendo com que os frames inutilizados não sejam mostrados. Existem, também, outro componentes que são incluídos na experiência de realidade virtual. Entre eles estão o Campo de Visão (Field of View, ou FoV) e a latência. Esses dois componentes tem grande papel na percepção da realidade virtual, e, se não forem executados corretamente, podem causar até mesmo náuseas. Vamos falar mais sobre eles: O campo de visão é a extensão do mundo visível a qualquer momento. Por exemplo, os humanos tem por volta de 180º de campo de visão, quando estão olhando para frente, e 270º com o movimento dos olhos. Esse é um componente importante da realidade virtual, já que você vai estar utilizando um headset que te transporta para um ambiente virtual. Os olhos humanos possuem uma grande capacidade de perceber imperfeições na visão, e a visão de túnel é um dos exemplos associados a este fenômeno. Mesmo que um headset de realidade virtual possua 180º de campo de visão, você ainda conseguirá perceber a diferença. O Vive e o Rift possuem 110º de campo de visão, enquanto o Cardboard possui 90º,  o Samsung Gear possui 96º e o Daydream pode ter até 120º. Em termos gerais, isso pode afetar de forma grandiosa a experiência VR, e são os diferenciais que trazem adaptação dos headsets a cada pessoa, além das preocupações com a saúde, que falaremos mais a frente.   A latência também é um fator que importante para a qualidade da realidade virtual apresentada, já que qualquer coisa acima de 20 milissegundos não é rápida o bastante para enganar seu cérebro e fazê-lo pensar que está em um ambiente diferente. Existem muitas variáveis envolvidas na latência, incluindo CPU, GPU, a tela, os cabos, e assim vai. Uma tela pode ter uma latência média de 4-5ms, dependendo do modelo utilizado. O tempo que é utilizado para um pixel ser substituído por outro é de mais 3ms, e a maquina pode precisar mais alguns milissegundos. Com apenas essas três variáveis, você pode enfrentar uma latência na casa das dezenas. A chave para diminuir a latência é a taxa de atualização do monitor. A fórmula é a seguinte: 1000 (ms) / taxa de atualização (hz). Então, enquanto o problema de latência pode ser aparentemente resolvido com um monitor de 90Hz, ao invés de um com 60Hz, não é tão fácil quanto parece. Se a realidade virtual não alcança a taxa de frames, de campo de visão ou de latência, é possível que ela cause náusea. Isso acontece com tanta frequência que ganhou um nome próprio: cybersickness (ou cybernáusea/náusea cibernética). Estes três conceitos precisam ser detalhadamente desenvolvidos, para evitar a cybersickness. Sem este cuidado, alguns outros problemas são encontrados, como os conhecidos lags. A latência pode ser um problema anda maior, já que lags de interação ou movimento causados pela resposta lenta do hardware podem fazer com que as pessoas percam completamente seu senso de direção e fiquem desorientadas. O campo de visão, mesmo sendo importante, não deve causar tantos problemas como os outros mencionados, mas pode, definitivamente, estragar a experiência virtual.

Movimento e interação

Essa é, provavelmente, uma das partes mais importantes da realidade virtual. Olhar pelo espaço digital construído em 3D é uma coisa, mas ser capaz de se movimentar e interagir com os objetos é algo completamente diferente e mais avançado. No Android, o acelerômetro, o giroscópio e a bússola são utilizados para gera movimento. O acelerômetro é usado para detectar o movimento tridimensional, com o giroscópio sendo utilizado para detectar o movimento angular, e a bússola é utilizada para detectar o movimento em relação à Terra. Utilizando estes sensores, seu smartphone pode indicar com precisão para onde você está olhando a qualquer momento, enquanto estiver utilizando o equipamento de realidade virtual. Com o anúncio do Google Daydream,os usuários da realidade virtual no Android poderão utilizar um smartphone separado como um controle, para se movimentar e interagir com o ambiente. A realidade virtual de computador, como o HTC Vive ou o Oculus Rift utilizam controles parecidos com o Wiimote (controle remoto do console Nintendo Wii) para conseguir diferentes resultados. A precisão da realidade virtual pode melhorar de forma grandiosa se forem instaladas câmeras ou outros sensores no ambiente em que você utilizará o headset de realidade virtual. Os headsets de realidade virtual podem ter controles, como mencionamos, mas como exatamente eles funcionam? Usando o HTC Vive como exemplo, existem dois sensores infravermelhos e dois controles, totalizando 70 sensores diferentes em todo o headset. Tudo isso é utilizado para mapear seus controles, permitindo que você se mova livremente enquanto joga. Percebe como os controles tem um formato circular? É provavelmente assim para facilitar o mapeamento. O Oculus Rift apresenta uma experiência diferente com uma tecnologia próxima. Fora da caixa, o Rift utiliza, na verdade, um controle do Xbox One. Mas existe um conjunto de controles opcional que oferecem uma funcionalidade similar ao do Vive, conhecido como “Touch by Oculus”. Este dois controles reorganizam os controles do Xbox One. A Oculus tenta manter segredo quanto a forma que este controles funcionam, mas o conjunto contém dois controles similares ao Vive, então é fácil imaginar que eles funcionam de forma parecida, além de também terem a capacidade de incluírem acelerômetros e giroscópios.

O poder do som

A experiência não seria completa sem o áudio. Como este é um mundo virtual, você quer que o áudio seja o mais próximo possível da vida real. Isso pode ser alcançado pelo áudio espacial, também conhecido como áudio 3D, que é uma forma virtual de posicionar o som de forma tridimensional, imitando sons de diferentes ângulos. Com essa tecnologia, a realidade virtual se torna uma experiência mais imersiva, e melhora a sua qualidade de forma considerável.

O poder necessário para a realidade virtual

Especificamente em computadores, a realidade virtual requer bastante poder de execução, para poder oferecer uma experiência consistente. Na verdade, a maioria das pessoas que tem computadores não podem utilizar a realidade virtual, já que seus computadores não tem poder o bastante. A loja de jogos Steam recomenda um Intel i5 Haswell ou mais novo, além de um Nvidia GTX 970 ou AMD Radeon r9 290 para uma experiência completa. A maior questão sobre a tecnologia do hardware é que, no cado do Vive ou do Rift, seu PC não apenas terá que rodar o jogo em 1080p e 60FPS, mas sim em uma qualidade maior, a 90 FPS. A maioria dos equipamentos de hardware encontrados no mercado atual não conseguem fazer isso. Existe um número bastante limitado de computadores com essas especificações, ou melhores, então isso irá desacelerar ainda mais a adoção da realidade virtual em computadores. Para os dispositivos mobile, porém, qualquer telefone Android com a versão KitKat (4.4) ou mais avançada não deve enfrentar problemas com funcionalidade básicas de realidade virtual. As ferramentas do Daydream requerem pelo menos um dispositivo Nexus 6P.

O futuro da realidade virtual no Android

A Google tem sido bastante pioneira, quando o assunto é a realidade virtual em dispositivos mobile. Já disponível, o Google VR e SDK permite um tipo de desenvolvimento poderoso dentro desta forma de realidade virtual. Com o lançamento do Google Daydream, a realidade virtual em dispositivos mobile vai ter outro grande avanço. A Samsung também possui seu sucesso, com o Gear VR. Dispositivos de terceiros também estão integrando o Google VR em sua composição.

Em resumo

A realidade virtual possui grande potencial, e com a diminuição dos preços e maior investimento das empresas, a realidade virtual pode ter grande sucesso. O modo como a Realidade Virtual funciona é uma combinação inteligente de tecnologias diferentes, trabalhando juntas para criar uma grande experiência. Desde de a visão estereoscópica até o áudio 3D, a realidade virtual representa o futuro, e só tem a melhorar.

Desenvolvimento de Realidade Virtual da Codificar

Se adaptando à demanda deste novo mercado, a codificar desenvolveu um novo serviço, aliado ao desenvolvimento de aplicativo e softwares: o desenvolvimento de realidade virtual. Conheça mais sobre nosso serviço ou entre em contato: ]]>