Show Decomposition Geometry Plugin

If you work with CSG and physics, you probably already know that ROBLOX doesn’t use the exact geometry of the Union for collision, rather it uses approximate convex decomposition. While ROBLOX has an option for toggling this in the physics settings, it only applies to newly inserted Unions.
Overall, toggling between these options isn’t very fast, and I was pretty annoyed by this. So after I discovered that we can actually access ROBLOX Studio’s settings from plugins, I decided to make a plugin for it.

Unlike the default functionality, this plugin actually updates the geometry of pre-existing unions. It also updates geometry when the CollisionFidelity property of a Union/MeshPart changes.

You can get the plugin here:

Hope you enjoy it :slight_smile:

P.S.

  • This also applies to MeshParts!
  • This plugin is actually an extension to the functionality of the decomposition geometry, while the plugin button itself is just a quick toggle for the setting. If you toggle the setting manually in the physics settings, you’ll notice that the plugin button will reflect its changes.
  • In order to “update” the geometry of a part, the plugin will change the parent of the part to nil, and then immediately back. This could cause problems if you are using joints. I’m probably going to add a safeguard for this soon.
    EDIT: This is no longer the case. @TheNexusAvenger noted that I could update it by just bumping the Transparency.
7 Likes

You could probably get around the joints issue easily just by doing recursive functions searching for them.

This does look useful though, especially with mesh parts just around the corner.

One idea I have in mind right now, is to recursively check all joint connections of the Union, and then see which part’s parent has the highest ancestry level, then just bump that entire model instead. If the model is the Workspace, I’ll just slap all of them into a model real quick.

That… or I could try to use JoinToOutsiders.

Out loud just said “what the f*” when I saw that.

This is going to save me quite a bit of calculations on my fragmentation engine.

1 Like

They added that method when they added the Transform tool (which by the way, is 100% Lua)

I’m one of the main API guys on the wiki, so I know my stuff. If you are doing something hacky, let me know, I can probably give you a better solution.

(and before you call me out for being a hypocrite echoreaper, yes settings() was an exception, that was just a small goof on my end)

before you call me out for being a hypocrite echoreaper

wow, rude

1 Like

lol sorry, you’ve just been calling me out on things lately.

a great and useful plugin …only “problem” after disabling the collision preview all part ; mesh part ; and union transparency’s that where 0 are now at -0 …indeed it is not really a problem but still a bit odd.

I would like a feature that makes the shown geometry becomes a part or an union, i mean, that the geometry used to walk at and you can collide, become the part, so we can fix unions or meshes. Sorry by my grammar, if you didnt understand i can ask rewrite this topic with a better grammar. Thanks @Maximum_ADHD