Durante a primeira reunião presencial dos membros do canal Brasil.NET no Slack que ocorreu no dia 20/10/2016, na Microsoft Brasil, tive a oportunidade de falar um pouco sobre desenvolvimento de aplicativos holográficos para o Microsoft Hololens, o primeiro óculos de realidade mista desenvolvido pela Microsoft.
Neste post vamos falar um pouco sobre o Microsoft Hololens, requisitos para começar a desenvolver para a plataforma e um pouco do seu ecossistema.
Realidade Mista
Na realidade mista, os conceitos de realidade virtual e realidade aumentada são unificados. Permitindo a interação entre objetos físicos e digitais fazendo parte do mesmo “mundo”.
Microsoft Hololens
É um óculos de realidade mista que possui o Windows 10 como sistema operacional e independe de processamento externo, como um PC ou Console, pois possui todo o hardware necessário para operar de forma independente.
Ele é capaz de projetar hologramas em um ambiente real, permitindo interações com gestos e vozes que devem ser programados pelos desenvolvedores para realizar ações específicas em um holograma.
Interação com o ambiente
Através dos conceitos de gaze, gesture e voice é possível interagir com os hologramas.
Gaze é a primeira forma de interação, representada por um cursor que ao ser posicionado sobre um holograma ou parte do ambiente permite interações com comandos de voz ou gestos, assim como um click.
Outro conceito essencial antes de iniciarmos o desenvolvimento na plataforma é entendermos como o ambiente é mapeado pelo Hololens.
O Hololens é capaz de criar uma “malha” que identifica o local ao seu redor como único e permite a ele salvar e recuperar informações deste ambiente, como hologramas fixados naquele local, mesmo que o aparelho seja desligado. Sendo isso possível através da presença de uma câmera de profundidade, 4 câmeras de compreensão de ambiente e alguns outros sensores. Basta andar pelo local que o Hololens faz toda essa detecção de forma automática.
Confira um vídeo demonstrando o comportamento de mapeamento espacial no hololens.
Requisitos para o desenvolvimento
confira atualizações sobre os requisitos em https://developer.microsoft.com/en-us/windows/holographic/install_the_tools
Universal Windows Platform
Todo aplicativo holográfico suportado pelo Hololens é um Universal Windows App. Utilizando o Unity Hololens Technical Preview podemos desenvolver aplicativos holográficos e exportá-los para um projeto do tipo UWP.
Criando um simples holograma
Para esse nosso primeiro exemplo, vamos criar um cubo holográfico que ficará a 2 metros da visão inicial, um projeto bem simples, sem interações e animações, que nos permitirá compreender o básico sobre o desenvolvimento de apps holográficas para o Hololens.
- Crie um novo projeto do tipo 3D
- Altere as propriedades da Main Camera, para que a sua posição inicial seja
{ x: 0, y: 0, z:0 }
. (O objeto de câmera representa a sua visão, por isso esta fixando no centro) - Altere a cor de fundo para preto, permitindo que o ambiente ao redor dos objetos holográficos fique transparente e exiba o mundo real.
- Adicione um novo Game Object clicando em Create Empty e adicione um objeto do tipo Cubo. Este objeto deverá ficar com a posição
{ x: 0, y: 0, z:2 }
representando um objeto a 2 metros da visão da câmera principal. - Altere a escala do Cubo para que ele possua 25cm³, ao invés de 1m³
Algo bem interessante no desenvolvimento de hologramas é que a representação digital dos objetos é definida em metros, de forma que, protótipos, maquetes e objetos de qualquer tipo serão exibidos em suas exatas dimensões no ambiente real.
Um cubo digital de 25cm³ será exibido no ambiente real com essa exata dimensão.
O próximo passo é configurar a Build Settings, localizada em File > Build Settings. Assim podemos exportar o projeto para UWP e rodar a app.
- Adicione a cena do cubo
- Altere a plataforma para Windows Store
- Selecione o SDK para Universal 10
- Altere o UWP Build Type para D3D
- Marque a opção Unity C# Projects localizada em Debugging.
- Em Player Settings, marque as opções de Virtual Reality Supported e Use 16-bit Depth Buffers. O SDK de realidade virtual será habilitado automaticamente para Windows Holographic.
Ao clicar em Build o Unity solicitará um local para exportar a App. Após o export, basta abrir o arquivo .sln
, alterar a plataforma de ARM para x86 e rodar o holograma utilizando o emulador para Hololens ou então via Remote Machine, passando o IP do seu Hololens.
Ao rodar a sua app holográfica pelo Hololens o cubo será fixado em uma posição inicial e não irá se movimentar.
Conforme você for andando pelo ambiente você poderá olhar em volta do objeto, aproximar-se dele e etc. Ele se tornará parte do ambiente, assim como um objeto real.
Conclusão
Se você se interessou e gostaria de conhecer um pouco mais sobre o desenvolvimento de apps holográficas para o hololens acesse o portal Holographic Academy onde uma série de excelentes tutoriais são disponibilizados aos desenvolvedores e não se esqueça de continuar acompanhando nosso blog para maiores novidades.
Espero que tenham gostado deste primeiro post. Nos enviem críticas, dúvidas e sugestões aqui nos nossos comentários.
No futuro iremos falar um pouco mais sobre animações, interações, como disponibilizar a sua app holográfica na Windows Store e muito mais.
(Cross-post de http://lazarofl.github.io/2016/11/06/Desenvolvendo-Hologramas-com-o-Microsoft-Hololens/)
Lazaro Fernandes Lima Suleiman
Desenvolvedor