Selecting objects containing a massive number of descendants makes studio hang, and in some cases freeze

Two points of pain:

  1. Selecting and deselecting objects in studio with a huge number of descendants will cause studio to hang.
  2. Objects (or even just one) with a huge number of descendants under the Workspace tank render FPS when selected

On point 2, the hover-over selection box seems to have a similar performance hit to a full selection. It can be seen in the second clip below.

I have tested:

  • with my usual plugins installed, and with no plugins
  • with studio betas completely disabled
  • with and without team create enabled
  • in a “real” game file, and in a solo repro
  • with Box and Outlines selection styles

Behavior has remained consistent for both selection issues in all test cases. Freeze ups were worse in the game file presumably because of the extra complexity of the selections descendants.

I am running these tests on an:

  • Intel i7 10700k
  • 64GB RAM
  • RTX 3070 ti
  • Windows 10 Home 64bit

When running these tests, I monitored CPU usage in the task manager. While RAM usage increased by quite a lot (expected), CPU usage never went above 30%.

A reproduction place can be accessed here: Whole Lotta Baseparts - Roblox . Inside ReplicatedStorage are 5 models containing hundreds of thousands of parts and meshes in various configurations. ~770k total parts, ~1m Instances.

I have been having performance issues with selection in my game file for as long as I can remember, but recently (best guess, ~5 months) it has gotten noticeably worse.


This clip is from my game file. Some of these folders contain hundreds of thousands of parts let alone instances, and vary heavily in object type and density.


This clip is from the linked repro place. It shows the huge reduction in FPS when the selection is in the workspace, and the slight hiccups when selecting the single model. Seen too is a huge drop in FPS when hovering over the model before selecting it.

5 Likes

Additionally, expanding an instance with a large number of children in the explorer causes intermittent frame drops that last for about half a second each few seconds. This happens whether or not the instance is selected, but the instance must be changed for frame drops to occur.

Thanks for the report! We’ll follow up when we have an update for you.

1 Like

Does this happen to you if you have no draggers selected at all (including Select)?

1 Like

I do not get performance hits when there is no dragger selected. I only get these performance drops when a dragger tool is selected.

Tested in the repro place and in my game file, both with plugins enabled/disabled. Same results each time, no dragger no issues.

1 Like