Migrando do LuxRender para o Blender Cycles

Já houve uma época em que o uso do Blender para criar imagens realistas poderia significar aprender dois softwares em paralelo, seja o primeiro deles o Blender e o segundo alguma renderizador compatível com o software e capaz de gerar imagens realistas. Quando comecei aprender o software a minha escolha inicial foi o YafRay e posteriormente migrei para outras ferramentas como o LuxRender. Isso gerou uma série de projetos legados, que eventualmente ainda preciso editar e alterar devido a pedidos de clientes antigos. Mas, será que vale a pena converter todo esse material para o Cycles?

Isso pode não ser muito proveitoso no sentido prático, mas é um ótimo exercício para aprender e desenvolver as suas habilidades com o Cycles! Foi exatamente esse tipo de atividade que inspirou o artista chamado camara, que já apareceu aqui no blog outras vezes, a adaptar um projeto antigo feito no LuxRender e renderizar tudo novamente com o Cycles.

blender-cycles-arquitetura

O resultado é muito bom e mostra a evolução do Cycles em relação ao LuxRender, que também é uma ferramenta incrível. Além de proporcionar imagens com qualidade muito semelhante o Cycles ainda tem a comodidade de estar integrado com o Blender, o que não demanda a manutenção e instalação de dois softwares diferentes.

Esse projeto é a visualização para arquitetura chamada de “House Vilamar” sendo mais um exemplo também do potencial do Cycles para uso em arquitetura. Se você quiser conhecer mais imagens desse projeto, recomendo visitar o link que leva diretamente aos fóruns Blenderartists em que o autor do projeto compartilhou diversas imagens com ângulos e configurações de iluminação diferentes.

Aprendendo a usar o Blender Cycles

Quer usar o Blender Cycles para renderizar projetos em arquitetura? No EAD – Allan Brito você encontra vários cursos direcionados para a aplicação do Cycles em projetos. Essa é a lista de cursos disponíveis:

LuxVR: Renderização por GPU no LuxRender

O LuxRender é um dos renderizadores externos que melhor trabalha junto com o Blender, e devido ao fato do software usar algoritmos de renderização baseados em física real, as imagens geradas com o LuxRender tendem a ser fantásticas. Mas, o LuxRender tem uma péssima fama entre artistas 3d devido a velocidade com que geras as suas imagens. O seu processo de renderização é baseado em refinamento progressivo de imagens, semelhante ao que outros softwares fazem como o próprio Blender Cycles e o Indigo Renderer. É possível usar algum artifício de hardware para acelerar o render com o LuxRender? Claro que sim! Isso é feito com o suporte de GPUs, que é a solução de render mais usada nos dias de hoje quando falamos em reduzir os tempos necessários para gerar as imagens.

Mas, um projeto em andamento com o LuxRender pode colocar o software em pé de igualdade com ferramentas já consolidadas na renderização usando GPU. O chamado LuxVR tem como objetivo oferecer aceleração de hardware usando OpenCL, o que deve agradar bastante os donos de placas da Radeon. Quer uma amostra do que pode ser o LuxVR? O vídeo a seguir é uma demonstração do projeto, gravado pelo desenvolvedor:

Como você pode perceber pela velocidade com que a imagem é atualizada, o projeto realmente consegue exibir os detalhes do modelo 3d em tempo real, fazendo justiça ao nome LuxVR. É para você largar tudo e ir correndo adotar o LuxVR? Calma, não existe razão para pânico, pelo menos ainda. O projeto é muito promissor, mas ainda está em desenvolvimento, mas é uma excelente referência e possibilidade futura para usuários do Blender que gostariam de usar os recursos avançados do LuxRender para gerar imagens realistas. Quem sabe assim será possível encontrar mais animações renderizadas com o LuxVR.

Em comparação com o Cycles o LuxRender possui mais recursos, devido claro a idade e empenho dos desenvolvedores que estão trabalhando no renderizador já faz um bom tempo, mas a tendência é que o Cycles um dia pelo menos se equipare em recursos e sofisticação no render.

O nome VR não está no projeto por acaso, significando que além do render mais rápido o objetivo do LuxVR é oferecer a possibilidade de trabalhar com ambientes de realidade virtual no Blender, alimentando a render engine do SmallLuxGPU.

Quer testar o LuxVR? É possível fazer o download de versões de teste do LuxRender com o recurso nesse endereço.

Light Groups do LuxRender para composição

O artigo que publiquei essa semana mencionando o lançamento da versão 1.0 do LuxRender gerou diversas mensagens recebidas pelo formulário de contato do blog, com pessoas interessadas em usar o LuxRender, e também sobre a possibilidade de no futuro um curso no EAD – Allan Brito ensinar a usar o LuxRender junto com o Blender 2.6. Mas, será que o LuxRender é melhor do que o Cycles? Esse tipo de comparação é difícil de realisar e até mesmo injusta com o Cycles, devido ao tempo em que o LuxRender já está em desenvolvimento, e o Cycles sendo uma ferramenta aonda jovem e com muitos recursos a desenvolver.

Portanto, hoje ainda temos uma boa quantidade de recursos no LuxRender que justificam em algumas situações deixar o Cycles um pouco de lado. Entre esses recursos que particularmente gosto muito, está o chamado Light Groups. O vídeo abaixo é muito velho um pouco antigo, mas mostra bem o funcionamento dos Light Groups. A interface do Blender no início do vídeo é um pouco diferente também, pois na época em que gravei esse vídeo o software ainda não tinha realizado a mudança para o 2.5.

O recurso é muito interessante e permite que usando apenas uma renderização de imagem no LuxRender, possamos gerar diversas combinações de iluminação diferentes, seja com base na cor da fonte de luz ou então pelo fato da luz estar ligada ou desligada. Isso possibilita até mesmo a criação de renderizações com momentos diferentes do dia para o mesmo ambiente, usando apenas um render. Esse recurso é fantástico para a criação de imagens em arquitetura.

Além dos Light Groups o LuxRender também oferece para os usuários que possuam placas de vídeo modernas, a possibilidade de trabalhar com aceleração por GPU. O software é projetado para trabalhar em formato híbrido como é descrito na própria documentação do LuxRender sobre o uso de GPU.

O LuxRender é mais lento que o Cycles em vários tipos de situação, mas a quantidade de recursos que ele oferece para renderizar imagens com qualidade e controle sobre a iluminação são grandes diferenciais. A melhor parte é que o LuxRender também é distribuído sob a mesma licença do Blender (código aberto), e também é gratuito. Se você gostar de trabalhar com renderização em 3d e procura opções avançadas para gerar imagens, recomendo muito o uso do LuxRender.

LuxRender 1.0 disponível para download

Um dos renderizadores externos com melhor compatibilidade com o Blender, e que compartilha a sua filosofia aberta está com uma nova versão estável. Entre as opções existentes para renderização externa com o Blender que também são de código aberto podemos destacar o LuxRender e o YafaRay. Mas, desde que o Blender teve a sua mudança drástica de interface e funcionamento interno com a série 2.5x, o LuxRender é a opção que melhor se integra ao Blender. Nos últimos dias o LuxRender atingiu um marco no seu desenvolvimento, e depois de ficar várias semanas em Release Candidate chegou na sua versão 1.0 final.

Caso você queira fazer o download dessa versão estável para o seu Blender, basta visitar esse endereço e começar a usar o LuxRender junto com o Blender. Mas, e o Cycles? Essa é uma pergunta que sempre recebo de usuários do Blender que não sabem ainda qual versão usar para seus projetos.

LuxRender 1.0 Splash

O Cycles hoje é uma ferramenta que oferece grande diferencial para criação de projetos dentro do Blender, pois com ele é possível gerar imagens realistas sem a necessidade de plugins ou scripts externos. Mas, o Cycles em termos de desenvolvimento ainda está longe de atingir a quantidade de recursos que o LuxRender já disponibiliza. Por exemplo, o uso de light groups e até mesmo suporte a recursos avançados de iluminação como luzes fotométricas, tudo isso já funciona perfeitamente no LuxRender.

Até pouco tempo atrás era complicado simular luzes pontuais com o Cycles, pois o algoritmo do Path Tracing usando pelo Cycles “não gosta” de fontes de luz pequenas. É por esse motivo que sempre acabamos usando luzes em forma de plano ou área. Somente na versão 2.64 do Blender é que o Cycles começará a suportar as luzes do tipo Spot do Blender.

Com a versão 1.0 do LuxRender o software atinge um nível de maturidade que é procurado por artistas e pessoas interessadas em criar imagens para ambientes de produção. Isso significa menos problemas na produção de imagens.

O meu conselho para quem quiser trabalhar com criação de imagens com o Blender é saber tanto o Cycles como o LuxRender, pois ambos são excelentes para gerar imagens realistas. Para os que estão interessados em aprender o LuxRender, estou preparando outro curso sobre renderização com Blender, mas agora usando o LuxRender para complementar o já existente curso sobre renderização com Cycles.

Removendo pontos de renders com Blender Cycles

A renderização de cenas usando softwares que aproveitam das características físicas da luz pode fazer a diferença em projetos que exigem grande nível de realismo, mas junto com as novidades e técnicas de iluminação acabam vindo também problemas inéditos! Por exemplo, o uso do Blender Cycles para renderizar cenas é uma das grandes novidades em termos de recursos para usuários do Blender, mas ele incorporou também problemas que apenas usuários do LuxRender estavam habituados a lidar. Por exemplo, a existência de pequenos artefatos visuais nas cenas renderizadas chamadas pelos artistas como fireflies.

Esses artefatos aparecem como pequenos pontos brancos nas imagens, que independente do tempo que deixamos o projeto renderizando, persistem em não desaparecer. Uma das maneiras de remover esse tipo de elemento das nossas imagens é na pós-produção usando ferramentas como o Photoshop ou GIMP. Mas, seria muito interessante se existisse um meio de filtrar esses artefatos ainda no processo de renderização.

Nas últimas semanas apareceu um método simples complexo usando o node editor do Blender, para remover a granulação com base em uma intrincada combinação de nodes. No painel de renderização do Blender 2.63 existe uma opção que pode ajudar a remover esses fireflies sem a necessidade dessa combinação de nodes. A opção é chamada de Clamp, e com essa opção podemos filtrar de maneira satisfatória esses elementos das imagens.

O vídeo abaixo é exatamente a demonstração de como funciona o Clamp e o seu efeito em uma imagem que utiliza texturas aplicadas ao ambiente no Blender, o que pode gerar diversos artefatos na renderização.

O método é simples e bastante eficiente na remoção dos artefatos, e pode ajudar de maneira significativa artistas nos mais diversos projetos envolvendo renderização com o Blender Cycles. Só quem já ficou com um firefly persistindo durante horas na renderização sabe o quanto é frustrante ter que parar o render para editar a imagem no Photoshop e finalizar o projeto.

Curso sobre renderização avançada com Blender Cycles

Para os que gostariam de aprender a usar o Blender Cycles para renderizar seus projetos, recomendo uma visita ao site do curso sobre renderização avançada com Cycles. O curso ensina a trabalhar com os recursos próprios do Cycles como:

  • Materiais
  • Parâmetros de render
  • Texturas
  • Luzes

Esse curso é realizado de maneira totalmente online e com diversos vídeos explicando os procedimentos necessários para usar o Cycles nos seus projetos.