From BlenderWiki

Jump to: navigation, search
Blender3D FreeTip.gif
IMPORTANT! Do not update this page!
We have moved the Blender User Manual to a new location. Please do not update this page, as it will be locked soon.

Traduction effectuée d'après cette version de la page originale.

NdT : Nombre des liens de cette page renvoient aux références ou à des tutoriels, pour lesquels la traduction en français est au mieux balbutiante. J’ai donc choisi de conserver les liens vers les versions anglaises pour l’instant, en les signalant par “(en)”.

Courbes

Les courbes (“curves”) et les surfaces sont des objets, tout comme les meshes, à ceci près qu’ils sont exprimés par des fonctions mathématiques plutôt que par des séries de points (vertices).

Blender implémente les courbes de Bézier et les courbes et surfaces NURBS (pour “Non Uniform Rational B-Splines”, “B-Splines rationnelles non-uniformes”). Toutes deux, bien que suivant des lois mathématiques différentes, sont définies en termes d’un ensemble de “vertices de contrôle” qui définissent un “polygone de contrôle”. La manière dont les courbes et surface sont interpolées peut sembler similaire à la subdivision de surfaces Catmull-Clark, à première vue. Les courbes sont interpolées, alors que les surfaces sont attirées (“attracted”).

Comparées aux meshes, les courbes et surfaces ont des avantages et des inconvénients. Les courbes étant définies par moins de données, elles produisent de beaux résultats en utilisant moins de mémoire pendant la modélisation, mais en demandent plus au cours du rendu.

Certaines techniques de modélisation, telle que l’extrusion d’un profil le long d’un chemin (path) donné, ne sont possibles qu’avec les courbes. Mais le contrôle très fin possible sur chaque sommet (vertex) d’un mesh n’a pas d’équivalent avec les courbes.

Parfois les courbes et les surfaces sont plus avantageuses que les meshes, parfois les meshes sont plus utiles. Si vous avez lu les pages sur la modélisation basique et avancée des meshes, et après lecture de cette section, vous serez à même de déterminer quand utiliser l’un ou l’autre.

Miniature du logo.

Travailler avec les courbes dans Blender est assez simple, et étonnamment, il y a très peu de raccourcis-clavier dédiés à leur création. C’est ce que vous faites avec ces courbes qui fait vraiment la différence. Une courbe, en soit, n’est qu’une courbe… Mais une courbe appliquée (combinée) à une autre courbe permet de générer des objets très complexes.

Quand vous aurez fini d’étudier les courbes de Bézier et les courbes NURBS, vous pourrez trouver des exemples plus poussés d’application de ces courbes dans la section des tutoriels (en) sur la modélisation des objets complexes.

Vous y trouverez un exemple (en) qui vous explique comment créer un intéressant logo en forme d’oiseau, (Miniature du logo). Ce tutoriel couvre la plupart des aspects du travail avec les courbes de Bézier, entre autre : l’ajout de courbes, l’utilisation d’une image de fond comme guide, et le “biseautage” de la courbe finale.

Il y a également des tutoriels illustrant les techniques de skinning (en) et de déformation de courbe (en).

Bézier

Les courbes de Bézier sont les plus utilisées pour concevoir lettres (caractères, fontes) et logos. Elles sont également largement répandues dans l’animation, à la fois comme chemins pour déplacer des objets, et comme “courbes Ipo” pour modifier les propriétés des objets en fonction du temps.

Trois panneaux sont dédiés au travail et à la modification des courbes : Curve and Surface (en), Curve Tools (en) et Curve Tools1 (en). Chaque panneau contient des boutons qui modifient les caractéristiques des courbes.

Exemple de courbe.

(Exemple de courbe) est la courbe la plus basique que vous puissiez créer. Elle est composée de deux “points de contrôle” (ou “vertices de contrôle”), libellés “C”, de la courbe “B”, des “poignées” “H” et du centre de l’objet “O”.

NdT
Le terme de “poignée”, “handle” en anglais, est souvent utilisé abusivement pour l’ensemble du “point de contrôle”. Par la suite, j’utiliserai ces termes dans leur sens strict, pour éviter toute confusion.


Sélectionner le point de contrôle sélectionne aussi ses handles, ce qui vous permet de le déplacer dans son entier. Sélectionner une ou plusieurs poignées vous permet, par leur déplacement, de modifier la forme de la courbe.

Pour créer une courbe, utilisez le menu Add → Curve → Bezier Curve de la boîte à outils (en), (Exemple de courbe). Par défaut, la courbe ne possède que deux dimensions. Par exemple, si vous créez la courbe en vue de dessus, sa forme ne peut être modifiée que dans le plan XY. Vous pouvez lui appliquer toutes les transformations, mais vous ne pouvez pas modifier sa forme dans les trois dimensions.

Courbe 3D — un chemin.

Pour travailler la courbe en 3D, vous devez activer la propriété 3D de cette courbe via le bouton 3D du panneau Curve and Surface (en). Visuellement, vous pouvez voir qu’une courbe est en 3D lorsqu’elle possède des “traverses de chemin de fer”. (Courbe 3D – un chemin) montre une courbe 3D, et (Exemple de courbe), une courbe 2D.

Un handle est toujours tangent à la courbe. La “pente” (“steepness”) de la courbe est contrôlée par la longueur de cette poignée. Plus elle est longue, plus la courbe sera “pentue” (c’est à dire plus la courbe viendra “longer” le handle).

Il y a quatre types de poignées (Types de poignées pour les courbes de Bézier) :

  • Free handle (“poignée libre”, en noir). Ces poignées sont autonomes. Raccourci : H (permute entre Free et Aligned).
  • Aligned handle (“poignée alignée”, en mauve). Ces poignées sont alignées (elles forment une ligne droite passant par le centre de leur point de contrôle). Raccourci : H (permute entre Free et Aligned).
  • Vector handle (“poignée vecteur”, en vert). Les deux poignées sont toujours “pointées” vers la poignée précédente ou suivante. Raccourci : V.
  • Auto handle (“poignée automatique”, en jaune). Les longueur et direction de chaque poignée sont réglées automatiquement par Blender pour assurer le résultat le plus lisse possible. Raccourci : ⇧ ShiftH.
Types de poignées pour les courbes de Bézier.

Les poignées peuvent être déplacées (grabbed), tournées et redimensionnées, exactement comme les vertices des meshes. Dès qu’un handle est déplacé, le type de poignée de son point de contrôle est modifié en conséquence :

  • Les poignées automatique deviennent alignées ;
  • Les poignées vecteur deviennent libres.


Résolution de la courbe

Bien que la courbe de Bézier soit un objet mathématique continu, elle doit néanmoins être représentée de manière discrète (par un ensemble de petits segments) au moment du rendu. Cela est contrôlé par une propriété de résolution, qui définit le nombre de points intermédiaires calculés (interpolés) entre chaque paire de points de contrôle.

Exemple de résolutions.

Vous pouvez régler une résolution particulière pour chaque courbe de Bézier en ajustant son champ DefResolU (en) (la valeur par défaut est 6). (Exemple de résolutions) montre une même courbe (superposée à l’aide de Gimp) dans deux résolutions différentes. La courbe gris clair a un résolution de 4, son aspect est assez linéaire, anguleux. La courbe noire a une résolution de 12, son aspect est très lisse. Notez que les hautes résolutions peuvent avoir meilleur aspect, mais qu’elles risquent de ralentir l’affichage dans les vues 3D s’il y a beaucoup de courbes (et/ou si celles-ci ont de nombreux points de contrôle).

Objets “bevel” et “taper”

Une courbe 3D modifiée par des courbes bevel et taper.

Un objet bevel (~“biseau”), appliqué à une courbe, forme une “peau” (skin) pour celle-ci. Là où la courbe est le chemin, la “longueur” d’un tuyau, l’objet bevel, extrudé le long de ce chemin, définira la forme, la section extérieure de l’objet, comme un cordon électrique ou un tuyau d’arrosage. Normalement, le bevel est un simple cercle, il transforme donc la courbe en tube ou en canette de soda. La forme bevel doit être bi-dimensionnel, et elle peut être rectangulaire pour simuler du fer forgé ou de l’acier plat, ovale (avec un pli) pour un fil électrique, en étoile pour une illustration de “shooting star” (“étoile filante”)… et ainsi de suite, pour tout ce qui peut être obtenu par extrusion.

Un objet taper (~“profil”) est une courbe ouverte avec des points de contrôle au-dessus de son centre d’objet. Appliqué à une courbe “biseautée” (bevelled), elle modifie le diamètre de l’objet bevel le long de la courbe, comme un python qui aurait avalé un rat, un tuyau déformé par la pression, ou encore une vigne en pleine croissance.

Pour ajuster la taille de l’effet bevel pour chaque “segment” de courbe, utilisez l’option Set Radius (“régler le rayon”) accessible via W-4. La valeur par défaut est de 1.0.

Attention : aucun effet de bevel si ce paramètre est à 0.0.

NURBS

Les courbes NURBS sont définies comme polynômes rationnels, et sont plus générales, à proprement parler, que les B-Splines conventionnelles et que les courbes de Bézier, en ce qu’elles peuvent suivre n’importe quel contour. Par exemple, un cercle de Bézier est une approximation polynomiale de cercle, et cette approximation est visible, alors qu’un cercle NURBS est exactement un cercle.

Pour en tirer pleinement profit, les courbes NURBS demandent une compréhension minimum de leurs principes sous-jacents. Elles possèdent un large éventail de variables, qui vous permettent de créer des formes mathématiquement pures. Cependant, avant de pouvoir les utiliser, il vous faut étudier un peu la théorie des ces courbes.

“Uniform-Endpoints”

Commençons par les “nœuds” (“knots”). Les courbes NURBS ont un vecteur nodal (“knot vector”), un ensemble de nombres qui spécifient la définition paramétrique de la courbe (c-à-d qu’ils décrivent le niveau d’influence de chacun des points de contrôle). Les courbes NURBS possèdent en effet des points de contrôle, tout comme les courbes de Bézier, et chacun d’eux affecte une portion de la courbe à leur voisinage. Ces points de contrôle apparaissent comme des vertices mauves.

Courbe Uniform par défaut.

(Courbe Uniform par défaut) est la courbe NURBS créée par défaut en utilisant l’entrée NURBS Curve du menu Add (en) de la boite à outils, et c’est un exemple de “courbe uniforme” (“Uniform curve”). La courbe est dessinée en noir, libellée “C”, et ses points de contrôle sont en mauve (l’un d’eux est libellé “P”).

Vous ne pouvez pas manipuler le “vecteur nodal” directement, mais vous pouvez le configurer à l’aide de deux pré-réglages : Uniform and Endpoint.

Le bouton Uniform (en) produit une division uniforme pour une courbe fermée, mais lorsqu’il est appliqué à une courbe ouverte, vous obtenez des extrémités “libres” qui sont difficiles à localiser précisément.

Courbe Endpoint.

Le bouton Endpoint (en) définit le vecteur nodal de telle sorte que les premier et dernier vertices correspondent toujours aux extrémités de la courbe, ce qui rend celles-ci beaucoup plus faciles à placer. (Courbe Endpoint) est un exemple de bouton Endpoint appliqué à la (Courbe Uniform par défaut). Vous pouvez noter que la courbe a été étirée jusqu’aux points “A” et “B”.

Ordre

Le champ Order (en) est la “profondeur” ou degré de la courbe (c-à-d que vous spécifiez la “part” que prennent les points de contrôle dans le calcul de la forme de la courbe).

Un Order de 1 correspond à un point, et n’est donc pas une valeur de profondeur valide. Un Order de 2 correspond à une ligne (Courbe d’ordre 2), un Order de 3 spécifie un polynôme quadratique (Courbe d’ordre 3), (Courbe d’ordre 4) un polynôme cubique, et ainsi de suite. Les valeurs valides vont de 2 à 6. Notez que plus l’ordre augmente et plus la courbe s’éloigne de ses points de contrôle.

Courbe d’ordre 2.
Courbe d’ordre 3.
Courbe d’ordre 4.

Si votre courbe a six points de contrôle ou plus, l’Order ne peut pas être supérieur à 6. 6 est l’ordre le plus élevé possible. Si vous avez moins de six points de contrôle, alors l’ordre le plus élevé est limitée par leur nombre. Par exemple, si votre courbe possède cinq points de contrôle, la valeur d’Order ne pourra dépasser 5.

Utilisez toujours, si possible, un Order de 5 pour les chemins (“curve paths”), afin d’obtenir un déplacement fluide en toute circonstance, sans à-coups désagréables dans le mouvement. Par exemple, si vous faites circuler un cube le long d’un chemin NURBS, disons d’ordre 2, le cube donnera l’impression de se déplacer brutalement ou de façon saccadée.

Note
Mathématiquement parlant, Order définit l’ordre des numérateur et dénominateur du polynôme rationnel définissant la courbe NURBS.


Poids

Les courbes NURBS sont pondérées par un “poids” (Weight (en)) assigné à chaque point de contrôle, qui définit son attraction, son influence, sur la courbe. Un peu comme si chaque point de contrôle possédait un bras qui pouvait tirer, ramener la courbe vers lui. Plus grand est ce poids, plus le point de contrôle attire la courbe, comme le montre (Poids de 5) et (Poids de 20). Weight peut prendre des valeurs comprises entre 0.1 et 100.0.

Poids de 5.
Poids de 20.

Le poids le plus élevé (20) attire la courbe vers le point de contrôle “C”. Chaque point de contrôle peut avoir son propre poids. À mesure que le poids d’un point de contrôle augmente, la courbe s’en rapproche. Si le poids est suffisamment important, la courbe suivra presque les points de contrôle, comme le montre (Poids de 100).

Poids de 100.

Les points de contrôle peuvent entrer en concurrence les uns avec les autres. Par exemple, le point de contrôle possédant le poids le plus élevé va tirer la courbe à lui, et par conséquent l’éloigner des autres points. Si tous les points de contrôle ont le même poids, ceux-ci s’annulent, comme s’ils n'existaient pas.

Dans l’illustration (Poids de 100), les deux points de contrôle supérieurs (“A” et “B”) ont un poids défini à 100. Les points de contrôle opposés ont un Weight à 1.0'. Vous pouvez constater que la courbe est tirée vers les points “A” et “B”. Et avec un poids tellement élevé, la courbe s’aligne presque parfaitement sur les points de contrôle.

Il y a dans le panneau Curve Tools (en) quatre pré-réglages de poids, pour certains types de dispositions de points de contrôle. Certains génèrent des valeurs Weight destinées aux points de contrôle formant un cercle.

Pour connaître la valeur de poids d’un point de contrôle, sélectionnez-le, ouvrez le panneau Transform Properties (en) avec la touche N, et lisez le champ Vertex W. Le champ Weight ne concerne pas ce poids-là !

Résolution

Comme pour les courbes de Bézier, la résolution des courbes NURBS peut être contrôlée depuis le panneau Curve Tools (en).

Ouvrir, fermer, effacer, réunir, “bevel”, “taper”

Comme pour les courbes de Bézier, ouvrir, fermer, effacer et réunir des courbes NURBS s’opère en utilisant les mêmes raccourcis clavier et outils de courbe, avec les même règles. Voyez la section sur les courbes de Bézier ci-dessus, ainsi que la page suivante.