[BM] W comme Wire: quelques astuces de visualisation de vos meshes

par Lapineige

publié dans 3D , Blender , Blender Month , Astuces , Python

23° journée du BlenderMonth, journée du W.

W comme... Wire !

Ah pas facile de trouver un idée pour W... Alors vous êtes en droit de vous dire: Il va pas nous parler du mode wireframe de la vue 3D quand même ?!

Et bien non !

Aujourd'hui je vais vous parler d'une option (ou plutôt de deux) pratique pour bien visualiser le maillage de vos objets: Wire.

Cette option, activable séparément pour chaque mesh, permet d'afficher son wire (le maillage en fil de fer) en dehors du mode édition.

C'est particulièrement pratique lors de la sculpture (surtout pour voir un maillage bien crade si vous utilisez dyntopo :-P) pour visualiser le maillage, ou dans la vue 3D pour éditer un objet en comparant son maillage à celui d'un autre objet.

Et il possède un option complémentaire, le draw all edges (dessiner toutes les arêtes), qui permet d'afficher également les arêtes dans des zones plates, ce que ne fait pas le wire s'il est activé seul.

Un petit comparatif:

Aucune option / Wire / Wire + Draw All Edges

Aucune option / Wire / Wire + Draw All Edges

Attention, il arrive fréquemment que l'on croit que l'objet est en mode édition, car le rendu est très similaire.

Vous pouvez trouver ces deux options dans les propriétés de votre objet.

[BM] W comme Wire: quelques astuces de visualisation de vos meshes

Cette option est bien pratique, mais s'il on veut l'activer pour tous les objets, c'est assez lourd et long de sélectionner un par un les objets, d'activer les options, etc.

Et bien j'ai fait un petit script python extrêmement simple, qui active ces deux options pour tout les objets de votre scène, ou les désactive si elles sont déjà activées:

import bpy

for obj in bpy.data.objects:
    if obj.type == 'MESH':
        obj.show_wire = not obj.show_wire
        obj.show_all_edges = not obj.show_all_edges

Et voici une autre version qui ne s'applique qu'à la sélection:

import bpy

for obj in bpy.context.selected_objects:
    if obj.type == 'MESH':
        obj.show_wire = not obj.show_wire
        obj.show_all_edges = not obj.show_all_edges

NB: Pour utiliser ce code, copiez-le dans l'éditeur de texte de Blender, et cliquez sur Run Script (raccourci [Alt]+[P]).

Et si vous souhaitez que j'en fasse un add-on, pour ne pas avoir à copier le script à chaque nouvelle session de Blender, et pour pouvoir le lancer sans recourir à l'éditeur de texte, faites-moi signe ;-)

A demain pour une nouvelle lettre !

Commenter cet article