What are "Dirty Scene Objects" in Animator.Update in the Profiler

In the profiler I am getting a large percentage for “Dirty Scene Objects” this falls under Animator.Update. What is this referring to?


Unity internally uses the dirty flag to find out when assets have changed and need to be saved to disk.
You can read document here : Unity - Scripting API: EditorUtility.SetDirty

Maybe @RomainFailliot can shed some light on what DirtySceneObjects does? And how to best optimize it’s usage?

We need to change the profiler marker name, code was moved around but look like we forgot to update the profiler marker name, it should be Animator.WriteProperties.

This code is executed from main thread and it does write all component properties: float, int, bool, and object reference like sprite.
It does also send a transform change callback to update the whole transform hierarchy.

So either you have a lot of properties to write or your transform hierarchy is really big.
One error that we saw a lot is some users have the bad habit to regroup ennemies under a single root transform, this is really bad as it prevent us to write all transforms in parallel, but I don’t think this is your case because the WriteJobs marker would be a hot spot too and I don’t see it in your capture.

So my guess is that you are writing a lot of properties.

there is nothing that come to mind that could explain this behaviour.

If you are willing to log a bug report with your project exposing the issue we will investigate it.