A especificação WebGL, anunciada em 4 de agosto de 2009, trouxe uma “luz no fim do túnel” para gamers aderirem ao mais novo “mundo através do navegador”. Se você ainda não conhece muito sobre este novo padrão, ele serve para permitir a utilização de gráficos 3D em navegadores de forma “nativa”, sem ter que ficar recorrendo a download de qualquer complemento para tal. Para ler mais, clique aqui.
Um problema encontrado, entretanto, é que a WebGL utiliza como interface gráfica padrão o OpenGL do Grupo Khronos, porém, nem todas as placas de vídeo possuem suporte para o OpenGL. Isso é algo exclusivamente relacionado ao sistema operacional Windows, pois no Linux e no OS X, o OpenGL faz parte da API 3D primária destas plataformas e tal suporte é constante.
No Windows, entretanto, a maioria das aplicações gráficas utilizam as APIs do Microsoft Direct 3D ao invés do OpenGL, fazendo com que seja praticamente impossível encontrar drivers que ofereçam suporte para o OpenGL. Assim, mesmo que você possua um computador potente e com uma ótima placa de vídeo, o computador não consegue renderizar o conteúdo apresentado por WebGL.
Para todo problema sempre existe solução
Pensando nisso, a gigante Google (cujo navegador é um dos que permite a implementação do WebGL) pretende deixar esse “contratempo” de lado contando com o apoio de um novo projeto, chamado ANGLE. O ANGLE (Almost Native Graphics Layer Engine), explicando de uma forma mais simples, busca “traduzir” os comandos do OpenGL de forma que os computadores que utilizem Windows consigam entender (a mesma forma utilizada pelo Microsoft Direct 3D).
O objetivo principal do ANGLE é permitir que quem utiliza o sistema operacional Windows execute o conteúdo WebGL por meio da “tradução” da API do OpenGL ES 2.0 em uma API do DirectX 9. Segundo Henry Bridge, um dos gerentes de produto da Google, o ANGLE vai permitir que os usuários do Windows possam rodar aplicações no padrão WebGL sem precisar instalar novos drivers no computador.
A Google também já está implantando em seu navegador o plugin O3D, contando com uma tecnologia otimizada para interfaces gráficas 3D (utilizada no iPhone e iPhone 3GS). Também já está em estudo utilizar o O3D como uma possível biblioteca integrada ao próprio WebGL futuramente.
Além da Google, a empresa Ambiera (uma empresa independente de desenvolvimento de jogos) também está com um projeto chamado CooperLicht. Este é baseado em programação JavaScript 3D que utiliza WebGL e HTML 5 para o desenvolvimento de jogos que funcionem a partir do navegador e sem qualquer plugin ou drivers adicionais.
Desde o anúncio do padrão WebGL era possível encontrar alguns vídeos relacionados ao assunto, mas nada extremamente elaborado. A Google divulgou um vídeo com o jogo Quake 2 rodando a partir de um navegador.
Para executar o game em browser, os desenvolvedores da Google utilizaram o WebGL, a API do Canvas e elementos de áudio do HTML 5, uma API de armazenamento local e WebSockets para demonstrar as possibilidades das aplicações web para os novos navegadores. Eles iniciaram a construção com o Jake2 e o Google Web Toolkit para criar uma forma diferente de renderização do WebGL.