Blender - cuisson carte normale - couleurs étranges

10

J'ai une grille de tambour en métal, et quand je fais cuire sa carte normale, j'obtiens les couleurs étranges (voir photo ci-jointe). Je parle du décalage horizontal de dégradé de couleur. Il n'y a pas de déformation comme ça sur ma maille, comment se fait-il que les couleurs soient comme ça? J'ai essayé différents espaces (appareil photo, monde, etc.) mais c'est toujours mauvais (bien que le gradient horizontal change avec chacun). L'espace tangent renvoie également une couleur bleue en blocs partout.

Quelqu'un peut-il me dire comment retirer une bonne carte normale de mon maillage?

entrez la description de l'image ici

=== MISE À JOUR

Résolu, merci beaucoup Luke B.Il y a toujours la question de redimensionner un peu les deux versions qui se chevauchent (la basse résolution par exemple) afin d'obtenir de très bons résultats, mais c'est comme ça que c'est censé être fait.

entrez la description de l'image ici

=== MISE À JOUR 2

Après avoir suivi les conseils de Luke B, j'ai utilisé le modificateur multirésolution sur mon maillage basse résolution, et cuit à partir de là. Cela semble beaucoup mieux qu'auparavant, les artefacts de couleur sont au minimum, vraiment, avec quelques corrections dans GIMP, c'est assez utilisable:

entrez la description de l'image ici

Shivan Dragon
la source
Je n'ai jamais préparé une carte normale auparavant, à quoi vous attendez-vous? Ce que vous obtenez pourrait être correct, car les normales changeraient progressivement sur la surface du cylindre. Les couleurs bouclent correctement et les bandes sont constantes de haut en bas, donc tout comme les normales, elles ne changeraient pas de haut en bas sur le cylindre. Si vous deviez mapper les valeurs x, y, z de la normale à r, g, b, vous pourriez obtenir quelque chose comme ça ...
MichaelHouse
Hey Byte65, merci pour la réponse rapide (encore)! Bon d'accord, tu as raison, mais ce à quoi je m'attendais, c'était des variations de couleur uniquement en fonction des plis horizontaux du tambour ... Je suppose ... Oh bien, merci quand même.
Shivan Dragon
La bonne façon de faire une carte normale est d'utiliser un maillage low-poly comme référence. Vous faites cuire une carte normale à partir du maillage haute poly, car elle ne sera pas utilisée en temps réel, et utilisez le maillage bas poly. Le canon de votre capture d'écran est-il la version haute poly? Vous vous attendez probablement à ce que les couleurs représentent l'écart par rapport à une version low-poly, mais il n'est pas clair si vous utilisez réellement un modèle de référence.
ChrisC
@ChrisC c'est comme ça: un maillage low-poly, uv-wrapped, puis j'ai ajouté un modificateur de surfaces de subdivision et cuit la carte normale. Si je cuit directement sur le maillage low poly, ça a l'air mauvais, vous pouvez voir les plis du maillage low poly
Shivan Dragon

Réponses:

10

Je suppose que votre intention est d'utiliser cette carte normale dans un jeu, comme cela a été expliqué dans d'autres commentaires, vous ne voulez probablement pas de normales spatiales mondiales car elles ne fonctionnent que pour un monde fixe. Votre problème avec la cuisson normale tangente est que vous n'avez pas de maillage avec moins de détails pour cuire la carte. Voici comment procéder:

1 - Créez une version basse résolution de votre cilinder: entrez la description de l'image ici

2 - Alignez les deux mailles: entrez la description de l'image ici

2a - N'oubliez pas de déballer votre maillage basse résolution et de lui créer une texture.

3 - Sélectionnez les deux mailles et assurez-vous que la résolution la plus basse est celle active (la résolution supérieure doit être orange foncé), dans le panneau de cuisson, sélectionnez l'option "Sélectionné à actif" et utilisez Tangent comme espace normal: entrez la description de l'image ici

Est-ce le résultat que vous attendiez?

Luke B.
la source
Merci beaucoup, je devenais fou à ce sujet. J'ai réussi à obtenir des résultats décents, mais il y a encore des couleurs d'artefact qui apparaissent si les deux maillages ne sont pas correctement mis à l'échelle. J'ai remarqué que réduire un peu la basse résolution (donc cela ne s'étend pas en dehors de la haute résolution aide). Pourriez-vous s'il vous plaît donner quelques conseils rapides sur la façon dont les maillages basse et haute résolution doivent être alignés pour de meilleurs résultats (voir la mise à jour sur la question pour les résultats que j'obtiens maintenant). Merci
Shivan Dragon
L'utilisation de cette méthode vous donnera des artefacts si vos maillages ne s'alignent pas correctement, mais vous pouvez utiliser une autre méthode, la cuisson à partir d'un maillage multirésolution. Les étapes sont vraiment simples, vous sélectionnez votre maillage basse résolution, allez dans le panneau des modificateurs et ajoutez un modificateur appelé "Multirésolution", appuyez sur le bouton "Subdiviser" autant de fois que nécessaire, puis définissez le champ d'aperçu sur 1. Revenez au panneau de cuisson et sélectionnez le "Bake from Multires", vous devriez obtenir un résultat sans artefact. Le problème avec cette méthode est que vous ne pouvez pas modifier les sommets de la version haute résolution, vous pouvez cependant la sculpter.
Luke B.23
Oui, c'est encore mieux maintenant. Merci beaucoup.
Shivan Dragon
5

Pour réussir une carte normale, vous devez vous assurer de 2 ou 3 choses.

  • Assurez-vous que votre maillage est multiple. (Par exemple, il n'y a pas de faces à double face.) Vous pouvez vérifier qu'en mode édition en appuyant sur Ctrl + Maj + Alt + M, cela sélectionnera toutes les arêtes non multiples.
  • Assurez-vous de sélectionner "Tangent" pour l'espace normal dans le panneau de cuisson. C'est la méthode habituellement utilisée dans les jeux vidéo. Il existe d'autres espaces normaux et des cartes normales dans lesquels les espaces sont différents.
  • Assurez-vous que les normales sont orientées dans la bonne direction, pour les maillages multiples, vous pouvez les laisser recalculer en appuyant sur Ctrl + N. Vous pouvez laisser les normales affichées dans le panneau "Mesh Display" dans les propriétés thingy (qui peuvent être basculées par N). Si Ctrl + N calcule des normales erronées, il y a quelque chose de sérieusement cassé dans votre maillage.
API-Beast
la source
+1 pour vous assurer que les normales sont
orientées