GapFill v1.3 - Now supports Unions and MeshParts

Git repo, accepting contributions: GitHub - stravant/roblox-gapfill: Repo of the GapFill Roblox Studio Plugin

I’ve updated GapFill to support Unions and MeshParts in addition to the other geometry which it previously did. This is done heuristically by using a ton of raycasts to explore and precisely infer the edges for edge selection. Things to understand:

  • The plugin can only work with the collision geometry of the object. Highly recommend setting CollisionFidelity = PreciseConvexDecomposition or Hull on the objects you’re trying to use the plugin on so that the collision geometry has clean edges that match up with what you visually see see.

(Aside: You should be setting CollisionFidelity = PreciseConvexDecomposition on almost every mesh you care about collisions for anyways. Use the almost essential Mesh Optimization Tools to see what fidelity fits best if you don’t already have it installed)

  • It may sometimes be a bit finicky to select the edge you want. For simple convex shapes like pyramids and curved segments the inferred edge selection should work almost as well as for native shapes, but as the complexity of the Mesh/CSG increases things will get more finicky.

  • If the you’re able to get the edge that you intend selected, the length / location of that edge should be perfectly precise (we’re still talking about floating point here but at least similarly precise to the results for native part types).

  • In particular MeshParts with holes / MeshParts that have two disjoint pieces in the same MeshPart will sometimes fail to highlight intended edge as you hover over them.

Why couldn’t you do this before? I probably could have found a way but it’s a lot easier to do without noticeably hurting the performance of the tool now that raycasting is up to 20x faster than it was back in the day. Using the RaycastParams based casting also improves perf over what would have been possible using FindPartOnRay.


Don’t like how the year has gone so far? Let’s do something about that real quick:

Filling in gaps between curved rounded surfaces:


Other minor changes:

  • Copy over Color instead of BrickColor, fixing filled parts being the wrong color in many cases.

  • Copy over a more complete set of props from the selected part to the filled parts, including more props that have been added since the last update.

  • Freshen up the overall UX. E.g.: Dragging the panels works a lot more cleanly now.

84 Likes

HELL YEA BRO! thanks stravant!

2 Likes

hey sorry this link doesn’t seem to be working for me :confused:

here’s the link for anybody else looking to get the plugin:

1 Like

Fixed the link, not sure what went wrong with it the first time.

YESSSS- the already extremely useful plugin gets a extremely useful update! thanks for this!

This is really, really cool! A feature request I have is to add an option to gapfill multiple parts that have the same size property (as a toggle of course). Something like this:

2 Likes

NO. FRICKEN. WAY.
This plugin has already been a lifesaver in many cases, but NOW?! I have had several cases in the past week, perhaps even a few days, that this would have been amazing. I am so glad you added this, and I know that it will be greatly appreciated by the rest of the community.

1 Like

Updated to support the recent “Improvements to part Size & Shape” change.

Also included the Hold Ctrl → Activate Dragger behavior from ResizeAlign in GapFill too in this update since nobody disliked having it there.

Now open source at: GitHub - stravant/roblox-gapfill: Repo of the GapFill Roblox Studio Plugin

2 Likes

Hi, are you also going to update the plugin link?

Thanks

I don’t follow, what link do you mean?

Updated to v1.3.2, first release from Github as a source of truth.

  • Cleaned up terminology in the UI.
  • MaterialVariant is now copied to the generated parts, so the plugin should work better for people using MaterialVariants.
1 Like