Deprecating Small CSG Parts

Hey Developers,

Currently our engine allows you to make PartOperations smaller than 0.05. This was never intended behavior and has many adverse side effects:

  • Collisions are sometimes inaccurate.
  • Parts may be rendered incorrectly.
  • There may be divide-by-zero exceptions leading to crashes.

If you are using PartOperations smaller than 0.05 on any axis, please adjust their minimum sizes to be at least 0.05. On January 8th, we will be automatically rounding small PartOperations sizes up to 0.05. This could impact games that depend on the current behavior.

If you are using sizeless PartOperations in order to precisely position objects such as lights, sounds, particle emitters, or billboard GUIs, we recommend that you instead parent these objects to an attachment in order to position them. Attachments do not have a size, so they are better suited for this use case.

We want to unify the behavior between all parts of different types; earlier this year, we reduced the part size limit to 0.05 on basic parts and MeshParts, and now we need to fix the inconsistent behavior by introducing this limit to CSG parts as well.

Thanks,
Developer Relations Team

42 Likes

Thanks for the heads up!

6 Likes

Ah crap. Gotta remake a ton of edits

11 Likes

I’ve switched to MeshParts for most things recently, but I still have a couple of old CSG models with very small parts. Thank you for telling us.

3 Likes

Well time to fix my house model, thanks for the heads up.

2 Likes

Will forward this message on

2 Likes

The goodies just keep coming.

Minimum size is good for me because maybe now my parts will stop sizing too far down from what I want.

2 Likes

To give you guys an idea of just how bad CSG can behave with small dimensions:

(This video is a bit old, the real fun begins at 1:00)

13 Likes

Goodbye small CSG


30 Likes

Welp, this certainly changes everything about my places, since it was built in a tiny with tiny unions that don’t really collide or use the box collision box.

I feel like we should be in a Ro-NightClub with that music.

4 Likes

0.01 part size would make me not care about this… I use tiny unions for gun sights and stuff.

13 Likes

Same, I understand that this change is for the best for a stable environment, but this will break a ton of my handheld and small assets. It’ll take hours of work to go back through all of my projects, find every forced change, and either remove or integrate that union into another.

Seems like a lot of unnecessary work for me.

3 Likes

I would also like to mention that while <.05 unions and meshes can definitely cause a lot of issues, they are still relatively risk-free if used properly (no-collide, box frame, anchored/welded).

I don’t agree with limiting developer freedom in exchange for predictable behavior.

6 Likes

This update to the engine is going to mess up a bunch of my assets, I understand that it is for the best however this just breaks a bunch of the builds that use smaller MeshParts.

5 Likes

This is only CSG not meshparts though

3 Likes

Thanks! I reread it just to make sure, I guess I was worrying over nothing.

This is kinda disappointing, as lots of parts that use CSG in the weapons I make are scaled down to 0.05 or less.
Lots of builders use and rely on this feature and it’d be quite problematic if they don’t know a solution around it.

I hope you don’t go on with this. Or I at least hope you make the limit smaller.

4 Likes

Well looks like I have to scrap over 200 CSG weapon models now…for no good reason…great.

6 Likes

Not gonna lie this makes me a tad bit nervous… What about if those parts are unioned in? I’ve seen parts get deformed in the past despite being unioned, and it has messed up a couple of the builds I have received from my builders. Thank you for the heads up though!

2 Likes