Deprecating Legacy CSG System

May be a stupid question, but the CSG system is the union/separate stuff right?

1 Like

Yes, it is. It’s the engine which provides such geometry operations. It’s a neat way to create 3D models. It really stimulates creativity and reasoning for, you are limited by adding and subtracting either complex or simple parts.

Hi,
just wanted to give you an update: the fix for those slight differences that occur when separating then re-unioning is now released in Studio (ver. 518)!
Please report any more issues you may have when using CSG V3 to modify / update legacy models.
Thank you!

2 Likes

Happy to report the offset bug is now fixed. However, there are some more bugs that I would like to see addressed (preferably before launch).

You can tell when things don’t align properly by duplicating the union, separating it, and re-unioning it, then changing the color to something high and contrasting. If the new union doesn’t z-fight on all angles with the old union, then something went wrong.

First bug I’ve noticed is this strange difference with my Metal Sonic’s spines. For some reason, when I separate and re-union this in CSGV3, random artifacts appear on parts of the model where they weren’t before. Take note of the green part jutting out of the side, as well as these strange floating parts.

image

Second bug I’ve noticed is that cylinders and spheres still do not maintain their intended orientation when being unioned. You can see the difference. Take note of where the green on the spines does not line up with the blue, and seems to “jut out” more.


Aside from this, I haven’t found any problems yet, but if I do, I’ll add them here.

If you need me to, I can send you a file with a repro.

1 Like

Hi,
glad to hear your confirmation about the offset bug fix!
Also, thank you for reporting the other issue.
Yes - if possible, please send us the file with repro, and we will look into it. (If you don’t want to publicly share the file you can either send it by a DM to me or @Tconnect)

2 Likes

Can you share a model that will highlight this issue? I will look at it right away. Thanks

TestIII.rbxl (46.2 KB)

It’s the same conical part I showed in the pictures above.

Thanks a lot. I will have a look and will update you asap.

3 Likes

2 days until this drops, at least from when I’m posting this. Is the cylinder/sphere bug going to be patched before release, or will we need to wait longer?

Unfortunately, it won’t be fixed before release. Best case scenario is a patch within the next weeks/months and worst case is them completely forgetting about it.

Sorry for the late reply. I want to make sure we have a definite answer for two issues before moving on with deprecation:

  • cylinder / sphere differences between V1 / V3: I am prototyping something that should give me more insight on what the issue actually is and whether it is feasible to fix it.
  • smooth angles: I have a pretty good idea of what the issue is. I may also need to prototype a quick fix.
    Once we know where we stand with these two outstanding issues, we will proceed on V1 deprecation. The goal is to provide you with a clear status of what will change (if anything) and workarounds to adjust your design process.
3 Likes

Alright, sounds good. I really hope that cylinder/sphere fix is possible because it could mess with some building techniques pretty badly if it doesn’t. I really appreciate your diligence working on this, though. Thank you for the continued support.

1 Like

Just to provide a quick use case regarding the importance of cylinders / spheres maintaining their intended orientation, here’s an example of how I use cylinders in my builds.

My morphs use a custom rig using a CSG model, and to prevent the limbs from detaching or clipping in odd ways, I use cylinders to make joints “rotate”. Here’s a photo of what I’m talking about.

Since the edges of the cylinder and the brick line up near-perfectly, there’s little to no visible seam, giving the illusion that it’s actually bending and isn’t two separate parts. If the cylinder rotation isn’t fixed, this could become a problem. The same problem would happen for any build using spheres or cylinders, where sometimes parts have to be rotated to look right. Seams will occur because of this which will result in problems with consistency.

You can see here that a seam appears after unioning these two pieces, and you can also see the angles on the sphere change a bit, making the seam.

After testing cylinders a bit, I noticed that they seem to have issues with their shape when they aren’t unioned vs when they are unioned.

Here’s a cylinder that hasn’t been rotated, the only difference is the first image is not unioned and the second one is unioned.

Looking closely, you can see they don’t line up right which is strange. This is part of the reason the seam was created on the last example. I think stuff like this is going to be especially a problem when it comes to round/non-blocky models because it will become too difficult to correctly align pieces to get rid of seams, making sphere models nearly impossible to produce with the intended appearance.

Lastly, it’s worth noting this also happens with normal spheres and cylinders, not just ones made from SpecialMeshes.

Again, I highly recommend fixing this before doing anything, even if it takes a while, because this would be pretty detrimental to people trying to make things such as aircrafts, which have a community dedicated to modelling them with CSG.

If you need any more examples or some repros, let me know and I’ll get back to you ASAP.

2 Likes

Smooth angle needs work, i rarely get a good resalt from it, otherwise i use V3 all the time.

I dont have much of a problem working around this for what i do, i just union them together, or have both parts be a union.

That doesn’t fix it. The cylinders still get offset, same with spheres. It will leave seams no matter what you do.

fix the cylinders, and spheres but idk if its possible.

2 Likes

Why was the feature where negative parts change the color of a union’s surface brought back? This will make modeling less convenient because you’d have to recolor the negative part every time. Also, if this is applied to a more complex union that has multiple colors, it would apply one solid color to an area that has multiple colors, making the use of negative parts this way tedious (I am aware that you would be able to split the negative part into colors), and in some cases, impossible. This feature should at least be togglable. Developer preference should be looked at.

1 Like

We are definitely looking at this one. We did bring back that behavior as it was requested by some legacy CSG users. But we acknowledge that in some cases (negative parts spanning multiple parts with different colors), it could be difficult to find a workaround, if you don’t want that color transfer.
Rest assured we’re looking at it and any decision will be discussed with you.

5 Likes

I’d recommend keeping both functionalities. While it does inconvenience people with use cases like this one, reverting the behavior would make what we want to achieve impossible all-together, whereas other cases like this have it possible, just less convenient.

3 Likes