From BlenderWiki

Jump to: navigation, search

[edit] Poils et plumes dans Blender

NdT
Le système de particules a été totalement réécrit dans Blender v2.46; La documentation originale (anglaise) n'ayant pas encore (début 08/2008) été mise à jour, cette page décrit le système de particules statiques des versions v2.45 et antérieures…


[edit] Introduction

Blender dispose d'un fantastique moteur de particules, capable non seulement d'en générer, mais également de créer des mèches, utilisables pour une chevelure, un pelage ou même un plumage. Cela est obtenu en convertissant les particules en "mèches" ("strands") de polygones au rendu efficace. Ces "mèches" polygonales ne font jamais moins de un pixel de large, ce qui aide à garder à distance les artefacts lorsque le moteur de rendu les calcule.

Commençons par jeter un œil au générateur de particules et à son fonctionnement. Voilà à quoi il ressemble dans Blender 2.44:

fig-1 Le moteur de particules.

Comme vous pouvez le voir dans Le moteur de particules, il y a beaucoup d'options. Pour trouver ces contrôles, vous devez d'abord créer un émetteur de particules. Ce dernier doit être un objet de type Mesh. Ajoutons une sphère: SpaceAddMeshUVsphere. Donnez-lui autour de 2O Segments (méridiens) et 20 Rings (parallèles). Quittez le mode Edit (Tab).

Tapez maintenant F7 pour passer aux boutons Object. Cette partie est divisée en deux: les boutons Object (Image:Manual-Part-I-Interface-Context-Object.png) et Physics (Image:Manual-Part-I-Interface-Context-Object-Physics.png). Cliquez sur le bouton Physics. Vous verrez alors un onglet appelé Particles. Pressez (l'unique) gros bouton NEW et vous obtiendrez la même chose que dans fig-1 (à ceci près que les deux onglets sont superposés par défaut).

Puisque que nous allons créer des cheveux ou de la fourrure nous devons rendre les particules statiques. Activez les boutons Static, et éventuellement Animated si vous prévoyez de les animer plus tard. Pour créer les "mèches" entre chaque particule générée, nous devons activer Vecteur, en bas du bloc Display. Si vous voulez que le mesh émetteur soit visible au rendu, activez simplement Mesh, toujours dans le bloc Display.

Nous voulons voir les particules, maintenant: pour cela, nous devons dire au moteur de particules comment les émettre depuis notre objet mesh. Allez à l'onglet Particle Motion et réglez Normal: à 0.010. Votre sphère devrait ressembler à quelque chose comme dans la fig-2. Sinon, tapez Z pour passer en affichage ombré.

fig-2
fig-2b

Ce n'est guère passionnant, n'est-ce-pas? C'est parce qu'il ne s'agit que d'un ensemble de "mèches" plantés dans une boule ronde, vous pouvez bien entendu ajouter cela à n'importe quel objet Mesh que vous voulez.

[edit] Émettre les mèches depuis le Mesh

Le Mesh émet des particules. Ces particules sont comme des photons; un certain nombre sont émises, elles ont une vitesse, une direction et une durée de vie. Plus il y en a d'émises (Amount:), plus les cheveux seront denses. Plus ces particules vivent longtemps (forte valeur de Life:), plus les cheveux seront longs. Ces particules sont rassemblées de manière très serrée; beaucoup peuvent se retrouver dans le même pixel. C'est une perte de temps CPU que de calculer ces particules redondantes, réglez donc Step: à une faible valeur (5 par défaut). Dans le rendu dans les vues 3D, vous n'avez pas besoin d'afficher/calculer 100% des particules: un plus faible pourcentage dans Disp: accélérera votre affichage.

Vous pouvez aussi spécifier d'où émettre les mèches (bloc From:): l'objet entier, ou juste certaines parties de cet objet. Il y a d'abord deux options: Verts et Faces. Choisissez l'une ou l'autre, ou les deux. Verts permet d'émettre les particules depuis les vertices du mesh (les points du maillage), Faces, depuis les faces du mesh. Par défaut, tous les vertices et faces émettent des particules. Pour en émettre uniquement depuis certaines parties, définissez un groupe de vertices (vertex group, en mode Edit (Tab), et dans les boutons Editing (Image:Manual-Part-I-Interface-Context-Editing.png, F9)), puis rentrez le nom de ce groupe dans le champ VGroup: (attention à la casse – c-à-d aux majuscules/minuscules!). Par exemple, si vous avez une tête humaine, vous y définiriez un groupe de vertices' nommé "Scalp" (cuir chevelu), avant de le rentrer dans VGroup:. Si vous avez choisi d'émettre (aussi) des cheveux depuis les faces du mesh(Faces), vous avez également intérêt à activer Random et/ou Even, pour améliorer la répartition des cheveux/particules. Pour une répartition plus naturelle/organique, choisissez Random. "Dithering is a process of overlaying dots on top of one another to blur and soften. Choose a different dither to suit your hair style.": où ça, le dithering????

Améliorons maintenant l'aspect de nos mèches! Pour cela, nous devons les rendre "douces", et anti-aliasées avec leur environnement. Nous pouvons même modifier la taille des cheveux et l'aspect de leurs extrémités, mais nous y reviendrons, voyons d'abord comment donner aux mèches un aspect vraiment doux et bouffant.

[edit] Shader "strand"

Le shader (~"ombreur") Strand (mèche) à été implémenté pour suivre la direction des mèches de particules. En d'autres termes, si vous choisissez Strand puis utilisez une texture ou un dégradé ("gradient"), ces derniers seront alignés avec les mèches. Et nous allons utiliser des dégradés pour nos mèches de manière qu'elles se fondent dans le décor – nous donnant l'illusion d'une meilleure définition, c'est le principe de l'anti-aliasing. Vous ne pouvez pas vraiment rendre quoi que ce soit de moins d'un pixel de large – donc nous utilisons ce "truc" pour que l'extrémité des cheveux se fonde dans le néant.

fig-3

Comme vous pouvez vous en rendre compte dans fig-3, nous sommes maintenant dans les boutons Material (F5). Vous allez ici créer un nouveau matériau et y ajouter une texture, en fait, il serait pratique de créer deux matériaux si vous avez l'intention de garder le mesh émetteur visible, mais nous nous concentrerons pour l'instant sur les particules. Faites vos réglages comme montré par fig-3. Strand active l'ombrage/plaquage de type strand, et Alpha permet à la texture de modifier également le canal alpha du matériau. Ce canal détermine la transparence du matériau. Voila le "truc" présenté plus haut pour que l'extrémité des cheveux se fonde progressivement dans le décor.

Passons maintenant à la "texture fading". Nous allons la choisir de type Blend (dégradé), voyez fig-4.

fig-4

Nous allons maintenant ajouter des dégradés de couleur à notre texture Blend, activez Colorband, dans l'onglet Colors. Modifiez la couleur par défaut du premier marqueur pour du blanc avec un alpha de 1.0, en cliquant  LMB Image:Template-LMB.png dessus pour le sélectionner, et en déplaçant tous les curseurs de couleur et le curseur Alpha à 1.0. Donnez de même au second marqueur une couleur noire avec un alpha de 0.0. Assurez-vous d'activer l'Alpha dans le panneau de prévisualisation Preview. Si tout se passe bien, cela devrait ressembler à fig-5.

fig-5
fig-6

OK, maintenant que nous avons rendu notre dégradé apte à nous aider à créer notre effet de fondu pour nos mèches de particules, revenez aux boutons Material (F5) et désactivez le bouton Col de l'onglet Map To (fig-6). Cela va nous permettre d'utiliser nos propres couleurs à la place de celles précédemment définies dans la texture dégradé, que nous n'utilisons que pour son canal alpha (100% opaque vers 100% transparent).

Nous allons maintenant donner à notre matériau une couleur "cheveux", allez à l'onglet Material et réglez la couleur comme montré par fig-7. Remarquez également le curseur alpha A à 0.0: cela laisse totalement le contrôle de l'alpha à la texture dégradé que nous avons réalisée en fig-4. Vous pouvez bien sûr ajuster ce réglage à votre goût, pour réduire la transparence, mais restez-en là pour l'instant.

fig-7

Si vous avez tout fait comme décrit ci-dessus et pressez F12 pour effectuer un rendu, il devrait ressembler à quelque chose comme fig-8.

Comme vous pouvez le constater, nous avons maintenant des cheveux assez convaincants, mais nous pouvons encore faire plus, avant d'ajouter d'autres particules. Blender dispose d'une autre option dans ses boutons Material, onglet Links and Pipeline, bouton Strands, appelée Tangent Shading ("ombrage tangentiel"?). Ces contrôles permettent de rendre les courbes formées par les particules plus larges/fines qu'au départ.

J'ai réglé Shape (qui détermine l'épaississement/amincissement) à -0.900 (fig-9), ce qui donne des "cheveux" très "piquants".

fig-8
fig-9
fig-10

Si vous refaites un rendu, fig-10 vous montre à quoi il devrait ressembler.

Après tout ça, vous êtes prêt à prendre beaucoup de plaisir avec les cheveux/pelages. Revenons aux réglages des particules et créons plein de fourrure.

Ajoutez plein de particules… disons 20000, si votre PC n'est pas en forme, diminuez la valeur de Disp: (onglet Particles, bloc Emit:) à environ 20%: lorsque vous jouerez avec vos particules, seules 20% d'entre elles seront affichées/calculées dans les vues 3D – mais au moment du rendu, elles seront toutes fidèles au poste.

Maintenant que nous avons beaucoup de mèches-particules, donnons-leurs du poids. Comme tout le monde le sait… la gravité, ça "va" vers le bas, donc nous modifions la composante Z: de la force à à peu près -0.02, et pour rendre ce pelage un peu crépu et aléatoire, réglons Random: vers 0.005 (bloc Velocity:). Pour améliorer encore la répartition des poils, nous pouvons émettre les particules à la fois depuis les vertices (Verts) et les faces (Faces), avec Rand (aléatoirement) et Even (uniformément) activés, comme montré par fig-11 ci-dessous.

fig-11
fig-12

Si vous refaites un nouveau rendu, cela donnera quelque chose comme dans fig-12. Si ce n'est pas le cas, il est possible que votre système d'éclairage soit très différent de celui utilisé ici. La lumière est très importante pour les particules avec un matériau de type Strand, évidemment à cause de l'ombrage (shading). Si vous devez réaliser un système d'éclairage adapté, voyez le chapitre et les tutoriels sur l'éclairage, puis refaites les étapes décrites ci-dessus. Vous pouvez obtenir des résultats fantastiques si votre éclairage est bon.

[edit] Cheveux "curvo-guidés"

Il est très facile de faire suivre aux cheveux une(des) courbe(s) ("curve"): créez-en une et faites-en une courbe guide ("curve guide"). Pour cela, faites SpaceAddCurveBezier Curve et, avec cette courbe sélectionnée, allez aux boutons Physics (F7) et jetez un œil à la liste déroulante située dans l'onglet Fields and Deflection (fig-13b):

fig-13
fig-13b

Maintenant que vous l'avez sélectionnée comme Curve Guide, vous pouvez constater que votre courbe affecte immédiatement vos mèches de particules: les cheveux prennent la forme de la courbe. Vous pouvez bien sûr donner à celle-ci la forme que vous voulez, Blender rafraîchira en temps réel les cheveux quand vous déplacez les segments de la courbe de Bézier, ou en ajoutez de nouveaux (Ctrl LeftMB , ou E pour extruder).

Je ne saurais de nouveau trop insister sur l'importance de la lumière et de l'ombrage pour obtenir des cheveux de qualité, apprenez à bien réaliser votre système d'éclairage et vous serez récompensé par une magnifique et luxuriante chevelure. Un bon moyen d'obtenir des cheveux brillants est de réduire légèrement la spécularité (Spec), et d'augmenter la dureté (Hard:) vers 70 - 100.

Autre amélioration possible pour rendre de plus beaux cheveux, activez la Z-transparence (ZTransp), boutons Material (F5), onglet Links and Pipeline. Cela rendra les mèches en tenant compte de leur transparence alpha, donnant un "anti-aliasing" encore meilleur et des résultats fantastiques… au prix du temps de rendu, bien sûr, mais ça en vaut largement la peine. Vous pouvez utiliser la transparence ray-tracée (Ray Transp, onglet Mirror Transp) et régler la profondeur (Depth:) à votre convenance – et le rendu sera quelque peu plus rapide, mais pas aussi bon qu'avec la Z-transparence.

fig-14

Belle chevelure, non? Vous voulez ses réglages? Les voici, fig-15.

fig-15

Voyons ce que nous avons fait pour obtenir ces beaux cheveux. J'ai rendu le Mesh émetteur un peu plus petit. Puis j'ai augmenté la valeur de Normal: (onglet Particle Motion, bloc Velocity:), donné un peu d'aléatoire à la durée de vie des particules (leur longueur, en l'occurrence, RLife: à 0.4). J'ai également modifié la courbe de Bézier guide – essayez, vous serez surpris par la flexibilité de ce système, et le nombre de variations possibles.

Vous en voulez encore plus? Continuez votre lecture…

[edit] Cheveux avancés

fig-16

Vous pouvez utiliser plusieurs courbes pour guider vos cheveux. Faites une copie de votre courbe et inclinez-les toutes deux légèrement, comme en fig-16.

fig-17

Revenez aux boutons Physics (section Object, F7), onglet Fields and Deflection et activez l'option Additive – pour les deux courbes. Cela permet de créer une approximation de champ de force à partir des courbes présentes – et des autres forces en présence, d'ailleurs. Ainsi, lorsque deux courbes ou plus sont proches, leurs forces se mélangent, en fonction de leurs réglages respectifs dans MinDist et Fall-off. MinDist représente la distance à la courbe jusqu'à laquelle sa force est constante et maximale, donnez-lui une faible valeur (fig-17) pour les deux courbes. Fall-off représente la "rapidité" avec laquelle cette force diminue à partir de MinDist, expérimentez avec cette valeur (commencez par de faibles valeurs). Mélangez alors les effets des deux courbes en les rapprochant de l'émetteurs des cheveux, vous pourrez en constater en temps réel le résultat, et ajuster Fall-off/MinDist/MaxDist en conséquence. Les "bonnes" valeurs dépendront de vos courbes, de leur nombre de segments, de la taille de l'émetteur, … – en d'autres termes, elles dépendront de vos propres créations.

Si vous avez tout fait correctement, vous devriez être capable de contrôler vos cheveux en les divisant en sections comme montré ci-dessous:

fig-18

Comme vous pouvez le constater dans fig-18, vous avez maintenant un contrôle complet sur la disposition de vos cheveux. Vous pouvez même faire varier la taille de chaque courbe-guide, ce qui se répercutera sur la longueur des cheveux du voisinage.

Et ce n'est pas fini, loin de là! Il n'y a quasiment aucune limite au contrôle que vous pouvez appliquer à vos cheveux dans Blender. Vous pouvez les torsader, les tricoter (tresser?), les faire tourbillonner, les agiter, enfin en faire tout ce que vous voudrez. Devenez un coiffeur de renommée mondiale – vos personnages ne seront plus jamais chauves.

Auteur (version anglaise): Tommy Helgevold (JoOngle).

[edit] Tutoriels sur les cheveux (en anglais)








Redirects to fix

  • Manual.fr/Particles → Doc:FR/Manual/Physics/Particles
  • Manual.fr/Soft Bodies → Doc:FR/Manual/Physics/Soft Bodies