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.

Subdivision de Surface

Mode: N’importe quel mode

Panneau: Modifiers (contexte Editing, F9)

Raccourci clavier: ⇧ ShiftO ((dés)activer Subsurf en mode Object)

Description

La “Subdivision de surface” est une méthode pour subdiviser les faces d’un mesh, afin d’adoucir celui-ci. Cela permet de modeler des surfaces complexes et “lisses” avec peu de vertices. Vous obtenez ainsi un mesh haute résolution ayant un aspect “doux”, organique, sans avoir à gérer beaucoup (trop) de données (vertices, UV-mapping, …). Blender peut calculer “à la volée” une subdivision de surface (Subsurf) sur n’importe quel objet mesh normal, que ce soit au modelage ou au rendu, en utilisant un algorithme basique, ou la méthode plus avancée de “Catmull-Clark”.

Options

Panneau Modifiers.

Subsurf est maintenant un modificateur. Pour l’ajouter à un mesh, pressez Add Modifier et choisissez Subsurf dans la liste.

Subsurf Type
Ce menu vous permet de choisir l’algorithme de subdivision de surface :
  • Simple Subdiv. – Se contente de subdiviser les surfaces, sans aucun adoucissement (équivalent à Levels fois WSubdivide, en mode Edit). Rarement utile !
  • Catmull-Clark – Option par défaut, subdivise les surfaces en les adoucissant.
Levels
Définit la profondeur de la subdivision, pour l’affichage dans Blender.
Render Levels
Définit la profondeur de la subdivision, pour le rendu.
Note
Ces deux réglages vous permettent d’avoir à la fois une approximation rapide et légère dans les fenêtres 3D de Blender, et une haute résolution pour les rendus.


Optimal Draw
Cette option vous permet de n’afficher que les lignes correspondant aux arêtes du mesh d’origine en mode “fil de fer”, pour clarifier la vue.
Subsurf UV
Quand cette option est activée, les cartes UV seront également subdivisées (c-à-d que Blender ajoutera des coordonnées “virtuelles” pour toutes les sous-faces créées par ce modificateur). J’imagine que ces coordonnées sont simplement interpolées à partir de celles de vertices réels – mais je n’en suis pas sûr, alors n’hésitez pas à corriger si vous en savez plus !

Pour voir et éditer directement les résultats de la subdivision (“lignes iso”, “isolines” en anglais) en mode Edit, vous devez activer le mode Editing Cage en cliquant sur le petit disque gris de l’en-tête du panneau du modificateur : cela affiche les vertices directement à leurs positions calculées par le modificateur, au lieu de celles d’origine.

Astuces

Vous pouvez utiliser ⇧ ShiftO, si vous êtes en mode Object, pour (dés)activer le modificateur Subsurf en mode Object et au rendu. Pour désactiver uniquement en mode Object (pour améliorer la fluidité, par ex.), faites ⇧ ShiftAltO. Et vous pouvez contrôler la profondeur de la subdivision via Ctrl1 à Ctrl[4, mais cela n’affecte que Levels (c-à-d les vues 3D, et pas le rendu), et de toute façon, ça ne semble pas marcher avec les claviers français…

Un mesh subdivisé et une surface NURBS partagent beaucoup de points communs, comme leur utilisation d’un “mesh” grossier, basse définition, pour définir une surface lissée en haute définition, mais ils ont aussi de notables différences :

  • Les NURBS vous permettent un meilleur contrôle de la surface, car vous pouvez pondérer indépendamment chacun des points de contrôle. Vous n’avez pas d’équivalent avec les vertices d’un mesh subdivisé (si ce n’est les “edge creases”, voyez ci-dessous).
  • Les mesh subdivisés sont bien plus souples à la modélisation. Puisque la Subsurf est une opération mathématique appliquée à un mesh, vous pouvez utiliser toute la gamme des outils et techniques de modélisation sur les meshes décrits dans le chapitre sur la modélisation. Il y en a bien plus de disponibles, tous bien plus souples, pour les meshes que pour les NURBS.

Puisque les calculs de Subsurf sont faits en temps réel, que ce soit pendant la modélisation ou au rendu, et qu’ils sont assez exigeants, c’est généralement une bonne pratique que de garder le niveau de subdivision dans le vues 3D (Levels) relativement bas (mais pas à zéro), et de réserver les fortes valeurs pour le rendu (Render Levels).

Exemples

(Suzanne subdivisée) montre une série d’images illustrant différentes combinaisons d’options Subsurf sur un mesh “Suzanne”.

Suzanne subdivisée.

(Subdivision de simples faces carrées et triangulaires) montre les niveaux de Subsurf de 0, 1, 2 et 3 appliqués à deux types de faces : quadrangulaire et triangulaire. Cette subdivision est effectuée, sur un mesh, pour toutes ses faces quadrangulaires et triangulaires.

Il est ici évident que le nombre de faces produites par la subdivision de niveau n est :

  • Pour un quadrangle : 4n.
  • Pour un triangle : 3 × 4n-1.

Cette augmentation massive du nombre de faces (et de vertices) cause un ralentissement aussi bien à l’édition qu’au rendu, et souligne l’intérêt d’un plus faible niveau de Subsurf pour l’édition que pour le rendu.

Subdivision de simples faces carrées et triangulaires.

L’outil Subsurf vous permet de créer de très bons modèles “organiques”, mais rappelez-vous qu’un mesh “régulier” (“regular mesh”), avec des quadrangles, donne de meilleurs résultats qu’un mesh avec de triangles. (Un mesh de gargouille “brut” (à gauche) et sa version subdivisée de niveau 2 (à droite)) et (Vue Solid (à gauche) et rendu final (à droite) de la gargouille) vous montrent un exemple de ce que permet la subdivision de surface dans Blender.

Un mesh de gargouille “brut” (à gauche) et sa version subdivisée de niveau 2 (à droite).
Vue Solid (à gauche) et rendu final (à droite) de la gargouille.


Limitations & Contournements

Le système de subdivision de Blender est basé sur l’algorithme de “Catmull-Clark”. Il produit des meshes joliment lissés, mais toutes les faces ainsi créées ont leur normale orientée comme celle de leur face “d’origine”.

Vue de côté de meshes subdivisés, avec des normales incohérentes (en haut) et cohérentes (en bas).

Cela n’est pas un problème pour la forme elle-même, comme (Vue de côté de meshes subdivisés, avec des normales incohérentes (en haut) et cohérentes (en bas)) vous le démontre, mais ce n’est pas le cas au shading (ombrage), où le changement brutal d’orientation des normales produit de disgracieuses lignes noires (Vue Solid de meshes subdivisés, avec des normales incohérentes (en haut) et cohérentes (en bas)).

Vue Solid de meshes subdivisés, avec des normales incohérentes (en haut) et cohérentes (en bas).

Utilisez CtrlN (en mode Edit, avec tous les vertices sélectionnés) pour recalculer les normales vers l’extérieur.

Dans ces images, les normales des faces sont affichées en bleu clair. Vous pouvez (dés)activer cet affichage grâce à l’option Draw Normals du contexte Editing (F9), panneau Mesh Tools More.

Notez que Blender ne peut (re)calculer les normales correctement si le mesh est “non-manifold” (NdT : “manifold” = “collecteur”, “tubulure” (d’admission, d’échappement) – un tuyau a toujours un intérieur et un extérieur bien défini ! Je garderai le terme anglais “manifold”.). Un mesh “non-manifold” est un mesh pour lequel il n’est pas possible de définir (calculer) sans équivoque un “extérieur” et un “intérieur”. Pour Blender, c’est un mesh où il y a des arêtes appartenant à plus de deux faces.

Un mesh “non-manifold”.

(Un mesh “non-manifold) est un exemple très simple de mesh “non-manifold”. En règle général, vous obtiendrez un tel mesh en lui rajoutant des “cloisons” (faces) internes.

Un mesh “non-manifold” n’est pas un problème pour les meshes conventionnels, mais il peut donner des artefacts fort laids à la subdivision de surface. De plus, il n’est pas possible de le “décimer”, il vaut donc mieux éviter autant que possible ce type de meshes.

Utilisez les deux points suivants pour savoir si un mesh est “non-manifold” :

  • Le re-calcul des normales laisse subsister des lignes noires.
  • Le modificateur Decimate ne fonctionne pas, affichant un message indiquant que le mesh est “non-manifold”.


Plis pondérés pour la subdivision de surfaces

Mode: Mode Edit (mesh)

Panneau: Vue 3D → Transform Properties (N)

Raccourci clavier: ⇧ ShiftE

Menu: Mesh » Edges » Crease Subsurf

Description

Les “plis pondérés” (“weighted creases”) sur les arêtes pour la subdivision de surfaces vous permettent de modifier la manière dont Subsurf subdivise le mesh, pour donner aux arêtes plus ou moins de dureté.

Options

La pondération de pli des arêtes sélectionnées peut être modifiée directement en tapant ⇧ ShiftE puis en déplaçant la souris (écartez-la de l’arête pour augmenter son poids, et vice-versa), ou via le champ Crease (ou Median Crease – “pli moyen” – si plusieurs arêtes sont sélectionnées), dans le panneau Transform Properties (N). Une plus forte valeur de Crease donne une arête plus “forte” et “résistante” à l’adoucissement de la subdivision de surfaces. Une autre façon de se le rappeler est que le poids correspond à la dureté de l’arête. Donc, les arêtes avec un poids plus “lourd” seront moins affectées par la subsurf. Rappelez-vous qu’un mesh subdivisé est le produit de toutes ses arêtes et de leurs liaisons, donc pour rendre les arêtes d’une zone “correctement” plus dures, vous devez aussi modifier le poids des arêtes voisines (qui feront alors la transition entre la zone adoucie et la zone “dure”).

Vous pouvez obtenir une indication de la valeur de Crease pour les arêtes en activant Draw Creases. Voyez (Panneau Mesh Tools More).

Panneau Transform Properties.
Panneau Mesh Tools More.


Exemples

La dureté du pli d’une arête est indiquée par son épaisseur : une dureté de 1.0 donne une arête plus épaisse que pour une Crease de 0.0, dans les vues 3D.

Crease : 0.0.
Crease : 1.0.