Skip to content

Criando uma renderização de oclusão de ambiente no Maya

7 de junho de 2021

Aqui, no canto dos gadgets, as receitas não fazem muito sentido, mas ocorreu-nos outra noite, enquanto procurávamos conselhos para cozinhar frango com limão e pimenta, que poderíamos começar uma série com um tipo diferente de receita – shader receitas. “Livros de receitas” inteiros foram escritos em materiais e shaders em Maya, UDK, 3DS Max, Vray, etc. É algo com que muitos iniciantes têm dificuldade e por um bom motivo! Ajustar uma série de parâmetros misteriosos como “força especular” e “peso difuso” em uma tentativa de imitar materiais do mundo real como madeira, vidro, pedra ou azulejo de cerâmica não é uma tarefa fácil.

Então aqui estamos nós.

Começando com oclusão ambiente, começaremos a apresentar algumas configurações de aplicativo para alguns materiais comuns do mundo real que são difíceis de definir. Estaremos usando principalmente o Maya nesta série, embora possamos mudar para o Unreal Development Kit uma ou duas vezes. Estamos entusiasmados com esta série e esperamos aprender tanto escrevendo quanto você lendo!

O que é Ambient Occlusion?

Getty Images para American Gaming / Getty Images
Não se deixe enganar pelo nome – a oclusão de ambiente é, na verdade, um material bastante simples de construir e incrivelmente importante. O AO não é apenas usado (universalmente) para renderizar imagens de trabalho em andamento, mas também é frequentemente usado como uma passagem de base na composição e pintura de textura, porque ajuda a destacar os detalhes e objetos “básicos” em uma cena, unificando as sombras . A oclusão de ambiente é uma forma de material de autossombreamento, o que significa que funciona mesmo se não houver iluminação em sua cena. Em teoria, é uma aproximação rudimentar da iluminação global e tem como objetivo imitar a maneira como a luz se espalha por uma sala ou ambiente. As renderizações de oclusão de ambiente têm uma aparência de “sombra suave” característica com escurecimento sutil em qualquer lugar que duas superfícies se aproximem ou entrem em contato (cantos de uma sala, a parte inferior de objetos, detalhes finos etc.) Imagens de oclusão de ambiente ocasionalmente são chamadas de “renderizações de argila” devido à sua semelhança com a argila de modelagem. Aqui está um modelo que fizemos para um workshop no ano passado que usa a oclusão ambiente para mostrar a forma do modelo (conceito de arma de Diego Almazan).

Criando um sombreador de oclusão de ambiente:

Criar um sombreador de oclusão de ambiente para imagens básicas de progresso é muito fácil e não requer nenhum UV, mapas de textura ou iluminação. Existem várias maneiras de implementar o efeito para resultados ligeiramente diferentes, mas a que apresentaremos aqui é boa e direta, exigindo apenas um único nó de Raio Mental e um material Lambert básico. Aqui está uma breve explicação passo a passo.

Abra a janela Hypershade e crie um novo material Lambert.

Dê um nome ao material – geralmente usamos algo como ambientOcclusion_mat. Clique duas vezes no material para abrir seus atributos de material. É aqui que definiremos a maioria dos parâmetros do sombreador. Por padrão, a cor difusa do material é um cinza neutro, mas não queremos que nossos realces estourem, então vamos deslizar o valor da cor para baixo em direção à extremidade mais escura do espectro. Estamos usando 0, 0, .38 para o valor HSV no atributo de cor, mas isso é uma questão de preferência pessoal.

A próxima coisa que precisamos fazer é conectar um nó de oclusão de ambiente no atributo de incandescência do material.

Clique na caixa quadriculada ao lado do incandescência entrada. Isso abrirá a janela do nó de renderização. Debaixo de Mental ray guia, clique texturas e encontra mib_amb_occlusion na lista. Clique nele e o nó será aberto no editor de atributos no lado direito da tela. Você deve ver uma lista de atributos – os que são importantes para nós são samples, claro / escuro, propagação e distância máxima; no entanto, a única coisa que mudaremos é o número de amostras.

No nó de oclusão do ambiente, o número de amostras controla a quantidade de ruído em sua renderização.

Deixar as amostras em 16 ou 32 será relativamente granulado, enquanto aumentar o valor para algo como 64 ou 128 parecerá muito suave. 32 amostras é bom para o teste, mas se planejamos mostrar uma imagem, normalmente usaremos 64 ou 128. Experimente alguns renderizadores em diferentes níveis de amostra para sentir as diferenças – você pode achar que gosta da aparência granulada no extremidade inferior do espectro. Aqui está uma imagem de comparação que fizemos usando um ambiente externo modelado há algum tempo, mostrando a diferença entre uma renderização de base do Maya e uma renderização de oclusão de ambiente com 64 e 128 samples. Veja como a imagem fica melhor com a oclusão de ambiente?

Você também pode brincar com os outros atributos se desejar:

Claro e escuro controlar os valores mínimo e máximo em sua renderização. Se você achar que seus realces estão estourados ou que suas sombras estão sendo esmagadas, você pode usar esses controles deslizantes para compensar. Espalhar e distância máxima irá alterar a distância de queda / oclusão entre seus valores claro e escuro. Ai está! Esperançosamente, você aprendeu um pouco sobre a oclusão de ambiente e como ela pode ser usada como um bom material de apresentação para suas cenas 3D.