Is it possible to accurately retrieve Accessory instances from a screen position or a mouse click?

I’m trying to make a game where players can select layered clothing accessories by clicking or tapping on them, and it seems like the only way Roblox wants devs to interact with meshes is through their heavily compressed collision geometry. I understand why Roblox does this, but for my use case I just want to accurately select only opaque or semitransparent objects from a pixel on the screen, which is something the engine already calculates.

I’ve tried using raycasts and getting the target BasePart in player.Mouse, but I only end up getting invisible hitboxes belonging to other accessories when the actual mesh I need is already displayed on the screen.

I want to know if there are any functions I can call, or workarounds other people have figured out because otherwise the clunky overlapping hitboxes for the layered clothes will make selecting items incredibly clumsy and my game idea will fall apart lol

I know that meshes has a setting that controls the accuracy of the collision calculation in the properties, so accessories may also have this setting

1 Like

Okay, I checked it out, and changing the collision fidelity seems to fix the problem of the weird hitboxes, however, accessories are loaded in through HumanoidDescriptions and aren’t in the game by default, so I can’t hard code the collision fidelity outside of Box. Is there a way to configure collision fidelities so they automatically come set to Default or Complex? because they all get added as a Default and Roblox prevents devs from switching the property through code.