I’ve created an Inventory UI liberally using CanvasGroups for their ease of editing their contents’ transparency. When I came home on Monday after being away since Friday, I began encountering a visual bug I hadn’t seen at all prior where occasionally CanvasGroups that I had tweened visible (GroupTransparency to 0) weren’t drawing until a property of theirs changed.
Here is a video of the phenomenon:
What’s happening in the video: Each of the 4 buttons at the top are their own CanvasGroup that are visible and have a GroupTransparency of 0, but only begin to actually draw (the UIStroke is unaffected) when the white selection vignette child becomes visible when the mouse enters the button… The background, its own CanvasGroup, also doesn’t draw, only drawing when the button menu at the end opens and changes one of its properties, the text subtitle at the bottom. I’ve included a repro file and instructions for reproducing in the staff-only section.
This is a considerate blocker for me, as UI elements not drawing looks very unpolished and can poorly communicate to the player what items they own.
System Info: CPU: Intel(R) Core™ i7-10700F CPU @ 2.90GHz Memory: 32.0 GB GPU: NVIDIA GeForce RTX 2060
Issue Area: All Platforms Issue Type: Visual Bug Impact: Moderate Frequency: Inconsistent Date First Experienced: 2023-04-24
After more experimentation, I’ve found that resizing the viewport when CanvasGroups aren’t drawing is another way to force them to draw correctly. I now heavily suspect that this bug is due to the unique Draw Call behavior of CanvasGroups, perhaps a faulty cache.
Hi! If you check the private message associated with this devforum post, you’ll see the repro file as well as repro instructions
I believe this issue is memory related, I’ve done some work to heavily reduce the number of CanvasGroups in use and the issue has almost entirely disappeared
It’s frustrating when stuff on Roblox is inconsistent. When you go to test and something doesn’t work one time out of 25 and nothing has changed, it makes you question certain features.
Had an issue with a CanvasGroup not rendering… Ran it a couple times it just fixed itself. Now im wondering if I have to remove all uses of CanvasGroup or just ignore it…
If a CanvasGroup has 4 or more CanvasGroup ancestors, the CanvasGroup will render totally white no matter its properties or children. (We won’t be able to see its children anymore)
To reproduce this bug, the CanvasGroup can have any ui elements as ancestors. The ancestors just need at least 4 CanvasGroups.
It can be : CanvasGroup > Frame > CanvasGroup > CanvasGroup > CanvasGroup > Frame > CanvasGroup
It’s the same as CanvasGroup > CanvasGroup > CanvasGroup > CanvasGroup > CanvasGroup
And the last CanvasGroup will render white because it has 4 CanvasGroup ancestors.
Just over a year later and this issue is still ongoing, and updating a property won’t render the CanvasGroup at all for me (I can still interact with the button in it though).
Hi, we have rolled out a fix that could potentially fix this issue, could you mind trying it again? We are also actively looking at other fixes that would make canvas group render stabler.
Also getting issues in my game with CanvasGroups. Did not experience this bug before today. Randomly occurs on start, and if it happens it happens to all of them.
I’ve had this exact issue today only too, haven’t changed anything with them either. also with progress bars in canvas groups. only noticed it 10 mins ago or so