Giving accessory to humanoid in Viewport via InsertService not working

This one is more of a strange one. I have a Viewport Frame with a person in it, and I’m trying to make a system that will load accessories and give those accessories to the person in the frame.

The accessories are added to the person, but the positioning of the accessory itself does not occur. It spawns in a random location. Interestingly, if I remove the person from the frame and put them in the Workspace, the accessories suddenly snap in place like they normally should.

Any solutions to this problem?

Never encountered this before because I’ve never attempted it, but I would recommend creating a clone, attaching the accessories to it and then replacing it with the current one seamlessly. At least until I understood the problem further, as this is a just a workaround. However, if you have two characters then whenever you want to update the character view then you can just toggle between editing one or the other and re-parenting it to the viewport.

1 Like

I had a similar issue when I was using the AddAccessory function to give the viewport character accessories. Turns out AddAccessory or just parenting the accessory to the character won’t work from a local script, so that may be why your accessories aren’t being added to the character. A workaround this is to use the addAccessory function found in this link:

1 Like

image

Got it working. I made it so that my script first parents it into a replica humanoid in the workspace where its position is guaranteed to be adjusted, then put it back into the viewport. Strange it doesn’t do that in the first place, though, and I hope Roblox looks into that. Thanks for the help

2 Likes