You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/en-us/art/accessories/automatic-skinning-transfer.md
+56-6Lines changed: 56 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -29,6 +29,56 @@ When there isn't any skinning data on the accessory, or if you choose to overrid
29
29
30
30
While Automatic Skinning Transfer often works better than manual skinning, there are some best practices to reduce unexpected behavior with the accessory skinning. Like all modeling processes, constantly test your layered clothing and facial accessories on different avatar types to achieve the results you want.
31
31
32
+
### Special skinning transfer joints
33
+
34
+
Automatic skinning transfer may not work well for certain detailed accessory types, like eyelashes. To get a more controlled skinning transfer result, you have the option to skin accessory geometry to one of two specially named joints: `RBX_Leader` and `RBX_Follower`.
35
+
36
+
<Alertseverity = 'info'>
37
+
It's best to create these joints/bones directly beneath the Root joint in your hierarchy for simplicity and clarity. These joints/bones won't be detected as a part of your character model's R15 rig on import.
38
+
</Alert>
39
+
40
+
Any vertices skinned to `RBX_Leader` will undergo the same transfer process that exists today. However, any vertices skinned to `RBX_Follower` will actually transfer based on their nearest leader vertex. This allows for better results in situations like an eyelash where the tip of an eyelash strand would normally transfer to somewhere on the brow area, rather than follow the base of the eyelash strand when moving.
41
+
42
+
For eyelashes, good candidates for RBX_Leader are the ones that are intended to sit right on the eyelid of the character. The remaining vertices can be skinned to RBX_Follower.
43
+
44
+
<GridContainernumColumns="2">
45
+
<figure>
46
+
<imgalt="Screenshot of vertices assigned as leader."src="../../assets/avatar/dynamic-heads/creating-face-accessories/Vertices-Group-Leader.png" />
47
+
<figcaption>Vertices of an eyelash assigned to a RBX_Leader bone vertex group.</figcaption>
48
+
</figure>
49
+
<figure>
50
+
<imgalt="Screenshot of vertices assigned as follower."src="../../assets/avatar/dynamic-heads/creating-face-accessories/Vertices-Group-Follower.png" />
51
+
<figcaption>Vertices of an eyelash assigned to a RBX_Follower bone vertex group.</figcaption>
52
+
</figure>
53
+
</GridContainer>
54
+
55
+
In Blender, user the **Object Data Properties** > **Vertex Groups** to manage and view your vertex group assignments.
56
+
57
+
<imgalt="Screenshot of properties panel with vertex group assignments"src="../../assets/avatar/dynamic-heads/creating-face-accessories/Vertices-Group-Assign.png" />
58
+
59
+
<Alertseverity = 'info'>
60
+
In Blender, vertex groups automatically created after you make a bone object. This allows you to quickly set vertices to a specific bone vertex group.
<figcaption>Eyelashes without transfer joints. Notice how the upper eyelashes near the bridge of the nose doesn't follow the eyelids as expected.</figcaption>
<figcaption>Eyelashes with transfer joints. All eyelashes follow the leading vertices closest to the eyes.</figcaption>
71
+
</figure>
72
+
</GridContainer>
73
+
74
+
No additional work is needed in Studio to support this method. If your accessory is set to `Class.WrapLayer.AutoSkin.EnabledOverride` and these joints exist with vertices assigned to them, then this skinning transfer variation will be in effect.
75
+
76
+
If you wish to upload an accessory using these joints as a UGC item, there are a few rules to be aware of:
77
+
78
+
- Vertices cannot be partially weighted to these joints. If you want to use them you must skin the vertex to the joint with a weight of `1.0`.
79
+
- If these joints are present in the mesh, then the accessory must be set to `WrapLayerAutoSkin.EnabledOverride`.
80
+
- Body part meshes containing these joints will be rejected by validation.
81
+
32
82
### Modify character cages
33
83
34
84
<Alertseverity = 'error'>
@@ -66,16 +116,16 @@ By modifying different regions of the character's cage, you can ensure that your
66
116
During the asset creation process, it's important to verify what skinning solution works best for your design by testing your individual assets on multiple models and animations. You can always skin your assets manually and choose to use the Automatic Skinning Transfer later.
67
117
</Alert>
68
118
69
-
### Different accessory types
119
+
### Different accessory categories
70
120
71
-
Automatic skinning transfer may not work well for certain accessory types, such as eyelash, hat, and glasses-type accessories. For example, eyelash-type accessories might have issues due to the typical complexity of the character's geometry around the eye region, and hat or glasses-type accessories might introduce deformation in areas that should typically be rigid. In general, those types of accessories should remain rigid, and you shouldn't associate any skinning data with them.
121
+
Automatic skinning transfer may not work well for certain accessory categories, such as hat, and glasses-type accessories. For example, hat or glasses accessories might introduce deformation in areas that should typically be rigid. In general, those accessories should remain rigid, and you shouldn't associate any skinning data with them.
72
122
73
-
For a summary of suggested `Class.WrapLayer.AutoSkin` parameters for different accessory types, see the following table:
123
+
For a summary of suggested `Class.WrapLayer.AutoSkin` parameters for different accessory categories, see the following table:
74
124
75
125
<table>
76
126
<thead>
77
127
<tr>
78
-
<th>Accessory Type</th>
128
+
<th>Accessory Category</th>
79
129
<th>Suggested Parameter</th>
80
130
</tr>
81
131
</thead>
@@ -90,11 +140,11 @@ For a summary of suggested `Class.WrapLayer.AutoSkin` parameters for different a
0 commit comments