Viewport box selection's performance degrades over time

After using the box selection tool for a while, its performance degrades. Very badly.

As you can see, after selecting and de-selecting the house enough times, box selecting becomes slower and slower, until it becomes practically unusable. Here’s how studio looked like while I was doing this test. I didn’t have any plugins installed/enabled while recording this. No beta features, either.

Test place file: happyhome.rbxl (25.2 KB)

Another thing to note is that after closing the place file and re-opening it (without closing studio), the performance stays awful. I have to close and re-open studio to reset the performance.

Studio version:
image

Microprofiler dumps

9 Likes

Can support this report, when I attempted to select an entire map of around 5,000 parts in Studio the performance was significantly worse than before the new update was released.

To fix the lag caused I had to disable this option in BETA settings, this fixed the lag for me but it may not be related entirely.

image

2 Likes

You had to re-open studio for beta features to take effect. That’s probably why it got faster all of the sudden.

I can’t reproduce this issue.

Could someone who was having this issue try using the Lua Draggers but with all other plugins disabled? I’m wondering whether it’s somehow a bad interaction with a community plugin over usage of the SelectionService.

Update: Internal QA has been able to reproduce this issue, I will be investigating further.

1 Like

I thought this was just my computer being slow! Turns out it’s probably this bug, selecting multiple objects in studio has become very laggy for me lately.

@XAXA Have you tried turning the Lua Draggers Beta off? If not, could you try, and does that fix it for you? Internal QA is able to reproduce this bug even with the Lua Draggers Beta disabled. Mind sharing what platform you’re working on?

@HoudiniDev So, for you, the problem is not present, or at least not noticeable with the Lua Draggers Beta disabled? Do you mind sharing what platform you’re on?

Hey, thanks for looking into this. Sorry for not responding the first time you asked for more info. When you mentioned that QA was able to reproduce this, I assumed that you didn’t need any more of my input.

Anyway, with the new dragger enabled, the degradation in performance is still there. I forgot to mention this in OP, but I got the same results with and without the beta dragger enabled. And yes, plugins were disabled. Here’s a recent recording.

My frantic mouse moving indicates studio being unresponsive.

For what it’s worth, I don’t think the problem has anything to do with the box selector, necessarily. I bet if you run a script that just does Selection:Set(<a bunch of parts>) and Selection:Set({}) repeatedly you’ll get the same results.

Mind sharing what platform you’re working on?

I’m on Windows 10.

1 Like

I use Windows 10, latest update. This was around two months ago when I disabled the BETA feature as it was absolutely destroying my performance in Studio. It seems to struggle handling a large number of parts. If necessary I’m willing to provide a copy of my current map which was having issues. What I attempted to do was select the entire half of the map, then duplicate, rotate it 180 degrees and move it so it mirrors the map on the other side. This caused studio to pretty much crash and give up. I’m using an expensive high end computer which has never had any issues with performance or lag before this.

1 Like

Yes please, PM me the map if you’re able so I can verify that it’s fixed. With the changes coming next week, there shouldn’t be anything remaining which you would be able to do with the old draggers but not with the new ones thanks to perf differences.

The only remaining perf difference should be that moving stuff with Joint Surfaces enabled will be a bit slower than before, but by a constant factor, not in a way that would freeze up studio.

Can you verify specifically: Are you experiencing this box select perf problem being worse with the Lua Draggers? Or just you had general perf problems?

Performance was only terrible when I attempted to move a lot of parts at once with the new lua dragger enabled, before that I had no issues, I disabled it and restarted Studio and had no lag afterwards.

Okay, thank you very much.

You should no longer have issues starting a drag with a very large amount of parts anymore with next week’s update, the drag will even be a bit smoother than with the old tools.

To clarify: I wasn’t dragging the map as it had to stay on a persistant 4 by 4 grid, I was using the “move” tool and rotate tool when I had issues with the new Lua Dragger enabled.

Yes. The core movement code shared by freeform dragging and dragging with the rotate / move handles is being changed to use a new API allowing for fast bulk movement of lots of parts (will be a publicly accessible API).

1 Like