File size: 5,295 Bytes
ee0be02
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
.. _bpy.types.SkinModifier:

*************
Skin Modifier
*************

The *Skin* modifier uses vertices and edges to create a skinned surface,
using a per-vertex radius to better define the shape.
The output is mostly quads, although some triangles will appear around intersections.

It is a quick way to generate base meshes for sculpting and/or smooth organic shapes with
arbitrary topology.

.. note::

   Faces in the original geometry are ignored.


Options
=======

.. figure:: /images/modeling_modifiers_generate_skin_panel.png
   :align: right

   The Skin modifier.

Branch Smoothing
   A branch point is a vertex with three or more connected edges.
   These areas tend to produce more complicated topology, some of which may overlap.
   This setting relaxes the surface around these points,
   with the side effect of shrinking it.

Smooth Shading
   Output faces with smooth shading rather than flat shading.
   The smooth/flat shading of the input geometry is not preserved.

Symmetry Axes X/Y/Z
   These checkboxes are used to keep the output topology symmetrical in their respective axes.
   In other words, using it avoids merging triangles across an axis unless the triangles form a symmetric quad.

   .. note::

      They do not add geometry flipped across an axis.
      For that, the :doc:`Mirror </modeling/modifiers/generate/mirror>` modifier should be used,
      typically placed above the *Skin* one.


Add Skin Data
-------------

This modifier uses a :ref:`custom set of data <modeling-modifiers-generate-skin-data>` in the mesh,
that is generated automatically when you add the modifier the first time.

However, you may remove that data, or loose it some way or the other. That operator will generate it again.


Selected Vertices
-----------------

Those operators modify the original mesh 'control data' for the *Skin* modifier. They help manage its behavior.

Mark/Clear Loose
   By default, a branch vertex (vertex with three or more connected edges)
   will generate extra edge loops along adjacent edges in order to keep the output tight.
   Branches can be made loose by clicking *Mark Loose*, which will allow the output to stretch between
   all adjacent vertices. This can be disabled again by clicking *Clear Loose*.
Mark Root
   Marking a vertex as root causes that vertex to be used for calculating rotations for connected limbs.
   Root vertices also affect the armature output, they will be used as the origin for the root bones.

   ..
      Not true anymore:
      Roots are shown in the *3D View* with a red dashed circle around the vertex.

   Each set of connected vertices should have one root node
   (one is selected by default if you do not assign any manually).
   *Mark Root* enforces the one-root per set rule, so it is not necessary to manually unmark roots.

Equalize Radii
   Makes the skin radii of selected vertices equal on each axis.


Create Armature
---------------

Create an armature on top of the object. Each edge becomes a bone.

.. note::

   If the root vertex has more than one adjacent edge,
   an extra bone will be created to serve as the root.

This tool does the following:

#. A new armature object is added with bones matching the input mesh.
   The active selection is switched to the new armature.
#. Weight groups are added to the input mesh. The *Skin* modifier propagates these weights to the output as well.
#. An :doc:`Armature </modeling/modifiers/deform/armature>` modifier is added directly below the *Skin* one.
   Note that the *Armature* modifier is being applied after
   the *Skin* one because it should only deform the output,
   whereas if it were above, it might change the resulting topology.


.. _modeling-modifiers-generate-skin-data:

Skin Mesh Data
==============

That modifier needs a set of specific data in the original mesh to work properly.
This data allows to define the root vertices of each tree, which ones are loose (see `Selected Vertices`_ above),
and the size (radius) of the skin at each vertex.


Skin Size
---------

The radii of input vertices can be individually scaled in Edit Mode by pressing :kbd:`Ctrl-A`.
Non-uniform scaling of the X and Y axes is accessible by the usual axis locking with :kbd:`X` or :kbd:`Y`.
The radius can also be adjusted in the *Transform* panel of the Sidebar, in the 3D View.


Examples
========

.. _fig-modifier-skin-creature:

.. figure:: /images/modeling_modifiers_generate_skin_example.png

   Simple creature, made with only the Skin and Subdivision Surface modifiers.


External Links
==============

- `Skin Modifier Development at Blender Nation
  <http://www.blendernation.com/2011/03/11/skin-modifier-development/>`__ --
  An early demonstration of the Skin Modifier by Nicholas Bishop (March 2011).
- Ji, Zhongping; Liu, Ligang; Wang, Yigang (2010).
  `B-Mesh: A Fast Modeling System for Base Meshes of 3D Articulated Shapes
  <http://www.math.zju.edu.cn/ligangliu/CAGD/Projects/BMesh/>`__,
  Computer Graphics Forum 29(7), pp. 2169-2178. -- The work this modifier is based on
  (`direct link to PDF <http://www.math.zju.edu.cn/ligangliu/cagd/projects/bmesh/paper/bmesh.pdf>`__).
- `Related thread on Blender artists
  <http://blenderartists.org/forum/showthread.php?209551-B-mesh-modeling-tools-papers-better-than-zsfere>`__.