Studio Beta: CSG Has a New Engine - Vroom, Vroom, Vroom!

where feature :face_with_raised_eyebrow: :face_with_raised_eyebrow: any update of when is it coming out?

2 Likes

For some reasons, this CSG version slows down physics whenever I run it on my system, even with just a baseplate.

1 Like

To do with CSG. I recently just hopped into studio with someone who said he kept getting an error when trying to use union. I tried and the same issue happened to me so I looked around the devforum and found very little on the situation

Here is the place that he’s using: UnionProblem.rbxl (1.5 MB)

1 Like

Unfortunately this new engine makes it basically impossible to union things for me. If the union does work, a part is missing for some reason. If I ingroup it and try unioning it again, it just throws the classic -11 error.


image

Here’s the object, grouped in a model:
problematic object.rbxm (4.7 KB)

I’m only posting this here because I do not have access to post things in bug reports.

1 Like

I tried this beta feature and was dismayed that the most obnoxious CSG “feature” has apparently not changed. Applying Materials and BrickColors to a Union still does not work. I don’t see why this would be a hard thing to fix. If it works to separate everything down to its component blocks, then apply the color and material, then re-union them back, then why not just make the tool automatically run through exactly that sequence of steps in the background every time you tell it to apply something to a CSG part?

1 Like

Sorry to bump, but has been there any updates to the smoothing angle on CSG V3? Smoothing angle doesn’t work properly on V3 when applying it to complex union parts, it works on the old CSG V2 engine but it has “brick-shifting” issues when trying to union parts.

3 Likes

i have just noticed it is forced onto the user, is this correct?

to add along, will there be an option to disable the part-takes-colour-from-negate “feature”, its really annoying and severely disrupts my workflow :frowning:

4 Likes

Hi Stef, there is an “UsePartColor” option in the property menu. Enabling it will disable the part-takes-colour-from-negate feature. Does this work for you?
UsePartColor

5 Likes

Sadly not, as 1 union can use multiple colours, same issue is stated here

doing each part seperately is an option, however, this can really slow down my workflow aswell as having a higher risk on BrickShift

3 Likes

Hi onboquo,
We can change/apply one material and one BrickColor to a Union (to see the brick color, you need to check the “UsePartColor” box). At Union level, we don’t have the access to the materials/colors of its component blocks. Separating the union is a simpler way to allow you to pick the component block(s) of your interests and apply/change the color(s), otherwise, the colors in the CSG tree of the union has to be exposed.

2 Likes

Hey, i’ve been having an issue that I am wondering if it will be fixed?

Unioning specialmeshes with cylinders as a way of rounding was never an issue with CSG V2 as shown here, on this dome.


This was all made with specialmeshes and cylinders.

Using CSG V3, I will try and union this, a specialmesh set to sphere on a cylinder.

…And it turns into this.

Why is there a gap?

5 Likes

Hello estonice2, the gap should disappear if you use the default sphere and cylinder, or sphere/cylinder both in special mesh. If this doesn’t solve your problem, please DM the model and I will take a look at it.

4 Likes

The methods provided do work, thanks!

As a side question though, will the method of combining a cylinder and a part with a specialmesh set to sphere be supported in the future?

3 Likes

Using SubtractAsync() within a script causes the union’s lighting to break. For instance, my game uses it to cut portions of the ceiling out, which is shown below.


Also, below is an example place that reproduces the problem I have with unions.
union_file.rbxl (42.2 KB)

2 Likes

This inverted face issue broke my world builder and thus the 2D game builder I was working on.

function GameManager.validateUnion(negParts, originPart)
	local opResult = nil
	-- noticed around 2 Sep 2022 that Textures and Decals sometimes 'invert faces' and show scewed images
	-- after being parented to an opResult: impacts OffsetStudsU formula and texturing throughout :-( 
	opResult = originPart:SubtractAsync(
		negParts, 
		Enum.CollisionFidelity.PreciseConvexDecomposition, 
		Enum.RenderFidelity.Precise
	)
	if opResult then
		opResult.Name = "_"..originPart.Name
	end
	return opResult
end
4 Likes

@Blast4300 Thanks for providing an example place. We have a fix that’s waiting to be deployed for this issue but i’ll make sure to test this place too

3 Likes

Update, even the methods you provided didn’t work.
I’ve noticed that they break a lot of times but sometimes they’ll work fine.

Here are some parts that i’ve put together to demonstrate:
PROBLEMATIC.rbxm (50.0 KB)

4 Likes

Thanks for the demonstration model. We’ve reproduced and filed a ticket in our internal database.

5 Likes

Hi, has been there any recent updates regarding about the faulty smoothing angle on CSG V3? Smoothing angle doesn’t seem to work well on very complex primitives compared to CSG V3.

4 Likes

FYI: the seam is due to the csg3 ball not being perfectly symmetric - there is a work around described here : CSG v3 breaks older unions made with v2 with specialmesh spheres - #5 by mrrblato
We are also working on a complete fix (which would make the csg3 ball symmetric around all three axes).
Thanks!

7 Likes