Vamos entender como o Cycles funciona e como escolher uma Placa de Vídeo adequada para aceleração por GPU

12
Acelerando o Cycles Render

Tags:, Categoria: Blender 3D sexta-feira, 13-01-2012

Não deixe de ver também os artigos anteriores:» /artigos/computacao-grafica/o-que-e-um-open-movie
» /artigos/noticias/mango-o-novo-open-movie

Um questão frequentemente levantada por muitos em relação ao Cycles Render é sobre a aceleração por Placa de Vídeo.

Vamos entender de uma vez por todas como o Cycles funciona e como escolher uma Placa de Vídeo adequada para a utilização deste fabuloso novo renderizador do Blender 3D.

As vantagens do Cycles em relação ao Render Internal

O Cycles, o novo renderizador do Blender 3D (disponível a partir da versão 2.61), é um motor de renderização muito superior ao Render Internal, que acompanhou o Blender todos estes anos.

Cycles Render vs Render Internal

Desenvolvido por Brecht van Lommel (que trabalha para a Fundação Blender), o Cycles oferece a possibilidade de alcançar resultados muito mais realistas sem dever nada a grandes renderizadores do mercado.

A renderização pode acontecer de duas formas, em Tempo Real ( para pré-visualização ) e na Renderização ( para geração da imagem final ).

A meta prevista é que em 2 ou 3 anos, o Cycles se torne o renderizador padrão do Blender, por sua versatilidade e infinitas possibilidades, além da facilidade de utilização.

Embora o Cycles esteja em constante desenvolvimento, a versão que está disponível a partir do Blender 2.61 oferece muita lenha para a fogueira artística dos usuários do Blender, atiçando a curiosidade de todos em relação ao que virá por aí nos próximos anos.

O sistema de materiais esté muito mais moderno e fácil no Cycles, podendo ser utilizado com o sistema de Nodes ou diretamente no painel de materiais.

Cycles Render Node Materials

A iluminação é o principal fator responsável por uma renderização realista.

No que diz respeito a este ganho de realismo, podemos afirmar que a maior diferença está no modo como a iluminação acontece dentro do Cycles.

Enquanto o Render Internal do Blender usa uma iluminação direcionada com simulação de iluminação global ( através do Ambiente Occlusion ), o Cycles trabalha totalmente com iluminação global, ou seja, ele consegue chegar muito perto da realidade.

A iluminação global está presente nos principais renderizadores do mercado e agora, para alegria de todos, é possível usá-la também através do Cycles.

Requisitos para utilização do Cycles

Objetivamente: se o computador for capaz de executar o Blender, também deverá ser capaz de executar o Cycles.

Esqueça os mitos de que o Cycles só funciona em super placas, pois isso não é verdade!

O Cycles funciona de duas formas distintas: por CPU ( o processador do computador ) e por GPU ( a Placa de Vídeo).

O engine faz uso de núcleos múltiplos, não importa se sejam núcleos de CPU ou GPU, isso significa que o Cycles utiliza o que estiver disponível no computador do usuário.

Aumentando a velocidade da renderização

O grande diferencial do Cycles está na renderização por GPU, que consiste em enviar o processamento e os cálculos 3D para a GPU executar.

A GPU é muito mais rápida que a CPU, por estar disponível exclusivamente para vídeo.

Para que a renderização por GPU esteja disponível, obviamente, é necessário uma Placa que ofereça esta funcionalidade.

Na hora de comprar, deve-se verificar se os recursos requeridos estão presentes, caso contrário o botão da GPU nem aparecerá no painel do Cycles.

O processamento por GPU acontece de duas formas, através da arquitetura CUDA ou do OpenCL.

O Cycles e o CUDA

CUDA ou Compute Unified Device Architecture é uma arquitetura de computação paralela desenvolvida pela Nvidia.

Na indústria de jogos, além de renderização de gráficos, CUDA é utilizado para cálculos de física ( detritos, fumaça, fogo, líquidos, etc);

CUDA trabalha com todas as GPUs Nvidia a partir da série G8x, incluindo GeForce, Quadro e a linha Tesla, além de ser compatível com os principais sistemas operacionais incluindo Windows, Mac e Linux.

Cycles Render Nvidia CUDA

Veja aqui a lista de Placas Nvidia com CUDA.

Para o Cycles funcionar a todo vapor com GPUs Nvidia, é necessário:

  • Ter os drivers Nvidia mais atuais instalados;
  • Ter uma placa com suporte a CUDA versão 1.3 ou superior

Boa notícia para quem usa Mac ou Linux:

Placas GeForce 8xxx, 9xxx que possuiem CUDA inferior a 1.3, podem funcionar no Mac ou Linux, ativando os recursos experimentais do Cycles.

Isso é possível utilizando a compilação dos kernels do CUDA via software.

Para isso, basta baixar o CUDA Toolkit versão 4.0 e instalá-lo via terminal seguindo as informações que vão aparecer.

Após a instalação, e ativação da opção Experimental no painel do Cycles, a primeira renderização irá compilar os kernels do CUDA. Isso irá demorar alguns minutos dependendo da capacidade do computador.

Cycles Render Nvidia CUDA Experimental

Se aparecer uma mensagem de erro, edite o arquivo /usr/local/cuda/include/host_config.h e remova a linha que contém “#error — unsupported GNU version! gcc 4.5 and up are not supported!”. Renderize novamente para que compilação reinicie.

Para mais informações, acesse o manual oficial do Blender Cycles.

O Cycles e o OpenCL

O OpenCL ou Open Computing Language envolve a execução de código em duas plataformas diferentes: o Computador e a Placa de vídeo, melhorando muito a velocidade e capacidade de resposta para aplicações e jogos por causa da elevado paralelismo gerado pelos threads da GPU.

Porém, o OpenCL é mais lento que o CUDA, pois enquanto no CUDA os cálculos são feitos pela GPU, no OpenCL acontece uma união de recursos entre A CPU e a GPU.

A implementação do OpenCL para o Cycles não terminou ainda, por isso ainda é considerada de caráter experimental. A equipe de desenvolvimento está trabalhadando duro para possibilitar a utilização de inúmeros modelos de GPUs ( como as placas da ATI por exemplo ), e não apenas GPUs da Nvidia.

Como acontece no CUDA Experimental para Mac e Linux, na primeira vez que for executada uma renderização, o kernel do OpenCL deverá ser compilado para a sua arquitetura de GPU.

É requerida a versão 1.1 ou superior do OpenCL.

Cycles Render CPU

Começando a usar o Cycles

1. Primeiro ative o Cycles Render no botão de renderizadores no topo do Blender.

Cycles Render

2. Mude o “Viewport Shading” da 3D View para “Rendered”.

Cycles Render Shading Rendered

3. A 3D View deverá ser renderizada em tempo real, permitindo continuar editando os objetos simultaneamente.

Cycles Render Realtime Cube

4. Pressionando F12, renderiza-se a imagem final.

5. É possível configurar o poder de renderização da pré-visualização e da renderização final no bloco Integrator da aba Render.

Cycles Render Configuracoes

o que vem por aí?

Agora que o Cycles está integrado ao pacote oficial do Blender, os próximos passos da equipe de desenvolvedores é melhorar ainda mais o desempenho e adicionar novas funcionalidades ao renderizador.

Um fator muito interessante no desenvolvimento do Blender é a produção dos Open Movies.
Quando a Blender Foundation inicia a produção de um novo OpenMovie, significa que o Blender será testado ao máximo por profissionais que abusarão do poder do programa a fim de detectar falhas e apontar as melhorias necessárias.

O open movie atual é o Mango que está previsto para meados de agosto de 2012, e sua produção visa o desenvolvimento das ferramentas necessárias, dentro do Blender, para a criação de um filme com efeitos especiais, misturando realidade e terceira dimensão.

Durante esta produção, o Cycles vai passar por muitas melhorias de desempenho e poder de fogo.

Cycles Render Roadmap

Para os próximos meses, as principais prioridades de desenvolvimento do Cycles são:

  • Aumento da performance;
  • Diminuição do granulado (noise) da renderização;
  • Gerenciamento de Camadas (Render Layers);
  • Renderização por Passos;
  • Composição (pós produção);
  • Volume;
  • Motion Blur (desfocagem por movimento);
  • SSS (SubSurface Scattering)

Por enquanto é só.

Mais informações sobre o Cycles e como usá-lo na prática virão a seguir através de vídeo tutoriais.

Até lá!

Referências Externas:» http//wiki.blender.org/.../Doc:2.6/Manual/Render/Cycles/GPU_Rendering
» http//code.blender.org/.../2011/04/modernizing-shading-and-rendering/
» http//wiki.blender.org/index.php/Dev:Doc/Projects
» http//wiki.blender.org/...p/Doc:2.4/Manual/Lighting/Ambient_Occlusion
» http//developer.nvidia.com/cuda-gpus
» http//en.wikipedia.org/wiki/CUDA
» http//www.khronos.org/opencl/
» http//jeffpatton.net/...inion-on-todays-gpu-selections-for-rendering/
» http//www.cse.scitech.ac.uk/...mew20/presentations/GPU_MattHarvey.pdf
» http//cgcookie.com/...ender-introduction-to-the-cycles-render-engine/

1
Download do Novo Blender 2.62

Download do Novo Blender 2.62

sexta-feira, 17-02-2012

Mais uma nova versão do Blender está disponível, com vários novos recursos e novas possibilidades. A tão esperada versão 2.62 do Blender 3D está disponível e com ela muitas melhorias. … Continue lendo

2
Blender 3D: Física de Pano – Parte 2

Blender 3D: Física de Pano – Parte 2

quinta-feira, 2-02-2012

Esta é a segunda parte da vídeo aula sobre física de pano, aprenda a configurar os parâmetros do pano a fim de entender o funcionamento deste sistema. Continue lendo

3
Entrevista com Lucio Cavalcanti

Entrevista com Lucio Cavalcanti

quinta-feira, 19-01-2012

Entrevista exclusiva com Lucio Cavalcanti da Agência Caju que fala com muita propriedade sobre a utilização comercial do Blender. Continue lendo

12 Comentários para este Artigo

  1. Marcos (Replicar) 14 de janeiro de 2012

    Excelente artigo. Muito esclarecedor e objetivo!

  2. vJPacheco (Replicar) 3 de fevereiro de 2012

    Nas opções de render do Cycles no meu Blender 2.61 não tem a opção “Device”. Tem apenas “Display” e “Feature Set”. Por que será?

    • rpdesigner (Replicar) 5 de fevereiro de 2012

      O Cycles detecta automaticamente os recursos disponíveis da sua GPU (Placa de Vídeo). A opção “Device” só estará presente para GPUs que tenham suporte à CUDA da Nvidia.

  3. Vandro Oliveira (Replicar) 17 de maio de 2012

    Olá!
    No meu painel do Cycles também não aparece a opção “Device” lí os manuais da minha placa GT220 e diz que tem suporte a CUDA 2, baixei os drivers mais recente e nada. Estou desanimado com essa placa até mesmo por que é extremamente trabalhoso instalar nvidia no linux.
    Também estou tendo problemas com a renderização usando Cycles, pois fica mais lento e o resultado final é sujo (sombreamento fragmentado), o Internal + Ambient Oclusion tá dando de 10 a 0. rsrsrs

    Parabéns por este site! Tudo “usavel” e de extremo bom gosto!

    • rpdesigner (Replicar) 25 de maio de 2012

      Olá Vandro.
      Obrigado pelo elogio!!

      A realidade é que o Cycles ainda está em desenvolvimento e muita coisa pode acontecer.
      Por causa da renderização em tempo real ele precisa de uma placa de vídeo boa para ficar bacana.

      Mas o resultado do Cycles é muito superior em termos de realidade e qualidade.
      O conceito é que é um pouco diferente. É preciso acostumar com o ajuste do “granulado” da renderização.
      Este efeito “granulado” é uma característica presente em outros grandes renderizadores como o LuxRender por exemplo.

      Isso acontece porque o Cycles e outros renderizadores do gênero, calculam a renderização em ciclos, onde cada ciclo amplia a resolução da imagem.
      Quanto mais ciclos, mais demorado, porém menos granulado e mais realista!

      Para ajustar o número de ciclos, basta ir na aba Render e no bloco Integrator, aumentar os Samples do botão “Render” de 10 para 200, por exemplo, para ver o resultado bem melhor.

  4. Bruno Martinez Guimaraes (Replicar) 20 de maio de 2012

    Desejo saber como eu faco aquela taca com vinho .
    Do inicio do site .
    Sera que vc possuem alhum tutorial?

    • rpdesigner (Replicar) 25 de maio de 2012

      Olá Bruno! Em breve serão publicados tutoriais sobre simulação de flúidos e a taça vai entrar em ação novamente com vinho tinto.
      Só precisamos arranjar tempo para terminar a montagem dos videos. :)

    • Afonso Enderson (Replicar) 13 de agosto de 2012

      ñ é uma taça.. tá mais p uma boringa…kk

  5. robert (Replicar) 20 de junho de 2012

    este é o melhor site para usuario do blender.

  6. Sandro (Replicar) 8 de agosto de 2012

    Eu não encontrei o Cycles no Blender 2.62 no ubuntu 12.04.. o que preciso fazer para habilitar ele no Blender

    • rpdesigner (Replicar) 17 de agosto de 2012

      Olá Sandro. O Cycles é selecionado no menu de renderizadores na parte de cima do Blender. Por padrão, o “Blender Render” está selecionado, basta mudar para “Cycles Render”.

Deixe seu Comentário

Sua opinião é muito importante e ajudará este site a ficar cada vez melhor

Texto do seu comentário:

Pergunta para validação: 5+6 =