There is one thing that has bothered me for some time about unions. When making a Union without using any negative parts/unions, its collision box/hit box still becomes less accurate (as seen in the picture below). I cannot understand why that would be the case, because if I were to weld the same two parts together they would still keep their current collision box(es). What is the difference? The only practical difference I see is the amount of polygons and their positions and maybe the weight. Why can’t unions - which do not have any negative parts in their data - act as if they were two welded parts together?
I always build my terrain using only Parts and WedgeParts. It would be great if I could union those parts together without changing the collision boxes, so the players wouldn’t hover a stud above the grass at some positions. Of course the collision will stay as is for unions which required negative parts to be formed. But if it’s possible to make this change for unions which only needed default BaseParts and Meshes, please consider it.
It’s just a thing with the algorithm they use. They designed it so that it works for any CSG object, regardless of how simple it is or not.
I’m pretty sure if you union a sphere on its own you see something similar.
What you want is probably a ‘resolution’ property which alters how accurate the physics calculation is. What would be nicer is that ROBLOX use the sgCore intergration for Bullet. That would be much nicer.
That’s why I’m suggesting this. I’d like it if they added a bit to their algorithm that would check if any of the selected parts the studio is about to union is a negative part. If not, it will still execute the same code for the Mesh, but the code to check the collision will just be like a for loop that checks through the original parts to see if an object collides with anyone of them. I believe it wouldn’t be that hard to implement if you imagine all the maths they needed to calculate the mesh.
I’m no physics engineer but isn’t that substantially more collision hulls than needed? And they aren’t even accurate? I think roblox should just use the actual part collision hulls if you’re only unioning things and only start generating hulls when you add a negation to the mix. Or can hulls not intersect?