A Microsoft lançou o Babylon.js versão 3.0, a mais atual e completa versão de sua engine para jogos em 3D feita em JavaScript.
A tecnologia por trás dessa nova versão é a WebGL: "uma tecnologia que deixa suas páginas Web usarem sua GPU. Assim, seu conteúdo 3D será renderizado com a aceleração do hardware.", de acordo com o desenvolvedor independente de jogos Andy Hall.
Enquanto um desenvolvedor poderia, tecnicamente, programar usando diretamente o WebGL, Hall diz que a maioria dos desenvolvedores usam uma engine 3D como Babylon.js para "cuidar dos mínimos detalhes". É comum se pensar em usar 3D na construção de jogos, mas a possibilidade de construir interações 3D independente dos navegadores abrem muitas possibilidades. A própria Microsoft, por exemplo, usa o Babylon para orientar o laboratório de design do Xbox onde os gamers podem personalizar os controles do XBox.
No post do blog de anúncio do lançamento, David Catuhe, Gerente Principal de Programação do Babylon, escreveu que a versão 3 é "a maior versão de todas do Babylon.js".
O Babylon versão 3 mantêm o framework atualizado pelo suporte WebGL 2 quando disponível. Atualmente, todos os navegadores possuem suporte ao WebGL 1, enquanto o WebGL 2 ainda está em processo de suporte pela maioria dos navegadores. Além disso, agora há suporte ao WebVR 1.1, que estará no código dos desenvolvedores para os próximos headsets do Windows Mixed Reality.
PBRMaterial, o componente do Babylon responsável pela renderização baseada na física, foi reescrito resultando em alguns demos impressionantes. A ferramenta de desenvolvimento está bem sólida, incluindo o playground, que permite aos desenvolvedores trabalharem com um editor de código no navegador, e o Spector.js, que pode ajudar na resolução de problemas com o código do WebGL.
O Babylon é um dos maiores concorrentes dentro da crescente lista dos frameworks do WebGL. Uma das mais populares engines 3D é a three.js, mas o Babylon é a maior das engines de jogos. No Hacker News, Hall escreveu sobre sua escolha pelo three.js a dois anos atrás:
O Babylon tem um time compacto e ativo de desenvolvedores: relatei vários bugs e recebi a correção compilada no dia seguinte por várias vezes. Então tem sido realmente fácil para obter ajuda e correções. Já o Three tem muito mais pessoas trabalhando nele e com ele. Por outro lado, é mais difícil encontrar ajuda, a não ser que você conheça um bom fórum onde tenha alguns especialistas que trabalham com ele ou algo similar. Outra grande diferença é que o Babylon é mais uma "engine para jogos" que uma "engine 3D", o que possui subsistemas integrados para algo como animações prontas, disparadores de áudio, etc.
Para mais informações, visite www.babylonjs.com ou seu repositório no GitHub.