Layered clothing causes lag spikes when updating unrelated part properties

Reproduction Steps

If a part property is changed under a character wearing layered clothing (LC) - including ones which aren’t related to LC and its wrapping at all like humanoid root part color - a noticeable rendering delay occurs. If this is done on every frame, CPU usage peaks and framerate drops. I assume this is because of internal recomputations related to the LC, but those should only be triggered if really necessary.

Open the attached place file
lclag.rbxl (221.0 KB)
and run it. Lag is initiated and paused in a 10s interval, as printed to the output. Lag is caused by the script in ServerScriptService.

Expected Behavior

No lag spikes caused by LC-unrelated changes to the character.

Actual Behavior

Noticeable lag spikes caused by LC-unrelated changes to the character.

Issue Area: Engine
Issue Type: Performance
Impact: High
Frequency: Often
Date Last Experienced: 2023-03-15 00:03:00 (+01:00)

3 Likes

This is a known issue that we are currently working on, thanks for your patience.

In the meantime. For accessory parts, if you move them outside of the character’s Model hierarchy, that should avoid the lags. For avatar parts that can’t be moved, you’ll have to avoid these property changes until we’ve finished our optimizations.

Related thread:

5 Likes

To add to this forum, I’m also having issues with layered clothing.
Playing and stopping an animation on a character who’s wearing layered clothing causes the device to lose frames. The severity depends on how detailed the layered clothing piece is, and I believe how fast the transition into the animation is as well.
Are you working on this issue as well? What timestamp can I expect this problem to be fixed by?

2 Likes

Animation changes should not trigger LC rebuilds. If you think it is, can you please post a new bug report for better visibility? Thanks.

2 Likes

Would like to add this:


it causes GraphicsTextureCharacter to increase overtime and it does not decrease. This only occurs with layered clothing and is a possible memory leak.


I found that the exact moments it increases is when I add a highlight to my character (not the actual roblox highlights but my own). I clone all the parts such as arms,legs,head,etc and increase the size, make it transparent, destroy all children, and weld it ontop of the original limb after setting the color and destroy it after a few seconds.

This did not lag my game prior and I did not make any changes to my character auras.

Can you please submit a new bug report for this too? Having multiple bug reports in one thread is difficult for us to manage as they may have very different root causes and may need to be addressed by different groups. Thanks!

1 Like

I am unable to submit new bug reports.

I do believe this falls under the same issue though as its the same replication. I am just stating that when the lag spikes occur they dont go down implying it could be a memory leak.

1 Like

We understand the source of the lags and have an improvement for that in progress, but we had not seen reports of a memory leak before this. They may be two seperate bugs, or it may be an issue specific to your setup. Do you have a simple test place you can share?

2 Likes

I made this test place. Pressing Q will create a character aura for 1 second. I encourage you to try this without wearing any layered clothing then try with layered clothing and watch GraphicsTextureCharacter rise everytime u press Q along with an fps drop.

Just so you know exactly whats going on as well. The character aura simply clones all the body parts and changes things like color, size, material, etc then welds it to the original part and parents it to that same part.

2 Likes

Hi Bedevere. I just posted a new thread regarding my issue. Below is the link to it. Please have a look at the problem. Thank you.

1 Like

Can you please start a new thread for the memory leak issue? Thanks.

1 Like

Like I said before I am unable to create topics in bug reports unfortunately but maybe someone can do it on my behalf.

Yes, I understand. Can you start a thread in Help and Feedback? For example:

1 Like
1 Like