Exemplo De Objeto Translúcido - Exemplos De Materiais Opacos Translúcidos E Transparentes | PEQUENOS
Exemplos De Materiais Opacos Translúcidos E Transparentes | PEQUENOS

Como construir e renderizar objetos translúcidos em engines 3D

O primeiro erro que vejo em todo projeto novo é tratar translucidez como se fosse simplesmente transparência com um slider de opacidade abaixado. Isso não funciona. Translucidez é luz entrando na superfície, viajando para dentro do volume, espalhando-se em múltiplas direções e saindo em outro ponto. Transparência é luz passando reto, sem interagir com o interior. A diferença prática é brutal quando você precisa entregar algo credível para um cliente. Um exemplo de objeto translúcido clássico que uso como referência rápida é uma bola de cera de vela iluminada por trás. A luz entra pela base, percorre o volume ceroso e sai difusa nas laterais, criando aquele brilho interno quente e suave. Se você aplicar apenas um material transparente padrão, a bola vai parecer vidro. O visual correto só aparece quando o motor de renderização simula o comportamento de subsuperfície.

Aqui vai como eu monto isso no fluxo padrão de trabalho, do básico ao detalhado, sem rodeio.

Configurando o shader base para translucidez

No Blender, com o shader Principled BSDF, você sobe o parâmetro Transmission para algo entre 0.4 e 0.7 dependendo da densidade desejada. Achei esse valor depois de testar com peças de acrílico real medindo a quantidade de luz que passa através de amostras físicas — 0.6 era o ponto onde o material já transmitia luz suficiente para o olho perceber translucidez, mas ainda mantinha corpo suficiente para não parecer plástico fino barato. O Transmission Roughness entra aqui também. Valor zero dá aquele efeito de vidro polido. Valor entre 0.15 e 0.35 já introduz difusão que caracteriza a translucidez. Eu costumo começar com 0.25 e ajustar conforme a necessidade do objeto específico.

Se você precisa de algo mais realista, active o Subsurface Scattering. O método Random Walk com um raio de dispersão de 0.5 a 2.0 milímetros funciona bem para a maioria dos materiais orgânicos e plásticos espessos. Para superfícies finas como folhas ou membranas, reduza para 0.1 a 0.3mm. O custo de render sobe proporcionalmente — no Cycles, um objeto com SSS ativo demora entre 3 e 5 vezes mais para processar do que o mesmo objeto apenas com transmission. No Unreal Engine 4 ou 5, o material usa o paradigma Subsurface Profile. Você conecta uma textura de cor de subsuperfície e ajusta o parâmetro Subsurface Radius. Aqui vale uma observação técnica importante: o SSS no UE funciona com mesh de volume real, não com superfícies simples. Se sua geometria tiver apenas dois lados sem espessura, o cálculo não acontece. Você precisa de malhas fechadas com pelo menos alguns milímetros de espessura, senão o resultado será completamente plano.

O problema que ninguém avisa sobre espessura de malha

Eu perdi cerca de quatro horas num projeto de visualização de produtos tentando fazer uma embalagem de shampoo translúcida parecer certa. O modelo veio da equipe de modelagem como uma malha fina, quase sem volume, porque o designer original achava que a translucidez seria resolvida apenas pelo shader. Resultado: a luz atravessava a geometria como se ela fosse inexistente. O material parecia papel cebola, não plástico translúcido. A solução foi simples mas nada óbvia para quem não hada passado por isso: eu apliquei um modifier de Solidify com espessura de 2mm, gerei normais adequadas e então o SSS começou a calcular corretamente o caminho da luz dentro do volume. Antes disso, o render produzia artefatos escuros nas bordas porque o motor tentava traçar raios que saíam e entravam na mesma face instantaneamente, sem volume intermediário para espalhar a luz. Isso resolveu em 15 minutos o problema que estava me incomodando há quatro horas.

Se você está usando um motor que não suporta SSS nativo, como o Eevee no Blender, a alternativa é encadear dois ou três camadas de shader: um layer de transmission com roughness alto, misturado com um layer de diffuse que tenha cor saturada e intensity baixa, tudo controlado por um fresnel para dar mais opacidade nas bordas e mais transparência no centro. Funciona para muitos casos, mas não substitui o SSS real em materiais grossos.

👉 Clique no botão abaixo para saber mais sobre o assunto!

Iluminação e configurações de cena

Objetos translúcidos precisam de iluminação que realmente penetre o material. Uma luz ambiente uniforme produce resultados chatos. O que funciona na prática é posicionamento estratégico: uma fonte de luz forte atrás ou abaixo do objeto, com intensity entre 5 e 15 lumens dependendo da escala, e cor levemente quente para materiais orgânicos ou neutra para plásticos industriais. No Cycles, aumente o Max Bounces de transmissão para pelo menos 12. Valores padrão (8 bounces) cortam prematuramente os raios que viajam dentro do volume translúcido, resultando em áreas escuras onde deveria haver brilho interno. Para objetos muito finos, 6 bounces basta. Para cera, mármore ou pele sintética, suba para 20 se o tempo de render permitir.

HDRI environments funcionam bem para testes rápidos, mas em projetos finais eu prefiro luzes direcionais controladas porque o HDRI muitas vezes introduz reflexos indesejados nas superfícies translúcidas que competem com o efeito de dispersão interna que você está tentando construir. O controle manual demora mais no início — cerca de 20 a 30 minutos a mais para setup — mas evita retrabalho quando o cliente pede ajustes específicos de iluminação.

Limitações e quando abandonar a abordagem

Translucidez via SSS é custosa computacionalmente. Um frame de uma cena com três objetos translúcidos grandes em Cycles pode levar de 45 segundos a 3 minutos em hardware médio. Se você precisa de viewport responsivo ou temps de render abaixo de 10 segundos por frame, considere usar baking de textura de irradiance para pré-calculcar o comportamento de luz nos objetos, ou migrar para o Eevee com o workaround de múltiplos shaders descrito acima. A qualidade cai visivelmente, mas o ganho em velocidade é significativo — de minutos para segundos por frame. Outro ponto onde a técnica falha completamente: objetos translúcidos com geometria extremamente complexa e detalhada, como cabelo, pelúcia ou tecidos com fios individuais. O SSS não foi feito para essas situações. Nesses casos, use hair strands com shader de transmission por fio, ou aposte em técnicas de screen-space como o Screen Space Indirect Light do UE5, que aproxima o efeito sem calcular trajetórias de luz reais dentro do volume.

Referência rápida de valores para materiais comuns

Wax candle: Transmission 0.0, SSS Radius 1.5mm, SSS Color #F5DEB3, Roughness 0.3. Render time: médio-alto. Frosted acrylic: Transmission 0.7, Transmission Roughness 0.35, SSS desligado. Render time: baixo.

Human skin (approximation): Transmission 0.1, SSS Radius 0.8mm, SSS Color #E8B4A0. Render time: alto. Milk glass: Transmission 0.5, Transmission Roughness 0.6, SSS Radius 0.3mm. Render time: médio.

Papel de arroz: Transmission 0.85, Transmission Roughness 0.8, SSS desligado. Render time: baixo. Esses valores são pontos de partida, não presets finais. Cada objeto pede ajuste fino baseado na espessura real da geometria e na distância das fontes de luz. Teste sempre com uma vizualização em tempo real antes de renderizar a versão final.