Select a layer and open Pin to attach it to a model. The available anchors depend on the parent model and the child layer.
Pinning an Object to a Model
The Pin feature attaches multimedia objects to character models so they track avatar motion — such as glasses on a face, props held in hand, or floating nameplates. Once pinned, the object's transform coordinates represent relative offsets from the anchor rather than the global stage origin. Live2D models can be attached to other Live2D models using this same mechanism, functioning as Live2D Items.
Objects can attach only to models sharing the same rendering space: 2D objects attach to Live2D models, while 3D objects attach to VRM models. This constraint stems from coordinate systems and anchor hierarchies rather than renderer limitations; cross-space attachments lack a common depth buffer and transform matrix.
There are two ways to choose an anchor:
- Select it from the Anchor dropdown list.
- Click Pick on Stage, then click the target surface in the viewport. The button reads Cancel Pick while you pick.
For both model types, the list includes a Model Root option for the entire model's coordinate space, and a search bar for filtering through hundreds of bones or ArtMesh nodes.
Hovering over an anchor in the list or hovering during stage picking highlights the target mesh or bone with alternating green and white contours. Stream Mode hides these debug highlights to prevent them from appearing in broadcast feeds.
2D Pins
Applies toLive2DWhen picking on stage, the selected anchor corresponds to a specific mesh triangle. Persona records the target ArtMesh ID and exact barycentric coordinates, ensuring attached items deform naturally with mesh movement rather than floating rigidly above it (matching VTube Studio item behavior). The dropdown lists every ArtMesh in the model for precise naming; for quick placement on a visible surface, clicking directly on stage is faster.
| Control | Description |
|---|---|
| Follow Rotation | Rotates the object along with the anchor surface normal. When disabled, the object maintains its own upright orientation |
| Multiplier | Amplifies how much head rotation affects object rotation, ranging from −2 to 2 |
| Parallax X | Additional horizontal pixel shift at full head rotation, ranging from −300 to 300 |
| Parallax Y | Additional vertical pixel shift at full head nod, ranging from −300 to 300 |
| Smoothing | Damping applied to rotational and parallax offsets |
Multiplier reads the model's ParamAngleZ parameter (head tilt), while Parallax X and Y read ParamAngleX and ParamAngleY (head turn and nod). Pixel values are calibrated to 1× model scale and scale proportionally with the model.
- Positive values move the object in the direction of head movement, so it appears in front of the mesh. A little positive parallax gives glasses natural frame thickness during turns.
- Negative values move the object against head rotation, so it appears behind the mesh. Negative parallax keeps nameplates steadily behind the head.
2D images, videos, and webpages pinned to a Live2D model can also interleave between the model's internal layers (requiring the object-pin-depth capability). Once pinned, a Depth slider appears beneath the section (operating identically to Live2D Items below), allowing the item to be placed between any two ArtMesh layers. If multiple items are pinned at the identical depth, they maintain their relative stacking order from the global Layers list. Pinned media rows in the layer list display a pin icon for identification.
Live2D Items
A Live2D model can attach to another Live2D model as an item, matching the Live2D Item feature in VTube Studio. Selecting the model shows a Pin section beneath Position, identical to 2D Pins. Attached as an item, the model keeps all its core capabilities, including independent face tracking, idle breathing, expressions, and layer effects.
The Model dropdown lists all other Live2D models in the scene. A model already attached to the current model, directly or indirectly, appears disabled with an Already rides this label, which prevents circular attachments.
Unlike standard objects, a Live2D item renders inside the host model's render pass. The Depth slider spans the host model's layer drawing order:
- It runs from Behind model to In front, with a snap point between every ArtMesh.
- The status label below it reports how many host layers cover the item and which ArtMesh the item sits directly above.
While you drag the slider, the host model temporarily tints its layers on the stage canvas: layers that cover the item turn orange, and layers the item covers turn blue. The tint lingers for about a second after you stop, then fades out.
The tint renders on the model surface itself, so it also appears in capture feeds; Stream Mode does not hide this preview.
The pin records the ArtMesh's unique ID rather than a static layer index: because the Cubism engine dynamically reorders parts during motion playback, the item follows real-time render order on every frame. If an ID cannot be found (for example, after swapping host models), the item safely defaults to the front-most layer and displays a notification in the Depth section.
Wrap Around Model splits the item into a back part and a front part, and adds a second handle to the Depth slider: the lower handle sets the back part's depth, and the upper handle sets the front part's. Host layers between the two handles cover the back part and are covered by the front part — for example, a scarf that drapes across the chest and wraps behind the neck and hair.
Two controls set where the item splits:
- Cut At: A dropdown that picks which of the item's own layers forms the split boundary. Parts beneath that layer belong to the back part.
- Pick: Sets the cut point with a click on stage. The button reads Cancel while it waits for the click.
When you turn on Wrap Around Model, the cut snaps to an ArtMesh whose ID contains split (or to the middle if there is none), and the back part starts one quarter of the host model's total layer count behind the front part.
When depth is managed by the pin system, the global layer list no longer dictates relative depth: the item renders within the host model's slot in the layer hierarchy, ensuring layers placed above the host model obscure the item regardless of where the item's row sits in the list. The layer list dictates only relative ordering among multiple items pinned to the identical ArtMesh. Pinned item rows display a pin icon for clear identification.
If the host model renders as a flattened texture — such as when Layer Effects are active, during crossfade transitions, or with moc3 v6 models using offscreen buffers — internal layer interleaving is unavailable, and the item renders entirely in front of the model.
3D Pins
Applies toVRM3D anchors attach to VRM humanoid bones (such as head, leftHand, or hips) or the Model Root. When you pick on stage, Persona casts a ray at the avatar, reads the skin weights of the mesh triangle it hits, and resolves to the bone with the highest weight. Clicking the face resolves to head, and clicking a hand resolves to leftHand.
Enabling Elasticity applies virtual spring-damper physics, allowing attached objects to trail and oscillate naturally rather than tracking rigidly:
| Control | Description |
|---|---|
| Stiffness | Spring tension pulling the object toward the anchor |
| Damping | Rate of oscillation energy dissipation and settling speed |
| Max Speed | Upper velocity cap for object movement toward the anchor |
If the parent model is removed from the scene or swapped to another model format, attachment pins are safely cleared, leaving the object stationary at its current stage coordinates rather than deleting it.
Last updated on October 21, 2026