Textures PBR

*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.

Les textures de rendu basé sur la physique (PBR) vous permettent de représenter un ombrage et un éclairage réalistes en utilisant plusieurs types d'images de texture, ou cartes, sur un seul objet. La combinaison de plusieurs cartes de textures peut simuler plus précisément la couleur, la rugosité et la réflectivité dans n'importe quel environnement d'éclairage et peut améliorer les éléments visuels de vos actifs et de votre environnement.

Un avatar humanoïde avec des dreadlocks, une veste brillante, un jean avec des décalcomanies et des bottes.
Un avatar humanoïde avec une coupe de cheveux courte, une veste en cuir, un pantalon capri et des chaussures orange.

Diverses applications et flux de travail sont disponibles pour créer des textures PBR. Vous pouvez les utiliser lors des phases de modélisation et de texturation de la création d'objets 3D personnalisés, à condition que Roblox Studio prenne en charge les cartes de textures spécifiques que vous utilisez.

Ce guide fournit des instructions sur la configuration de vos objets maillés pour utiliser des cartes de textures PBR et décrit des cas d'utilisation courants et des meilleures pratiques pour les cartes de textures PBR prises en charge par Roblox. Lorsque vous créez vos propres surfaces, consultez les références de matériaux pour des valeurs de matériaux courantes, des comparaisons d'images et des exemples de vêtements.

Activer l'apparence de surface

Vous pouvez ajouter des textures PBR à n'importe quel MeshPart en ajoutant un objet SurfaceAppearance qui écrase la texture assignée d'origine. En général, vous ne pouvez pas modifier les propriétés de SurfaceAppearance par des scripts pendant un jeu car le moteur nécessite un prétraitement pour afficher ces graphiques. Comme pour l'ajout d'une texture de base, chaque carte d'image de texture doit pointer vers l'ID d'actif d'image téléchargé approprié.

Pour activer l'apparence de surface pour un MeshPart :

  1. Dans la fenêtre Explorer, survolez le MeshPart et cliquez sur le bouton ⊕.

  2. Insérez un SurfaceAppearance à partir du menu contextuel.

    Un objet SurfaceAppearance parenté à l'intérieur d'un MeshPart dans la fenêtre Explorer de Studio.

    Lorsque vous êtes prêt à ajouter des cartes de textures à l'objet SurfaceAppearance, vous pouvez cliquer sur chaque propriété de carte dans la fenêtre Propriétés et entrer un ID d'actif.

Cartes de textures

Studio prend actuellement en charge 5 types de cartes de textures PBR : couleur, normale, rugosité, métallique et émissif. Chacune de ces cartes correspond à un aspect important de l'apparence de surface de l'objet. Les cartes de textures ne changent que l'apparence visuelle et n'affectent pas la géométrie de l'objet MeshPart.

Consultez les exemples suivants pour un aperçu des cartes de textures prises en charge par Roblox et des ressources supplémentaires :

La propriété ColorMap définit les données de couleur de la surface, y compris toute transparence présente dans la carte. Voir couleur (albédo) pour des informations supplémentaires.

Une image complètement remplie, principalement rouge avec diverses taches noires et des rayures blanches.
Exemple de carte
Une sphère blanche vide avec un fond sombre.
Exemple de maillage
Une sphère rouge avec des taches noires et des rayures blanches sur un fond sombre.
Maillage et texture

Couleur (albédo)

La carte de couleur, ou albédo, détermine la couleur de votre texture et se compose principalement d'informations de couleur avec peu ou pas d'informations d'éclairage ou de texture. Pour une personnalisation supplémentaire, vous pouvez également ajouter de la transparence dans votre texture albédo en ajoutant de l'opacité à votre carte d'image.

Modes alpha

Pour les objets qui nécessitent des sections partielles ou complètes de transparence, comme l'herbe, les feuilles, la dentelle ou les décalcomanies comme la saleté ou le grunge, vous pouvez utiliser divers modes alpha pour appliquer la transparence à votre carte de couleur. Si le format d'image de votre carte de couleur prend en charge les canaux alpha, vous pouvez appliquer une carte alpha en niveaux de gris où 0.0 est transparent et 1.0 est opaque. De même, lorsque vous utilisez un format d'image tel qu'un .png, toute opacité sur la carte de couleur s'applique comme transparence sur l'actif.

Vous pouvez appliquer la transparence de deux manières différentes en définissant les valeurs suivantes de AlphaMode :

  • Opaque — Ignore le canal alpha de la ColorMap et utilise la valeur de couleur directement à partir de la carte de couleur.
  • Overlay — Superpose la ColorMap sur la couleur de MeshPart.Color sous-jacente. Les cartes de couleur utilisant le mode overlay révèlent la couleur de base du maillage partout où la transparence est présente. C'est le paramètre par défaut.
  • Transparence — Supprime le maillage visible en fonction de la transparence dans le ColorMap. Cela rend le maillage transparent et ne révèle pas la couleur d'origine du maillage chaque fois que la transparence est présente.
  • Masque de teinte — Mélange la ColorMap teintée sur la ColorMap non teintée.
Opaque

Vous pouvez utiliser le mode Enum.AlphaMode.Opaque pour ignorer complètement le canal alpha de la ColorMap. Dans ce cas, la valeur alpha est supposée être 1 (entièrement opaque).

L'exemple suivant démontre comment fonctionne le mode Opaque en utilisant un objet bleu comme référence :

Une texture à pois avec transparence. L'arrière-plan est complètement transparent.
Carte de couleur/albédo avec transparence
Une sphère bleue sur un plan.
Exemple d'objet maillé
La sphère a des motifs à pois dispersés sur sa surface. La valeur de transparence est ignorée.
AlphaMode défini sur Opaque
Overlay

Vous pouvez utiliser Enum.AlphaMode.Overlay pour révéler des sections de la couleur d'origine du maillage. Étant donné que les zones transparentes de la carte de couleur exposent la couleur sous-jacente, vous pouvez concevoir une carte de texture unique qui révèle partiellement ou complètement la propriété Color du maillage pour des teintes de peau personnalisées ou d'autres situations avec des couleurs uniques.

L'exemple suivant démontre comment fonctionne le mode Overlay en utilisant une sphère bleu clair comme référence :

Une image complètement remplie d'un motif semi-répétitif avec de petits carrés bleu clair. L'arrière-plan est en damier pour indiquer la transparence.
Carte de couleur/albédo avec transparence
Une sphère cyan vide sur un fond sombre.
Exemple d'objet maillé
Une sphère blanche avec de petits carrés bleus dispersés sur la surface.
AlphaMode défini sur Overlay

L'exemple suivant utilise le mode Overlay pour des personnages personnalisés, révélant le teint d'origine du personnage :

Une image complètement remplie d'une carte de texture pour un modèle humanoïde 3D. Diverses parties de l'image sont en damier ou partiellement en damier pour indiquer des niveaux de transparence variés.
Carte de couleur contenant de la transparence dans des sections pour exposer la couleur d'origine du maillage
Quatre des mêmes modèles humanoïdes avec différentes teintes de peau : marron clair, noir, blanc, vert foncé.
Plusieurs variations de personnages avec une seule carte de couleur utilisant le mode Overlay

Voir teinte de peau personnalisée pour des détails supplémentaires sur l'optimisation d'un overlay pour la peau et des applications similaires.

Transparence

Vous pouvez utiliser le mode Enum.AlphaMode.Transparency pour créer des objets complexes ou extrêmement fins, tels que de la dentelle ou du filet, en supprimant des parties visibles du maillage comme alternative à la sculpture de la géométrie du maillage. Comme cela n'affecte pas la géométrie de l'objet maillé, cela vous permet de créer des objets détaillés sans l'impact sur les performances d'un modèle de maillage complexe.

L'exemple suivant démontre comment une transparence partielle et complète dans ce mode supprime visuellement des sections du maillage :

Une sphère avec une surface en forme de panier.
Pas de transparence
Une sphère avec des motifs triangulaires réguliers sur sa surface partiellement invisibles.
Transparence partielle dans des sections
Une sphère avec des motifs triangulaires réguliers sur sa surface complètement invisibles.
Transparence complète dans des sections

Il y a deux résultats du mode Transparency, selon que le MeshPart.Transparency est défini sur 0 ou au moins 0.02, bien que la précision numérique puisse entraîner de petites valeurs telles que 0.01 déclenchant la transparence opaque.

  • Lorsque l'alpha est utilisé pour découper la forme d'objets principalement opaques avec des bords nets tels que le feuillage, le tissu en dentelle et le filet, définissez le MeshPart.Transparency sur 0. Lorsque des parties de la surface sont entièrement opaques, le moteur Roblox peut les rendre avec une occlusion basée sur la profondeur appropriée. Les surfaces opaques fonctionnent également généralement mieux avec des effets basés sur la profondeur comme DepthOfFieldEffect, la réfraction du verre et de l'eau, et la réflexion de l'eau.
  • Lorsque l'alpha est utilisé pour ajouter des détails à des objets semi-transparents ou à des objets avec des dégradés de transparence lisses, définissez le MeshPart.Transparency sur au moins 0.02. Cela améliore la qualité du mélange pour des objets tels que des fenêtres sales et des plumes à bords doux, mais cela ne fonctionnera pas avec tous les effets.
Masque de teinte

Vous pouvez utiliser le mode Enum.AlphaMode.TintMask pour appliquer un teint SurfaceAppearance.Color à des zones sélectives d'une surface. Le teint est le plus fort là où le canal alpha est entièrement visible et n'est pas appliqué là où le canal alpha est transparent.

Une texture de brique de couleur chaude et claire avec du coulis texturé gris foncé entre les briques.
Exemple de texture de brique, montrant le détail de couleur sur les faces de brique ainsi que dans le coulis entre les briques.

Teinte de couleur

Vous pouvez appliquer une teinte à votre carte de couleur en modifiant la propriété SurfaceAppearance.Color. La teinte n'affecte pas les performances et vous pouvez économiser de la mémoire en réutilisant une seule carte de couleur avec différentes teintes. Utilisez la teinte de couleur pour créer des variations supplémentaires à faible coût entre vos textures PBR MeshPart ou pour modifier de manière programmatique les couleurs de surface PBR en temps réel.

Une statue avec une teinte jaune par défaut et des propriétés réfléchissantes semblables à du jade.
Maillage de statue de The Mystery of Duvall Drive sans teinte.
Une statue avec une teinte rouge et continue d'avoir des propriétés réfléchissantes brillantes de ses autres cartes de texture.
Maillage de statue avec Color défini sur rouge.
Une statue avec une teinte verte et continue d'avoir des propriétés réfléchissantes brillantes de ses autres cartes de texture.
Maillage de statue avec Color défini sur vert.

Le teint SurfaceAppearance.Color s'applique comme un multiplicateur, donc l'apparence finale est une fonction de Color3 (couleur texel) multipliée par SurfaceAppearance.Color. Cela signifie que la création de votre SurfaceAppearance.ColorMap d'origine dans des couleurs en niveaux de gris proches du blanc crée l'effet de teinte le plus fort lorsque cette propriété est appliquée.

La teinte ne s'applique qu'à la SurfaceAppearance.ColorMap et non à la MeshPart.Color. Vous pouvez continuer à utiliser des canaux alpha lors de l'application de transparence.

Lorsque SurfaceAppearance.AlphaMode est défini sur Overlay et qu'un canal alpha est présent, la couleur sous-jacente MeshPart.Color est révélée et la teinte SurfaceAppearance.Color ne s'applique qu'à la carte de couleur SurfaceAppearance visible.

Lorsque SurfaceAppearance.AlphaMode est défini sur TintMask et qu'un canal alpha est présent, le canal alpha contrôle la quantité de teinte SurfaceAppearance.Color. La teinte est la plus forte là où le canal alpha est entièrement visible et n'est pas appliquée là où le canal alpha est transparent.

Un plan carré flottant avec une texture de schiste cyan, qui change progressivement de complètement transparent à gauche à complètement opaque à droite. Une fine barre horizontale en dessous du plan flottant a un dégradé avec du noir à gauche et du blanc à droite.
AlphaMode défini sur Transparency. La barre de dégradé en niveaux de gris en bas indique la valeur alpha. MeshPart.Color est défini sur rouge et SurfaceAppearance.Color est défini sur cyan.

Normale

La carte normale, ou surface, ajoute de la profondeur à votre surface et se comporte de manière similaire à une carte de hauteur. En conséquence, l'effet peut s'estomper ou s'intensifier en fonction de l'angle de vue et de l'environnement d'éclairage.

Dans la figure suivante, vous pouvez basculer entre la référence de maillage et la référence de carte pour comparer les valeurs de la carte normale :

Une sphère lisse de couleur argile.
Une sphère de couleur argile avec une surface modérément rocheuse.
Une sphère de couleur argile avec une surface extrêmement rocheuse

Les canaux R, G et B de l'image correspondent respectivement aux composants X, Y et Z du vecteur de surface local. Une image uniforme de couleur [127, 127, 255] se traduit par une carte normale complètement plate. Roblox ne prend en charge que les cartes normales au format OpenGL - Espace Tangent.

Les cartes normales affectent de manière significative la surface visuelle d'un maillage et peuvent accentuer des coutures gênantes dans votre texture. Chaque fois que cela est possible, gardez vos coutures de texture cachées pour éviter des problèmes visuels avec votre maillage.

Rugosité

Les cartes de rugosité, ou microsurface, déterminent comment la lumière est dispersée sur la surface de votre modèle. Lorsque la rugosité est à 0 %, la surface ne disperse pas du tout la lumière, ce qui entraîne un reflet et une brillance beaucoup plus nets et lumineux sur votre matériau. À 100 %, la lumière et les réflexions se dispersent uniformément sur le modèle, ce qui donne une surface mate moins réfléchissante.

La figure suivante montre des comparaisons de diverses valeurs de cartes de rugosité :

Une sphère bleue brillante.
0%
Une sphère bleue semi-brillante.
50%
Une sphère bleue mate.
100%

La rugosité peut avoir un impact sur la réflexion d'un objet à différents angles, appelé effet Fresnel. Le traitement fresnel de Studio vise une précision physique du monde réel, bien que vous puissiez obtenir une contribution spéculaire inattendue à certains angles même avec des surfaces rugueuses. Dans certains cas, vous pouvez compenser en augmentant la valeur de votre carte de rugosité d'environ 0.1 de plus rugueux pour obtenir une réponse d'éclairage cohérente avec vos matériaux.

Bien que Roblox rende cet effet d'éclairage avec précision, la luminosité et la réflectivité d'une surface peuvent ne pas répondre de manière cohérente entre votre logiciel de création de contenu de texture, tel que Substance Painter, et Studio. Consultez exemples de vêtements pour les différences de rendu entre les applications.

Métallique

La métallisation détermine la réflectivité d'une surface. Dans la plupart des cas, vous devez définir cette valeur à 0 % (non métallique) ou 100 % (métallique), bien que vous puissiez utiliser des valeurs de métallisation partielles lors de la création de surfaces avec des propriétés réfléchissantes modérées comme le satin ou la soie. Cette pratique peut subtilement simuler les réflexions dans le matériau pour mettre en valeur la couleur de la carte de couleur/albédo par rapport aux couleurs réfléchies dans l'environnement.

Consultez la figure suivante pour des comparaisons de diverses valeurs de cartes de métallisation :

Une sphère marron avec des taches claires.
0%
Une sphère marron avec des taches claires et une certaine réflectivité.
50%
Une sphère marron avec des taches modérées et beaucoup de réflectivité.
100%

Différents moteurs de rendu PBR utilisent divers flux de travail pour traiter la réflectivité. Studio utilise uniquement le flux de travail de métallisation qui détermine si un matériau est un non-métal ou un métal, parfois appelé isolant ou conducteur.

Masque émissif

Une texture de contenu en niveaux de gris EmissiveMaskContent applique un masque émissif sur la surface. Cela vous permet d'utiliser une texture pour contrôler l'émissivité pour un contrôle artistique plus précis que le matériau Neon tout ou rien et vous permet de créer des effets lumineux détaillés comme du texte illuminé, une armure futuriste ou des créatures bioluminescentes.

La propriété associée EmissiveTint détermine la couleur de teinte pour la contribution émissive, et EmissiveStrength détermine la force de la contribution émissive.

Une sphère orange avec un masque émissif de citrouille teinté en magenta.
EmissiveTint = [255, 0, 255]
©2026 Société Roblox. Roblox, le logo Roblox et Powering Imagination font partie de nos marques déposées aux États-Unis et dans d'autres pays.