Le Bump mapping et le normal mapping sont deux méthodes différentes pour faire la même chose: créer l’illusion de la texture de surface pour un modèle informatique visuel.
Ces méthodes sont utiles pour savoir si vous créez des personnages de jeux vidéo ou si vous réalisez des animations 3D.
Les cartes de bosses imposent une image en niveaux de gris, de sorte que les taches sombres apparaissent plus profondes et offrent un contraste pour les bosses plus claires. »Les cartes normales utilisent une échelle RVB pour dériver des normales vectorielles 3D sur la surface 3D. Cela incite la lumière rendue à créer des reflets et des ombres. Les deux méthodes laissent la géométrie inchangée.
Connaître les différences entre ces deux techniques peut aider à déterminer celle qui convient le mieux à l’application en question. Lisez la suite pour en savoir plus sur les deux afin de pouvoir les ajouter à votre sac de trucs.
La Principale différence Est l’éclairage
Le but de ces deux cartes est de donner à une surface l’illusion de texture sur une surface qui n’a pas de texture. Ceci est bénéfique pour les jeux vidéo car cela signifie que le maillage du modèle n’a pas besoin d’être si fin qu’il capture physiquement tous les petits détails comme une carte de déplacement.
La carte crée cette illusion en déformant la façon dont la lumière rendue interagit avec une surface. C’est également là que la carte des bosses peut devenir limitante, en fonction du niveau de détail que vous essayez d’atteindre.
- Une carte en relief indique au moteur de rendu quelles zones d’une surface sont plus claires et quelles zones sont plus sombres, quelle que soit la direction de la source lumineuse.
- Une carte normale relie les normales de surface artificielles au reste de l’espace 3D et dicte mathématiquement comment la texture interagit avec la source lumineuse rendue.
Ainsi, le résultat dans les deux cas est qu’une forme géométriquement lisse semble avoir une texture de surface très détaillée. Cependant, la carte des bosses commence à faiblir lorsque l’objet texturé est vu sous différents angles. La texture perçue n’interagira probablement pas avec la lumière ambiante de manière crédible.
Pour mieux comprendre cela, jetons un coup d’œil à la façon dont chaque méthode procède au rendu de la texture.
Une carte de bosses Utilise une échelle de gris Définie pour manipuler la hauteur
Si vous deviez créer une carte de bosses ou simplement en regarder une, vous verrez une image en noir et blanc. Il n’y a rien de plus. Essentiellement, la carte utilise cette échelle de gris pour indiquer au moteur de rendu quelles taches sont claires et quelles taches sont sombres.
- Les zones noires sur la carte indiquent des emplacements sombres ou « enfoncés » sur la surface
- Les zones blanches sur la carte indiquent des emplacements surlignés ou « saillants » sur la surface
- Et chaque nuance de gris entre les deux agit en conséquence.
La plupart des moteurs de rendu le font en reliant la nuance de gris au vecteur normal de la surface. Étant donné que les vecteurs normaux sont la façon dont le moteur de rendu « voit » la surface, c’est un moyen de la tromper pour rendre la texture sur une surface réellement lisse.
La relation entre les niveaux de gris et la normale de surface est en tant que telle:
- Noir = tangente à la surface
- Blanc = normale à la surface
Et toute nuance de gris entre modifie l’angle du vecteur normal. C’est astucieux car cela permet à l’image en niveaux de gris d’agir comme un traducteur entre le concepteur de jeu humain, qui voit une image en noir & blanc, et le moteur de rendu, qui voit une image en termes de normales de surface.
Maintenant, comme mentionné précédemment, il y a un manque à cette méthode en ce qui concerne l’éclairage. La carte de bosses définit une distribution normale de surface fixe. En d’autres termes, il ne crée que des effets d’éclairage locaux. Il indiquera uniquement au moteur de rendu quelles zones de la surface sont plus sombres que les autres par rapport à lui-même.
Ainsi, la carte de bosse ne fournit pas suffisamment le moteur de rendu pour considérer d’où vient la source de lumière globale par rapport aux détails sur une surface. Cela pourrait conduire à une situation où les ombres d’une surface font réellement face à la source de lumière, et les reflets sont là où vous vous attendez à ce que les ombres soient.
Si l’utilisateur final voit des ombres là où son œil attend des reflets, il peut trouver les graphismes moins crédibles. Cela ne signifie pas que les cartes de bosses sont totalement obsolètes, cependant. Ils peuvent être utilisés seuls ou en conjonction avec d’autres cartes pour vraiment améliorer le rendu global. Nous allons entrer dans quelques bonnes pratiques dans un peu, mais d’abord un peu sur les cartes normales et la façon dont elles interagissent avec l’éclairage.
Une Carte Normale Utilise le RVB Pour Manipuler la lumière
Comme nous l’avons mentionné, les cartes normales ont la capacité de mieux intégrer l’éclairage global dans la texture de surface perçue d’un objet.
Ils le font en fournissant au moteur de rendu une troisième information ou canal de couleur à utiliser. En revanche, une carte de bosse ne fournit techniquement que deux canaux de couleur à utiliser; noir ou blanc. Le mappage normal utilise l’échelle de couleurs RVB pour calculer une surface normale à partir de trois vecteurs composantes au lieu de deux. RVB, dans ce cas, signifie:
- Rouge
- Vert
- Bleu
Pour mieux comprendre cela sans donner de mémoire sur l’algèbre linéaire, revenons rapidement à la réflexion sur les cartes de bosses pendant une seconde. La nuance de gris équivaut essentiellement à l’angle d’un vecteur par rapport à la surface elle-même. Ce vecteur est composé de deux vecteurs composantes dans l’espace objet cartésien, l’un sur l’axe tangent (noir) et l’autre sur l’axe normal (blanc).
Plus la couleur est proche du noir à un certain endroit, plus l’angle entre le vecteur normal et la surface elle-même est faible. Inversement, plus l’image est proche du blanc, plus le vecteur normal est orthogonal.
Mais si nous opérons dans l’espace 3D, qu’en est-il de la troisième dimension ? C’est là que les cartes normales entrent en jeu avec RVB au lieu de niveaux de gris. Comme la carte bump, une carte normale a un axe tangent et un axe normal, mais elle introduit également l’axe bitangent. Et comme il y a un troisième axe, il doit y avoir une troisième couleur pour le représenter. Le tableau ci-dessous illustre comment chaque carte traduit les couleurs en vecteurs.
Axe Vectoriel | Traduction des couleurs de la Carte Bump | Traduction des Couleurs de la Carte Normale |
Normal | Blanc | Bleu |
Tangente | Noir | Rouge |
Bitangente | N/A | Vert |
La clé pour comprendre ici est que la carte normale a la capacité de définir des normales de surface dans l’espace global 3D car il y a trois composantes vectorielles composant ladite normale. Chacune des composantes peut être liée aux composantes globales X, Y et Z de l’espace cartésien du monde dans lequel une source d’éclairage est fixée.
Une carte de bosse ne peut pas le faire car il n’y a pas de troisième composante reliant l’espace cartésien normal à global. C’est pourquoi vous pouvez vous retrouver avec des reflets là où vous vous attendez à des ombres avec bump mapping.
Les trois composantes vectorielles d’une carte normale constituent un système cartésien, ce qui signifie qu’elles sont toutes orthogonales les unes aux autres. Cependant, le système de coordonnées peut toujours être orienté dans une quantité infinie de directions et doit être contraint d’une manière ou d’une autre pour que la carte ait un sens.
Ceci est fait en orientant les composantes vectorielles sur les coordonnées de texture de la carte. La plupart des logiciels de rendu et de modélisation 3D le feront en arrière-plan pour vous, donc pas de sueur si vous ne faites pas attention en classe d’algèbre linéaire. Il existe généralement 3 orientations différentes parmi lesquelles choisir:
- Espace tangent
- Espace objet
- Espace monde
Chacun de ceux-ci a ses avantages et ses inconvénients, selon l’application de l’objet. Nous y reviendrons plus tard.
Quelle que soit l’orientation utilisée, c’est une étape importante car elle permet au moteur de rendu de calculer les normales de surface de manière à ce qu’elles se rapportent toutes les unes aux autres. Le résultat est une texture de surface perçue qui réagit uniformément à la source lumineuse globale.
C’est donc la grande différence. Les deux cartes affectent l’éclairage sur une surface, mais elles le font de différentes manières. La carte normale excelle dans sa capacité à relier une texture de surface à l’espace 3D dans lequel elle réside. Cela fournira finalement des rendus plus crédibles, bien qu’il ne soit pas rare d’utiliser des cartes de bosses et des cartes normales ensemble pour créer des surfaces très détaillées.
Encore une fois, aucune de ces méthodes ne modifie réellement la géométrie 3D de la surface sous-jacente.
Une note rapide sur l’Orientation normale de la carte
Étant donné que les cartes normales déterminent l’angle auquel la lumière se réfléchit sur une surface, il est important de considérer comment la carte elle-même est orientée par rapport à l’objet auquel elle est appliquée.
L’espace tangent Est le plus courant
Lorsqu’une carte normale est orientée dans un espace tangent, ses normales de texture sont stockées par rapport à la normale de géométrie. C’est généralement le plus polyvalent car il permet à l’objet de se déplacer et de se déformer dans l’espace tout en gardant les effets de la texture intacts. Ceci est particulièrement utile lors de la texturation de choses comme:
- Peau d’un personnage
- Textiles en mouvement
- Objets qui se déplacent et interagissent avec l’utilisateur
Ligne du bas ; utilisez cette option si l’objet que vous texturez se déplace dans l’espace avec l’utilisateur.
L’Espace Objet Crée Une Qualité Supérieure au Prix d’Une Polyvalence
Une carte normale orientée dans l’espace objet calcule ses normales par rapport à l’objet dans son ensemble. L’objet peut toujours se déplacer, mais si ses surfaces se déforment, il peut y avoir des problèmes avec la normale. Les cartes sont généralement spécifiquement adaptées à l’objet auquel elles sont appliquées, ce qui permet d’obtenir des détails plus nets et un meilleur lissage.
Cela rend cependant difficile la réutilisation ou le carrelage de la carte sur d’autres surfaces. Les coordonnées de texture ne peuvent pas non plus être mises en miroir. Ainsi, la modélisation de la texture sur des objets symétriques sera le double du travail.
L’Espace Mondial Crée Une Carte Totalement Fixe
Une carte normale orientée dans l’espace mondial est fixée en place par rapport aux coordonnées 3D globales. Cela signifie que l’objet auquel il est appliqué doit rester stationnaire; sinon, il « glissera » sous la carte s’il est déplacé.
Ceci est bon pour créer des niveaux de détail élevés sur de grands objets fixes d’un environnement.
Quelle Carte A Une Meilleure Vitesse De Rendu ?
Alors que la vitesse de rendu dépend fortement du moteur de rendu lui-même, les cartes bump et les cartes normales occupent différentes quantités de mémoire.
En règle générale, les cartes normales sont plus rapides à rendre que les cartes bump.
La différence n’est pas drastique, mais elle est là. Les cartes normales dépassent légèrement les cartes de bosses car elles ne nécessitent pas plusieurs échantillons de texture comme le font les cartes de bosses.
Quel Type de Carte Dois-je utiliser ?
Comme pour tout, il n’y a pas de consensus unanime sur le fait que l’une de ces cartes est meilleure que l’autre. Les cartes Bump et les cartes normales ont toutes deux des avantages dans différentes applications. Explorons quelques-uns de ceux-ci.
Meilleures utilisations pour la cartographie normale
Nous en avons déjà abordé certaines lors de la discussion des différentes orientations de la carte normale. De manière générale, les cartes normales sont la solution la plus polyvalente lorsque vous avez besoin d’une texture qui répond bien aux mouvements. Cela peut s’appliquer à à peu près n’importe quoi:
- Caractères
- Armes / outils / objets
- Véhicules
- Textiles
- Feuillage
Les cartes normales sont également utiles pour apporter des détails dans les parties de l’environnement qui devraient être vues de près.
- Murs
- Passerelles
- Signalétique
Les cartes normales sont extrêmement polyvalentes, en particulier avec l’orientation de l’espace tangent. Ils s’enroulent également autour des bords pour créer un effet de biseautage favorable, ce que les cartes de bosses ne peuvent pas faire. Cela adoucit les arêtes vives d’un objet qui ne devrait pas sembler avoir d’arêtes vives, rendant ainsi l’image plus crédible.
Cela n’atteint pas le même niveau de détail qu’une carte de déplacement (que nous aborderons brièvement à la fin de cet article), mais cela crée au moins l’illusion d’bords arrondis sur des choses comme:
- Poignées de porte
- Poignées d’armes
- Coins de mur
Cet effet subtil n’est pas réalisable avec une carte de bosse.
Meilleures utilisations pour la cartographie de bosses
Les cartes de bosses sont mieux utilisées pour les surfaces d’arrière-plan ou les objets relativement petits. Pensez aux caractéristiques environnementales qui doivent être perçues au loin.
- Salle d’opération
- Paysages
- Paysages urbains
Étant donné que les cartes de bosses ne fonctionnent pas aussi bien que les cartes normales sur des objets en mouvement, elles s’appliquent facilement aux aspects de la toile de fond ou du niveau de détail moyen d’une scène. Comme ils sont plus faciles à créer et ne nécessitent pas autant de calculs vectoriels, ils constituent l’option d’effort la plus faible.
Cependant, lorsqu’elles sont appliquées à des parties d’un environnement qui ne feront pas l’objet d’un examen minutieux, les cartes de bosses donnent le meilleur pour votre argent proverbial.
Ils peuvent également être utilisés ensemble
N’oubliez pas que les cartes bump et les cartes normales peuvent être superposées pour créer encore plus de détails à votre rendu.
Comme pour toute carte de texture, vous pouvez en superposer autant ou aussi peu que vous le souhaitez pour atteindre le niveau de détail souhaité.
- Les cartes de bosses ajustent la hauteur perçue d’une surface par rapport à elle-même
- Les cartes normales ajustent l’angle perçu auquel la lumière se réfléchit sur la surface
Combinez ces deux éléments pour équilibrer les avantages de la manipulation de la hauteur et de l’angle de votre surface.
Pour Résumer.
La différence entre une carte de bosse et une carte normale est la façon dont chacune manipule une surface pour interagir avec la lumière. Les cartes de bosses fonctionnent en « deux dimensions » en utilisant une échelle de gris pour déplacer artificiellement des parties d’une surface vers le haut ou vers le bas. Monter signifie plus lumineux, et descendre signifie plus sombre.
Les cartes normales fonctionnent en « trois dimensions » en utilisant des canaux de couleur rouge, verte et bleue pour manipuler artificiellement la direction dans laquelle la lumière se réfléchit sur une surface.
Les cartes peuvent être utilisées ensemble ou individuellement, et aucune des cartes de texture ne modifie réellement la géométrie de la surface. Alors que les cartes normales peuvent s’enrouler autour des bords pour créer un effet de biseau, ces deux cartes n’ont pas la capacité de produire l’illusion de texture le long d’un bord.
Bonus : Qu’En Est-Il Des Cartes De Déplacement ?
Si vous devez rendre les bords d’une surface pour que la silhouette de l’objet corresponde à la texture, une carte en relief ou une carte normale ne la coupera pas.
L’avantage des cartes de bosses et des cartes normales est qu’elles créent l’illusion de texture sans altérer réellement le maillage de la surface. Cela signifie que la taille du modèle peut rester petite et que le temps de rendu est toujours assez rapide. Mais cela limite la quantité de détails sur les bords des objets.
C’est là que les cartes de déplacement entrent en jeu. Prenons l’exemple d’un mur de briques. Les briques dépassent par rapport au mortier qui les maintient ensemble. Donc, si vous regardiez le bord de ce coin, cela ne semblerait pas être une ligne droite, les briques dépasseraient et le mortier se retirerait.
Ni les cartes normales ni les cartes de bosses ne peuvent réaliser cette illusion, et ce serait juste une tâche fastidieuse de s’asseoir là et de modéliser réellement toutes ces briques. Sans oublier que cela rendrait votre modèle 3D assez maladroit.
C’est là qu’intervient la cartographie des déplacements. Comme une carte de bosses, elle ajuste la hauteur d’une surface. Mais au lieu de manipuler l’éclairage, il manipule la forme réelle de l’objet lors du rendu. Pour cette raison, il nécessite plus de temps de rendu et un maillage beaucoup plus fin à la surface. Par exemple, la plus grande surface doit être décomposée en centaines, voire en milliers, de surfaces individuelles.
Cela en vaut la peine, si le moteur de rendu est assez puissant et que le détail est nécessaire.
Voici quelques vidéos utiles pour montrer ces concepts visuellement:
Bump mapping: