Real creations are rarely a single shape. A table is a top and four legs. A door is a panel and a frame. Link sets let you join multiple prims into one object that moves, copies, and behaves as a single unit.
Linking is the act of combining two or more prims into a single link set. Once linked, the whole group moves together, rotates together, and can be copied or deleted as one thing. Scripts inside linked prims can talk to each other directly, which is the foundation of interactive multi-part objects like doors, vehicles, and gadgets.
Linking is non-destructive. You can always unlink a set back into its individual parts. Nothing about the original prims changes -- they just stop being grouped.
Without linking, every prim is independent. That means:
Imagine building a chair from five prims -- a seat and four legs. Without linking, moving the chair means selecting and moving all five pieces individually, keeping them aligned by hand. With linking, you grab the chair and drag it. All five pieces move together, maintaining their exact relative positions.
A door needs two things: the panel that swings open, and the frame it sits in. A script in the frame can tell the panel to open. A lock button on the wall can send a message to the door. This inter-part messaging only works between prims in the same link set.
A linked set has a single name, a single owner, and a single set of permissions. You can give someone a "Table" rather than five separate unnamed prims. You can sell it, trade it, or put it in your inventory as one item.
Every link set has exactly one root prim and one or more child prims. The root is the "brain" of the object -- its position defines where the object is, its name is the object's name, and its permissions govern the whole set.
A table link set: the tabletop is the root, the four legs are children.
The last prim you select before pressing Ctrl+L becomes the root. This is important because:
Think about which prim is the most important or central part of your creation. For a table, the tabletop is a natural root. For a door, the frame is usually the root (since it stays still while the panel swings). For a vehicle, pick the main body -- the part everything else attaches to.
Every prim in a link set is assigned a link number. These numbers are how scripts refer to specific parts of the object.
Scripts use link numbers to target specific prims. A script in the root can say "change link 3 to red" and only that specific child changes. A script in a child can send a message to the root by targeting link 1. There are also shortcuts:
When you click a linked object in build mode, you select the entire set. The Build Panel shows the root prim's properties, and the gizmo moves the whole object.
To select an individual child prim within the set, hold Shift and click that specific part. The Build Panel switches to show that child's properties -- its name, color, shape parameters, and so on. The gizmo now moves only that child within the set, leaving everything else in place.
This is how you fine-tune individual parts after linking. Adjust a table leg's position, change one wall panel's color, or resize a single button on a control panel -- all without unlinking.
Build a flat box for the tabletop. Build four narrow boxes for the legs. Position the legs under the corners of the top. Select all four legs first (Shift+click each one), then Shift+click the tabletop last. Press Ctrl+L. The tabletop is the root because it was selected last. Name it "Table" in the Own tab. Done -- you have a table you can move, copy, and share as one object.
Build a box for the door frame and another box for the door panel. Position the panel inside the frame. Select the panel first, then Shift+click the frame. Press Ctrl+L. The frame becomes root (selected last). Put a script in the frame that listens for a click, then sends a message to link 2 (the panel) telling it to rotate open. The panel's script receives the message and swings.
Build a large flat box for the sign background. Build smaller boxes or planes for decorative borders or mounting brackets. Paint each piece a different color. Link them all together with the sign face as root. Now you have a single "Sign" object that you can place anywhere, and all the pieces stay perfectly aligned.
Build the body, wheels, seats, and any decorative parts as separate prims. Position everything where it belongs. Select all the parts, with the main body selected last (making it root). Link. A driving script in the root prim controls the whole vehicle. It can send messages to the wheel prims to spin them, to the seat prims to pose sitting avatars, and to lights to turn them on and off.
Linking does not change any prim's shape, color, or script. It only creates a relationship between them. Here is what changes and what stays the same:
Once prims are linked, scripts inside them can communicate using link messages. This is the most important scripting feature that linking enables. A link message contains:
This messaging system is scoped to the link set. Scripts in other objects cannot eavesdrop or interfere. It is private, fast, and the standard way to build interactive multi-part objects.