Search Issue Tracker

Active

Under Consideration for 6000.0.X, 6000.2.X

Votes

0

Found in

6000.0.59f1

6000.2.7f1

Issue ID

UUM-122354

Regression

Yes

Editor performance degrades when PlayableDirector with multiple bindings remains visible in the Inspector during Play mode

-

Steps to reproduce:
1. Open the attached “IN-116503_PlayableDirectorTest - FAV 3 - New Project - URP.zip“ project (link in the internal comments)
2. Open the “SampleScene”
3. In the Hierarchy, select the “PlayableDirector” object so that it is visible in the Inspector
4. Enter Play mode
5. Monitor performance using the Game View’s Stats window (recommended) or the Profiler
6. Wait for 10 minutes or more (1 hour+)
7. Observe the increased CPU main thread time
8. Select a different object in the Hierarchy
9. Observe that the performance returns to normal

Expected result: Editor performance should remain stable regardless of whether PlayableDirector is visible in the Inspector during Play mode.
Actual result: Editor performance gradually degrades over time when PlayableDirector is visible in the Inspector during Play mode, with high CPU usage in PlayableDirector.OnInspectorGUI

Reproducible with: 6000.0.0b12, 6000.0.59f1, 6000.2.7f1, 6000.3.0a6
Not reproducible with: 2021.3.56f2, 2022.3.67f2, 6000.0.0b11, 6000.3.0b1, 6000.3.0b4, 6000.4.0a1 (PlayableDirector component is still creating poor performance in the user’s project but no performance degradation over time was observed)
FAV: 6000.0.0b12
Fixed in: 6000.3.0b1

Reproducible on: Windows 11 Pro (24H2)
Not reproducible on: No other environment tested

Notes:
- The initial CPU main thread time per frame, when a GameObject with a PlayableDirector component is selected, is already +25 ms (50 ms → 75 ms) when compared to nothing selected in the Hierarchy or any other GameObject being selected in the Hierarchy and displayed in the Inspector. It stays at 75 ms per frame for about 10 minutes - 1 hour (seems to be version dependent) and then starts slowly downgrading more and more. The longer you keep it running, the worse it gets (test system specs are available in the internal comments)
- On 6000.3 and 6000.4 streams, the performance of PlayableDirector is still bad (33.3 ms → 50 ms CPU main thread frametime), even when it does not seem to be doing anything, but the performance does not degrade over time
- For the most consistent reproduction, have only the primary display connected, do not allow the display to go to sleep and keep the Unity Editor always in focus, as losing focus will reset the test
- Hovering the mouse cursor over the Hierarchy elements and moving it between different Unity Editor windows will temporarily increase the frame time significantly, but that is NOT an indication of reproduction, as the performance degradation needs to happen on its own
- Could not reproduce in a new project with the 3D Built-in rendering pipeline, but the 3D URP and 3D HDRP reproduce the issue. No other project templates tested
- Having many bindings on the PlayableDirector seems to be an important step for reproduction but due to time constraints, CQA was unable to test how many bindings are required for the issue to reproduce (only tested with 12 and 0 bindings)

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.