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ísica (PBR) permite que você represente sombreamento e iluminação realistas usando múltiplos tipos de imagens de textura, ou mapas, em um único objeto. Combinar múltiplos mapas de textura pode simular com mais precisão a cor, rugosidade e refletividade em qualquer ambiente de iluminação e pode aprimorar os elementos visuais de seus ativos e ambiente.

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

Várias aplicações e fluxos de trabalho estão disponíveis para criar texturas PBR. Você pode usar essas texturas 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 suportados pelo PBR do Roblox. Ao criar suas próprias superfícies, consulte referências de material para valores de material comuns, comparações de imagem e exemplos de roupas.

Habilitar aparência de superfície

Você pode adicionar texturas PBR a qualquer MeshPart adicionando um objeto SurfaceAppearance que sobrescreve a textura originalmente atribuída. Em geral, você não pode modificar as propriedades de SurfaceAppearance por scripts durante um jogo, pois o motor requer algum pré-processamento para exibir esses gráficos. Semelhante à adição de 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 de 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 você estiver pronto para adicionar mapas de textura ao objeto SurfaceAppearance, pode clicar em cada propriedade de mapa na janela Properties e inserir um ID de ativo.

Mapas de textura

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

Veja os seguintes exemplos para uma visão geral dos mapas de textura 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 branca 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 cor, ou albedo, mapa 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 em sua textura albedo adicionando opacidade ao seu mapa de imagem.

Modos Alpha

Para objetos que requerem seções parciais ou completas de transparência, como grama, folhas, renda ou decalques como sujeira ou grunge, você pode usar vários modos 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 se aplica 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 subjacente. Mapas de cor que usam o modo de sobreposição revelam a cor base da malha onde a transparência está 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.
  • Máscara de tonalidade — Mistura o ColorMap tingido sobre o ColorMap não tingido.
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 azul como referência:

Uma textura de bolinhas com transparência. O fundo é completamente transparente.
Mapa de cor/albedo com transparência
Uma esfera azul em um plano.
Exemplo de objeto de malha
A esfera tem padrões de bolinhas espalhados sobre sua superfície. O valor de transparência é ignorado.
AlphaMode definido como Opaque
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 Color da malha para tons de pele personalizados ou outras situações com cores exclusivas.

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

Uma imagem completamente preenchida de um padrão semi-repetido com pequenos quadrados azuis claros. O fundo é quadriculado para indicar transparência.
Mapa de cor/albedo com transparência
Uma esfera ciano em branco sobre um fundo escuro.
Exemplo de objeto de malha
Uma esfera branca com pequenos quadrados azuis espalhados sobre a superfície.
AlphaMode definido como Overlay

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 diferentes níveis 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 o 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 renda ou rede, 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 pode permitir 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íveis.
Meia transparência em seções
Uma esfera com padrões triangulares regulares em sua superfície completamente invisíveis.
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 folhagens, 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 adequada. 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 como pelo menos 0.02. Isso melhora a qualidade da mistura para objetos como janelas sujas e penas de bordas suaves, mas não funcionará com todos os efeitos.
Máscara de tonalidade

Você pode usar o modo Enum.AlphaMode.TintMask para aplicar tingimento de SurfaceAppearance.Color a áreas seletivas de uma superfície. O tingimento é mais forte onde o canal alpha está totalmente visível e não é aplicado onde o canal alpha é transparente.

Uma textura de tijolo de cor quente e clara com rejunte texturizado cinza 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.

Tingimento de cor

Você pode aplicar um tingimento ao seu mapa de cor modificando a propriedade SurfaceAppearance.Color. O tingimento não afeta o desempenho e você pode economizar memória reutilizando um único mapa de cor com diferentes tonalidades. Use o tingimento de cor para criar variações adicionais 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 um tingimento amarelo padrão e propriedades reflexivas semelhantes a jade.
Malha da estátua de O Mistério da Duvall Drive sem tingimento.
Uma estátua com um tingimento vermelho e continua a ter propriedades reflexivas brilhantes de seus outros mapas de textura.
Malha da estátua com Color definido como vermelho.
Uma estátua com um tingimento verde e continua a ter propriedades reflexivas brilhantes de seus outros mapas de textura.
Malha da estátua com Color definido como verde.

O tingimento de SurfaceAppearance.Color aplica-se como um multiplicador, portanto, a aparência final é uma função de Color3 (cor do texel) vezes SurfaceAppearance.Color. Isso significa que criar seu original SurfaceAppearance.ColorMap em cores de escala de cinza quase brancas cria o efeito de tingimento mais forte quando essa propriedade é aplicada.

O tingimento aplica-se apenas ao SurfaceAppearance.ColorMap e não ao MeshPart.Color. Você pode continuar a usar canais alpha ao aplicar transparência.

Quando SurfaceAppearance.AlphaMode está definido como Overlay e um canal alpha está presente, a MeshPart.Color subjacente é revelada e o tingimento de SurfaceAppearance.Color aplica-se apenas ao mapa de cor SurfaceAppearance visível.

Quando SurfaceAppearance.AlphaMode está definido como TintMask e um canal alpha está presente, o canal alpha controla a quantidade de tingimento de SurfaceAppearance.Color. O tingimento é mais forte onde o canal alpha está totalmente visível e não é aplicado onde o canal alpha é transparente.

Um plano quadrado flutuante com uma textura de ardósia ciano, 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 definido como Transparency. A barra de gradiente em escala de cinza na parte inferior indica o valor alpha. MeshPart.Color está definido como vermelho e SurfaceAppearance.Color está definido como ciano.

Normal

O normal, ou superfície, mapa adiciona profundidade de textura à 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.

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 lisa de cor argila.
Uma esfera de cor argila com uma superfície moderadamente rochosa.
Uma esfera de cor argila com uma superfície extremamente rochosa.

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] se traduz em um mapa normal completamente plano. O Roblox suporta apenas mapas normais OpenGL format - Tangent Space.

Os mapas normais afetam proeminentemente a superfície visual de uma malha e podem acentuar costuras estranhas 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 é espalhada pela superfície do seu modelo. Quando a rugosidade está em 0%, a superfície não dispersa luz alguma, resultando em um reflexo e brilho muito mais nítidos em seu material. Em 100%, a luz e os reflexos se dispersam uniformemente sobre o modelo, resultando em uma superfície fosca menos reflexiva.

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

Uma esfera azul brilhante.
0%
Uma esfera azul semi-brilhante.
50%
Uma esfera azul fosca.
100%

A rugosidade pode impactar quão reflexivo um objeto é em diferentes ângulos, referida como o efeito Fresnel. O processamento fresnel do Studio visa precisão física do 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 aumentando o valor do mapa de rugosidade em cerca de 0.1 para obter 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 maneira 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 aplicativos.

Metallicidade

Metallicidade determina a refletividade de uma superfície. Na maioria dos casos, você deve definir esse valor como 0% (não metálico) ou 100% (metálico), embora você possa usar valores de metallicidade parciais ao criar superfícies com propriedades reflexivas moderadas, como cetim ou seda. Essa prática pode simular sutilmente os reflexos no material para destacar a cor do mapa de cor/albedo sobre as cores refletidas no ambiente.

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

Uma esfera marrom com manchas claras.
0%
Uma esfera marrom com manchas claras e alguma refletividade.
50%
Uma esfera marrom com manchas moderadas e muita refletividade.
100%

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

Máscara Emissiva

Uma textura de conteúdo em escala de cinza EmissiveMaskContent aplica uma máscara emissiva sobre a superfície. Isso permite que você use uma textura para controlar a emissividade para um controle artístico mais detalhado do que o material Neon tudo ou nada e permite que você crie efeitos brilhantes detalhados, como texto iluminado, armaduras futuristas ou criaturas bioluminescentes.

A propriedade associada EmissiveTint determina a cor de tingimento para a contribuição emissiva, e EmissiveStrength determina a força da contribuição emissiva.

©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.