Universidade Lusófona Curso - de Cinema e Multimédia Disciplina - Animação Docente – Pedro Miguel Sousa MENTAL RAY Nota: Abra o ficheiro OcclusionShader.max Mental Ray é um motor de renderização com um enorme potencial, possivelmente um dos melhores existentes no mercado de produção de imagens tridimensionais gerados por computador. Muito utilizado na industria de efeitos visuais e bem implementado em duas das plataformas de topo existentes no mercado – 3dsmax e Maya. A enorme possibilidade de efeitos lumínicos bem como uma variedade de shaders existentes no Mental Ray, fazem deste motor de render um poderoso gerador de imagens virtuais, onde a qualidade expressa é muitas vezes confundida com os “fotogramas da realidade física” em que vivemos. O Mental Ray é composto por várias possibilidades de criação, nas quais podemos esquematizá-las no seguinte organigrama: AMBIENT REFLECTIVE OCCLUSION SHADER Ambient Reflective Occlusion shader gera raios a partir dos pixeis que são gerados na rasterização da imagem, nos quais estão a ser rodeados por um hemisfério com base nas normais de cada pixel. De seguida estes raios são traçados até aos limites da scene ou a uma determinada distancia definida pelo o próprio shader. Quando um raio atinge uma geometria esse raio é sinalizado como Occluded. Mental Ray processa então o numero médio de raios que foram Occluded e usa esse processamento para criar uma mistura de cores definidadas pelos os valores de Brigth e Dark na configuração do Shader. Ambient Reflective Occlusion shader é uma forma de simular uma iluminação global, gerando sombras secundárias através da relação entre shade objects e occluded objects (Imagem 1). Sem utilizar nenhum processo avançado de Global Illumination do 1 Mental Ray, este tipo de light shadertou material shader permite gerar renderizações rápidas e de boa qualidade. Imagem 1 Um dos aspectos da versatilidade deste shader, é que pode ser implementado através de um material atribuido a uma geometria ou a partir das extensões do mental ray, nomeadamente o light shader que podemos encontrar na parametrização das luzes, excepto na luz skylight. Quando é utilizado sob a forma de um light shader é preferível que seja aplicado numa luz Standard Omni, permitindo separar o ambiente luminico produzido pelo Ambient Reflective Occlusion Shader e a luz principal ou direccional(mr Area Spot) – Imagem 2. Desta forma adquire-se um melhor controlo da luminosidade. A escolha de uma Standard Omni para aplicação do Occlusion Shader deve-se por ser uma luz radial, emitindo raios em todas as direcções (como se fosse uma estrela), adquirindo assim um forte componente ambiental. 2 Imagem 2 3 AMBIENT/REFLECTIVE OCCLUSION SHADER Parâmetros Samples: Este parâmetro controla quantos raios na amostragem são reflectidos pelo shader durante o sombreamento de cada pixel. Valores normalmente utilizados: 60, 80, 140, 260 samples. Quanto maior for o numero de samples melhor a qualidade do efeito e tempos de render mais longos. Bright: Cor utilizada para determinar a tonalidade do ambiente do “shader” para cada pixel, que é usado em proporção com a cor seguinte (Dark). Esta proporção é baseada no numero de raios Occluded (Dark) e o numero de raios que não estão Occluded (Bright). Esta cor pode ser mapeada com um Texture Map. Dark: Esta cor é utilizada para os raios Occluded. Pode ser mapeada para um melhor controlo ou para efeitos especiais. 4 Spread: Este valor determina o cone dentro do qual a amostra de raios são expressos. 0 irá produzir um raio só ao longo das normais da superfície da geometria, enquanto 1,0 representa um diferencial ângulo de 180 graus. Max distance: Define um limite máximo nos quais os raios ocludidos são gerados.Quando o valor é 0 os raios occludidos são distribuidos infinitamente por todo espaço (tempos de render mais lentos e a solução de raios Occluded é mais difusa). Um valor superior a 0 é gerado um limite máximo nos quais os raios ocludidos são distribuidos (mais contraste e tempos de render mais rápidos). Reflective: Quando esta opção está desactivada a samplagem das raios é gerada dentro da área do cone envolvente baseada nas normais da superfície da geometria. Quando esta opção é activada os “samples” são distribuidos à volta da direcção da reflecção. Esta propriedade gera uma oclusão reflectiva o que permite aumentar o realismo de um mapa de reflecção. Type (0 = occ, 1 = env, 2 = bnorm) Este opção define a relação entre a renderização de um objeto e o ambiente, ou seja, se o valor for 0 (occ), a iluminação de um objecto e o efeito do Ambient/Reflective Occlusion Shader é gerado pelos os valor Bright e Dark. Quando o valor é 1(ambient) é aplicado ao ambiente do objecto o mapa ambiental inserido no Enviroment do 3dsMax, seja uma imagem, uma cor RGB ou uma HDRI image. Se o valor for 2 (bnorm) os valores das normais das faces de uma geometria são apresentados no render de um posto de vista. Return Occlusion to Alpha: Guarda a informação da oclusão no canal de Alpha da imgem rendarizada, o que torna o map gerado muito util em termos de composição na pós produção. 5 1. Mudar o motor de render para Mental Ray Menu Rendering/Render (ou F10)/Common/Production 6 2. Escolher Mental Ray Renderer 3. Criar uma luz mr Area Spot (Luz principal) Command Panel/Create/Lights/ mr Area Spot mr Area Spot Ligth Este tipo de luz, utilizada com o motor de render Mental Ray, permite gerar sombras mais realistas e com melhor qualidade (Area Shadows – Imagem 3) e com tempos de render bastante razoáveis em comparação com outro tipo de luzes. 7 Imagem 3 4. Criar uma luz standard 0mni (Luz secundaria) Command Panel/Create/Ligths/ Omni 8 5. Activar as extensões do Mental Ray Menu Customize/Preferences/Mental Ray/ General/Enable Mental Ray Extensions Permite utilizar Light Shaders onde podemos inserir o Ambient/Reflective Occlusion Shader. 9 6. Abrir o Editor de Materiais e inserir num slot livre o Ambient/Reflective Occlusion shader. Menu Render/Material Editor/Botão Get Material 10 7. Faça double- click no mapa Ambient/Reflective Occlusion Shader. 11 8. Configurar o Ambient/Reflective Occlusion Shader conforme ilustrado na imagem abaixo 9. Seleccione a Luz Omni e active a opção Enable que se encontra no separador Mental Ray Light Shader no modifier panel, onde podemos encontrar a parametrização da luz. 12 10. Clique e arraste o slot que contém o Ambient/Reflective Occlusion Shader no editor de materiais para o botão none do Light Shader presente na parametrização da luz Omni. Escolha a opção copy Instance na janela flutuante que aparece. 11. Active a opção Ambient Only no separador Advanced Effects que se encontra na parametrização da luz Omni. 12. Faça um render do Viewport Perspective Menu Render/Rendering/Botão Render 13