Have UICorners respect ClipsDescendants property

,

As of right now, UICorners do not respect the ClipsDescendants property of Frame objects

As a Roblox developer, it is currently too hard to … utilize the ClipsDescendants property with Frames that also use UICorner components.

If this issue is addressed, it would improve my development experience because … I will be able to properly clip GuiObjects within Frames that utilize UICorners.

Use cases:

  • Primary usecase is creating a main Frame with a UICorner then anything within the frame being clipped respecting the corners created with UICorner
  • Having a full-sized ScrollingFrame within a container utilizing a UICorner - e.g. for inventory systems, settings screens, anything with large amounts of objects
118 Likes

I use rounded UI extensively in my game. There’s no good way to fit a rectangular clipping box into a frame with rounded corners. We badly need to be able to mask the corners. Deserves a bump.

25 Likes

As of 5/30/2022, there is still no support for this feature.

11 Likes

The usecase looks like it will be convered by the new CanvasGroup feature.

7 Likes

We really need this, wish it had been implemented already. All these little things that should work but don’t add so much friction to making UI

12 Likes

Bumping this because I’ve not seen it mentioned on the roadmap, and it definitely would a be a great QoL improvement

CanvasGroups or CanvasFrames (forgot the name) have this functionality - use them instead for now.

Unfortunately, at low graphics qualities, they crap out. It makes the UI inside look blurry and pixelated.

You also can’t effectively ‘disable’ the canvasgroup so it renders like just a frame. That would be useful for only using it to fade in/out some menu. The settings menu does this, with the right flags enabled.

This.

CanvasGroups being pixelated, or even completely black in some cases really sucks.

As for “disabling” them, you can switch the ScreenGui ZIndexMode to Global, but of course that has some side effects. You can make it behave the same way as Sibling mode, but its a bit of a hassle.
Personally I have a module that changes the parent of all contents of a ui to a CanvasGroup when fading in/out, and then back to a normal frame. This works but unfortunately causes a flicker for 1 frame in some cases.

3 Likes

As of May 2024 it seems this post is still receiving interaction. Everything in Studio still looks the same on my end (osx aarch64) can anyone verify for me if this issue has been addressed?

1 Like

There are a few cases where someone would want UICorners to NOT respect the ClipsDescendants thing, so it hasn’t been adjusted outright.

The behaviour you are wanting can be achieved as mentioned in a previous reply, namely that you can make use of “CanvasGroups”. It acts similarly to frames, with a few differences, mainly the change in ClipsDescendants behaviour.

Oh great. Another inconvenient, unfinished, memory-expensive workaround that is not only subject to random change but also subject to down-res fallbacks among other glaring limitations.

I’m going to kindly ask you to name just two different use cases here. Real world use cases that would actually NOT benefit from an additional boolean property on the UIObject representing its relationship with parent clipsdesc.

edited for tone

2 Likes

Roblox isnt that dedicated to backwards compatibility, when the expected behavior by pretty much everyone is that ui corners should be respected by ClipDescendants

1 Like

2024, still waiting for this feature. Considering the release notes just recently added the below feature, it seems more possible to see the ClipsDescendants with corner support nowadays.

CanvasGroups, despite supporting this, are not a valid solution for this due to them rendering as black squares (with no warning to the dev) when the device is low on memory.

1 Like