Travailler avec un ombrage basé sur la physique : Une approche pratique

Tout au long du développement de Unity 5, nous avons utilisé notre projet Viking Village en interne comme terrain d'essai pour les flux de travail d'ombrage et d'éclairage.
Si vous utilisez la version bêta de Unity 5, vous pouvez télécharger le package Viking Village depuis l'Asset Store pour découvrir comment assembler et illuminer une scène dans Unity 5. Nous présentons également ci-dessous quelques-uns de nos enseignements.
Afin de vous assurer que votre configuration de textures et de shaders se comporte correctement, nous vous recommandons d'utiliser une scène simple avec différentes configurations d'éclairage. Il peut s'agir de skyboxes différentes, de lumières, etc. - tout ce qui contribue à l'éclairage de votre modèle.
Lorsque vous ouvrez Unity 5, vous remarquerez que toute nouvelle scène vide possède un ciel procédural ainsi que des paramètres d'ambiance et de réflexion par défaut. Il s'agit là d'un bon point de départ.

Pour notre environnement modèle, nous avons utilisé :
- Rendu de la caméra HDR
- Quelques sondes à réflexion diffuse (pour les réflexions localisées sur les objets)
- Un groupe de sondes lumineuses
- Un ensemble de textures de ciel et de matériaux HDR, ainsi que des ciels procéduraux. Le ciel fourni avec ce projet a été conçu sur mesure pour Unity par Bob Groothuis, auteur de Dutch Skies 360.
- Lumières directionnelles blanc cassé avec intensité adaptée et couleur du ciel HDR
Ajustement des panoramas de la texture du ciel
La plupart des textures de ciel incluent le soleil (ainsi que les éruptions, etc.), de sorte que la lumière du soleil est réfléchie par les surfaces. Cela peut entraîner trois problèmes :
1) La lumière directionnelle que vous utilisez pour représenter le soleil doit correspondre à la direction exacte du soleil peint sur la skybox ou il y aura de multiples points chauds spéculaires sur le matériau.
2) Le soleil réfléchi et le point chaud spéculaire se chevauchent, ce qui provoque des reflets spéculaires intenses.
3) Le reflet du soleil n'est pas masqué lorsque la surface est dans l'ombre et il devient trop brillant dans l'obscurité.

Par conséquent, la lumière du soleil, les éclats, les rayons du soleil et les valeurs HDR doivent être supprimés de la texture du ciel et réappliqués à l'aide des lumières directionnelles.
Création de matériaux d'ombrage à base physique
Pour éviter les approximations liées à l'émulation de matériaux réels, il est utile de suivre une référence connue et fiable. Le nuanceur standard prend en charge à la fois la couleur spéculaire et le flux de travail métallique. Ils définissent tous deux la couleur des reflets qui partent
la surface. Dans le flux de travail spéculaire, la couleur est spécifiée directement, tandis que dans le flux de travail métallique, la couleur est dérivée d'une combinaison de la couleur diffuse et de la valeur métallique définie dans les contrôles du nuanceur standard.
Pour le projet Viking Village, nous avons utilisé le flux de travail de couleur spéculaire du nuanceur standard. Notre scène d'étalonnage, que vous pouvez télécharger à partir de l'Asset Store, comprend des tableaux d'étalonnage pratiques. Nous avons régulièrement consulté les tableaux lorsque
la conception de nos matériaux.
Lorsque vous abordez les matériaux, vous pouvez choisir entre ce que nous appelons les flux de travail spéculaires et métalliques, chacun ayant son propre ensemble de valeurs et un tableau de référence. Dans le flux de travail spéculaire, vous choisissez la couleur de la lumière réfléchie directement, dans le flux de travail métallique, vous choisissez si le matériau se comporte comme un métal lorsqu'il est éclairé.


Le choix entre les flux de travail spéculaire ou métallique est en grande partie une question de préférence personnelle, vous pouvez généralement obtenir le même résultat quel que soit le flux de travail que vous choisissez d'utiliser.
Outre les graphiques et les valeurs, la collecte d'échantillons de surfaces réelles est très utile. Il est très utile de trouver le type de surface que vous essayez d'imiter et d'essayer de comprendre comment elle réagit à la lumière.
Mise en place du matériel
Au début, il est souvent utile de créer une représentation simple mais modifiable des matériaux à l'aide de couleurs, de valeurs et de curseurs dérivés des tableaux d'étalonnage. Vous pouvez ensuite appliquer des textures tout en conservant le matériau d'origine comme référence pour confirmer que les caractéristiques sont préservées.

Les textures du Village Viking ont été créées à l'aide de méthodes manuelles traditionnelles (photos + retouches) ainsi qu'à l'aide d'images scannées de Diffuse/albedo, spéculaire, brillante et normale qui nous ont été fournies par Quixel.
Soyez prudent lorsque vous ajoutez des détails dans les canaux de texture du matériau. Par exemple, il est généralement préférable d'éviter de placer des éclairages (occlusion ambiante, ombres, etc.) dans vos textures : rappelez-vous que l'approche de rendu basée sur la physique fournit tous les éclairages dont vous avez besoin.
Naturellement, la retouche de photographies est plus exigeante que l'utilisation de données numérisées, en particulier en ce qui concerne les valeurs respectueuses du PBS. Il existe des outils d' assistance qui facilitent le processus, tels que Quixel Suite et Allegorithmic Substance Painter.
Données numérisées
Les textures numérisées calibrées par PBS ne nécessitent pas d'édition, car les données sont déjà séparées en canaux et contiennent des valeurs pour l'albédo, le spéculaire et le lissage. Il est préférable que le logiciel qui fournit les données calibrées par le PBS contienne un profil d'unité pour l'exportation. Vous pouvez toujours utiliser les tableaux de référence comme contrôle de cohérence et comme guide si vous devez calibrer les valeurs à l'aide de Photoshop ou d'un outil connexe.
Exemples de matériaux
La Scène du village viking propose une grande quantité de contenu tout en essayant de rester dans des limites raisonnables de consommation de mémoire de texture. Prenons l'exemple d'une grue en bois de 10 mètres de haut.
Notez que de nombreuses textures, en particulier les textures spéculaires et diffuses, sont homogènes et nécessitent des résolutions différentes.



- Texture de l'albédo : Dans le flux de travail spéculaire, elle représente la couleur de la lumière diffuse qui rebondit sur la surface. Elle ne doit pas nécessairement être très détaillée, comme le montre l'image de gauche (grue), alors que la texture de droite (bouclier) comporte des détails uniques et significatifs.


- spéculaire : Les non-métaux (isolants) sont comparativement sombres et en niveaux de gris, tandis que les valeurs des métaux sont brillantes et peuvent être colorées (rappelez-vous que la rouille, l'huile et la saleté sur un métal ne sont pas métalliques). Specular (spéculaire) pour la surface du bois ne bénéficiant pas d'une texture spéculaire, une valeur a été utilisée au lieu d'entrer une carte.


- La douceur est un élément clé des matériaux PBS. Il apporte des variations, des imperfections et des détails aux surfaces et aide à représenter leur état et leur âge. Dans le cas de la grue, il s'est avéré que l'aspect lisse était relativement constant sur toute la surface et a donc été remplacé par une valeur. Cela a permis d'obtenir un gain raisonnable de mémoire de texture.


- L'occlusion indique le degré d'exposition des différents points de la surface à la lumière de l'environnement. L'occlusion ambiante fait ressortir les détails de la surface et la profondeur en atténuant la lumière ambiante et les reflets dans les zones où il y a peu de lumière indirecte. N'oubliez pas qu'il est également possible d'utiliser SSAO (Screen Space Ambient Occlusion) dans votre scène. L'utilisation de SSAO et d'AO peut entraîner un double assombrissement de certaines zones, auquel cas vous pouvez envisager de traiter la carte AO comme une carte de cavité.
Une carte d'OA qui mettrait l'accent sur les fissures et les plis profonds peut être la meilleure option si le jeu utilise SSAO et/ou l'Occlusion Ambiante en mode lumière.

Textures secondaires et résolution
Les textures secondaires peuvent être utilisées pour augmenter le niveau de détail ou apporter des variations au sein du matériau. Ils peuvent être masqués à l'aide de la propriété Masque de détail.
En raison de la faible résolution de la texture primaire diffuse du bois dans l'exemple de la grue, le jeu de textures secondaires est crucial. Il permet d'ajouter des détails fins à la surface finale. Dans le cas présent, les cartes détaillées sont en mosaïque et ont une résolution raisonnablement faible. Ils sont répétés sur de nombreuses autres surfaces en bois, ce qui permet d'économiser une grande partie de la mémoire des textures.


Ces flux de travail nous ont certainement aidés à concevoir le projet Viking Village. Nous espérons que vous les trouverez également utiles et nous nous réjouissons de lire vos commentaires !
Remerciements
Le projet Viking Village a été lancé en partenariat avec l'équipe créative de Quixel, développeur de la technologie de capture de surface HDR et de la bibliothèque de textures Quixel Megascans prête pour PBS.
Un grand merci aux très talentueux Emmanuel "Manu" Tavares et Plamen "Paco" Tamnev pour avoir donné vie à cette scène.
Téléchargez le projet dans l'Asset Store. Sachez qu'il est optimisé pour Unity 5.0.0 RC2.