A new function,
llAttachToAvatarTempFromInventory(integer AttachmentPoint, string ItemName)
, that allows an already attached object to temporarily attach items from that object's inventory without triggering a permission prompt.
Use Case:
Currently, HUDs and wearable objects must pre-attach all possible assets or rely on cumbersome rezzing workarounds to swap out attachments dynamically. This leads to performance issues due to high prim counts and complexity. A smoother system would be beneficial for:
Modular HUDs: Hide/show different components without inflating linksets. Helps with keeping resources low when the main hud is worn at all time.
Handheld Items: A backpack could let a user select and equip objects (e.g., food, tools, toys) seamlessly.
App-Based Wearables: A "smartphone" HUD could swap out apps dynamically without needing excessive link changes or manual updates.
Why It’s Needed:
Better UX: No unnecessary permission pop-ups for already attached objects.
More Flexibility: Allows seamless temporary attachments without excessive preloading.
Performance Gains: Reduces linkset size and avoids multiple workarounds.
Proposed Behavior:
If the calling object is already attached, it can attach another item from the object's inventory without requiring a permission prompt. If the calling object is not attached, it must request attachment permissions as usual. If the user sits on an object, it must still ask for attachment permissions, following existing conventions.
This function would streamline many workflows and enhance interactivity in Second Life while respecting user control.