Deprecating Legacy CSG System

CSG V3 in-game APIs are coming soon. We are working hard on ironing the last issues. To be honest, we can’t wait for you to be able to try CSG V3 in-game. We want to see what you’ll be able to get out of this faster CSG engine.

3 Likes

@glaqss @banktoner If you didn’t chose the legacy CSG engine on purpose, you either use CSG V2 or CSG V3. Anyway the new engine CSG V3 is compatible with both V1 (legacy) and V2. This means you should be able to edit any existing union with CSG V3.

Are we going to be able any time soon change Renderfidelity to Performance for unions?

@xxibadrxx This is not in our immediate plans but we are thinking of having a more generic management of rendering and collision detection settings (that would be common to meshes and CSG unions). Would you happen to have examples of models for which being able to set Renderfidelity to Performance for a union would be of benefit?

1 Like

Are you able to say what the issues are?

1 Like

There are a few crashes related to CSG operations that we are working on eliminating. Once these are fixed, CSG V3 in-game APIs will be released, probably as a beta first.
By the way if you ever have a crash while doing a union or separate, please share the model with us so we can try to reproduce the issue.

3 Likes

I’ll ask again; are synchronous (non-yielding) APIs planned for CSGv3?

2 Likes

CSG operations may be expensive, whatever the engine. Synchronous calls could result in a really slow experience. Can you give me more details about what you would like to achieve?

As a general comment, if your reply is about CSG V3 specifically (as opposed to V1 to V3 migration), could you please post here: Studio Beta: CSG Has a New Engine - Vroom, Vroom, Vroom!
I am monitoring both threads and will reply asap on both. Thanks

2 Likes

Is the update still going to ship on time if the cylinder/sphere bug isn’t fixed? I’m fine waiting for that to fix after release, since I haven’t got any projects I’m particularly busy with at the moment. Just curious is all.

2 Likes

Ideally we have enough time to fix these bugs before deprecating CSG V1.
There’s currently no reason to think we may have to push back the March 31st date.

3 Likes

Hmm… I don’t think that it’s related to the upgrade of CSG system, but I’ve been struggling to seperate unions lately. The error message pop out quite often in this month with the code -8/-11.

Union failed

Something went wrong. CSG returned error code -11. Please file a bug report, preferably with a file containing the problematic object(s).

Here I’m attaching one of the models. Thanks a lot if you can help me!

broken.rbxm (15.6 KB)

3 Likes

I reproduced your issue. I will look into it.

6 Likes

I didn’t really pay attention to the CSG changes…

Studio does default to the second version, right? By this I mean if I didn’t make any changes in regards to what version I’m using it should still be working with V2?

1 Like

I have the same question. I use unions in my game and are they still working after the update?

1 Like

Yes that’s right. V2 is the default version. Some of you may have V3 as default (it is partially rolled out). If you’re using legacy CSG (or V1), you have chosen to do so at some point.

Unions already created will not be modified. Once CSG V1 is deprecated, any CSG creation or modification will be done using either V2 or V3.

4 Likes

What does CSG stand for? I know what it is (sorta) but I don’t understand what the acronym is.

CSG stands for Constructive Solid Geometry

2 Likes

I’m extremely hyped for this, not that I dislike V1 but I always found it a bit slow and performance-hungry which is why I usually prefer Meshes that are a bit annoying to constantly separate and import (not nearly as much thanks to the new smart mesh importer) but can manually be cleaned/optimized in blender.

Having a faster CSG engine will open up many more possibilities in the future such as games with destruction physics as well as giving me an alternative to meshes which I find a bit annoying to make.

Good update.
Cant wait to see what people do with this!

I do hope that V2 will not be deprecated as the way V3 affects the colour of parts when negating is not something that is useful to me, but rather makes it impossible to use V3.
V3 affects the colour of models, and using decals leaves a pixelated and often rotated texture. Having physical parts of the colour I desire them to be is a useful feature of V2 and if V3 could have a setting to toggle negative parts affecting colour of parts then I would be more likely to switch over.

However I just generally find V2 is more stable, and V3 has a big issue (atleast in the few tries I had of it before realising I was forced upon the beta feature without knowledge) of unions becoming corrupt and becoming unsynced to their union id (the bug where the union becomes invisible, inseparable and generally broken, an issue V2 once had many years ago)

However, as I have not tried myself due to the two issues mentioned of V3, does V3 solve the issue with more complex unions freezing studio without actually processing the union? in some complex V2 unions I have experienced studio consistently freeze with no amount of waiting solving anything. It would make sense if the union took a long time but outright failing to process the complex model isn’t something I would’ve expected.

1 Like

Could you post some photos of this “color” behavior you’re talking about? I’m not sure I understand it fully, but if you mean negative parts impacting the color of the union you’re making, you can just recolor the negative parts.

As for the union corruption, that must be fixed before V3 launches, no questions asked. I got so sick of that when it was affecting CSGV1, and I’m going to be extremely unhappy if that bug happens again after V1’s removal…

but I shouldn’t have to recolour the negative parts, they shouldn’t affect the part colour anyway?

They affect the part color because it allows more to be done with unions to begin with. You can get the same result with very little work if you just recolor the negative part. If CSGV3 shipped without the color baking, it would ruin any builds that used color baking because it would therefore be impossible to do.