Lançado o LuxRender 0.8 versão final

O LuxRender é uma das melhores opções para trabalhar com renderização avançada no Blender 2.5, pois o seu script já funciona sem grandes problemas no novo Blender e permite que trabalhemos com render usando métodos unbiased, para gerar imagens incrivelmente realistas. A versão 0.8 do LuxRender estava em desenvolvimento já faz um bom tempo e disponível para uso em versões Release Candidate. Bem, o software agora chegou na sua versão final e a lista total de novidades do LuxRender pode ser conferida nesse endereço, junto com os scripts para instalação do LuxBlend nas versões 2.4 e 2.5 do Blender.

Uma das coisas mais interessantes dessa nova versão, é que muitos usuários estão alegando que o tempo demandado para conseguir imagens sem granulação na versão final é significativamente menor do que nos Release Candidates. Portanto, se você ficou decepcionado com o tempo necessário para renderizar imagens sem granulação no LuxRender 0.8 RC, a nova versão pode trazer a agradável surpresa dos tempos de render mais curtos!

Fora o LuxRender em si, ainda podemos aproveitar o SmallLuxGPU como forma de gerar imagens com aceleração por GPU. O uso de GPU para acelerar o render é a tendência mais forte do momento em termos de desempenho para renderização, e quando ao uso desse tipo de recurso em softwares do tipo open source, o SmallLuxGPU é uma das melhores opções nesse sentido.

O material funciona mais como uma prova de conceito, mostrando o render por meio de GPU usando OpenCL, para a alegria dos usuários com placas da ATI. No vídeo é possível acompanhar o SmallLuxGPU sendo usado para posicionar elementos na 3D View e as atualizações, incluindo na lista de atualizações a troca de materiais e ajustes na iluminação do ambiente.

É interessante notar como em pouco tempo teremos duas opções robustas para render por GPU no Blender, sendo ambas totalmente gratuitas. A primeira é o próprio SmallLuxGPU que deve se tornar o LuxRays quando deixar de ser uma prova de conceito, e a outra é o próprio render interno do Blender com o codinome de Cycles. Os dois ainda estão em desenvolvimento, mas já estão deixando qualquer usuário do Blender animado com as possibilidades de renderizações realistas e extremamente rápidas!

Detalhes sobre render com GPU no SmallLuxGPU e Blender

A renderização de cenas 3d e vídeo são alguns dos processos que mais consomem recursos do computador na área de computação gráfica. Existem várias maneiras de otimizar esse tipo de tarefa, mas sempre é importante contar com hardware de boa qualidade para conseguir bons resultados e principalmente tempos mais curtos de render. Uma das soluções mais usadas hoje é o uso de GPU`s para acelerar esse processo, devido a enorme quantidade de núcleos disponíveis, fica muito mais rápido renderizar quando tempos 100 ou 200 núcleos gerando uma imagem. No Blender é possível já usar o SmallLuxGPU que ainda está em estágio beta, mas já operacional, para conseguir renderizar aproveitando a GPU do seu computador.

Assim que fazemos o download do script que integra o SmallLuxGPU ao Blender 2.53 teremos que configurar os parâmetros do script para integrar da melhor maneira o nosso projeto ao renderizador. Para aqueles que quiserem uma ajuda nessa configuração, existe uma página com a descrição dos campos de configuração do SmallLuxGPU. Nessa página será possível acompanhar o que faz exatamente cada um dos campos do script.

Ainda não conhece o SmallLuxGPU? Ele é uma adaptação do poderoso render LuxRender, baseado em física real, para o modelo que usa GPU. Isso acaba gerando renderizações em tempo real, como a mostrada no vídeo abaixo:

SmallLuxGPU 1.6 Blender 2.5 Exporter from David Bucciarelli on Vimeo.

Esse tipo de material pode ajudar ainda mais a divulgar o SmallLuxGPU como opção viável para gerar renders de qualidade em pouco tempo. Até agora essa é a única solução de código aberto e gratuita que não oferece nenhum tipo de restrição ao usuário final.

O ponto negativo de usar a GPU é que você necessariamente precisa de uma placa de vídeo com boa capacidade e núcleos. Isso pode acabar encarecendo um pouco a estação de trabalho, mas em relação ao benefício gerado e ganho de tempo com renderizações complexas é um investimento que vale encarar. A tendência é que em pouco tempo a maioria dos renderizadores acabe usando apenas GPU ou mesmo compartilhe núcleos da placa, usando alguma tecnologia que permita migrar os processos da CPU. Se você ainda não tem uma boa placa, recomendo começar a procurar por uma.

Render em tempo real e interativo no Blender 2.50

O uso de renderizadores externos no Blender 2.50 pode demorar vários meses até que uma versão estável esteja disponível para ambientes de produção, pois como o software está em desenvolvimento e a nova previsão de lançamento para o 2.60, que será a versão estável oriunda do 2.50, é Outubro desse ano, podemos ter que esperar pelo menos até meados de Novembro para usar de maneira confortável o YafaRay ou LuxRender. Mas, para os que não estão com vontade de esperar tanto tempo a solução pode estar no uso de um render baseado em GPU. O SmallLulGPU está surpreendendo a cada nova versão demo lançada na web com novos recursos e exemplos interessantes de uso com o Blender.

Para quem não conhece o projeto, ele é uma tentativa de adicionar render baseado em GPU (Processadores gráficos) que são bem mais numerosos que os núcleos da sua CPU dependendo da placa de vídeo usada. O SmallLuxGPU usa o LuxRender com OpenCL para gerar as imagens na renderização. A última versão do software que já está na 1.6 teve um novo demo publicado apenas alguns dias atrás.

SmallLuxGPU v1.6 (OpenCL) from David Bucciarelli on Vimeo.

Se você já acompanhava os lançamentos do software nos últimos tempos pode não se impressionar com a velocidade e qualidade dos renders, mas a cada vez parece que o tempo demandado para resolver os problemas na cena ficam menores. Mesmo com o uso de efeitos óticos complexos como caustics e transparências o SmallLuxGPU a velocidade é bem satisfatória,

O que temos de novo e interessante nesse vídeo?

A parte final desse vídeo mostra algo bem interessante que é a integração entre o SmallLuxGPU e o Blender 2.50, em que o artista usa o Blender para controlar e alterar a cena em 3d e o SmallLuxGPU renderiza tudo em tempo real, estando aberto ao mesmo tempo que o Blender. É quase como se fosse uma 3D View interativa do Blender, mas usando algoritmos avançados de render como é o caso de Path Tracing ou Photon mapping direto na tela de modelagem. Outro ponto que podemos destacar é a interface de controle do renderizador já bem integrada como mostra a imagem abaixo que capturei do vídeo.

smallluxgpu-blender-250.gif

Para saber mais sobre o SmallLuxGPU visite o web site do projeto para conhecer um pouco do seu histórico e também fazer o download dele.

Agradeço ao leitor Asdrubal pela dica do vídeo.

LuxRays: Mais exemplos de render com GPU no LuxRender

As tecnologias baseadas em render por GPU estão dominando os projetos e trabalhos envolvendo visualização rápida, e não devem tardar a entrar de maneira pesada em animação para cinema e TV. Já existem diversas ferramentas e opções no mercado para as pessoas interessadas em investir nesse tipo de facilidade. Mas, infelizmente na área dos softwares livres as opções são poucas. Entre os projetos mais promissores esta o LuxRays, nome dado a variante do LuxRender que usa GPU como forma de aceleração do render. Essa versão especial do LuxRender ainda está em fase de testes e pode apresentar pequenos bugs no seu uso em trabalhos mais pesados, mas já é grande o número de exemplos e demos de usuários mostrando a sua velocidade.

Para quem já teve oportunidade de usar o LuxRender, ou qualquer render do tipo Unbiased, sabe que o seu ponto fraco é o tempo de render. Uma imagem complexa pode facilmente demorar algumas horas para ficar livre da granulação. Com a ajuda de uma GPU e em algumas situações mais de 100 núcleos dedicados a renderização, podemos reduzir esse tempo de maneira significativa.

O LuxRays ainda é um projeto em desenvolvimento, mas já podemos ter uma idéia de como ele deve funcionar usando o smallLuxGPU que é um experimento desenvolvido por David Bucciarelli com o SDK do OpenCL. Desde que falei sobre o SmallLuxGPU ele já avançou para a versão 1.5.

Os vídeos abaixo são demos de usuários que testaram e compilaram o SmallLuxGPU em cenas 3d completas e gravaram vídeos com suas experiências. O primeiro mostra diversas cenas e exemplos usados inclusive em demos de outros softwares como o iRay da mental images e o Arion da Random Control:

SmallLuxGPU v1.5 (OpenCL) from David Bucciarelli on Vimeo.

Os outros vídeos mostram exemplos diversos de renderização, inclusive com algumas opções de animação:

Como podemos claramente perceber pelos vídeos a velocidade com que as coisas acontecem é visivelmente superior ao render tradicional, baseado apenas em CPU que temos no LuxRender. Para as pessoas que quiserem mais informações sobre como funciona o SmallLuxGPU, visite o link indicado para conferir mais detalhes técnicos, e fazer o download do código fonte com binários para Mac OS X e Windows.