FROM THE BLOG

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.