Otimizando renderização no V-Ray

Comentário de 2023 - pare de sofrer com o 3ds Max, é por isso. A seguir está o artigo original

Nesta lição iremos nos aprofundar no V-Ray e analisar suas configurações mais sutis para aprender como otimizar a renderização e obter uma imagem de alta qualidade em menos tempo.

vray_optimization_header

Introdução


Este tutorial foi desenvolvido para cobrir e explicar todo o processo de otimização das configurações do V-Ray para produzir renderizações de alta qualidade em menos tempo.

Muitas vezes há muita confusão em torno do termo amostragem V-Ray e quais são as configurações “ideais”. A maioria dos renderizadores criam “Configurações universais de V-Ray” nas quais definem o Image Sampler (Anti-Aliasing ou AA) Max subdives para um valor muito alto, cerca de 50 ou mesmo 100, e então simplesmente diminuem o valor do limite de ruído até a renderização. está suficientemente limpo, pensando que esta é a melhor maneira de alcançar a ótima relação qualidade/velocidade. Mas com um pouco de compreensão do que está por trás do V-Ray e como ele realmente funciona, você pode obter imagens melhores em menos tempo de renderização. O método que descreverei neste artigo, em comparação com o mais comum que descrevi acima, em algumas cenas pode economizar de 3 a 13 vezes o tempo de renderização.

Bem, primeiro vamos dar uma olhada em algumas coisas básicas sobre como a renderização em si e a amostragem do V-Ray funcionam. A seguir, passaremos para uma cena específica para demonstrar como otimizar a renderização para ser mais rápida, melhor e mais nítida. Depois aprenderemos a identificar os diferentes tipos de ruído que podem existir em uma cena. E no final mostrarei um procedimento passo a passo para otimizar qualquer cena para obter o equilíbrio perfeito entre qualidade e velocidade.

Se você já sabe como funciona o V-Ray, clique aqui para ir direto para o procedimento de otimização passo a passo.

RAYTRACING (rastreamento de raio)


Quando a renderização começa, raios são disparados da câmera para dentro da cena para coletar informações sobre a geometria da cena, que ficarão visíveis na imagem final. Esses raios são direcionados para longe da câmera e são chamados Raios Primários (Às vezes Camera Rays ou Eye Rays) e são configurados em Amostrador de imagem (também conhecido como Anti-Aliasing ou AA).

Enquanto o Raio Primário cruza a geometria da cena, raios adicionais são disparados desses pontos de interseção para outras áreas da cena para obter informações sobre iluminação, sombras, iluminação indireta (GI), reflexos, refrações, espalhamento de subsuperfície (SSS), etc. raios adicionais são chamados Raios Secundários e configurado no V-Ray Amostrador DMC.

vray_optimization_figure_01Figura 1. Um diagrama simplificado de traçado de raios: os raios primários são disparados da câmera para a cena, cruzam-se com os objetos na cena e espalham os raios secundários para outras partes da cena.

A partir de agora nos referiremos aos “Raios” como “Amostras”, pois a finalidade de um raio (Ray) é obter informações sobre a cena “Amostra”. Raios = Amostras.

Para entender o que está acontecendo na cena, você precisa liberar várias amostras primárias e secundárias. O mais Amostras, quanto mais o V-Ray recebe informações sobre a cena, respectivamente, maior será a qualidade da renderização e menos ela conterá barulho. Como você pode ver, ruído é o motivo da falta de informação sobre a cena. Se houver ruído na cena, o V-Ray não teve a oportunidade de coletar informações suficientes sobre a cena. Resumindo: Para remover o ruído você precisa fornecer mais informações ao V-Ray, e para fornecer ao renderizador mais informações sobre a cena você precisa aumentar o valor de Samples.

Número de amostras primárias, regulado por valores Subdivs mínimos, Máximo de subdivs, E Limite de cor nas opções do amostrador de imagens. O número de amostras secundárias é controlado pelo valor Subdivisões individualmente em cada fonte de luz, GI, material e configurações Limite de ruído Valor do amostrador DMC. (O Limite de Ruído no Maya é chamado de Limite Adaptativo)

Então, vamos repetir os termos básicos:

Raio = Amostra

Amostras primárias = amostras personalizadas pelo Image Sampler do V-Ray (também conhecido como Anti-Aliasing ou AA), projetadas para determinar a geometria da cena e coletar informações como texturas, profundidade de campo (DOF) e desfoque de movimento).

Amostras Secundárias = amostras personalizáveis pelo DMC Sampler do V-Ray, projetadas para coletar informações sobre iluminação, GI, sombras, reflexos, refrações e SSS

Ruído = ruído ou falta de informação

Subdivs = raiz quadrada do número real de amostras. Subdivs^2 = Amostras. Exemplo: 8 subdivs = 64 amostras. (8 ^ 2 = 64)

Neste tutorial, veremos a melhor forma de usar essas amostras primárias e secundárias para obter uma imagem sem ruído em um curto espaço de tempo.

Definição O ELEMENTO DE RENDERIZAÇÃO DE AMOSTRA


O elemento de renderização SampleRate é uma das ferramentas mais importantes que usaremos para otimizar a renderização. Esta é a maneira do V-Ray nos mostrar o que o Image Sampler (AA) está fazendo em um determinado pixel. Isso é feito marcando cada pixel com uma cor correspondente ao número de amostras primárias (AA) que ele contém. Esta imagem pode ser visualizada no elemento de renderização SampleRate)

*A cor azul significa uma pequena quantidade de Amostras Primárias (AA) neste pixel.

*A cor verde significa o número médio de amostras primárias (AA) neste pixel.

*A cor vermelha significa um grande número de amostras primárias (AA) neste pixel.

vray_optimization_figure_02Figura 2. O elemento de renderização SampleRate (à direita) mostra quantas amostras primárias foram usadas em cada pixel de renderização (à esquerda)

Portanto, para uma cena com Image Sampler (AA) de 1 min e 10 subdivs no máximo (1 min e 100 max de amostras primárias):

*A cor azul significa 1 amostra primária (AA) neste pixel.

*A cor verde significa 50 amostras primárias (AA) neste pixel.

*A cor vermelha significa 100 amostras primárias (AA) neste pixel.

E, para uma cena com Image Sampler (AA) 1 min e 100 subdivs no máximo (1 min e 10000max de amostras primárias):

*A cor azul significa 1 amostra primária (AA) neste pixel.

*A cor verde significa 5.000 amostras primárias (AA) neste pixel.

*A cor vermelha significa 10.000 amostras primárias (AA) neste pixel.

Exemplo de cena – como funciona o V-RAY?


Neste tutorial trabalharemos com uma cena simples que consiste em: um plano com diversas esferas, vários materiais simples diferentes (incluindo difuso, reflexão brilhante, refração brilhante e SSS), duas luzes de área e uma luz de cúpula com HDRI. GI habilitado no modo Brute Force + Light Cache. Você pode baixar este arquivo Aqui.

Começaremos com configurações básicas de renderização com os seguintes valores:

  • Amostrador de imagem (AA) = Subdivs de 1min e 8max.
  • Luzes, GI e materiais, todos 8 Subdivisões.
  • Limite de Ruído s= 0.01.
  • Também deixamos todas as outras configurações como padrão.

vray_optimization_figure_03Figura 3. Renderização básica.
Subdivs de 1min e 8max = amostrador de imagem (AA)
8 Subdivs = Luzes, GI e todos os materiais

Agora vamos dar uma olhada mais de perto no que acontece durante uma renderização básica. Através das configurações de renderização, você diz à renderização:

“Eu permito que você use até 64 (8 Subdivs) Amostras Primárias (AA) em cada pixel para que você entenda o que está acontecendo ali na cena e não faça tanto barulho quanto o limite de ruído permite... Mas para cada dessas Amostras Primárias, você pode criar apenas 1 Amostra Secundária para entender o que está lá em termos de luz, sombras, IG e materiais.”

Você pode estar se perguntando: “Espere, apenas uma amostra secundária para luz, GI e todos os materiais? Sim, você dirige! Deveria haver 64 amostras (8 subdivs), não especificamos tantas?” Bem, é importante notar que ICs (luzes), GIs e materiais têm um valor de 64 Samples (8 Subdives) cada - o V-Ray divide esse valor pelos AA Max Samples em sua cena. Apesar do valor de 64 Amostras para luzes e materiais, você deve ter em mente que este valor é dividido pelo valor de AA Max = 64 Amostras (8 Subdivs), resultando em apenas uma Amostra Secundária para luzes, GI e materiais. (64 amostras secundárias / 64 amostras primárias = 1 amostra secundária).

A razão pela qual o V-Ray faz isso é por causa da fórmula interna que ele definiu para manter esses dois valores em equilíbrio. A lógica dos desenvolvedores é a seguinte: quanto mais Amostras Primárias, proporcionalmente menos Amostras Secundárias são necessárias para entender o que está acontecendo na cena (veremos em breve que isso nem sempre é verdade). Esse ato de equilíbrio entre o Image Sampler e o DMC Sampler pode não estar claro para você no início, mas esse é o ponto. A conclusão é que quando você aumenta o valor do Image Sampler (AA), o V-Ray tenta compensar diminuindo proporcionalmente o valor do DMC Sampler. Mais tarde, se ainda não adormeceu, você pode avaliar Calculadora DMC, que foi escrito pelo autor deste artigo, que traduzo com tanto cuidado às 5h02 da manhã, quase sem usar dicionário =) Graças ao ginásio nº 32 de Ivanovo, onde recebi 8 aulas de inglês por semana.

E então, voltemos aos nossos papagaios:

O V-Ray foi renderizado da maneira mais legal possível, mas estou alarmado com o grande número de pixels vermelhos no elemento de renderização SampleRate). Isto é o que ele nos diz:

“Não consegui descobrir o que estava acontecendo na cena porque você me limitou severamente no limite de ruído. Usei amostras primárias com apenas uma amostra secundária por muito tempo, mas isso não me deu informações suficientes sobre essas áreas."

Se olharmos para a renderização, notaremos que embora os objetos (as bordas dos objetos) pareçam muito bons, ainda existem algumas áreas ruidosas na imagem onde há sombras e reflexos. Temos uma renderização base barulhenta e temos duas opções para reduzir o ruído para obter a qualidade que desejamos.

* Opção 1 - aumentar Subdivisões máximas AA - para que o V-Ray possa ver melhor a cena, mas novamente com apenas uma amostra secundária para luz, GI e materiais.

* Opção 2 – Aumentar quantidade Subdivs em materiais, iluminação e GI. Diga ao V-Ray para manter o número de amostras primárias, mas permita que ele use mais amostras secundárias.

Exemplo de cena - opção 1 - aumentando o valor de AA MAX SUBDIVS


Bem, vamos tentar primeiro, da maneira que os visualizadores tortos costumam fazer para obter uma renderização com menos ruído.

  • Aumentamos o Image Sampler (AA) 1 minuto & 100 subdivisões no máximo.
  • Deixamos IP, GI e materiais em 8 Subdivisões.
  • Abaixe o limite de ruído para 0.005 para dizer ao V-Ray que queremos renderizar sem ruído.

vray_optimization_figure_04Figura 4. Opção 1 – aumentar o número de subdivisões em AA Max
Subdivs de 1min e 100max = amostrador de imagem (AA)
8 Subdivs = BC, GI e todos os materiais
0,005 = Limite de Ruído.

Vamos descobrir o que acontece com essas configurações. Depois de definir essas configurações, dizemos ao V-Ray:

“Eu permito que você use até 10.000 (100 subdivs) amostras primárias (AA) por pixel para entender o que está acontecendo na cena e minimizar o ruído tanto quanto possível em um determinado limite de ruído. Mas, para cada Amostra Primária, você pode criar apenas uma Amostra Secundária para entender o que está na cena com luz, GI e materiais.”

Lembramos disso porque Cada IC, material e GI possui 64 Samples (8 Subdivs), o V-Ray divide esse valor por AA Max Samples. Embora o valor seja 64 Amostras, ele é dividido por AA Max 10.000 Amostras (100 Subdivs), resultando em um número mínimo de apenas uma Amostra Secundária para luzes, GI e materiais. (64 amostras secundárias / 10.000 amostras primárias = 1 amostra secundária).

O V-ray termina de renderizar a imagem e diz:

“Eu pude descobrir tudo o que estava acontecendo na cena pela qualidade e clareza da imagem que você especificou. Mas para testar a cena, em alguns lugares tive que usar até 10.000 amostras primárias com 1 amostra secundária para luz, GI e materiais.”

Observamos a Opção 1 e vemos que a quantidade de ruído diminuiu significativamente em comparação com a renderização base. O tempo de renderização aumentou para 11 min 44 mec (9,8 vezes mais). Mas não temos barulho. A maioria das pessoas neste momento vai pensar que este é o melhor resultado que pode ser obtido e que, tipo, está pronto.

Mas e se olharmos para a opção 2, da qual falamos anteriormente? Apesar de aumentarmos os AA Max Subdivs, o que aconteceria se aumentássemos os valores de subdiv em IS, GI e Materials. Vamos descobrir.

Exemplo de cena - opção 2 - aumento do número de subdivisões em IS, GI e materiais


Agora vamos tentar algo novo. Vamos definir o valor das Amostras Primárias para o que estava nas configurações básicas, mas adicionar Amostras Secundárias.

  • Deixamos o Image Sampler (AA) nas configurações básicas 1 minuto & Subdivs 8max.
  • Aumentamos o número de subdivisões em IP, GI e materiais para 80 subdivisões todo.
  • Deixe o limite de ruído 0.01

vray_optimization_figure_05Figura 5. Opção 2 - número entusiasta de subdivisões em SI, GI e materiais.
Subdivs de 1min e 8max = amostrador de imagem (AA)
80 Subdivs = Luzes, GI e Materiais cada.
0,01 = Limite de Ruído.

E então, vejamos o que acontece na segunda opção. Ao definir parâmetros de renderização como este, você está dizendo ao V-Ray:

“Eu permito que você use até 64 (8 subdivs) Amostras Primárias (AA) por pixel para entender o que está na cena e até 100 Amostras Secundárias.”

Lembre-se que GI, materiais e luz são 64.000 amostras (80 subdivisões) cada. O V-Ray divide automaticamente cada um desses valores com base nos AA Max Samples definidos em sua cena. E apesar de 64.000 amostras, está dividido em AA Max 64 amostras (8 subdivisões) e apenas 100 amostras secundárias para luzes, GI e materiais (cada). Amostras secundárias / 64 amostras primárias = 100 amostras secundárias).

V-Ray termina a renderização e diz:

“Eu poderia dizer o que estava acontecendo na cena com base no nível de qualidade do limite de ruído que você definiu. Na verdade, na maioria das vezes, tive que usar todas as 64 amostras primárias por pixel. E 100 amostras secundárias para luz, materiais e GI."

Vemos que o ruído desapareceu, mas o tempo de renderização aumentou 4,5 vezes (4m 38s) em comparação com a renderização base.

Mas se compararmos com a opção 1, vemos que a opção 2 nos deu resultados mais limpos e renderizou 2,2 vezes mais rápido.

vray_optimization_figure_06

Figura 06. Opção 1 à esquerda e opção 2 à direita. Abaixo está uma imagem ampliada 4 vezes para ver melhor a diferença de ruído.

Por que é que? Por que aumentar as configurações do Sampler DMC (materiais de luzes/GI/subdivs) é melhor do que aumentar o Sampler (AA)? O resultado é uma renderização mais rápida e limpa.

Como funciona a otimização


Na renderização base vemos que as bordas do objeto ficam boas, o ruído está principalmente em reflexos e sombras. Se você lembra do que ensinamos anteriormente: “Primary Samples (AA) são feitos para “sondar” a geometria principal da cena, texturas, DOF e motion blur na cena. Enquanto as amostras secundárias “sondam” GI, luz, materiais e sombras.

E assim, para se livrar do ruído, escolher entre as opções 1 e 2 não é uma tarefa fácil. Por que usar uma chave de fenda para fazer o trabalho de um martelo? O Image Sampler (AA) já fez o que foi projetado para fazer - tornar os detalhes geométricos (as bordas dos objetos) limpos e silenciosos. Então, em vez de gravar um monte de amostras primárias (AA) extras na cena para remover o ruído, é melhor adicionar amostras ao amostrador DMC (luzes/GI/subdivs de materiais), deixá-lo fazer o que foi projetado para - remover ruído nas sombras, iluminação, GI, reflexos e refrações. Aqui está a nossa resposta!

Agora podemos ver por que as "Configurações universais de V Ray" de 1min e 100max AA geralmente não serão o método mais eficiente de renderizar uma cena - na verdade, nunca foi pretendido que fosse o método mais eficiente! As configurações universais do V-Ray foram projetadas para tornar o V-Ray acessível e fácil para usuários que não se importam com otimização e não se preocupam com o funcionamento do V-Ray nos bastidores. É apenas uma maneira de colocar o V-Ray no piloto automático. Isso permite ao usuário controlar toda a qualidade da renderização ajustando apenas um parâmetro - o limite de ruído. Se houver muito ruído na renderização, simplesmente diminua o limite de ruído e o V-Ray continuará disparando amostras primárias (AA) até finalmente atingir o limite de ruído.

Mas podemos otimizar ainda mais a opção 2! De 5min 58s antes 4min 53s. Com um ligeiro aumento do ruído.

vray_optimization_figure_07

Figura 07. Opção nº 1. À esquerda, e Opção nº 2 A renderização é ainda mais otimizada - à direita. Velocidade de renderização aumentada em 2,7x!

Aqui está outro exemplo de otimização, desta vez mais focado no desempenho da cena.
Diz-se que a renderização otimizada (à direita) é quase 35% mais rápida do que as configurações de renderização genéricas (à esquerda), reduzindo o ruído e melhorando a qualidade da renderização. Observe também como os reflexos se tornaram mais precisos – visíveis no chão no final do corredor.

vray_optimization_figure_08

Figura 08. “Configurações universais do V Ray” à esquerda e renderização otimizada à direita.

Continua…

11 pensou em “Оптимизация рендера в V-Ray

  1. Ótima lição, uma continuação seria um belo presente.
    A propósito, ligue o RSS, você tem ótimos artigos, ficarei feliz em ler novos

  2. Eu entro, ansioso pela continuação.
    Eu faço isso no Maya, mas as explicações são muito úteis!

  3. O artigo é um absurdo. O tempo de renderização com a mesma qualidade será menor se você definir as subdivisões para o mínimo e o corte de cores para o máximo. Sim, metade da imagem ficará vermelha. E daí. O amostrador AA combate melhor o ruído do que subdivisões em cada elemento. É um fato.

    1. Pelo menos alguém duvidou da correção, caso contrário fica-se com a sensação de que todos os comentários acima foram escritos por bots ou por pessoas que não entenderam o que estavam escrevendo, depois de lerem o artigo uma vez.

      1. como se o artigo tivesse sido escrito por um cara do Blur, se você sabe o que é, o original é de Akin Bilgic. Parece-me que não há idiotas no Blur só para escrever essas coisas))

    1. em 2016, com o advento do Corona Render, este artigo deixou de ser relevante. Nunca tive tempo de traduzir o artigo.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *