Non-Uniform Union Scaling Beta

This is a nice update! I would love to have the ability to scale cylinders, corner wedges, spheres, and wedges non-uniformly as well.

17 Likes

Wow nice little future you guys are adding!

3 Likes

Maybe eventually but the Builder Tools Team has valued keeping the Scale tool in Studio predictable over allowing it to do this (basically it would be hard to predict what the scaling behavior for a given model is because it would depend on what parts there are hidden away somewhere within it).

For now I would recommend looking at community plugins for nonuniform scaling of Models, there’s a few good options out there.

10 Likes

alright

and I personally already use F3X for this very thing when scaling multiple parts but hope to see it built in some day

8 Likes

Now Roblox should work on optimizing unions for large scale maps.

8 Likes

Good observation.

What’s going on here is not really anything new with this beta, it’s something that you always have to be aware of when using the CSG system. But it’s also possibly something you’ll have to be a bit more aware of if you’re scaling things in a significantly non-uniform way:

  • The collision geometry of a CSG part does not change when you scale it, it just gets scaled.
  • “Default” collision fidelity is scale-sensitive, it uses a uniform grid system to determine the physics decomposition.

Putting these two facts together, you’ll have to make sure that if you’re using Default collision fidelity, you create your CSG at a large enough scale that any holes you care about don’t get “filled in” by the Default decomposition algorithm, because they’ll still be filled in when you scale up the part, the decomposition won’t be recomputed.

Aside: I would highly recommend using PreciseConvexDecomposition for the majority of your CSG parts. The main case where Precise causes issues is with MeshParts that have complex curved surfaces, but the majority of CSG parts are better served by Precise (or Hull / Box for things you don’t need detailed collisions on)

16 Likes

Maybe just a little bit overdue but still a welcome feature.

6 Likes

You can actually do this now! You just need to union it all by itself and then stretch it!


It would be nice to have a better way to do this though.

This is the best way to do it if you don’t want to make a mesh in another program.

7 Likes

Unions are generally a bad practice imo. I’d rather use a more optimized method.

7 Likes

Unfortunately the ship has sailed on primitive cylinders scaling correctly: We would break way too much existing content out there if we changed them to having scaling that matches the bounding box.

For spheres it would be possible, but have some costs: The cost of physics for a stretched sphere is more than an order of magnitude higher than for a primitive round sphere, so making it easy to stretch spheres could cause some builders to accidentally work themselves into performance issues. On top of being inconsistent with the cylinder behavior since we can’t change that.

As you note, there’s at least now a “native” way to do it without having to resort to the deprecated SpecialMesh Instance.

12 Likes

Is this actually enabled? I’m trying to scale an union but it keeps scaling it uniformly :derp:

2 Likes

This doesn’t seem to work very well with materials. The material just stretches. (2022 Materials)

5 Likes

The beta feature is enabled, but you still have to choose to turn it on, have you?

3 Likes

Yes, I have the beta feature enabled but the Union is still being scaled uniformly instead of stretching

3 Likes

I thought I had the material handling working correctly but it turns out I didn’t look closely enough, I’ll get a fix in for this!

6 Likes

Amazing! We really needed something like this. It’s no longer painful to resize unions!

2 Likes

I literally thought an update like this was an impossible pipe dream. This is incredible. I love this. This is absolutely going to change the way I model forever, and I’m very, very excited to use it. Thank you!

As for rollout, I’m leaning toward option 2 for simplicity’s sake. I imagine there’s not many use cases of letterbox-stretched unions. If there are, they can be fixed, most likely.

2 Likes

It’s an amazing function Thank you.
I’ll test it now
((I have a wish… I wish I could change the color of the union))

1 Like

I have it enabled, but its not working for me.

1 Like

Have you ever restarted Roblox Studio? I restarted the studio and it worked

2 Likes