Turn ‘slow’ into an observation

Profiler shows where an app spends time each frame. Optimisation is not a sequence of random code tweaks; it is a loop of reproducing a scene, observing a bottleneck, and testing one hypothesis.

Do not draw final conclusions from Editor numbers alone. Recheck a comparable target device whenever possible.

An order for the first 30 minutes

Do not try to read every module at once. Start with the largest part of the frame budget.

  1. Make the problematic scene and action repeatable.
  2. Find a frame spike in CPU Usage and expand the largest entry under PlayerLoop.
  3. Compare GPU or rendering indicators to form a CPU-wait versus rendering-bottleneck hypothesis.
  4. Observe whether memory keeps growing after a repeated action.
  5. Make one change and rerun the identical scenario.

Use Deep Profile last

Deep Profile exposes call detail but adds measurement cost. Narrow the candidate in normal profiling first, then use it on a short necessary interval.

Record which scenario changed which portion of frame time, not only that FPS improved.

Official documentation checkedUnity 6.1 Profiler Manual ↗