PDA

Voir la version complète : Besoin explications sur la notion d'influence



ramkin
10/01/2007, 01h18
Salut à tous,

Il y a une chose que j'ai du mal à comprendre avec Claude Bonnet. Je me paume un peu dès qu'on n'applique plus des influences à 100%. Je m'essplique en image:

Voici un brave tube affecté d'une hiérarchie de 2 os:
http://img121.imageshack.us/img121/8366/sanstitre1yl3.gif

L'os parent affecte tout le tube à 100%
http://img482.imageshack.us/img482/6459/sanstitre2az6.gif

Le bambino lui n'affecte qu'une partie et seulement à 50%:
http://img244.imageshack.us/img244/953/sanstitre3bw7.gif

Et lorsque qu'on rotationne l'os parent, voilà ce qui se passe:
http://img217.imageshack.us/img217/6282/sanstitre4rv5.gif

Ce que je ne comprends pas, c'est pourquoi tout ne suit pas gentiment puisque le papa influence tout à 100%. :? J'ai du mal à saisir la logique du truc, donc dès qu'il y a plusieurs influences imbriquées c'est le wild total et je ne comprends même plus ce que je fais. :|

8)

Aurety
10/01/2007, 01h39
il faut cocher la case smart bone ( os intelligent je crois en francais ) sur le parent. Mais pourquoi tu n'influence pas plutôt 50% sur le parent et 50 sur l'enfant ?

ramkin
10/01/2007, 02h12
il faut cocher la case smart bone ( os intelligent je crois en francais ) sur le parent. Mais pourquoi tu n'influence pas plutôt 50% sur le parent et 50 sur l'enfant ?


J'essaie de comprendre ces histoires d'influences parce que je patauge total!! Et surtout, j'ai un maillage qui nécessite des déformations assez précises et ça devient vite l'enfer dès que les influences ne sont plus à 100%.... :o
J'ai régardé, et en fait par défaut "os intelligent" (c'est bien ça.. :wink:) est coché.

Et je viens de faire ce que tu dis. J'ai mis chaque os influençant tout le maillage à 50%, et voilà ce que ça donne:

http://img90.imageshack.us/img90/1696/utilisateuria3.gif

C'est pire que tout.... :arg: Il ne reste même pas à l'échelle.

Sir Gong
10/01/2007, 10h56
Non il faut que l'os parent influence 50% du maillage (la 1ere partie) à 100% et que l'os enfant influence la 2e partie, à 100% aussi.
Ça te donne le point de départ. Ensuite l'ajustement des influences sert à peaufiner la manière dont les plis vont se faire (en gros). Donc essaye en commençant à 100% et affine dans un 2e temps.

ramkin
10/01/2007, 15h01
Non il faut que l'os parent influence 50% du maillage (la 1ere partie) à 100% et que l'os enfant influence la 2e partie, à 100% aussi.
Ça te donne le point de départ. Ensuite l'ajustement des influences sert à peaufiner la manière dont les plis vont se faire (en gros). Donc essaye en commençant à 100% et affine dans un 2e temps.


Est-ce que tu dirais qu'il faut impérativement que chaque point du maillage subissent une inflence à 100% d'au moins un os?

Fluffy
10/01/2007, 15h15
Il faut que tous les points soient influencés à 100% par au moins un os. Si tu utilises les influences absolues, alors les influences s'ajouteront les unes aux autres, mais si tu restes en relatif, alors cela te fera des déformations étranges comme tu peux le voir.
Donc peinds la moitié de ton objet à 100% et affecte cette influence à ton premier os, et à 100% sur l'autre moitié affectée à ton deuxième os si tu souhaites que tout bouge correctement.
Si tu influences la rangée de points du milieu avec les deux os à 100%, alors chaque os aura une influence effective de 50% sur cette partie.

Assure-toi de toujours peindre en absolu.

ramkin
10/01/2007, 22h27
Il faut que tous les points soient influencés à 100% par au moins un os. Si tu utilises les influences absolues, alors les influences s'ajouteront les unes aux autres, mais si tu restes en relatif, alors cela te fera des déformations étranges comme tu peux le voir.
Donc peinds la moitié de ton objet à 100% et affecte cette influence à ton premier os, et à 100% sur l'autre moitié affectée à ton deuxième os si tu souhaites que tout bouge correctement.
Si tu influences la rangée de points du milieu avec les deux os à 100%, alors chaque os aura une influence effective de 50% sur cette partie.

Assure-toi de toujours peindre en absolu.


Ca y est, je viens de comprendre ce que je ne comprends pas (tout le monde suit?? :D). Enfin je veux dire, j'ai trouvé comment l'expliquer.

Fluffy, oui je peinds toujours en absolu, puisque je suis sous la 9.5 et je n'ai donc pas moyen de connaitre l'influence de chaque os sur chaque point. Ca me parait plus pratique.

Donc on recommence avec le tube.

L'os parent affecte la moitié à 100%
http://img265.imageshack.us/img265/4995/sanstitre1hl2.gif

L'os enfant affecte l'autre moitié à 100%, excepté la rangée de points du milieu qu'il affecte à 10%
http://img296.imageshack.us/img296/5363/sanstitre2xb9.gif

Et voilà.
http://img385.imageshack.us/img385/3923/sanstitre3ax1.gif

Ce que je ne comprends pas, c'est que cette rangée du milieu est donc influencée à 100% par l'os1 et 10% par l'os2, et ces deux os n'ont aucun mouvement l'un par rapport à l'autre. Donc pourquoi ils ne suivent pas le mouvement? C'est le calcul en fait que je ne comprends pas bien, son principe.

Fluffy
10/01/2007, 23h36
Sélectionne le premier os de ta hiérarchie et coche "absolute vertex maps" dans le gestionnaire d'attributs. Ça va rebalancer tes points entre eux, de manière absolue (ce qui signifie que tous les points influencés par deux os verront leur influence équilibrée entre les os, et évitera la sur-influence - chaque point influencé aura donc automatiquement une influence à 100% si la somme des influences est supérieure à 100%).
Si tu ne coches pas cette option, alors il faut t'assurer que la somme des influences de tous les os qui influencent un point soit égale à 100%, sinon il faut peindre en relatif (mais le mode relatif est bancale, donc je ne le conseille pas).

ramkin
11/01/2007, 00h31
Sélectionne le premier os de ta hiérarchie et coche "absolute vertex maps" dans le gestionnaire d'attributs. Ça va rebalancer tes points entre eux, de manière absolue (ce qui signifie que tous les points influencés par deux os verront leur influence équilibrée entre les os, et évitera la sur-influence - chaque point influencé aura donc automatiquement une influence à 100% si la somme des influences est supérieure à 100%).
Si tu ne coches pas cette option, alors il faut t'assurer que la somme des influences de tous les os qui influencent un point soit égale à 100%, sinon il faut peindre en relatif (mais le mode relatif est bancale, donc je ne le conseille pas).


Ca ne m'explique toujours pas le calcul effectué. Et le fait que la somme des influences fasse 100% ça marche pas. Regarde l'exemple au dessus ou les deux os influent chacun à 50%..... :?

edj kodiak
11/01/2007, 00h38
regarde tes captures, la tete de l'os 2 n'influence pas les points


EDIT : les points au niveau des "intersections" doivent être influencé par les 2 os

Fluffy
11/01/2007, 01h31
Ca ne m'explique toujours pas le calcul effectué. Et le fait que la somme des influences fasse 100% ça marche pas. Regarde l'exemple au dessus ou les deux os influent chacun à 50%..... :?

T'as essayé de cocher l'option que je t'ai dit de cocher au moins? J'ai reproduit le même cas de figure que ce que tu montres plus haut, et si j'active des influences absolues, cela fonctionne correctement chez moi, même si j'ai une rangée de points influencée à 110% (100%+10%).

En fait, en mode absolu activé, la rangée à 10% bouge bien un petit peu avec le deuxième os.

Fluffy
11/01/2007, 01h51
Voici un exemple concret en images du fonctionnement des influences.
Premier exemple, la rangée du milieu est influencée à 100% en mode absolu par les deux os. La force exercée est identique, et dépasse 100% d'influence cumulée, donc le cacul des vertexs en absolu affectera une influence de 50% à chaque os. On voit bien que la rangée du milieu se trouve à une orientation égale à la moitié de l'angle des deux os.


[Fichier joint supprimé par l'administrateur]

Fluffy
11/01/2007, 01h54
Sur cet exemple, l'os 1 a une influence de 100% sur la rangée du milieu, et l'os 2 une influence de 25% uniquement.
Une fois équilibrée, l'influence du premier os est donc réduite de 25%, et celui-ci n'a donc plus qu'une influence de 75% en absolu.
Note la différence d'angle sur la rangée de points du milieu, et vois comme l'os 1 l'influence plus que l'os 2 de part son orientation.

[Fichier joint supprimé par l'administrateur]

kiteman
11/01/2007, 03h00
wouaw qué qu'il est super baleze le Fluffy :boss: :mrgreen:

ramkin
11/01/2007, 12h04
Bon, qu'on soit bien d'accord (parce que moi j'ai une vf), l'option "absolute vertex maps" correspond bien en français à "Intensité absolue"?
http://img453.imageshack.us/img453/6843/clipboard01mi7.jpg

Et le problème n'est pas la rotation de l'os2 par rapport à l'os1. :? Chez moi aussi tout marche très bien à ce niveau, enfin je veux dire qu'on a le résultat attendu comme sur tes captures.
Regarde mes captures. C'est lorsqu'on fait une rotation du parent que ça m'intrigue.

Par exemple (j'espère que tu l'as sauvé... :|) prends ton fichier où l'os2 influe à 25% et rotationne l'os1. Et dis moi si ton tube reste droit ou s'il a l'allure de mes captures..

Parce qu'il est là mon prob!! Imaginez que cet exemple est un coude. On fait des supers influences vachement fines pour que la rotation de l'avant-bras autour du coude s'effectue impécablement, mais manque de bol, quand on lève le bras (au niveau de l'épaule) une partie du coude ne suit pas.

kiteman
11/01/2007, 12h52
n'oublie pas qu'en mode absolu , tu peux avoir un os ( autre que ceux de ton bras ) qui peut influencer ces points accidentellement .. ce qui explique que ces points ne suivent pas tes 2 os là , car un 3ème "tire" dessus ;)
repasse en revue tous les autres os et regarde si la zone est bien noire pour tous ici

norris
11/01/2007, 15h43
Salut ramkin et salut tout le monde !

Je découvre enfin que je ne suis pas le seul à avoir du mal à comprendre :lol: !

J'avais exactement le même soucis que toi ,et j'ai mis 6 mois pour trouver un bout de solution :roll: !
Je ne pourrais pas t'expliquer vraiment le pourquoi du comment,mais je vais tenter de décrire comment je procède...si ca peut t'aider...

donc la rangée du milieu est influencée à 100% par l'os 1 et à 100% par l'os 2. Pas de soucis.tu peux laisser "os intelligent" coché sur ton os neutre racine (le parent de tous les os...en principe bassin).

Si par contre la rangée du milieu est influencée à 100% par l'os 1 et 10% par l'os 2,effectivement,ca part en vrille quand tu pivotes le parent.Sur ton os neutre racine,tu dois décocher "os intelligent".

A ce que j'ai compris,il ne faut pas toucher à ces options sur les os enfants...uniquement sur l'os "parent racine".

Après,je ne pourrais pas t'en dire plus,car je m'y perds aussi dans ce que je raconte :coup: :lol: !

J'ai aussi une tite question pour les pros de l'influence :mrgreen:.
Dans les vidéos sur le site Pixie media ,il est dit qu'il faut définir une influence neutre pour tous les points à 0%.
Quelle en est l'utilité de cette influence ?On doit la restreindre à quel os ?
Dans le doute,je la balance sur tous les neutres,mais si je ne le fais pas,ca ne change rien du tout.Là c'est un peu obscur pour moi.

Fluffy
11/01/2007, 16h08
Sélectionne le premier os de ta hiérarchie et coche "absolute vertex maps" dans le gestionnaire d'attributs.

Ramkin, fais bien attention à ce que j'écris, parceque là je vais commencer à perdre mon temps si vous lisez de travers.
Bien entendu, si je fais une rotation du premier os, tout suit correctement sans laisser de points traîner derrière. C'est le but de cette fonction, et c'est ce que je viens de m'éreinter à t'expliquer en images.
L'option "absolute vertex maps" est accessible lorsque tu sélectionnes le premier os de la hiérarchie, c'est l'option qui se trouve sous "smart bones".

Norris, la raison pour laquelle je dis d'affecter des influences nulles aux os neutre dans mon tutoriel est pour éviter qu'un quelconque point mal influencé soit affecté par les influences automatiques de ces os neutres (enveloppes d'influences). C'est juste une bonne habitude à prendre pour éviter tout problême.

[Fichier joint supprimé par l'administrateur]

norris
11/01/2007, 17h04
Oki oki !
Merci beaucoup pour la précision Fluffy :wink: !

ramkin
11/01/2007, 20h23
Sélectionne le premier os de ta hiérarchie et coche "absolute vertex maps" dans le gestionnaire d'attributs.



:oops:, :oops: et re- :oops:.... Alors là sincèrement toutes mes confuses.... J'avais effectivement lu trop vite.
Bon beh, voilà, c'est réglé. Après quelques tests ça me parait beaucoup plus cohérent, en tout cas plus compréhensible.

Loué soit ton nom Fluffy et que mille et une vierges insatiables recouvrent ton corps pour l'éternité de sueur de jument en rut. :prie:

Voilà. Et encore pardon d'avoir merdé.

Bon, mais revenons aux choses sérieuses, encore une petite question. :mrgreen:
Je croyais que les os neutre ne pouvaient pas inflencer le maillage? Qu'ils ne servaient en fait que de système de coordonnées...

Fluffy
11/01/2007, 21h23
En fait je conseille toujours de le faire par que les assignations d'influences en relatif sont bancales sous Mocca 1 et 2, et la plupart du temps les gens utilisent des os de soutien hiérarchique mais qui ne devraient avoir aucun impact sur le maillage, soit en oubliant de cocher "os neutre" ou bien en oubliant d'assigner des influences correctes.
C'est juste une bonne habitude à prendre, que de s'assurer que chaque os ait une influence affectée, neutre ou non.

flahaut
12/01/2007, 15h51
le fait que les paramètres " absolute vertex map " et " lenght " restent disponibles même quand on coche " null " peut prêter à confusion au sujet de la non-inflence du neutre

morgot
09/04/2007, 05h21
je n'arrive pas a comrendre le principe de bonnage! j'ai modelisé un t-rex,j'ai fait le squelette mais quand je paint les different parti du corp les deformation sont toujour pas corectes! :coup: :coup: :coup: je demande peut etre trop mais si vous avez le temps pourriez vous telecharger ce model que je mets a votre disposition et creer des os avec le bonnage corecte pour que j'ai une idee :bounce:

http://www.sendspace.com/file/vetckx

desole pour les fautes d'orthograph,peut de gens parlent français dans notre pays)) heureusement que j'ai preferé d'apprendre le français plutot que l'espagnol 8)

Fluffy
09/04/2007, 05h31
Fournis plutôt la version bonée avec influences, et on t'expliquera pourquoi tes influences sont mauvaises.
Là, tu demandes aux gens de faire le boulot à ta place, mais tout le monde n'a pas le temps de le faire, et tu n'apprendras absolument rien de cette façon.
On apprend de ses erreurs, pas du boulot des autres.

morgot
09/04/2007, 14h43
Fournis plutôt la version bonée avec influences, et on t'expliquera pourquoi tes influences sont mauvaises.
Là, tu demandes aux gens de faire le boulot à ta place, mais tout le monde n'a pas le temps de le faire, et tu n'apprendras absolument rien de cette façon.
On apprend de ses erreurs, pas du boulot des autres.


en effet je demande trop :efface: bon voila la version avec des des os ( les os du pied sont pants avec claude bonnet) alors dites moi ce que je fait pas bien? il me faut comprendre le systeme de bonnage sinon ça avancera pas :coup: :coup: :coup:

http://www.sendspace.com/file/qu3lv7

Fluffy
09/04/2007, 15h18
Alors deux choses importantes lorsque tu influences un maillage, et raison pour lesquelles ton maillage ne se déforme pas correctement :
1) Veille à activer "absolute vertex maps" lorsque tu sélectionnes le premier os de ta hiérarchie, de façon à peindre en absolu (c'est-à-dire que les influences ne peuvent pas dépasser 100% d'intensité, contrairement au mode relatif).
2) en mode absolu, chaque os doit influencer la section de maillage qui le concerne. Donc l'os de la cuisse ne doit pas venir influencer le pied, et vice-versa, et les influences ne doivent se chevaucher qu'aux endroits où tu souhaites adoucir les déformations (aux jointures, par exemple).

Et enfin, veille à modéliser les parties à déformer/animer correctement, l'arrière du genou contient quelques points qui se trouvent à l'intérieur du maillage. Il faut que tous les points soient facilement accessibles au pinceau d'influence, et que la topologie suive les axes de déformation, sinon ton maillage ne sera pas déformé correctement.
Il faut généralement au minimum 3 rangées de points pour faire une déformation correcte sur une jointure : 1 qui sera influencée à 100% par le premier os, 1 influencée à 100% par le deuxième os, et celle du milieu à 100 ou 50% par les deux os.

[Fichier joint supprimé par l'administrateur]

morgot
09/04/2007, 15h30
Alors deux choses importantes lorsque tu influences un maillage, et raison pour lesquelles ton maillage ne se déforme pas correctement :
1) Veille à activer "absolute vertex maps" lorsque tu sélectionnes le premier os de ta hiérarchie, de façon à peindre en absolu (c'est-à-dire que les influences ne peuvent pas dépasser 100% d'intensité, contrairement au mode relatif).
2) en mode absolu, chaque os doit influencer la section de maillage qui le concerne. Donc l'os de la cuisse ne doit pas venir influencer le pied, et vice-versa, et les influences ne doivent se chevaucher qu'aux endroits où tu souhaites adoucir les déformations (aux jointures, par exemple).

Et enfin, veille à modéliser les parties à déformer/animer correctement, l'arrière du genou contient quelques points qui se trouvent à l'intérieur du maillage. Il faut que tous les points soient facilement accessibles au pinceau d'influence, et que la topologie suive les axes de déformation, sinon ton maillage ne sera pas déformé correctement.
Il faut généralement au minimum 3 rangées de points pour faire une déformation correcte sur une jointure : 1 qui sera influencée à 100% par le premier os, 1 influencée à 100% par le deuxième os, et celle du milieu à 100 ou 50% par les deux os.


merci enormement cher amis :odile: je vais assayer de faire comme indiqué :art:

morgot
09/04/2007, 15h40
j'ai multiplié le nombre de polygone,a ton avis comme ça,ça peut aller :?:
http://img353.imageshack.us/img353/5885/c4dre3.png

Fluffy
09/04/2007, 15h48
Oui, cela se déformera déjà mieux.
Par contre, il y a certaines zones qui nécessiteront certainement quelques coups de cutter à la main, si cela se déforme mal.
Essaie d'avoir un maximum de "loops" (anneaux) de points, de manière à conserver une déformation uniforme.

ramkin
09/04/2007, 16h35
Il faut généralement au minimum 3 rangées de points pour faire une déformation correcte sur une jointure : 1 qui sera influencée à 100% par le premier os, 1 influencée à 100% par le deuxième os, et celle du milieu à 100 ou 50% par les deux os.


Je confirme. J'irais même jusqu'à dire qu'il faut tant que possible se contenter de cette configuration, car en multipliant les points et polygones, on multiplie d'autant la difficulté defaire de bonnes influences.

8)

morgot
09/04/2007, 19h30
ça va beaucoip mieux! :bounce: merci enormement :odile: je montrerai le resultat une fois fini :poucehaut:

morgot
09/04/2007, 23h51
mes amis j'ai une question! voila je viends d'animer mon perso en train de marcher,peut on copier l'animation? ça m'evitrait d'animer chaque pas,je sais qu'il y a fonction de "boucle" mais c'est trop compliquer des racorder tous les points d'animation,existe t il un moyen plus facile de faire repeter l'ensemble de l'animation? merci d'avance!

le voici

http://img49.imageshack.us/img49/7615/comp1ej9.gif

morgot
10/04/2007, 18h42
donnez votre avis? comment trouvez vous mon T-REX? et encors merci a tous pour vos reponces :odile:

http://img142.imageshack.us/img142/74/comp11cn6.gif

norris
17/04/2007, 04h17
Salut Morgot

d'après ce que je vois sur tes petits gif,ça m'a l'air pas mal du tout les mouvements et tout ! :poucehaut:

Moi je suis curieux de voir un vrai rendu pas en gif pour voir ce que ça donne,car ça a l'air bien sympa et assez réaliste aussi bien dans la modélisation que dans les mouvements.

archeo
21/04/2007, 11h21
Lorsqu'il marche on a l'impression qu'il boite :shock: . Sur la deuxiéme image il fait un peu "mou" mais je saurais pas te dire à quoi c'est du. Question mod les yeux sont trop sur le côté et pas assez dirigés vers l'avant. Sinon à part ça c'est top.