[Full Release] Improved Constructive Solid Geometry (CSG) APIs

Are you using the new APIs in GeometryService ? That should work in LocalScripts and also is much faster and has more features than the legacy BasePart API.

1 Like

Why can’t Legacy BasePart API have this? Is the code behind it old and you don’t want to break any older games?

but anyways, thank you for helping me out. I have changed my hitboxes and now they load way faster and no longer pre-made.

2 Likes

Yeah right now the BasePart API uses an old code path. We are planning to port the old API to use the same new codepath we use in GeometryService, once that is done the BasePart API should also be usable in LocalScripts.

3 Likes

Yes there will be be support..

What about FragmentAsync? There’s a function like this locked behind InternalTest roles.

UPDATE: Looks fun, I’ve watched the video linked in the post.

1 Like

I’m aware, I was asking for a progress update. But, sadly, Roblox tends to not go into that much detail, in that regard. While I don’t expect a specific release date, I would like to see a to-do list with check-marks or, at the very least, a vague percentage or estimate of the total progress.

2 Likes

AFIAK this is in the Early Access program.

Recalculating CSG after footprints in snow sounds fairly expensive unless the snow mesh is quite simple and the number of footprints is small, so filling the footprints back in sounds more performant to me, and not really more complicated. We do have plans for improvements which will give you more options in this regard, but they’ll take time.

2 Likes

Hey, I don’t think anyone who’s monitoring this thread would be able to provide information about ReflectionService, sorry!

2 Likes

Will we be able to use meshparts as tools on other meshparts when mesh CSG is released? If so, will we also be able to use the EditableMesh API to generate tools to operate on meshes in runtime? I can see plenty of use cases where features like that would be very desirable.

1 Like

yes, that is something we are hoping to support, provided all the MeshParts are watertight.

2 Likes

How does moderation work for this?
What if players sculpt inappropriate things in the game? Is the game penalized?

I know I’m (very) late to this, but is there any new updates/details on when some of the new API’s like FragmentAsync and GenerateFragmentSites are going to become full-public?

1 Like

I’m curious too about these new features. I would die to get in contact with someone that works on CSG. Recently it has been causing crashes in my experiences even though I didn’t change anything.

Hey, i’m running into a bit of a bottleneck with the fracture API. I’m trying to make a game where buildings can be destroyed, however I am running into an issue with it when using it on models with many parts, rather than just 1 single union or mesh.

I have code that can explode and fracture multiple parts in a radius, so at times the fracture API is called like 50 or 100 times due to iterating through the parts and fracturing them:

Can we get an update to the API where we can fracture an array of parts or other performance improvements?

At times it takes many seconds for the explosion to fracture all the parts

@milo_2008 Hey can you share a reproducer for the crash or tell us in what experience the crashes are happening?
@Ethanthegrand14 If you can share a repro for your use case we can look into performance optimizations. Without a concrete rbxm it is hard to say what exactly is causing the multi-second and whether a multi-part version of the API would actually help.
@Kooraseru We are aiming to make the APIs publicly available this week.

1 Like

Those crashes have since been resolved thankfully. Are meshPart CSG operations going to be in published games coming this week too?

What was the fix? I too am experiencing seemingly random crashes. Happens with low geometry count, high geometry count. Cant seem to pinpoint the cause.

FractureDestructionTesting.rbxl (110.2 KB)

Sorry for the late response,
Here’s a reproduction place file. I’m sure I could design my system to be better and do less fracture api calls, however it still feels very slow in some cases and I cannot think of a decent solution for my use case.

I also notice a flicker issue too. Are there any plans for a fix on this as well?

I personally didn’t change anything. I contacted pho01proof about the issues and he switched some flags? Anyways, just dm him he’s really nice and helpful