Autodesk 3ds MAX

Dicas para melhorar render – Mental Ray no Max 2011

Um amigo meu me enviou um render que ele havia feito e o arquivo original do Max, pedindo ajuda para melhorar o trabalho final. Com autorização dele, posto esse tópico, onde acredito possa ajudar mais pessoas.

Considerações iniciais

A – Alterações feitas no arquivo original

  • Unidade de medida
  • Habilitação da correção de Gamma
  • Materiais
  • Parâmetros das luzes
  • Configuração de render

B – Unidade de medidas

O 3DS Max é bem “chato” com relação a unidade de medida adotada numa cena. Alterar essa unidade significa alterar as configurações de render, iluminação e etc. Eu abri um arquivo novo, configurei as unidades da forma como trabalho normalmente (veja abaixo) e dei um File > Import > Merge de todos os objetos da cena original para fazer a adequação da escala.

Para alterar as unidades de medida, vá em Customize > Units Setup…

fig01

Minhas configurações de unidades

C– Gamma correction

Para entender melhor essa etapa, leia meu artigo sobre Linear Work Flow.

A primeira coisa é habilitar o gamma no Max. Para isso, vá em Customize > Preferences > Gamma and LUT:

fig02

Affect Color Selectors e Affect Material Editor, significam que a correção de gamma será vista nos seletores de cor dos materiais e no próprio editor de materiais. Eles ficarão mais claros.

Em Bitmap Files, Input Gamma e Output Gamma significam que qualquer bitmap que for carregado, terá seu valor de gamma corrigido para 2,2 e que, ao salvar um render, os bitmaps contidos nele serão salvos com valor 2,2 de gamma, dispensando conversões ao salvar as imagens.

Nos materiais que não usem bitmaps, ou seja, usem apenas cores ou mapas procedurais, deve-se fazer um ajuste no gamma através de um shader específico do Mental Ray, chamado Gamma and Gain. Basta usar a mesma cor no slot de cor do shader Gamma and Gain:

fig03

Cor de material sem o Gamma and Gain

fig04

Cor corrigida com o Gamma and Gain

D – Controle de exposição (Exposure Control)

Procure trabalhar com o controle de exposição de luz (Exposure Control). No caso do Mental Ray, opte pelo mr Photographic Exposure Control. O controle de exposição é como uma câmera fotográfica, contendo ajustes como abertura do diafragma, velocidade do obturador, sensibilidade de filme (ISO), etc. Para quem achar complicado, existe uma forma automática de configurá-lo. Basta habilitar a opção Exposure Value (EV). Quanto menor esse valor, mais clara fica a cena.

Opte sempre pelo uso de luzes do tipo Photometrics, pois simulam lâmpadas artificiais reais. Para cenas externas ou internas durante o dia, onde a iluminação de fora ajudará a iluminar o ambiente interno, use o sistema Daylight com Skyportals nas janelas, pois elas direcionarão a claridade de fora para dentro de forma realista.

exposurecontrol

Tecla 8 para ter acesso a essa tela

Outra dica é usar Skyportals como pontes de luz sem o Daylight. Como luz area, elas funcionam melhor que qualquer outra luz area no Max, pois elas realmente emitem luz de sua superfície, ao contrário de outras tipos de luzes, que tendem a concentrar a intensidade da luz no centro. Para usar uma skyportal como fonte de luz, selecione a skyportal e, no Painel Modify, desça até o grupo Advanced Parameters. Habilite o Custom e clique no botão None para carregar o shader Kelvin Temperature Color. Arraste como instância esse shader para o Material Editor para alterar seus parâmetros. Intensity: é a intensidade da luz. Kelvin Temperature: é a temperatura da cor, ou seja, a sua cor. Quanto menor, mais avermelhada e quanto maior, mais azulada.

skyportal

kelvintempcolor

E – Organização

Nomeie todos os objetos da cena e organize tudo em layers.

Agora sim!

1 – Materiais

Usando Mental Ray, recomendo usar o shader Arch&Design (mia_material) para criação de materiais. As vantagens são:

  • é possível criar qualquer tipo de material com ele.
  • trabalhar com Arch&Design é mais flexível e se tem mais controles para ajustes do que com shaders do tipo Autodesk ou Pro Materials.

Quando necessário, usar mapa de bump para dar mais realismo, aumentando o nível de detalhe sem alterar a geometria.

Evite usar cores como branco puro, preto puro ou tonalidades puras de cinza. Branco puro reflete muita luz, chapando o objeto, prejudicando a volumetria do mesmo e aumentando o estouro de luz. Objetos com preto puro, absorvem toda a luz também chapando suas formas. Cinca puro, apesar de não refletir e nem absorver tanta luz, tende a tirar um pouco da profundidade e principalmente realismo do material, já que no mundo real, dificilmente os cinzas são cinzas. Eles tendem para o azul, amarelo ou verde, com saturação bem baixa. O mesmo pode ser feito com branco e preto: pouca saturação do azul, amarelo ou verde, ou mesmo outra matiz do seu gosto.

Alterei todos os materiais da cena para Arch&Design, exceto o material da cortina. Nos materiais das paredes, forro, estátua e tapete, eu configurei os shaders para não refletir de verdade, emitindo apenas o brilho specular do material. Essa opção se chama “Highlights+FG only”. Dessa forma, o material é mais rapidamente renderizado e, no meu caso, não afeta tanto a aparência por serem materiais foscos.

fig06

Highlights + FG only

Na cortina, eu dei um efeito de translucidez, pois o tecido, que tem pouca espessura, acaba deixando parte da luz entrar através do seu espalhamento pelo material. Eu usei o shader Subsurface Scattering Fast Material, que é um shader SSS. Não é bom usar um Arch&Design para simular esse efeito. Shaders SSS são muito melhores e mais rápidos para renderizar. Esta informação está no manual sobre shaders Arch&Design.

fig07

Subsurface Scattering Fast Material

As configurações que fiz no shader SSS foram adicionar a textura da cortina nos slots Front surface scatter color e no Back surface scatter color. Fiz um versão da mesma textura em tons de cinza e usei como bump no slot Bump shader. Aumentei o valor dos raios de Front surface scatter radius, Back surface scatter radius e Back surface scatter depth que , na prática, permitem que a luz atravesse e/ou se espalhe mais ou menos pelo material.

Também escureci a cor de Specular color para deixar o material com aparência mais fosca.

Na tela da TV, habilitei o efeito de Self Illumination, aplicando a textura da tela para emitir luz e alterando os parâmetros conforme abaixo:

fig08

Self Illumination

2 – Geometria

Quando se usa o Mental Ray, é aconselhado a não usar objetos sem espessura, como é o caso da cortina. A falta de espessura pode ocasionar artefatos (manchas escuras). Dê um mínimo de espessura para evitar esse problema. Essa informação se encontra no manual do Mental Ray.

No caso to tapete, como foi usado displacement, não alterei sua espessura.

No displacement do tapete, ao invés de usar o Modifier Displacement do Max, eu apliquei o displacenment no material do tapete e dimiuí a quantidade de seguimentos do objeto tapete de 500 para 100. Com isso, a geometria fica mais leve e, já que o render é o Mental Ray, é melhor usar o displacement dele. Além da subdivisão existente na malha, ele subdivide a mesma ainda mais e eu posso controlar melhor como esse displacement ocorrerá.

fig09

Slot Displacement no material

A quantidade total de polígonos na cena, que estava em mais de 680.000, baixou para 205.000. Isso vai acelerar o render e economizar memória.

3 – Iluminação

A primeira coisa que fiz, foi reduzir as intensidades da mrSun e mrSky, no sistema Daylight. Como o Exposure Control está sendo usado, deixei os valores de Multiply da mrSun e da mrSky com 1.

Para deixar as luzes mais reais, mudei nas luzes photometrics o formato de point para area. A luz point simula bem as sombras formadas por uma lâmpada incandescente. Porém, esteticamente, por gerar sombras duras. Além do mais, maquetes devem expressar a tecnologia atual, ou seja, luzes frias, fluorescentes, que tendem a gerar sombras mais difusas devidos ao seu formato e natureza. Porém, nada impede de usar sombras duras. Tudo vai depender do tipo de lâmpada.

Usei o formato retangular para simular uma luz sendo emitida por uma luminária de mesma dimensão e formato.

Alterei também a cor das luzes internas. Branco puro, na minha opinião, tira o realismo da cena. As lâmpadas sempre têm uma coloração que não branco puro: luzes de sódio são amarelas, luzes frias podem ser azuis, verdes, amarelas, etc. Nesse caso, usei um template da photometrica chamada Fluorescent Daylight, que tem um leve tom azulado.

Não havia uma luz emitindo a claridade de fora para dentro. Como esta cena está sendo iluminada usando o sistema Daylight, coloquei uma Sky Portal do lado de fora da janela com as mesmas dimensões da mesma. Assim, a Sky Portal pega a iluminação emitida pela mrSky e joga pra dentro do ambiente.

4 – Render

Usando apenas Final Gather

Usando apenas Final Gather, fiz os seguintes ajustes:

Configuração original Configuração ajustada
fig10 fig11

Initial FG Point Density: é a densidade dos pontos do Final Gather. Esses pontos tendem a se concentrar, ou seja, se tornarem mais densos em detalhes da cena, como frestas, regiões de encontro de objetos, firmando mais os detalhes. O valor 1 eu considero suficiente. Mais que isso gerará um aumento significante no tempo de render. Ao invés de adicionar mais detalhamento ao efeito aumentando o valor da densidade, eu prefiro gerar um passo de oclusão (Ambient Occlusion) e compor em pós-produção.

Rays per FG Point: é a quantidade de raios emitidos pelo Final Gather. Quanto maior, melhor será o efeito, mesclando melhor os pontos, evitando manchas. Quanto maior esse valor, também maior será o tempo de render. Eu diminuí julgando ser suficiente o valor de 128 para essa cena, através de testes.

Interpolate Over Num. FG Points: na prática, quanto maior esse valor, melhor ficará o efeito do FG. Ele interpola, mescla os pontos acabando com as manchas da iluminação indireta. Pode-se controlar isso manualmente, ajustando os raios Mínimos e Máximos dos pontos de FG. Essa configuração está em FG Point Interpolation:

Ao habilitar o [Use Radius Interpolation Method (Intead of Num. FG Points)], automaticamente o Interpolate Over Num. FG Points é desabilitado. Se esse método não for usado, o FG usa um raio global, baseado no tamanho da cena, cerca de 10% desse tamanho. Aqui, nós configuramos esse valor manualmente, possibilitando fixar detalhes pequenos que passariam muito lavados pelo GI devido ao grande raio adotado pelo método padrão. Normalmente, o valor de Min. Radius é 10% do valor do Radius. Ou seja, uma fresta com 1cm de largura teria pontos de FG que marcariam bem o seu detalhe.

Obviamente, como eu disse antes, gerando o passo de oclusão, poderíamos configurar o FG para interpolar os pontos de forma padrão. Se isso economizar tempo de render e gerar uma imagem de qualidade aceitável, pode ser uma opção mais conveniente, já que raios menores demandarão maior número de pontos de FG, aumentando o tempo de render.

Diffuse Bounces: como esse render foi feito somente com o Final Gather, é importante aumentar o número de bounces para que hajam mais ricochetes da luz, simulando um GI mais convincente, permitindo sangramento de cor.

Usando Photons + Final Gather

Fiz um teste renderizando com Photons e Final Gather. Eu costumo renderizar somente com Final Gather quando tenho um cenário externo ou um cenário que não dependa de paredes, piso e forro. Como estamos trabalhando com uma sala, ou seja, um ambiente interno de uma maquete, prefiro usar Photons para gerar o GI e o Final Gather para suavizar o efeito dos photons, dando um acabamento nos photons.

ATENÇÃO: Se usar photons com sistema daylight e luzes photometrics, e não usar controle de exposição, aparecerão photons super claros que criarão defeitos na iluminação como manchas luminosas após o Final Gather.

Para ter acesso às configurações dos Photons, tecle F10 > Indirect Illumination > Global Illumination (GI). Abaixo, seguem as minhas configurações e explicações sobre os parâmetros utilizados:

gi

Decay: define o tempo que os photons demoram para perder força. Quanto menor o valor, mais eles demoram a perder energia, deixando o GI mais claro. Cuidado com esse parâmetro! O valor padrão é 2.

Caustic Photons: quantidade de photons emitidos pela luz para gerar o efeito Caustics. Não estamos usando Caustics nessa cena.

Average GI Photons per light: quantidade de photons emitidos por cada luz existente no cenário.

Maximum Sampling Radius: dimensão do raio dos photons. O mapa de photons deve ter uma aparência enevoada, cobrindo todas as superfícies, mesclando os photons e não deixando espaços entre eles.

Nessa cena, cada luz (4 photometrics e 1 Sky Portal) está emitindo 200.000 photons e eles estão com 3cm de raio.

Optimize for Final Gather (Slower GI): na prática, faz com que o mapa de photons acelere o processamento do Final Gather. Como estou usando os dois juntos, é bom habilitar essa opção.

fig16

Imagem renderizada apenas com photons

Abaixo, seguem as configurações do Final Gather:

fig17

Note que não há necessidade de usar o Diffuse Bounces, pois o GI está sendo gerado pelos Photons que faz isso de forma correta.

Usar Photons + Final Gather tem as seguintes vantagens:

  • GI mais correto.
  • Maior velocidade do Final Gather, pois este não precisa gerar os bounces e tem seu processo acelerado pelo uso do mapa de photons.

5 – Antialising

Alising é o serrilhamento que ocorre entre pixels onde existem curvas e/ou contrastes de cor e tonalidade. Para suavizar esse efeito, é necessário configurar o antialising do Mental Ray. Essa configuração está em F10 > Commom > Renderer > Sampling Quality:

Configurações originais Configurações alteradas
fig18 fig19

Minimum e Maximum: a grosso modo, esses valores definem o quanto os pixels adjacentes devem se mesclar para suavizar uma determinada área. ¼ e 4 significa que a suavização será feita usando esses valores, sendo que os pixels que o MR conseguir suavizar com ¼ serão suavizados usando esse valor. Caso contrário, ele usará valores maiores que não ultrapassem 4. Geralmente, colocando o valor mínimo para 1/16 dá um bom resultado e acelera o render, já que 1/16 é menor que 1/4. Se na cena, houverem geometrias muito finas, como grades vistas há uma distância longa, ocorrerão falhas. Nesse caso, sim, o valor mínimo deve ser aumentado até as falhas serem corrigidas.

Geralmente, os valoes de 1/16 e 16 para renders finais têm servido pra mim. Mas, cada cena é uma cena e você deve testar esses valores para chegar numa boa escolha de qualidade X tempo de render.

Spatial Contrast: controla a suavização de pixels com grande contraste. Ex.: as bordas de um círculo branco num fundo preto. Quanto menor os valores para R, G e B, melhor será a suavização e maior o tempo de render. Costuma-se colocar o mesmo valor em A (Canal Alpha), pois quando este existir, também será suavizado.

Filter > Type: Determina como a suavização dos pixels ocorrerá. O filtro Box é o mais rápido. O Mitchell servirá para a maioria das cenas. Sempre experimente os filtros para resultado X tempo de render.

É bom lembrar que o antialising também suaviza efeitos como sombras, GI, FG, reflexão borrada, motion blur e DOF.

CONCLUSÃO

Comparação dos renders:

beauty_16-27

Render bruto usando apenas FG – Tempo de render: 16min e 27seg

photonsfg_10-51

Render bruto usando Photons + FG – Tempo de render: 10min e 51seg

sala8

Render bruto original

Perceba que a aparência das texturas ficaram mais próximas da realidade com a correção de gamma. Seguem as mesmas para comparação com os renders acima:

cedfence dscf1476
Textura do piso Textura do móvel

Comparação do render original com o render reconfigurado com pós-produção:

sala8

Render original

photonsfg_10-51-final

Render reconfigurado com pós-produção

Na pós-produção fiz correções de cor, brilho e contraste, e fiz também uma pequena composição com efeito de Glare e fixação de detalhes com Ambient Occlusion (esses dois, passos gerados separadamente). A imagem de fora da janela está mais clara pois do lado de fora existe mais luz que dentro. É um fenômeno físico que ajuda a dar mais realismo na cena. Porém, fica a seu gosto usar esse artifício ou não, visto que um render é completamente controlado e você precisa chegar onde quiser, da forma que achar melhor.

Para finalizar, ainda seriam necessários detalhes na modelagem como uma borda para o tapete, a fixação da cortina, a calha de encaixe dos vidros da janela e talvez um rodapé.

Um bom render se faz modelando bem, sabendo criar materiais, saber iluminar, configurando o render de forma correta, adicionando efeitos necessários e ajustando tudo em pós-produção.

Gamma, Passos e Exposure Control – Mental Ray e 3DMAX 2011

Há mais ou menos 1 ano atrás comecei a trabalhar no 3DMAX (e também no XSI) usando correção de gamma. O que vem a ser isso?

Correção de gamma

Para entender melhor o que é acorreção de Gamma, leia meu artigo sobre Linear Work Flow.

OBS.: ao renderizar os passos de uma imagem, usando o Render Elements, junto com o Controle Exposição da luz (Exposure Control), a imagem final renderiza corretamente, mas os passos ficam super claros, estourados mesmo. Então, os passos devem ser salvos com gamma = 1. Porém, nesse tutorial, não estou usando Controle de Exposição. Farei uma atualização, assim que possível, deste tópico, usando Controle de Exposição.

Seguem as etapas para habilitar o Gamma Correction (correção de gamma) no Max e também para gerar passos no formato Open EXR (formato HDR da ILM – Industrial Light and Magic). Para saber mais sobre arquivos EXR, clique aqui.

Habilitando Gamma Correction

A imagem abaixo mostra a configuração de gamma recomendado no manual do 3DMAX:

gamma01

Com as configurações acima, texturas, slots de materiais e a imagem renderizada ficarão mais claras. Para tirar proveito dessa correção, ao criar materiais é recomendado que se utilize um shader do Mental ray para que as cores e texturas fiquem com a aparência correta. O nome do shader é “Utility Gamma & Gain“, chamado apenas de “Gamma and Gain” na versão 2011:

gamma02

Com o Gamma and Gain, cores e texturas passam a ter as cores corretas junto ao Gamma.

Pipeline recomendada no uso de Gamma

Abaixo, segue uma imagem presente no manual do Max, mostrando o método recomendado para se trabalhar com a correção de gamma:

pipeline

  • Para imagens que serão usadas em materiais (mapas de texturas, reflexão, background, etc):

Se a imagem carregada for do tipo low-dynamic-range, ou seja, arquivos JPG, BMP ou PNG, e que não serão usadas para Bump, Displacement ou Normal Map, salve no Photoshop como sRGB.

gamma04

Nota: Se você não quiser usar o shader Utility Gamma & Gain (Gamma and Gain), a cada imagem que você carregar, configure na caixa de diálogo Select Bitmap Image File > grupo Gamma > Override o valor do Gamma. Em Override, coloque o valor 2.2. Através desse método, é possível ver o efeito da correção do gamma na viewport e também é suportado pelo renderizador padrão do Max, o Scanline.

gamma05

  • Para imagens do tipo High Dynamic Range (HDR ou EXR), não é necessário haver correção de gamma.
  • Para imagens do tipo Low Dynamic Range que serão usadas como bump, displacement ou normal map, também não é necessário a correção de gamma.

Renderizando as imagens

  • Se você for renderizar imagens no formato Low Dynamic Range (novamente, JPEG, BMP ou PNG), use um controle de exposição (de preferência o mr Photographic exposure control) e configure o Output Gamma da imagem (na janela Save As) para 2.2. Esse é o procedimento descrito no manual do Max. Como eu disse no início do post, funciona perfeitamente para imagens finais. Meu problema é na renderização dos passos que, mesmo renderizando no formato Low Dynamic Rang, saem estouradas…
  • Se você for renderizar imagens no formato High Dynamic Range (HDR ou OpenEXR), não use correção de gamma na janela Save As. Deixe o valor em 1.

Gerando passos no formato Open EXR

Para incluir os passos necessários para composição, tecle F10 > guia Render Elements e inclua os passos desejados:

gamma06

Eu recomendo usar o shader Arch&Design (mia_Material) para criar materiais com Mental Ray. Sendo assim, opte pelos passos próprios desse shader (mr A&D nome do passo – podem ser do tipo Level, RAW ou Output). Eu optei pelo Output pois necessita de composição mais simples na pós-produção (posso falar disso em outro post).

Depois acesse a guia Commom e desça até o grupo Render Output. Clique no botão File… e escolhe o formato Open EXR. Depois de dar um nome pro arquivo e clicar em Save, a janela de configuração do EXR se abre. No grupo Render Elements, clique em Add e adicione os passos que você inclui anteriormente no Render Elements.

gamma07

O EXR tem a capacidade de armazenar em layers os passos criados. Não é obrigatório. Se quiser, pode criar os passos separados, de forma normal, salvando cada arquivo como um EXR separado. Se você abrir no Photoshop esse arquivo EXR contendo os layers dos passos, ele não mostrará os passos (pelo menos até a versão CS4). Só será possível através de um plugin. Para não usar plugins, dou duas soluções:

  1. Salvar cada passo em arquivo separado direto do Max (procedimento normal)
  2. Abrir o EXR no After Effects e salvar no formato PSD com layers (leia mais abaixo)

A figura abaixo mostra os passos gerados:

gamma08

Usando os passos gerados no After Effects CS4

Importe a imagem EXR e arraste-a para a área dos layers:

gamma09

Selecione esse layer e faça cópias (Ctrl + D). Crie uma cópia para cada passo gerado. Selecione um dos layers, vá no painel Effects > 3D Channel > EXtractoR. Dê um duplo clique no EXtractoR para aplicá-lo no layer selecionado. Agora acesse a guia Effects Controls para ver os parâmetros do efeito. Clique na área indicada na imagem abaixo. Isso abrirá a janela do EXtractoR. Para cada canal R, G e B (não vou usar Alpha por não existir no meu teste) escolha o passo correspondente. Por exemplo: eu carreguei o passo Diffuse Direct. Então, escolhi Diffuse Direct R, para o canal R; Diffuse Direct G, para o canal G e Diffuse Direct B, para o canal B. Para cada layer, faça o mesmo, porém escolhendo um passo diferente. No meu caso, fiquei com 4 layers, cada um com um passo extarído: Difuse Direct, Difuse Indirect, Specular e Reflection.

gamma10

Altere o Blend Mode de cada layer como mostrado abaixo. Como os passos gerados foram do tipo Output, basta colocar os layers na ordem certa e escolher o Blend Mode Add. Isso está explicado no manual do Max. Mas, como falei antes, vou postar algo sobre isso com mais detalhes.

gamma11

Agora aparece uma questão que não consegui resolver de outra forma até agora. Perceba que o resultado da imagem final é mais escura que o render final, direto Max. Ou seja, na composição, o efeito da correção do Gamma desapareceu. Então, é preciso aplicar o gamma correto no After, mesmo (ainda estou estudando isso para entender melhor).

Para aplicar um único efeito em todos os layers de uma vez, é necessário criar um Pre-Compose dos layers (que nada mais é que um grupo de layers). Para isso, selecione os layers, e acesse o menu Layer > Pre-compose… Com o pre-compose selecionado, vá no painel Effects > Color Correction > Exposure. Dê um duplo clique no Exposure para aplicar o efeito no pre-compose e acesse a guia Effects Controls para alterar o gamma da exposição. Altere o valor de gamma para 2,2.

gamma12

Pronto. Agora a composição está com o nível de iluminação correto.

Bom, o exemplo acima demosntra a forma mais complexa de se trabalhar com arquivos EXR (extraindo seus canais). Para esse exemplo mostrado não precisaríamos fazer dessa forma. Você pode, como eu disse antes, salvar cada passo em EXR mesmo, mas já separadamente, direto do Render Elements e depois importando tudo no After ou Photoshop e fazer a composição. Porém, se você quiser armazenas canais do tipo Velocity ou Z Depth para criar efeitos específicos, o procedimento seria esse mesmo, descrito acima. Porém, ao invés de carregar os canais no grupo Render Elements do EXR, você deve carregar os canais no grupo G-Buffer Channels, na janela de opções do EXR. A extração dos canais, no After, é feita da mesma forma, utilizando o EXtractoR.

Nesse caso, se for um still, é bem provável que você queira fazer a composição no Photoshop. Nativamente, o Photoshop não tem uma ferramenta para extrair os canais como o After. Então, uma saída (sem utilizar plugins de terceiros) é usar o After salvar PSD com todos os canais presentes dentro do EXR, como layers.

Para isso, basta selecionar um layer qualquer, no After, e acessar o menu Composition > Save Frame As > Photoshop Layers…

gamma13

Perceba que não é preciso usar o EXtractoR para exportar um PSD com os canais em layers. É só arrastar o arquivo EXR para um layer, selecioná-lo e seguir o procedimento da imagem acima.

Usando proxy do Mental Ray no 3DMAX

Neste tutorial, como exemplo, estou usando um objeto complexo, o modelo 51 do volume 24 do DVD Archmodels, da Evermotion. Esse modelo é uma amostra grátis e pode ser baixado aqui. Clique no botão “Sample” (amostra) para baixar o modelo.

Para entender melhor o que são proxies, dê uma lida no artigo sobre o assunto clicando aqui, caso não tenha feito ainda.

OBS: Antes de começar, certifique-se de que o Mental Ray esteja habilitado como renderizador (Tecle F10 > guia Commom > grupo Assign Render. No campo Production, clique no botão [] e escolha mental ray Renderer).

A imagem abaixo mostra o modelo após organizá-lo do meu jeito, dando inclusive nomes coerentes para os objetos.

proxy_max01

OBS: antes de começar o processo de criação do proxy, recomendo aplicar todos os shaders e texturas nos objetos.

No Max, não dá pra criar um proxy de vários objetos de uma vez só (caso haja, por favor, não hesite em comentar. Não encontrei nada no Help). Então, devemos juntar os objetos para que sejam um só. Para isso, selecione um objeto e depois acesse o painel Modify > Attach. Clique na caixinha ao lado do botão e selecione os objetos que aparecem na caixa Attach List e depois clique no botão Attach.

proxy_max02

Após clicar no botão Attach, como os objetos possuem materiais diferentes, é perguntado se deseja manter cada elemento com seu próprio material. Clique em OK com as opções mostradas abaixo:

proxy_max03

Pronto, agora a nossa planta é apenas um objeto.

O próximo passo é inserir um objeto proxy na cena. Para isso, acesse o painel Create > Geometry > Mental Ray > Proxy. Ou menu Create > Mental ray > mr Proxy, como mostrado abaixo.

proxy_max05

Clique e arraste onde quiser, dentro da viewport, para criar o objeto proxy. Não se preocupe com o tamanho do objeto. O objeto proxy é um Bounding Box, ou seja, um cubo aramado, sem sombreamento. Após criá-lo, aproveitei para alinhá-lo com o pivot do objeto original, para que fiquem exatamente na mesma posição.

proxy_max06

Agora selecione o objeto proxy e depois clique no painel Modify, para ter acesso aos parâmetros do proxy. Clique no botão NONE, selecione a plantinha e depois clique no botão “Write Object to File…” (veja imagem abaixo). O que acontece aqui? O objeto proxy identifica o objeto que será representado por ele e depois salva num arquivo *.mib, próprio do Mental Ray. Quando o render passar por cima do proxy, o arquivo MIB é carregado mostrando a nossa plantinha, uma geometria bem mais complexa que o proxy.

proxy_max07

Após clicar em Save, a caixa de diálogo “mr Proxy Creation” é mostrada:

proxy_max08

 

  • Current Frame: não salva qualquer animação, se houver. Salva apenas o estado do objeto no frame atual.
  • Active Time Segment: salva toda a animação (se houver).
  • Custom Range: salva animação (se houver) somente na faixa de frames especificada nos valores de Start e de End.

 

No meu caso, como não há animação, deixo como está e clico em OK.

O objeto proxy então é criado, no meu caso, exatamente na mesma posição do objeto original. Abaixo, eu arrastei um dos objetos para ficar fácil a visualização.

proxy_max09

OBS: caso seu objeto proxy seja criado com rotação e/ou escala diferente da do objeto original, delete o objeto proxy e aplique um Reset XForm (painel Utilities > Reset XForm > Reset Selected) no objeto original antes de criar o proxy. Após aplicar o Reset XForm, não esqueça de “collapsar” o objeto (painel Modify > Botão direito sobre o modificador XForm > Collapse All)

Por padrão, o proxy é formado por pontos (Point Cloud), como definido nos parâmetros do proxy (Show Point Cloud). Pode-se mudar para Bounding Box (Show Bounding Box) ou mesclar os dois. Se quiser aumentar a definição do Point Cloud para visualizar melhor a forma do objeto, aumente o valor de “Viewport Verts“. Note também que a imagem do objeto real fica à mostra no proxy, para fácil identificação.

proxy_max10

Depois de criar o objeto proxy, não há mais a necessidade do objeto original fique na cena. Porém, é bom salvá-lo num arquivo separado para edições futuras. Costumo fazer isso selecionando esse objeto e usando o File > Save Selected…

proxy_max11

Depois de salvar o objeto original, delete-o da cena e faça um render (F9) apenas do proxy.

proxy_max12

O resultado do render mostra o objeto, porém com material errado, apenas com um shader de cor. Para aplicar os mesmo materiais que já estavam antes, abra o Material Editor (M), escolha um slot de material e carregue o Xref Material. Clique no botão com [] do campo Filename e selecione aquele arquivo que foi salvo com o Save Selected. Uma janela listando os objetos presentes se abrirá (provavelmente só há um objeto). Selecione o objeto e clique em Ok.

proxy_max13

Aplique o material no objeto proxy. Pronto. Agora é só renderizar.

proxy_max14

Mental Ray mia_material shader

Finalmente consegui finalizar o post sobre o mia_material, do Mental Ray. Eu me preocupei em mostrar os principais atributos do mia_material, tentando criar uma referência visual, mostrando as configurações em três softwares diferentes: Maya, Softimage e 3ds Max, porém, a ênfase será no Maya.

O mia_material

Através do mia_material shader, também conhecido como Architectural (Autodesk Softimage) e Arch&Design (Autodesk 3ds Max), é possível criar quase todo tipo de materiais. É o shader mais indicado para trabalhar com Mental Ray. A partir da versão 3.8, substitui completamente os shaders DGS e Dieletric.

As vantagens em usá-lo são:

  • Fácil de usar
  • É fisicamente correto (obedece à 1º Lei da Termodinâmica)
  • Permite configurar a performance das reflexões
  • Permite configurar manualmente o BRDF (comportamento da reflexão em relação ao ângulo de visão do observador)
  • Permite configurar a transparência como solida ou fina
  • Permite arredondar quinas vivas dos objetos
  • Possui controle da Iluminação Indireta
  • Usa o algorítimo Oren-Nayar para criar aparência fosca, porosa como argila
  • Possui Ambient Occlusion embutido, destacando os detalhes
  • Todos os shaders em um (controla photon e sombra)
  • Multiplos passos de render

Conservação de energia

Uma das características mais importantes do shader mia_material, é que ele conserva energia. Isso significa que cor + reflexão + refração <= 1. Em outras palavras, nenhuma energia é criada “magicamente” e a energia vinda das luzes é distribuída corretamente entre os componentes diffuse (cor), reflection (reflexão) e refraction (refração) mantendo a primeira lei da termodinâmica.

Por exemplo, ao aumentar a reflexão, a energia deve ser tirada de algum lugar. Por isso, os níveis de diffuse e transparência serão reduzidos automaticamente. Adicionando transparência, reduz-se o componente diffuse.

As regras são:

  • A transparência usa energia do componente diffuse: se o material for 100% transparente, não haverá nenhuma cor (ex.: vidro incolor).
  • A reflexão usa energia dos componentes diffuse e transparência: se o material for 100% reflexivo, não haverá cor nem transparência (ex.: espelho).
  • A translucidêz é um tipo de transparência e o atributo Translucency Weight define a porcentagem da transparência versus a translucidez (ex.: plásticos, pele, papel).

Por causa da conservação de energia, o nível do brilho specular do material está diretamente ligado à polidez desse mesmo material. Superfícies polidas geram brilhos mais agudos e intensos, enquanto superfícies mais foscas geram brilhos mais espalhados e menos intensos. Isso acontece porque a energia se espalha e se dissipa em grandes áreas.

Gamma e controle de exposição

É altamente recomendado que se trabalhe com correção de gamma (ver Linear Work Flow) e controle de exposição (Exposure Control, também conhecido como Tone Mapping), como, por exemplo, o mia_exposure_photographic shader. Isso garantirá a eficácia física do material, resultando em imagens melhores.

Use o Final Gathering e o Global Illumination

O mia_material foi desenvolvido para ser usado de forma realista usando as técnicas de iluminação indireta. No Mental Ray, elas são o Final e Gathering e o Global Illumination (photons), e, para ter bons resultados, um deles deve ser usado (recomendo somente o Final Gather ou o Global Illumination + Final Gather).

Use as luzes de forma fisicamente correta

Configure as luzes com atenuação/decay real. Na nossa atmosfera, a intensidade da luz é inversamente proporcional ao quadrado da distância (1/d²). Esse modo é denominado Quadradic.

Se você usar luzes sem atenuação, somente com Final Gather, o render ainda ficará bom, pois o Final Gather apenas transporta a luz de uma superfície para outra. Porém, ao usar photons, que é um método mais preciso de gerar iluminação indireta, acontece estouros de luz, uma claridade mais intensa do que esperado. Isso porque os photons são emitidos da luz. É importante que o mia_material reaja de forma correta a essa energia.

É importante, também, que o shader que controla a luz e o shader que controla a emissão dos photons trabalhem bem juntos. As luzes Photometrics (ex.: Physical Sun and Sky, Portal Lights, Photometric shader) fazem isso muito bem.

Grupo Diffuse

descricaodiffuse_grp

Color

Esse atributo especifica a cor ou textura aplicada no material, a forma como a luz interage com a superfície opaca do objeto (esse termo, “diffuse”, será usado mais vezes).

diffusecolor

Weight

Controla a intensidade do componente diffuse. Quanto mais baixo, mais aparentes ficam os reflexos, sempre dependendo dos valores de Reflectivity e Transparency.

diffuseweight1

Roughness

Quanto mais alto o valor, maior a aparência de material fosco e poroso. Lembrando que para esse material ser convincente, os valores de Reflectivity e Glossiness devem ser baixos.

diffuseroughness

Grupo Reflection

descricaoreflection_grp

Color

Tinge as áreas claras do reflexo com a cor escolhida. Também influencia a intensidade da reflexão (cores claras = intensidade maior. Cores escuras = intensidade menor).

reflectioncolor

Reflectivity

Controla a intensidade da reflexão. Este atributo também depende do BRDF (descrito mais abaixo).

reflectionreflectivity

Glossiness

Controla a polidez do material. No valor máximo (1 = totalmente polido) a reflexão gera imagens nítidas. Valores menores que 1 geram imagens desfocadas (borradas). 0 (zero) também gera reflexo nítido.

reflectionglossiness

Glossy Samples

Ajusta a qualidade da reflexão desfocada. Quando o valor de Glossiness é muito baixo, ele tende a granular o desfoque da imagem. Aumentando o valor de Glossiness Samples, aumenta-se a quantidade de amostras por pixel que gera esse efeito, suavizando-o.

reflectionglossysamples

Highlights Only

Quando habilitado, não renderiza o reflexo, porém mantém o brilho specular do material.

reflectionhighlightsonly

Metal Material

Faz com que o material tenha aparência metálica. Funciona melhor com Glossiness menor que 1.

reflectionmetalmaterial

Grupo Advanced Reflection

descricaoadvreflection_grp

Use Max Distance: faz com que o reflexo apareça dentro do limite estipulado no campo “Max Distance”.

reflectionadvreflectionmaxdistance

Fade to End Color: se “Use Max Distance” estiver habilitado, ao habilitar o “Fade To End Color”, a área na qual o reflexo for limitado assumirá a cor designada em “End Color”. A cor preta não surtirá efeito.

reflectionadvreflectionfadetocolor

Max Trace Depth: limita a quantidade de reflexões que o material pode fazer, impedindo que o cálculo do render se extenda infinitamente (ex.: um espelho em frente a outro). No caso do Maya, apesar do valor padrão deste campo ser 5, ele só faz 1 reflexão, pois o valor global, presente no Render Settings, é 1. Logo, deve-se acessar Render Settings > Quality > Raytracing e aumentar o valor de Reflections. Lembrando que a quantidade total de traçamento da luz (Max Trace Depth) = Reflections + Refractions.

reflectionadvreflectionmaxtracedepth

No highlights for visible lights: se houverem luzes visíveis na cena e esta opção estiver habilitada, as luzes não gerarão brilhos speculares.

reflectionadvreflectionnohighlightsforvisiblelights

Skip Reflections On Inside: quando habilitado, não permite que o verso de uma face reflita o ambiente a sua volta.

reflectionadvskipreflectionsoninside

Grupo Refractions e Translucency

descricaorefraction_grp

Transparency: controla a intensidade da transparência. 0 (zero), material totalmente opaco. 1, material totalmente transparente.

refractiontransparency

Color: especifica a cor da transparência. A cor preta deixa o material 100% opaco.

refractioncolor

Index of Refraction (Índice de Refração): todo material transparente possui um índice de refração. Quanto mais distante de 1, maior a distorção dos objetos atrás do objeto transparente. Alguns índices: água (1.333), vidro (1.5), diamante (2.42), ar quente (0,96).

refractionior

Glossiness: valores menores que 1 deixam a transparência desfocada.

refractionglossysamples

Translucency

Habilita o efeito de translucidez do material. O atributo “Weight” define a intensidade do efeito.

translucency

O atributo “Color” define a cor do efeito mesclado à cor da transparência.

translucencycolor

Grupo Advanced Refraction

descricaoadvrefraction_grp1

Use Max Distance: limita o efeito da transparência à distância configurada neste atributo. Os volumes do objeto que excederem essa distância são substituídos por uma cor ou textura (exemplo contido na figura abaixo, junto com o atributo “Use Color At Max Distance”).

Use Color At Max Distance: substitui a área com limitação da transparência com a cor ou mapa designado neste atributo.

refractionusemaxdistance

Max Trace Depth

Antes da versão 3.8 do Mental Ray, esse atributo funcionava como na reflexão, ou seja, se vários objetos transparentes fossem colocados um atrás do outro, limitava-se até quando a transparência era computada. Ao chegar no limite, as seguintes refrações eram bloqueadas, mostrando uma mancha preta. Segundo a documentação do Mental Ray (clique aqui para ter acesso ao documento em inglês), isso não acontece mais, pois todos querem ver o resultado da transparência sem limites. O que o “Max Trace Depth” controla agora é a curvatura da refração. Valores baixos, menos distorção. Nos meus testes, acima de 5 não alterou nada. O atributo “Cutoff Threshold” funciona como um limitador dos raios da refração. Caso queira fazer com que o “Max Trace Depth” funcione como nas versões anteriores, use o valor -1 e controle o limite usando o atributo “Refractions” localizado na configuração Global do mental Ray (Render Settings > Quality > Raytracing).

refractionmaxtracedepth

No Maya, apesar do valor padrão de Max Trace Depth ser 5, na verdade o valor padrão usado é 1, pois 1 é o valor presente no campo “Refractions” nas configurações Globais (Render Settings > Quality > Raytracing).

Thin Walled x Solid

A opção “Solid” gera refração e a distorção da mesma se baseia no objeto sólido e também no Índice de Refração. Já a opção “Thin Walled” não computa a refração do material transparente, não apresentando as distorções.

thinwalled_x_solid

Refractive Caustic x Transparent Shadow

Quando o Caustic (efeito que simula a convergência da luz que atravessa o material transparente, levando em conta o índice de refração) não estiver habilitado, “Transparente Shadow” é a melhor opção. Se o Caustic estiver habilitado, além de melhorar o desempenho do render, o efeito será melhor com “Refractive Caustic”.

refractivecaustics_x_transparentshadow

Backface Culling

Quando habilitado, não renderiza as faces inversas às Normais (vetores perpendiculares que saem do centro das faces. O lado cuja a Normal aponta é o lado visível da face). O objeto abaixo está com todas as Normais apontando para dentro.

backfaceculling

Propagate Alpha

Permite salvar o canal Alpha corretamente, baseando-se no nível de transparência e distorção causada pelo IOR do material.

propagatealpha

Grupo Anisotropy

descricaoanisotropy_grp

Anisotropia (anisotropy) significa:

Característica peculiar a certos meios em que uma ou mais propriedades dependem da direção em que são observadas no meio.” (definição do dicionário Michaelis).

No caso, as propriedades em questão são a reflexão e o brilho especular (highlight). Materiais anisotrópicos deformam essas propriedades porque existem microfissuras em sua superfície. Assim, tando a reflexão quanto o brilho especular tendem a seguir a direção dessas fissuras, que podem ser ranhuras causadas por ferramentas ou um conjunto de fios super finos, como cabelos e a trama de alguns tecidos.

Se uma superfície anisotrópica é girada contra a direção dos sulcos (microfissuras), o formato e a localização do brilho irão mudar, dependendo de como a direção dos sulcos se altera” (Aprendendo Autodesk Maya 2008 | Manual de efeitos especiais).

(Veja também a resposta de André Agenor no fórum da 3D4All: http://www.3d4all.org/foruns/showthread.php?16375-Oq-%C3%A9-material-anisotropico&p=157656)

Como exemplo, podemos citar os seguintes materiais como geradores de efeito anisotrópico: cetim, seda, náilon, CDs, metais escovados, cabelos agrupados, etc.

Anisotropy

Define a forma do brilho specular. Valor 1 significa anisotropia desabilitada. Valores negativos, além de mudarem a forma do brilho, deixarão a reflexão do material mais desfocada. Por causa da própria definição de anisotropia, é necessário configurar o Reflection > Glossiness com um valor menor que 1.

Nas imagens abaixo, eu estou usando uma luz spot pontual (não Area) para demonstrar melhor o efeito.

anisotropy

Rotation

Configura a angulação do efeito.

anisotropyrotation

Channel

Caso queira usar uma textura para guiar a direção do brilho specular, o atributo Channel estipula como essa textura será usada. O valor -1 usa a UV do objeto como guia. Na imagem abaixo, usei um Ramp (Gradient) do tipo Tartan com 15 repetições. Se optar por usar um bitmap, não esqueça de retirar o filtro que costuma desfocar o bitmap. No Maya, essa opção fica no node File > File Attributes > Filter Type. O valor padrão desse campo é Quadratic. Altere para Off.

anisotropychannel

Grupo BRDF

descricaobrdf_grp

No mundo real, o grau de reflexão de uma superfície depende do ângulo de visão do observador. O termo usado para esse efeito é BRDF (Bi-directional Reflectance Distribution Function), ou seja, é a forma de definir quanto uma superfície reflete quando vista de diversos ângulos.

Muitos materiais apresentam esse comportamento. Vidro, água e outros materiais dielétricos com efeito Frenel (onde a dependência angular é guiada estritamente pelo índice de refração) são os exemplos mais claros, mas outros materiais em camadas como madeira laqueada, plásticos, etc, possuem características similares.

O mia_material permite simular esses efeitos, baseado no Índice de Refração e também configurando valores de reflexão para:

  • 0 graus (superfícies vistas de frente)
  • 90 graus (superfícies vistas num ângulo próximo a 90 graus)

Use Frenel Reflection

Quando habilitado, a dependência angular da intensidade será definida pelo índice de refração (Index Of Refraction) do material.

fresnel

A segunda forma de configurar o BRDF é manualmente através dos atributos 0 Degree Reflection, 90 Degree Reflection e Brdf Curve.

0 Degree Reflection define a intensidade de reflexão quando a câmera está olhando diretamente para a superfície. 90 Degree Reflection define a intensidade de reflexão quando a câmera está olhando para a superfície num ângulo perpendicular (90 graus). O atributo Brdf Curve é a curva de declíneo entre os dois atributos.

brdf

brdf_curve

Essa forma é mais usada para materiais híbridos ou metais. A maior parte dos materiais possuem maior intensidade de reflexão quando o ângulo de visão é perpendicular à superfície. Metais tendem a ter reflexão mais uniformemente distribuída pela superfície, então, o valor de 0 Degree Reflection é alto (de 0.8 a 1). Muitos outros materiais em camadas como piso envernizado, madeira laqueada, etc, possuem baixo valor de 0 Degree Reflection (de 0.1 à 0.3).

Grupo Indirect Illumination Options

descricaoindirectillumination_grp

Esse grupo possui atributos que controlam a qualidade da iluminação indireta (GI) gerada pelo material.

Grupo Ambient Occlusion

descricaoao_grp

Ambient Occlusion é o método usado para emular a aparência de iluminação global usando shaders que calculam quão ocluída (bloqueada) uma área é de receber luz, gerando as sombras de contato. Se chamam assim, porque as áreas escuras se formam entre objetos ou suas partes.

Quando usado sozinho, um shader de AO cria uma imagem em escala de cinza, sendo claras as áreas onde a luz alcança e escuras onde a luz é bloqueada.

aopure

Observando as imagens acima, perceba que a imagem da esquerda tem pouca luz bloqueada, fazendo com que os detalhes de reentrâncias  fissuras, etc, fiquem mais visíveis (valor baixo do atributo Distance). Já a imagem da direita, a aparência é mais semelhante a iluminação global (valor alto do atributo Distance).

Um aspecto importante do AO é que a distância de oclusão pode ser configurada para controlar o quanto a luz é bloqueada  criando um efeito localizado do AO, pois só as superfícies que estiverem dentro do raio de ação serão consideradas oclusas (o que também deixa o render mais rápido). O resultado prático é uma definição melhor das sombras de contato e de pequenos detalhes.

Abaixo, segue uma comparação de um render sem AO e com. A diferença é sutil, pois o AO já está composto junto com todos os componentes dos materiais da cena (Diffuse, Reflexão, Brilho, etc). Porém, dá pra perceber que algumas sombras estão mais nítidas, principalmente em áreas de contato e reentrâncias.

aocomparacao

Existem duas formas de usar o AO embutido no mia_material :

  • Método Tradicional onde simula-se um shader de AO.
  • Usar o AO para melhorar os detalhes em conjunto com iluminação global (Final Gather ou Photons).

O segundo método é especialmente interessante quando o efeito da iluminação indireta é bem suave (ex. photons com raios grandes ou Final Gather com densidade bem baixa), podendo perder detalhes pequenos da cena.

Samples

Configura o número de raios emitidos pelo AO. Valores altos geram um efeito mais suave, porém, com render mais lento. Valores baixos são mais rápidos para renderizar, mas geram um efeito mais granulado. 64 costuma ser um bom valor para a maioria das situações.

Distance

Define o raio que abrange os objetos ocluídos. Valores pequenos restringe o efeito do AO fixando detalhes e é mais rápido para renderizar. Valores maiores cobre áreas maiores e mais lento para renderizar.

Quando o atributo Use Detail Distance for On, o AO atuará evidenciando os detalhes. Ele funciona junto com o Final Gather e/ou Photons.

Quando o atributo Use Detail Distance for With color bleed, o AO passa a funcionar de um modo mais sofisticado (opção introduzida no Mental Ray 3.6). Ao invés de produzir uma simples oclusão, adicionando áreas escuras em vários graus, o shader irá olhar as cores ao redor e usá-la como cor escura, no lugar do habitual preto. É um processo mais lento, porém, mais realista.

Abaixo, a imagem da esquerda mostra um render feito com AO normal, enquanto a da direita com a opção With color bleed. O efeito fica fácil de ver em materiais auto-iluminados e áreas de penumbra.

ao_usedetaildistance

O efeito é sutil, mas dá pra perceber na parte da frente dos pés que que em um o sombreamento é preto e no outro é a cor do material mais escura.

Ambient Shadow Color

Configura a cor escura das sombras criadas pelo AO. Na prática: cor preta fará com que as áreas escuras fiquem bem escuras, enquanto um cinza claro deixará o efeito menos notável. Se o atributo Use Detail Distance estiver como With color bleed, ele vai fazer uma mistura da cor escolhida com as cores dos objetos próximos:

(1-Ambient Shadow Color) * (cores dos objetos) + preto * Ambient Shadow Color.

Ambient Light Color

É usado para fazer um AO mais tradicional. Enquanto o AO tradicional é renderizado sem iluminação indireta, ele pode ser combinado com a iluminação indireta existente. É um efeito não fisicamente correto, porém pode ajudar a clarear cantos muito escuros.

Grupo Interpolation

descricaointerpolation_grp

Reflexos e Refrações podem ser interpolados, gerando efeitos suaves, não reais, e diminuindo o tempo de render. A interpolação funciona pre-calculando os reflexos num grid que cobre toda a imagem. O número de amostras (raios) existentes em cada ponto do grid é determinado pelo atributo Reflection Samples e Refraction Samples (reflexão e refração, respectivamente). A resolução do grid é configurado através do atributo Grid Density.

Porém, a interpolação pode causar artefatos (manchas). Por usar um grid de baixa resolução, o efeito pode perder detalhes, e por mesclar amostras vizinhas nesse mesmo grid de baixa resolução, pode gerar uma suavização exagerada. Por isso, é mais útil usá-la em superfícies planas. Superfícies não planas, muito detalhadas ou que usem bump não ficarão bem com interpolação. Outra coisa: como o grid usa o espaço da tela, animações de câmera não são recomendadas, pois isso pode revelar a existência do grid na imagem.

Existem 6 valores possíveis para o Grid Density:

  • 2 (double) = resolução do grid é o dobro do render
  • 1 (same as rendering) = resolução do grid é a mesma do render
  • 1/2 (half resolution) = resolução do grid é a metade do render
  • 1/3 (third resolution) = resolução do grid é um terço do render
  • 1/4 (quarter resolution) = resolução do grid é um quarto do render
  • 1/5 (fifth resolution) = resolução do grid é um quinto do render

Abaixo, seguem imagens comparando diferentes valores para Grid Density:

reflectioninterpolation_griddensity

Abaixo, seguem imagens comparando diferentes valores para Reflection Samples

reflectioninterpolation_samples

A reflexão real, tende a desfocar com a distância da imagem. Logo, a imagem que está perto do objeto é mais nítida. Observe que usando a interpolação, toda a imagem refletida fica desfocada. Para corrigir isso, existe o atributo Use High Detail Distance:

reflectioninterpolation_highdetail

Refraction Interpolation

Usado para simular transparência leitosa economizando tempo de render. Quanto maior o valor de Refraction Samples, mais suave é o efeito e mais rápido será o render.

reflectioninterpolation_refraction

Bump e Round Corner

O parâmetro bump aceita um shader que perturba as Normais para criar a ilusão de relevo. Você pode usar uma imagem em tons de cinza, uma textura procedural, também em tons de cinza, ou uma imagem no formato Normal Map.

Quando a opção No Diffuse Bump (“Turn Off Bumps for Diffuse Only”, no Softimage. “Do not apply bumps to the diffuse shading”, no 3ds Max) estiver desabilitado, o bump é aplicado em todos os componentes do material (diffuse, highlights, reflections, refractions… ). Quando estiver habilitado, o bump é aplicado em todos os componentes, exceto o diffuse. Ou seja, o efeito do relevo é visto nas reflexões, refrações, highlights, etc, porém, não será visto onde somente for mostrado o componente difuso. É como se o material fosse liso, porém coberto com uma camada de laca ou verniz.

No Maya e Softimage, existem dois tipos de bump: Standard Bump e Overall BumpOverall Bump sempre aplica o bump nos componentes diffuse e specular, mesmo que a opção No Diffuse Bump estiver habilitada. O propósito do Overall Bump é permitir que se conecte o shader mia_roundcorners, enquanto o bump normal é conectado no Standard Bump. Dessa forma, o efeito do mia_roundcorners é aplicado tanto no componente diffuse quanto no specular. Ou seja, você pode conectar uma textura no Standard Bump para gerar o relevo e o mia_roundcorner no Overall Bump para, ao mesmo tempo, ter as quinas do objeto arredondadas.

Nos testes de bump abaixo, foi usada um Noise (textura procedural) para criar o relevo:

bump

roundcorner

Specular Balance, Cutout e Additional Color

specularbalancecutoutadditionalcolor

Specular Balance controla a intensidade do componente specular do material. Lembrando que o specular é o reflexo da fonte de luz. No exemplo abaixo, os testes foram feitos com uma Spot Light, não area, que gera brilho circular.

specularbalance

Com o Cutout Opacity, é possível criar recortes no objeto usando imagens bitmaps em preto e branco ou procedurais. Onde for preto, não haverá geometria. Onde for branco, a geometria será mostrada 100%. Tons de cinza irão mostrar a geometria com menos ou mais intensidade. O teste abaixo foi feito usando o Checker, uma textura procedural xadrez:

cutoutopacity

O campo Additional Color permite criar o efeito de material aceso, como uma lâmpada. Se o Final Gather estiver ligado, o material emite luz de verdade. No Maya e Softimage, basta escolher uma cor e o efeito será reproduzido. No 3ds Max, o melhor é habilitar o Self Illumination (Glow), no grupo Self Illumination. Eu recomendo, no Maya e Softimage, conectar na porta Additional Color o shader mia_light_surface para ter mais controle sobre a incandescência. No campo Color do mia_light_surface, pode-se conectar o shader mib_blackbody e escolher entre as faixas de core na escala Kelvin (Temperatura de cor):

additionalcolor

 

 

Organizando projeto (Autodesk 3DMAX)

A organização de qualquer projeto, na minha opinião, é fundamental para o sucesso do mesmo. Manter os arquivos organizados através do gerenciamento do próprio software, também agiliza a manipulação desses arquivos, já que texturas, arquivos 3D, etc são carregados e salvos de forma rápida.

No 3DMAX, para criar um projeto, acesse File > Set Project Folder…

set-project-folder_01

Uma árvore de diretórios é criada no local determinado por você:

set-project-folder_02

Descrição das pastas:

Pasta Tipo de arquivos armazenados
AutoBackup Arquivos de backup do projeto atual, gerados automaticamente pelo recurso Auto Backup (Customize menu > Preferences > Preference Settings dialog > Files).
BitmapProxies Proxy de bitmaps.
Downloads Arquivos baixados pelo i-drop (saiba mais em: http://idrop.autodesk.com).
Export Arquivos exportados através do comando Export… (File > Export…).
Expressions Arquivos de texto usados por controles de expressão.
Import Tipos de arquivos que serão importados através do comando Import (File > Import…).
Materials Arquivos de biblioteca de materiais (MAT).
Previews Previews de renders e animações. Usando o Animation > Preview, envia a animação direto para essa pasta.
RenderOutput Imagens finais de render.
RenderPresets Arquivos de pré-configuração de render (Render Presets).
Sceneassets\Animations Arquivos de animação, incluindo formatos XAF, XMM, BIP, FIG, MFE, entre outros.
Sceneassets\Images Arquivos de imagens usados como texturas e mapas.
Sceneassets\Photometric Arquivos de luzes fotométricas no formato (IES).
Sceneassets\RenderAssets Arquivos do Mental Ray e outros arquivos de render, incluindo mapas de sombra, mapa de photons, mapa de final gather, arquivos (MI), e passos de render.
Sceneassets\Sounds Arquivos de áudio.
Scenes Arquivos (MAX).
VideoPost Arquivos do Video Post.

O arquivo de extensão MXP, que fica na raiz da pasta de projeto criada, possui o nome do projeto e contém as configurações padrões do projeto específico, podendo ser alterado via editor de texto.