Material gratuito sobre teoria da computação gráfica 3d com YafaRay

O processo de planejamento de qualquer curso ou atividade educacional relacionada com computação gráfica 3d é sempre um desafio, pois é preciso separar o quanto de teoria relacionada ao assunto é necessária para que os alunos consigam atingir os objetivos do curso. Por exemplo, logo no inicio desse ano tive a oportunidade de ministrar um curso sobre visualização de projetos para arquitetura, voltado para artistas 3d. Esse curso tem uma carga de teoria bem pequena e envolve muito mais a parte prática relacionada com a criação e composição de imagens realistas. Boa parte do curso é dedicado a prática e exercícios.

Mas, quando o assunto envolve o ensino de computação gráfica 3d para cursos de graduação ou mesmo pós-graduação o sentido deve ser exatamente o oposto, por mais que seja interessante passar a parte prática da aplicação dos conceitos, os próprios alunos apresentam certa resistência a assimilar esse tipo de conhecimento. Por isso, as minhas aulas preparadas para cursos de graduação e pós, acabam sempre direcionando o conteúdo para a parte teórica, até pela vocação de pesquisa desses alunos.

Existem cursos que fazem o balanço desses dois conteúdos? Claro que sim! O material é um pouco difícil de encontrar, mas é perfeitamente possível. Veja esse exemplo de material sobre renderização com YafaRay e Blender 3D, disponibilizado pelo Alvaro Luna nos fóruns do Blenderartists.org. O material foi organizado para um curso sobre o YafaRay ministrado pelo Alvaro, que é um dos líderes da comunidade de artistas e usuários do YafaRay.

material-gratuito-teoria-computacao-grafica-3d-yafaray.jpg

O material da aula está organizado em uma apresentação de 64 slides que perfaz um pouco da história da computação gráfica, até o uso das tecnologias de renderização mais recentes. Essa é uma lista dos assuntos abordados no curso:

  • História do desenho e computação gráfica
  • Como acontece a renderização
  • A equação do render
  • Processos de renderização e iluminação global
  • Métodos de render usados pelo YafaRay
  • Materiais e shaders
  • Exercícios práticos

Além de explicações acompanhadas de diagramas sobre todos esses métodos e assuntos, o material ainda é composto pode diversos exercícios práticos, propostos no final dos slides. Junto do arquivo PDF existem diversos arquivos do Blender 3D, prontos para uso nas situações indicadas no enunciado dos exercícios.

Se você é aluno de algum curso de graduação ou pós, precisando de material para pesquisa e referência, os slides devem ajudar significativamente com a parte chata da teoria. Aos usuários do Blender 3D interessados em desenvolver suas habilidades com o YafaRay, o download é mais que recomendado.

Blender 3D: Projetos aprovados para o Google Summer of Code 2009

Como você já deve estar sabendo, caso acompanhe as notícias aqui do blog, o Google Summer of Code 2009 estava para anunciar os projetos aceitos, para receber patrocínio do programa de incentivo ao desenvolvimento de softwares abertos do Google. O projeto funciona assim, um estudante faz uma proposta de projeto, visando desenvolver ou melhorar um software de código aberto, indicando um orientador mais experiente para o projeto, e o Google recompensa a realização do projeto com pagamentos em dinheiro. Claro que o projeto é realizado no período de férias no hemisfério norte, por isso se chama Summer of Code.

Essa semana o Google anunciou a lista com os projetos aceitos para cada um dos softwares e estudantes cadastrados, e assim como acontece em todos os anos o Blender 3D teve uma ótima participação, com seis projetos aprovados! Para conferir a lista oficial com as indicações dos estudantes e orientadores, visite o web site oficial do SoC 2009.

Quais foram os projetos aprovados para o Blender 3D? Quais impactos eles podem trazer em futuras versões?

SoC 2008

Esse ano a lista de projetos aprovados é a seguinte, os títulos foram traduzidos:

  • Melhorias no sistema de Raytracing
  • Reformulação do NLA para o Blender 2.50
  • Melhoria no suporte ao formato COLLADA
  • Pintura de luzes com Spherical Harmonics
  • Implementação de uma API para importação e exportação com Python
  • Melhorias na renderização em tempo real com OpenGL

Como você pode perceber, não existe nenhum projeto direcionado para modelagem 3d e criação, mas muitos direcionados para render e visualização. Um dos que pode trazer benefícios indiretos para o Blender, é o projeto que envolve a pintura de luzes com Spherical Harmonics. Em resumo, o projeto pretende criar no Blender 3D uma interface para pintar modelos 3d alterar imagens HDRI com base nessa pintura. Se esse projeto for concluído, muitos artistas que usam plataformas como 3ds Max, Maya, Cinema 4D e outros softwares deve começar a usar o Blender para esse propósito.

Todos os projetos devem deixar o Blender mais robusto e melhor de trabalhar. Com mais flexibilidade para importar e exportar modelos 3d, renderizar com Raytracing e visualizar cenas na 3D View com recursos da GPU, o Blender fica mais amigável e melhor visto por profissionais de computação gráfica 3D.

Agora precisamos ficar torcendo para que os estudantes consigam finalizar os seus projetos, pois o fato de ter sido aceito não significa que o mesmo será concluído. Hoje mesmo, ainda existem projetos remanescentes de 2008 que ainda não foram finalizados.

O Blender 3D não foi o único software aberto relacionado com computação gráfica com projetos aprovados, ainda foram listados na página do SoC 2009 projetos envolvendo GIMP, Inkscape, Scribus e Aqsis.

Versão estável do YafaRay é lançada! (YafRay 0.1.0)

Um dos melhores renderizadores externos de código aberto, finalmente ganhou uma versão estável da sua mais completa atualização, o YafaRay foi lançado com uma versão estável que promete uma plataforma de raytracing e iluminação global extremamente poderosa para o Blender 3D. O YafRay sempre foi ima das melhores opções de renderização externa para o Blender 3D, desde as primeiras vezes que usei o Blender, sempre usei o YafRay para criar imagens com iluminação global, dos meus projetos de visualização arquitetônica. Depois de passar por algumas mudanças e ficar um bom tempo, sem receber atualizações, em 2006 o YafRay sofreu uma reviravolta, em que os desenvolvedores abandonaram o antigo renderizador, e se dedicaram a um novo código.

Esse código prometia ser melhor de gerenciar e oferecer mais opções para os usuários. Ele foi batizado de Yaf(a)Ray, e ficou em fase de testes por dois anos, até que finalmente na semana passada uma versão estável, que pode ser usada com muito mais segurança em ambientes de produção, foi disponibilizada para download.

O fator que estava fazendo com que essa versão ficasse tanto tempo em testes, era a necessidade de uma versão especial do Blender, para que o YafaRay fosse usado. Isso seria corrigido com o Blender 2.50, com a sua prometida Render API, mas a comunidade de usuários acabou encontrando uma maneira de integrar o Blender com o YafaRay usando Python mesmo.

Como funciona esse novo YafRay? Como instalar? Antes de continuar, faça do download do YafaRay 0.1.0 nesse endereço. O processo de instalação é um pouco diferente para quem usa Windows, Linux ou Mac. No Windows são necessários dois instaladores, um para o próprio renderizador e outro para a integração com o Blender 3D.

Nessa nova versão, a imagem é renderizada em uma janela externa e não mais no próprio Blender 3D. Com isso, você pode visualizar o progresso da renderização, mas precisa tomar alguns cuidados. O maior de todos é que a imagem precisa ser salva, antes que a janela do render seja fechada. Caso você feche a janela, sem salva a imagem, será necessário renderizar novamente a imagem! Esse bug já está sendo corrigido, mas enquanto não surge nenhuma nova versão, tenha o cuidado de salvar a imagem antes de fechar a janela.

Essas são algumas das mudanças da nova versão:

  • Agora é necessário usar um botão chamado Render, na interface do script
  • A interface do menu de exportação, agora pode ser manipulada com o Scroll do mouse ou botão do meio

Quer aprender a configurar uma cena com o YafaRay? Sugiro a leitura desse tutorial sobre renderização para interiores, com o YafaRay. Ele é um pouco antigo, mas mostra os comandos básicos.

Como funciona um Raytracer?

Parte do trabalho de qualquer pessoa envolvida com computação gráfica, ou assuntos relacionados com visualização de informações no computador é entender o funcionamento das ferramentas. Quem trabalha com ilustração, deve ter ao menos uma noção básica sobre como funcionam os gráficos vetoriais, assim como a organização de imagens rasterizadas. Isso é obrigatório? Na verdade é desejável, assim como um piloto de automóveis precisa conhecer de mecânica, para recomendar melhorias e resolver problemas que ele encontra ao dirigir, um artista 3d precisa entender um pouco sobre os processos que regem os softwares que usamos.

Na semana passada encontrei um web site que está se propondo a explicar, no que parece ser um curso a distância, o funcionamento dos sistemas de Raytracing.

I'm Feeling Sleepy Already

O texto é longo e explica em detalhes o funcionamento dos sistemas de renderização, com o uso de Raytracing. Então os usuários de suítes 3d que façam uso de softwares como V-Ray, Mental Ray, Indigo, YafRay e outros podem se beneficiar com as explicações.

Para acessar a primeira aula, visite esse endereço. O texto é bem técnico e está em língua inglesa, mas para quem tem aversão a ler esse tipo de material em inglês, essa é uma versão com tradução automática do Google. Cuidado, pois o texto fica quebrado e algumas partes perdem o sentido na tradução.

O texto está dividido da seguinte forma:

  1. Como uma imagem é criada?
  2. Funcionamento to algoritmo de Raytracing
  3. Raytracing
  4. Adicionando reflexão e refração
  5. Código fonte

As cinco áreas acima explicam bem o funcionamento do processo, desde a distribuição e comportamento de emissores e receptores de energia luminosa.

Cornell Box

Mesmo que você não entenda nada sobre programação, leia o texto tente ao menos compreender o funcionamento e comportamento dos fótons. Todos os parâmetros dos renderizadores externos manipulam o comportamento dos elementos descritos no texto.

Se você está fazendo algum trabalho acadêmico, principalmente de conclusão de curso envolvendo o funcionamento de sistemas de computação gráfica, recomendo ler o texto. Sempre é bom ter uma boa quantidade de referências para esse tipo de trabalho.

Essa foi apenas a primeira “aula”, de uma série textos que o Scrath a Pixel promete lançar sobre computação gráfica 3D.

Tutoriais sobre renderização realista com Fryrender

O Fryrender é um promissor renderizador, que funciona de maneira semelhante ao Maxwell render e Indigo, simulando a distribuição da luz usando física real. Isso gera imagens absurdamente realistas, com o uso intenso de recursos de hardware e tempos de render muito longos. O Fryrender esteva sendo desenvolvido, mas há pouco tempo foi lançando como um render comercial para qualquer artista interessado em usá-lo para criar imagens realistas. Ele até tem um módulo compatível com o SketchUp.

Mas, não é sobre as qualidades e benefícios do Fryrender que estou escrevendo hoje, mas sim sobre o lançamento dessa ferramenta, como produto comercial o a disponibilização de uma rica documentação, explicando como essa incrível ferramenta funciona. Ai é que entra um benefício para todos que usam ferramentas 3d para animação, eles lançaram vários tutorias acompanhando o lançamento do Fryrender.

Para fazer o download dos tutoriais, visite esse endereço. Depois é só escolher um tutorial, na lista da direita.

Você pode estar se perguntando; mas eu não uso o Fryrender? Bem, os tutoriais são destinados a ensinar tanto o uso do Fryrender, como conceitos básicos de renderização e enquadramento. Por exemplo, existe um PDF fanstástico sobre fotografia e simulações de câmeras em ambientes virtuais, que tem aplicações no Blender 3D, Indigo, V-Ray ou qualquer outra ferramenta que use câmeras.

Como você pode perceber pela imagem que ilustra esse artigo, o material é recheado de ilustrações ricas em infográficos, que facilitam a compreensão, mesmo para quem não entende inglês.

Entre os títulos em PDF, podemos destacar:

  • Como gerar normal maps
  • Introdução a fotografia
  • Renderizando líquido dentro de um copo
  • Efeito de cautics dentro de uma piscina
  • Efeito de caustics gerado pela luz do sol

Esses são apenas alguns dos exemplos disponíveis, todos em formato PDF e gratuitos para download.

Não deixe de conferir os tutoriais sobre caustics que mostram o potencial desse renderizador. Nessa mesma página, estão programados alguns tutoriais em vídeo, mas os links ainda não estão disponíveis, apenas os arquivos em PDF.

Todo esse material, pode ser “transportado” para renderizadores como o LuxRender e Indigo, que trabalham com princípios semelhantes, mas são de código aberto e se integram de maneira razoavelmente bem com o Blender 3D. Você precisa apenas de um pouco de paciência e transferir os conhecimentos adquiridos com o tutorial, para o renderizador no qual você está acostumado a trabalhar.