CSG Failures


While it’s clearly not optimal, if you desperately need CSG v1 for the time being (for smoothing or whatever), it still works in the Future Is Bright Demo.

(apologies if you’ve already heard about this :grin:)


Yeah, I need it to work on projects that used CSG v1 (using v2 just either corrupts them or adds random faces/vertices to them). Hopefully this’ll be fixed soon.


Make sure to report any bugs you find with CSGv2 or they can’t be fixed.


Before I negated this part, there were no micro-displacements

After I unioned the same parts again, the position of the union parts moved

Here’s the result I got after unioning the parts together. It used to be (6.4, 5.4, 12.4).

This happens every time I try unioning or negating multiple parts. All the selected parts move around together whenever I use CSG. I cannot build anything until this bug is fixed. Help!


Thank you for reporting this,

We haven’t been able to reproduce the problem locally, but we have an idea of what could be causing it. If anyone has a model that reproduces this issue, we’d appreciate a copy so we can address the issue and ship a fix.



I’ve made the place available for editing. I hope this helps.


Thanks! We are looking into it.


I couldn’t replicate it with random unioning either. Eric took me into his save file with team create and showed me his CSG poorly unioning. I tried it myself and got the same bad union. Downloaded a copy and did it offline and same bad union. This is a serious issue for us, as we have deadlines to meet for a Christmas update and CSG is a vital component.


Here is a gif of it happening:

Notice how the jeep keeps on moving down consistently when all I’m doing is negating/cancel negating the jeep. I zoom in in the end to show you it moving down live.


Lately I’ve been noticing some of the placement values on my objects changing unexplainably, and I’m pretty sure you just pin-pointed the issue. This is a very bad bug for modelers, since it makes our lives 100 times harder, so thank you for finding and reporting it.


Found an issue I’ve been searching for for a while (a issue that keeps re-occurring for me):

The mail slot I made can be found in this copy-able game: https://www.roblox.com/games/2659213744/Bug-report-place
the individual model here: https://www.roblox.com/catalog/02665163806/redirect

Hopefully it replicates itself for you guys, since I have no idea what to look for in this case.

Good luck and thanks for supporting us devs,


My builder at @Kyodo was complaining about the same bug.


Whats happening?
The negated cylinder is duplicated from the original cylinder and when negated the cylinder shifts out of aliment as shown in the picture bellow. This will lead to not having a perfect negated cylinder cut to the original cylinder.

When I encountered the bug?
I noticed it just now. I had this problem early this morning with this same thing happening but didn’t realize it was this problem

Example when duplicated

CylinderAligningProbWhenNegating.rbxl (25.3 KB)

Repro Steps:

  • Insert a cylinder
  • Negate

Expected behavior: Position of negation is same as the original cylinder

Actual behavior: Position of negation is different from the original size

When you go bigger scale it shows the most effect as shown in the gifs

Example of the cylinder bug when negated


Not Negated Properties (Properties of the gif’s cylinder)


When cylinder negated Properties (Properties of the gif’s cylinder)


The only thing I see that changed is the Size from 193.8 to 193.05

Picture of my settings.


This happened when I accidentally unioned a skyscraper outline I was making. The dimensions were 3, 141.8, 140.6, so I’m thinking the size messed up the union render. It had some windows on it, but none were negatives. I didn’t check the decomposition geometry of the mesh to see if it was calculating it as a rectangle or as the mesh it showed, though I should have.


Tried unioning multiple unions together. This is what I got.


The issue you are having isn’t per say a CSG failure. Specifically, your trying to create a union that has too many triangles to it. I’d suggest trying to union only things that need to be unioned together, and for parts that just need to be attached weld them together (or anchor if they aren’t supposed to be affected by physics). There’s no way to get past a CSG face limit (I believe 10,000 triangles is the limit). Another way to circumvent this issue is make every part going into the union less detailed, thus having not as many faces and consequently not exceeding the CSG face limit. Problem solved (kinda).

Edit: All unions are made up of triangles. Aka, curves aren’t actually curves, but rather a ton of little triangles made to look like a curve. To keep their servers from crapping themselves when creators make objects with a couple thousand or possibly couple million triangles, there’s a triangle limit.


Thanks… the discrepancy you are seeing is due to slight differences in how geometry is generated in the CSG engine vs. the rendering engine. If you want a workaround, you can simply hit union with nothing but the cylinder object selected.

A word of warning is in order though: what you are apparently trying to do here is get perfect alignment between faces of some parts in a body and what’s being subtracted from it. This is a recipe for problems if you ever move or rotate the result and then modify it further (or ungroup it).

We cannot store exact position information for objects across operation/move/operation sequences due to performance and memory considerations, and hence slight displacements are always going to happen if objects are moved (rotated, translated, scaled) between operations.

The simplest way around this is to always ensure that the bodies you subtract (the negative parts) are slightly bigger than they need to be, and if you create holes, make sure the negative part really punches through rather than trying to line it up exactly on a face.

Over some time, it may be possible for us to create heuristics to help with some of these cases, but a complete solution to this problem is not on the horizon given our constraints.

Thank you


Ran into a very odd render glitch when unioning parts. Here’s a photo:

Some info:
So I was trying to make wooden planks with a 45° slant to add detail, perspective, and separation. However, upon mass-selecting and unioning the parts, this odd render glitch happened. If you ununion the parts and union them back together without deselecting, it unions and renders normally. However, unselecting, selecting, and then unioning causes this glitch to appear again.

Here’s the model: bug report.rbxm (6.7 KB)

Part properties:


Adding on to the above post, this happened as i tried to union the object, and it seems to be happening more frequently as i try more:

And about 2 seconds after writing the above statement, it stopped (?). I think it’s best if you guys check it out. Note i did have the union i copied the pieces to the panel off of to CollisionFidelity=Hull.


How? Can you provide a repro file?