Texturas PBR

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.

Renderização Baseada em Físicas (PBR) texturas permitem que você represente sombreamento e iluminação realistas utilizando múltiplos tipos de imagens de textura, ou mapas, em um único objeto. Combinar múltiplos mapas de textura pode simular de forma mais precisa a cor, rugosidade e refletividade em qualquer ambiente de iluminação e pode melhorar os elementos visuais dos seus ativos e ambiente.

Um avatar humanoide com dreadlocks, uma jaqueta brilhante, jeans com adesivos e botas.
Um avatar humanoide com cabelo curto, jaqueta de couro, calças capri e sapatos laranjas.

Vários aplicativos e fluxos de trabalho estão disponíveis para criar texturas PBR. Você pode usar esses durante as fases de modelagem e texturização da criação de objetos 3D personalizados, desde que o Roblox Studio suporte os mapas de textura específicos que você está usando.

Este guia fornece instruções sobre como configurar seus objetos de malha para usar mapas de textura PBR e descreve casos de uso comuns e melhores práticas para os mapas de textura PBR suportados pelo Roblox. Ao criar suas próprias superfícies, veja referências de materiais para valores comuns de materiais, comparações de imagens e exemplos de roupas.

Habilitar aparência da superfície

Você pode adicionar texturas PBR a qualquer MeshPart adicionando um objeto SurfaceAppearance que sobrescreve a textura original atribuída. Em geral, você não pode modificar as propriedades de SurfaceAppearance por scripts durante uma experiência porque o motor requer algum pré-processamento para exibir esses gráficos. Similar a adicionar uma textura básica, cada mapa de imagem de textura deve apontar para o ID do ativo de imagem carregado apropriado.

Para habilitar a aparência da superfície para um MeshPart:

  1. Na janela Explorer, passe o mouse sobre o MeshPart e clique no botão ⊕.

  2. Insira um SurfaceAppearance no menu contextual.

    Um objeto SurfaceAppearance parentado dentro de um MeshPart na janela Explorer do Studio.

    Quando estiver pronto para adicionar mapas de textura ao objeto SurfaceAppearance, você pode clicar em cada propriedade de mapa na janela Properties e inserir um ID de ativo.

Mapas de textura

O Studio atualmente suporta 4 tipos de mapas de textura PBR: cor, normal, rugosidade e metalidade. Cada um desses mapas corresponde a um aspecto importante da aparência da superfície do objeto. Os mapas de textura apenas mudam a aparência visual e não afetam a geometria do objeto MeshPart.

Veja os exemplos a seguir para uma visão geral dos mapas de texto suportados pelo Roblox e recursos adicionais:

A propriedade ColorMap define os dados de cor da superfície, incluindo qualquer transparência presente no mapa. Veja cor (albedo) para informações adicionais.

Uma imagem completamente preenchida, principalmente vermelha, com várias manchas pretas e arranhões brancos.
Exemplo de mapa
Uma esfera em branco com um fundo escuro.
Exemplo de malha
Uma esfera vermelha com manchas pretas e arranhões brancos com um fundo escuro.
Malha e textura

Cor (albedo)

O mapa de cor, ou albedo, determina a cor da sua textura e consiste principalmente em informações de cor com pouca ou nenhuma informação de iluminação ou textura. Para personalização adicional, você também pode adicionar transparência na sua textura albedo adicionando opacidade ao seu mapa de imagem.

Modos de alpha

Para objetos que requerem seções parciais ou completas de transparência, como grama, folhas, rendas ou decalques como sujeira ou grunge, você pode usar vários modos de alpha para aplicar transparência ao seu mapa de cor. Se o formato da imagem do seu mapa de cor suportar canais alpha, você pode aplicar um mapa alpha em escala de cinza onde 0.0 é transparente e 1.0 é opaco. Da mesma forma, ao usar um formato de imagem como um .png, qualquer opacidade no mapa de cor é aplicada como transparência no ativo.

Você pode aplicar transparência em dois comportamentos diferentes definindo os seguintes valores de AlphaMode:

  • Opaco — Ignora o canal alpha do ColorMap e usa o valor de cor diretamente do mapa de cor.
  • Sobreposição — Sobrepõe o ColorMap sobre a MeshPart.Color da malha subjacente. Mapas de cor que usam o modo de sobreposição revelam a cor base da malha onde quer que a transparência esteja presente. Esta é a configuração padrão.
  • Transparência — Remove a malha visível com base na transparência no ColorMap. Isso torna a malha transparente e não revela a cor original da malha sempre que a transparência está presente.
  • TintMask — Mistura o ColorMap tintado sobre o ColorMap não tintado.
Opaco

Você pode usar o modo Enum.AlphaMode.Opaque para ignorar completamente o canal alpha do ColorMap. Nesse caso, o valor alpha é assumido como 1 (totalmente opaco).

O seguinte exemplo demonstra como o modo Opaque funciona usando um objeto branco como referência:

Uma textura de bolinhas com transparência. O fundo é completamente transparente.
Exemplo de mapa de cor/albedo com transparência
Um toro branco em um plano.
Exemplo de objeto de malha (branco)
O toro tem padrões de bolinhas espalhados sobre sua superfície. O valor de transparência é ignorado.
AlphaMode configurado como Opaque usando mapa de referência e material
Sobreposição

Você pode usar Enum.AlphaMode.Overlay para revelar seções da cor original da malha. Como as áreas transparentes do mapa de cor expõem a cor subjacente, você pode projetar um mapa de textura exclusivo que revela parcial ou totalmente a propriedade de cor da Color da malha para tons de pele personalizados ou outras situações com cores únicas.

O seguinte exemplo demonstra como o modo Overlay funciona usando uma esfera branca como referência:

Uma imagem completamente preenchida de um padrão semi-repetido com quadrados pequenos de cor azul clara. O fundo é quadriculado para indicar transparência.
Exemplo de mapa de cor/albedo com transparência
Uma esfera branca sobre um fundo escuro.
Exemplo de objeto de malha (branco)
Uma esfera branca com pequenos quadrados azuis espalhados sobre a superfície.
AlphaMode configurado como Overlay usando mapa de referência e material

O seguinte exemplo usa o modo Overlay para personagens personalizados, revelando o tom de pele original do personagem:

Uma imagem completamente preenchida de um mapa de textura para um modelo humanoide 3D. Várias partes da imagem são quadriculadas ou parcialmente quadriculadas para indicar níveis variados de transparência.
Mapa de cor contendo transparência em seções para expor a cor original da malha
Quatro dos mesmos modelos humanoides com diferentes tons de pele: marrom claro, preto, branco, verde escuro.
Várias variações de personagens com um único mapa de cor usando modo Overlay

Veja tom de pele personalizado para detalhes adicionais sobre como otimizar uma sobreposição para pele e aplicações semelhantes.

Transparência

Você pode usar o modo Enum.AlphaMode.Transparency para criar objetos complexos ou extremamente finos, como rendas ou redes, removendo partes visíveis da malha como uma alternativa à escultura da geometria da malha. Como isso não afeta a geometria do objeto de malha, isso permite que você crie objetos detalhados sem o impacto de desempenho de um modelo de malha intrincado.

O seguinte exemplo demonstra como uma transparência parcial e total neste modo remove visualmente seções da malha:

Uma esfera com uma superfície semelhante a uma cesta.
Sem transparência
Uma esfera com padrões triangulares regulares em sua superfície parcialmente invisível.
Metade da transparência em seções
Uma esfera com padrões triangulares regulares em sua superfície completamente invisível.
Transparência total em seções

Existem dois resultados do modo Transparency, dependendo se o MeshPart.Transparency está definido como 0 ou pelo menos 0.02, embora a precisão numérica possa resultar em pequenos valores como 0.01 acionando a transparência opaca.

  • Quando o alpha é usado para recortar a forma de objetos em sua maioria opacos com bordas duras, como folhagem, tecido de renda e redes, defina o MeshPart.Transparency como 0. Quando partes da superfície são totalmente opacas, o motor Roblox pode renderizá-las com a oclusão baseada em profundidade apropriada. Superfícies opacas também geralmente funcionam melhor com efeitos baseados em profundidade, como DepthOfFieldEffect, refração de vidro e água e reflexão da água.
  • Quando o alpha é usado para adicionar detalhes a objetos semi-transparentes ou objetos com gradientes suaves de transparência, defina o MeshPart.Transparency para pelo menos 0.02. Isso melhora a qualidade de mistura para objetos, como janelas sujas e penas de bordas suaves, mas não funcionará com todos os efeitos.
TintMask

Você pode usar o modo Enum.AlphaMode.TintMask para aplicar coloração SurfaceAppearance.Color em áreas seletivas de uma superfície. A coloração é mais intensa onde o canal alpha é totalmente visível e não é aplicada onde o canal alpha é transparente.

Uma textura de tijolo de cor quente e clara com rejunte texturizado cinza mais escuro entre os tijolos.
Exemplo de textura de tijolo, mostrando o detalhe da cor nas faces dos tijolos, bem como no rejunte entre os tijolos.

Coloração de tinta

Você pode aplicar uma tinta ao seu mapa de cor modificando a propriedade SurfaceAppearance.Color. A coloração não afeta o desempenho e você pode economizar memória reutilizando um único mapa de cor com diferentes tintas. Use a coloração de tinta para criar variação adicional de baixo custo entre suas texturas PBR de MeshPart ou para modificar programaticamente as cores de superfície PBR em tempo real.

Uma estátua com uma coloração amarela padrão e propriedades reflexivas semelhantes ao jade.
Malha da estátua de O Mistério da Duvall Drive sem coloração.
Uma estátua com coloração vermelha e continua a ter propriedades reflexivas brilhantes de seus outros mapas de textura.
Malha da estátua com Color configurada para vermelho.
Uma estátua com coloração verde e continua a ter propriedades reflexivas brilhantes de seus outros mapas de textura.
Malha da estátua com Color configurada para verde.

A coloração SurfaceAppearance.Color é aplicada como um multiplicador, então a aparência final é uma função de Color3 (cor do texel) multiplicada por SurfaceAppearance.Color. Isso significa que criar seu SurfaceAppearance.ColorMap original em cores de escala de cinza quase brancas cria o efeito de coloração mais forte quando essa propriedade é aplicada.

A coloração só se aplica ao SurfaceAppearance.ColorMap e não à MeshPart.Color. Você pode continuar a usar canais alpha ao aplicar transparência.

Quando SurfaceAppearance.AlphaMode está configurado para Overlay e um canal alpha está presente, a MeshPart.Color subjacente é revelada e a coloração SurfaceAppearance.Color só se aplica ao mapa de cor da SurfaceAppearance visível.

Quando SurfaceAppearance.AlphaMode está configurado para TintMask e um canal alpha está presente, o canal alpha controla a quantidade de coloração SurfaceAppearance.Color. A coloração é mais intensa onde o canal alpha é totalmente visível e não é aplicada onde o canal alpha é transparente.

Um plano quadrado flutuante com uma textura slate ciana, que muda gradualmente de totalmente transparente à esquerda para totalmente opaco à direita. Uma barra horizontal fina abaixo do plano flutuante tem um gradiente com preto à esquerda e branco à direita.
AlphaMode configurado como Transparency. A barra de gradiente em escala de cinza na parte inferior indica o valor alpha. MeshPart.Color está configurado para vermelho e SurfaceAppearance.Color está configurado para ciano.

Normal

O mapa normal, ou superfície, adiciona profundidade à textura da sua superfície e se comporta de maneira semelhante a um mapa de altura. Como resultado, o efeito pode desaparecer ou intensificar dependendo do ângulo de visão e do ambiente de iluminação. Quando um mapa normal não está presente, o valor é definido como 0.0.

Na figura a seguir, você pode alternar entre a referência da malha e a referência do mapa para comparações dos valores do mapa normal:

Uma esfera suave de cor argila.
0.0
Uma esfera de cor argila com uma superfície moderadamente rochosa.
0.5
Uma esfera de cor argila com uma superfície extremamente rochosa
1.0

Os canais R, G e B da imagem correspondem, respectivamente, aos componentes X, Y e Z do vetor de superfície local. Uma imagem uniforme de cor [127, 127, 255] traduz-se em um mapa normal completamente plano. O Roblox suporta apenas mapas normais OpenGL formato - Espaço Tangente.

Os mapas normais afetam proeminentemente a superfície visual de uma malha e podem acentuar costuras inconvenientes em sua textura. Sempre que possível, mantenha suas costuras de textura ocultas para evitar problemas visuais com sua malha.

Rugosidade

Rugosidade, ou microsuperfície, mapas determinam como a luz se espalha pela superfície do seu modelo. Quando a rugosidade está em 0.0, a superfície não dispersa luz, resultando em um reflexo e brilho muito mais nítidos em seu material. Em 1.0, a luz e os reflexos se dispersam uniformemente pelo modelo, resultando em uma superfície menos reflexiva e com aparência fosca.

A rugosidade pode impactar quão reflexivo um objeto é em diferentes ângulos, referida como efeito Fresnel. Veja fresnel para mais detalhes e melhores práticas para manter um comportamento reflexivo consistente.

A figura a seguir mostra comparações de vários valores de mapa de rugosidade:

Uma esfera azul brilhante com uma legenda indicando que o mapa de rugosidade está completamente preto.
0.0
Uma esfera azul semi-brilhante com uma legenda indicando que o mapa de rugosidade está exatamente cinza.
0.5
Uma esfera azul fosca com uma legenda indicando que o mapa de rugosidade está completamente branco.
1.0

Fresnel

Fresnel refere-se à quantidade de reflexão de uma superfície em relação ao ângulo de visão atual. O processamento Fresnel do Studio busca precisão física no mundo real, embora você possa obter uma contribuição especular inesperada em certos ângulos, mesmo com superfícies rugosas. Em alguns casos, você pode compensar tornando seu mapa de rugosidade em torno de 0,1 mais rugoso para alcançar uma resposta de iluminação consistente com seus materiais.

Embora o Roblox renderize esse efeito de iluminação com precisão, o brilho e a refletividade de uma superfície podem não responder de forma consistente entre seu software de criação de conteúdo de textura, como Substance Painter, e o Studio. Veja exemplos de roupas para diferenças na renderização entre aplicações.

Metalidade

Metalidade determina a refletividade de uma superfície. Os valores de metalidade variam entre 0.0 e 1.0. O Roblox configura o valor padrão para 0.0 se um mapa de metalidade não estiver presente.

Veja a figura a seguir para comparações de vários valores de mapa de metalidade:

Uma esfera marrom com manchas leves. Uma legenda indica que o mapa de metalidade está completamente preto.
0.0
Uma esfera marrom com manchas leves e alguma refletividade. Uma legenda indica que o mapa de metalidade está exatamente cinza.
0.5
Uma esfera marrom com manchas moderadas e muita refletividade. Uma legenda indica que o mapa de metalidade está completamente branco.
1.0

Diferentes renderizadores PBR usam vários fluxos de trabalho para processar a refletividade. O Studio usa apenas o fluxo de trabalho de metalidade, que determina se um material é um não-metal ou um metal, às vezes referido como um isolante ou condutor.

Na maioria dos casos, você deve definir esse valor como 0.0 (não-metal) ou 1.0 (metal). Você pode usar valores de metalidade parciais ao criar superfícies menos comuns com propriedades reflexivas moderadas, como cetim ou seda. Esta prática pode simular sutilmente os reflexos no material para destacar a cor do mapa de cor/albedo sobre as cores refletidas no ambiente.

©2026 Roblox Corporation, Roblox, o logotipo Roblox e Powering Imagination estão entre nossas marcas registradas e não registradas nos EUA e em outros países.