Problème avec le modificateur Shrinkwrap
3 participants
- Raichu
Problème avec le modificateur Shrinkwrap
Lun 2 Oct - 17:02
Bonjour tout le monde !
En fait, je ne sais pas vraiment si c'est un problème lié à Blender lui-même, mais j'ai observé quelque chose d'étrange en utilisant le modificateur Skrinkwrap. Voilà, en fait, j'ai importé un personnage de Daz Studio (https://www.daz3d.com/) dans Blender en utilisant l'addon DazToBlender Bridge. J'ai aussi importé un personnage que j'ai créé avec MakeHuman (http://www.makehumancommunity.org/) avec l'addon MPFB. Mon objectif est de réussir à recréer avec le personnage de Daz celui que j'ai fait dans MakeHuman.
J'ai pris la tête du personnage de MakeHuman, je l'ai centrée sur celle du personnage de Daz pour qu'ils coïncident au maximum, et j'ai utilisé le modificateur Shrinkwrap de Blender pour envelopper la tête du personnage de Daz autour ce celle du personnage de MakeHuman. Après quelques essais-erreurs, j'ai obtenu quelque chose d'assez prometteur, mais en faisant différents tests, j'ai observé quelque chose d'étrange. En fait, j'aiutilisé le modificateur sur le groupe de sommet intitulé "head", qui appartenait déjà au personnage de Daz (ce n'est pas moi qui ai créé ce groupe).
Voici les réglages que j'ai utilisés et le résultat que j'obtiens :
Les faces sélectionnées sont celles qui appartiennent au groupe de sommets "head" dont je parlais.
Jusque là, tout va à peu près bien à part que ça n'épouse pas très bien la forme de l'oeil. Alors pour essayer de l'améliorer, je me disais que j'allais esayer de changer la "composition" du groupe de sommets, pour voir si en utilisant le Shrinkwrap sur d'autres somments, ça n'épouserait pas mieux l'oeil... Ca, c'est ce que je voulais faire au début, mais en fait, je ne l'ai pas encore fait.
Je m'explique : comme ce groupe existait depuis le début sur le personnage (ce n'est pas moi qui l'ai créé), je me disais qu'il vallait mieux ne pas le modifier, au cas où j'en aurais besoin plus tard. Alors j'ai sélectionné tous les sommets qui en faisaient partie, j'ai créé un nouveau groupe que j'ai appelé "Headv2", et je lui ai assigné les sommets qui étaient sélectionnés. Donc en théorie, les groupes "head" et "Headv2" devraient être rigoureusement identiques.
Ensuite, sans apporter la moindre modification au groupe "Headv2" (donc il est toujours identique au groupe "head"), j'ai simplement changé le champ Vertex Group du modificateur Shrikwrap pour lui donner le groupe "Headv2". C'était juste un test de vérification, mais je m'attendais vraiment à obtenir la même chose qu'avec le groupe "head", puisque je n'ai pas modifié les sommets ; mais à ma grande surprise, je n'obtiens pas la même chose:
C'est particulièrement flagrant au niveau de l'oreille, où on peut voir qu'elle a été cassée en apppliquant le modificateur au groupe "Headv2", alors qu'elle ne l'était pas en l'utilisant sur le groupe "head". La forme obtenue autour de l'oeil n'est pas non plus la même...
Je précise qu'à aucun moment je n'ai appliqué le modificateur, il est toujours présent dans ma pile de modificateurs et c'est de là que j'ai modifié le champ Vertex Group (je veux dire que le modificateur est bien utilisé qu'une seule fois, pour éviter toute confusion possible...).
Du coup, comme je n'ai fait qu'assigner les sommets du groupe "head" au groupe"Headv2" sans faire aucun autre changement, je ne comprends pas d'où viennent ces diffférences. Je ne sais pas si c'est un problème réellement lé à Blender ou s'il y a quelque chose de particulier que j'ignore avec les groupes de sommets des personnages de Daz, mais j'espérais quand même que vous pourriez m'aider. J'ai aussi posé la question à la communauté de Daz, mais je n'ai pas encore eu de réponse...
Est-ce que l'un de vous a une idée de ce qui se passe ?
Merci d'avance !
En fait, je ne sais pas vraiment si c'est un problème lié à Blender lui-même, mais j'ai observé quelque chose d'étrange en utilisant le modificateur Skrinkwrap. Voilà, en fait, j'ai importé un personnage de Daz Studio (https://www.daz3d.com/) dans Blender en utilisant l'addon DazToBlender Bridge. J'ai aussi importé un personnage que j'ai créé avec MakeHuman (http://www.makehumancommunity.org/) avec l'addon MPFB. Mon objectif est de réussir à recréer avec le personnage de Daz celui que j'ai fait dans MakeHuman.
J'ai pris la tête du personnage de MakeHuman, je l'ai centrée sur celle du personnage de Daz pour qu'ils coïncident au maximum, et j'ai utilisé le modificateur Shrinkwrap de Blender pour envelopper la tête du personnage de Daz autour ce celle du personnage de MakeHuman. Après quelques essais-erreurs, j'ai obtenu quelque chose d'assez prometteur, mais en faisant différents tests, j'ai observé quelque chose d'étrange. En fait, j'aiutilisé le modificateur sur le groupe de sommet intitulé "head", qui appartenait déjà au personnage de Daz (ce n'est pas moi qui ai créé ce groupe).
Voici les réglages que j'ai utilisés et le résultat que j'obtiens :
Les faces sélectionnées sont celles qui appartiennent au groupe de sommets "head" dont je parlais.
Jusque là, tout va à peu près bien à part que ça n'épouse pas très bien la forme de l'oeil. Alors pour essayer de l'améliorer, je me disais que j'allais esayer de changer la "composition" du groupe de sommets, pour voir si en utilisant le Shrinkwrap sur d'autres somments, ça n'épouserait pas mieux l'oeil... Ca, c'est ce que je voulais faire au début, mais en fait, je ne l'ai pas encore fait.
Je m'explique : comme ce groupe existait depuis le début sur le personnage (ce n'est pas moi qui l'ai créé), je me disais qu'il vallait mieux ne pas le modifier, au cas où j'en aurais besoin plus tard. Alors j'ai sélectionné tous les sommets qui en faisaient partie, j'ai créé un nouveau groupe que j'ai appelé "Headv2", et je lui ai assigné les sommets qui étaient sélectionnés. Donc en théorie, les groupes "head" et "Headv2" devraient être rigoureusement identiques.
Ensuite, sans apporter la moindre modification au groupe "Headv2" (donc il est toujours identique au groupe "head"), j'ai simplement changé le champ Vertex Group du modificateur Shrikwrap pour lui donner le groupe "Headv2". C'était juste un test de vérification, mais je m'attendais vraiment à obtenir la même chose qu'avec le groupe "head", puisque je n'ai pas modifié les sommets ; mais à ma grande surprise, je n'obtiens pas la même chose:
C'est particulièrement flagrant au niveau de l'oreille, où on peut voir qu'elle a été cassée en apppliquant le modificateur au groupe "Headv2", alors qu'elle ne l'était pas en l'utilisant sur le groupe "head". La forme obtenue autour de l'oeil n'est pas non plus la même...
Je précise qu'à aucun moment je n'ai appliqué le modificateur, il est toujours présent dans ma pile de modificateurs et c'est de là que j'ai modifié le champ Vertex Group (je veux dire que le modificateur est bien utilisé qu'une seule fois, pour éviter toute confusion possible...).
Du coup, comme je n'ai fait qu'assigner les sommets du groupe "head" au groupe"Headv2" sans faire aucun autre changement, je ne comprends pas d'où viennent ces diffférences. Je ne sais pas si c'est un problème réellement lé à Blender ou s'il y a quelque chose de particulier que j'ignore avec les groupes de sommets des personnages de Daz, mais j'espérais quand même que vous pourriez m'aider. J'ai aussi posé la question à la communauté de Daz, mais je n'ai pas encore eu de réponse...
Est-ce que l'un de vous a une idée de ce qui se passe ?
Merci d'avance !
- Redstar
- Localisation : Belgique
Re: Problème avec le modificateur Shrinkwrap
Ven 1 Nov - 13:18
Salut @Raichu ,
C'est un peu la problématique de faire appel à un logiciel tier, ça te fais gagner du temps en modé' mais après si tu dois modifier/adapter quelque chose, c'est galère...
Je peux pas t'aider plus, mais j'ai posé la question à chat-gpt:
------
Le comportement que tu décris avec le modificateur Shrinkwrap appliqué aux groupes de sommets "head" et "Headv2" est intriguant. Puisque tu as créé une copie identique de "head" en "Headv2" sans modification, ces différences pourraient être dues à des subtilités dans le fonctionnement de Blender avec les groupes de sommets importés ou générés par des add-ons comme DazToBlender Bridge.
Voici quelques pistes pour t'aider à diagnostiquer le problème :
Vérifie les poids des sommets : Même si les groupes de sommets "head" et "Headv2" contiennent les mêmes sommets, il est possible que les poids attribués à ces sommets soient légèrement différents. Les modificateurs comme Shrinkwrap peuvent être influencés par les poids des sommets dans le groupe. Tu peux vérifier cela en mode Weight Paint pour voir s'il y a des différences.
Normalisation des poids : Si les poids ne sont pas identiques, essaie de normaliser les valeurs des groupes de sommets en utilisant l'option Normalize All dans le panneau Object Data Properties pour éviter des différences qui pourraient causer des effets inattendus.
Vérifie les options du modificateur Shrinkwrap : Parfois, des options comme la distance d'offset peuvent causer des différences selon les groupes. Assure-toi que tous les paramètres du modificateur restent identiques et n’ont pas changé entre les deux tests.
Interférence de données Daz Studio : Les personnages importés de Daz Studio peuvent inclure des données spécifiques qui influencent la géométrie, y compris des informations sur les groupes de sommets qui diffèrent de celles que Blender utilise. Blender pourrait ne pas gérer ces groupes de la même façon que ceux créés nativement. Cela pourrait expliquer pourquoi les oreilles ou les yeux ne se comportent pas de manière identique entre "head" et "Headv2".
Effet de bordure sur les vertices du groupe : Certains groupes de sommets importés ont des bordures ou des sharp edges qui influencent la géométrie lorsque le modificateur Shrinkwrap est appliqué. En ajoutant ou en changeant de groupe, tu pourrais légèrement altérer cette frontière, ce qui modifierait la manière dont Shrinkwrap s’applique.
Bugs Blender : Enfin, il est possible que ce soit un bug lié à Blender ou aux add-ons. Blender peut parfois réagir de manière inattendue avec les groupes de sommets générés par des add-ons.
Pour tester davantage, tu pourrais essayer de :
Créer manuellement un groupe de sommets identique au groupe "head" sans utiliser la fonction de duplication directe.
Expérimenter avec une autre version de Blender ou de DazToBlender Bridge pour voir si le problème persiste.
Si le problème continue, la communauté Blender pourrait être d'une aide précieuse, car ils ont souvent rencontré ce genre de problème avec des modèles importés.
C'est un peu la problématique de faire appel à un logiciel tier, ça te fais gagner du temps en modé' mais après si tu dois modifier/adapter quelque chose, c'est galère...
Je peux pas t'aider plus, mais j'ai posé la question à chat-gpt:
------
Le comportement que tu décris avec le modificateur Shrinkwrap appliqué aux groupes de sommets "head" et "Headv2" est intriguant. Puisque tu as créé une copie identique de "head" en "Headv2" sans modification, ces différences pourraient être dues à des subtilités dans le fonctionnement de Blender avec les groupes de sommets importés ou générés par des add-ons comme DazToBlender Bridge.
Voici quelques pistes pour t'aider à diagnostiquer le problème :
Vérifie les poids des sommets : Même si les groupes de sommets "head" et "Headv2" contiennent les mêmes sommets, il est possible que les poids attribués à ces sommets soient légèrement différents. Les modificateurs comme Shrinkwrap peuvent être influencés par les poids des sommets dans le groupe. Tu peux vérifier cela en mode Weight Paint pour voir s'il y a des différences.
Normalisation des poids : Si les poids ne sont pas identiques, essaie de normaliser les valeurs des groupes de sommets en utilisant l'option Normalize All dans le panneau Object Data Properties pour éviter des différences qui pourraient causer des effets inattendus.
Vérifie les options du modificateur Shrinkwrap : Parfois, des options comme la distance d'offset peuvent causer des différences selon les groupes. Assure-toi que tous les paramètres du modificateur restent identiques et n’ont pas changé entre les deux tests.
Interférence de données Daz Studio : Les personnages importés de Daz Studio peuvent inclure des données spécifiques qui influencent la géométrie, y compris des informations sur les groupes de sommets qui diffèrent de celles que Blender utilise. Blender pourrait ne pas gérer ces groupes de la même façon que ceux créés nativement. Cela pourrait expliquer pourquoi les oreilles ou les yeux ne se comportent pas de manière identique entre "head" et "Headv2".
Effet de bordure sur les vertices du groupe : Certains groupes de sommets importés ont des bordures ou des sharp edges qui influencent la géométrie lorsque le modificateur Shrinkwrap est appliqué. En ajoutant ou en changeant de groupe, tu pourrais légèrement altérer cette frontière, ce qui modifierait la manière dont Shrinkwrap s’applique.
Bugs Blender : Enfin, il est possible que ce soit un bug lié à Blender ou aux add-ons. Blender peut parfois réagir de manière inattendue avec les groupes de sommets générés par des add-ons.
Pour tester davantage, tu pourrais essayer de :
Créer manuellement un groupe de sommets identique au groupe "head" sans utiliser la fonction de duplication directe.
Expérimenter avec une autre version de Blender ou de DazToBlender Bridge pour voir si le problème persiste.
Si le problème continue, la communauté Blender pourrait être d'une aide précieuse, car ils ont souvent rencontré ce genre de problème avec des modèles importés.
Hadriscus aime ce message
- Hadriscus
Re: Problème avec le modificateur Shrinkwrap
Ven 1 Nov - 15:03
Redstar a écrit:
Vérifie les poids des sommets : Même si les groupes de sommets "head" et "Headv2" contiennent les mêmes sommets, il est possible que les poids attribués à ces sommets soient légèrement différents. Les modificateurs comme Shrinkwrap peuvent être influencés par les poids des sommets dans le groupe. Tu peux vérifier cela en mode Weight Paint pour voir s'il y a des différences.
Vraisemblablement c'est ça. @Raichu les vertex groups sont mal nommés, ce ne sont pas simplement des groupes : chaque vertex a une valeur au sein d'un groupe (son poids, ou weight). En assignant les vertex sélectionnés à ton nouveau groupe "HeadV2" tu leur a donné à tous un poids de 1 (c'est-à-dire 100%), alors que l'original avait probablement des nuances. Pour dupliquer un vertex group fidèlement, utilise l'opérateur "duplicate vertex group" à l'intérieur du menu flèche, dans object data properties -> vertex groups.
- Raichu
Re: Problème avec le modificateur Shrinkwrap
Sam 2 Nov - 10:52
Ah, merci beaucoup, je vais essayer pour voir, toutes ces pistes m'ont l'air très intéressantes ! Mais bon, entre temps, je me suis procurer Faceform Wrap, qui m'a permis de recréer fidèlement mon personnage de MakeHuman sur celui de Daz Studio, alors c'est moins important maintenant. Mais quand même, la question est intéressante, je vais regarder ça. Merci beaucoup !
Redstar et Hadriscus aiment ce message
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum