Review | WebGL Up and Running

16 January 2015

WebGL traz uma série de possibilidades para projetos 3D na web. O livro WebGL: Up and Running é um bom caminho pra começar.

Uma série de projetos 3D estão voltando a aparecer na web. E quando você vai ver o código, nada de Flash ou alguma tecnologia parecida. WebGL é o novo padrão para gráficos 3D na internet.

WebGL é parte da família de tecnologias HTML5,e embora não esteja na especificação oficial, já é suportado na maioria dos browsers modernos. Assim como Web Workers, Web Sockets e outras tecnologias fora da recomendação ofical da W3C, WebGL é uma componente essencial das tecnologias de navegadores modernos.

O livro WebGL - Up and Running é dividido basicamente em três partes principais, que vão desde um overview até um projeto quase completo.



WebGL API e Three.js overview

Os 2 primeiros capítulos do livro falam sobre WebGL puro, explicando conceitos como Meshes, Polygons e Vertices. Explica sobre conceitos que vão aparecer durante todo livro, como Materials, Textures e Lights e uma série de outros. A seguir, apresenta o Three.js, provavelmente o framework mais utilizado para simplificar a vida em aplicações WebGL. O autor fala de todos os benefícios de utilizar o framework. No fim, exemplos como o cubo 3D abaixo são explicados em código.
Gráficos, animações, interações e integrações com o mundo 2D

Os próximos capítulos exploram cada uma das áreas acima com muitos detalhes. O capítulo de gráficos explora a criação de modelos mais complexos e inclusive integrações com modelos de outros softwares, como Blender ou 3D Max. A parte de Shaders é bem complexa e precisa de uma atenção maior durante a leitura. Para animações os exemplos são combinados com o Tween.JS e uma série de exemplos de integração com o conteúdo normal 2D das páginas é explicado, como divs, por exemplo.

O exemplo abaixo não é exatamente o apresentado no livro, mas no final, um Sistema Solar é montado com WebGL/Three.js.

WebGL game

A parte final é bem voltada a projetos reais. Com exemplos de performance e dicas para projetos em produção. Um jogo é desenvolvido e explicado, passo a passo, no final. O jogo não é exatamente o abaixo, mas esse mostra onde já é possível chegar utilizando WebGL/Three.js.

Pra finalizar...

O livro é muito bom, um ótimo começo pra que está estudando WebGL ou quer ter uma ideia rápida da tecnologia e de onde se pode chegar. Uma coisa que não gostei é que por vezes o autor utilizou um framework próprio que ele criou para facilitar algumas repetições de código. Acredito que o framework seja realmente muito bom, mas enquanto não estava familiarizado com as necessidades de escrever códigos repetitivos, custei a entender algumas coisas durante a leitura.

De resto, o livro é excelente. Eu achei ainda bem complicado ter que programar todo conteúdo 3D diretamente no código. Esses dias vi que Unity3D já gera o resultado final em WebGL, o que pode facilitar muito pra lidar com projetos desse tipo...mas isso é assunto pra um próximo post.
comments powered by Disqus