Performance regression in FinalizeMovement / CharacterController.Move after upgrading Unity 6000.0.61f1 → 6000.0.70f1

  • A* version: 5.4.5
  • Unity version: 6000.0.70f1 (regression introduced when upgrading from 6000.0.61f1)
  • Movement Script: AIPath + CharacterController

Hi,

After upgrading Unity from 6000.0.61f1 to 6000.0.70f1, we noticed a significant performance regression with 20+ NPCs using AIPath.

Profiler hotspots after the upgrade:

  • AIPath.FinalizeMovement → CharacterController.Move_Injected
  • Physics.Raycast (per-agent ground detection)

Both were within acceptable range on 6000.0.61f1 with the same scene and same agent count. The only package relevant to A* that changed in this upgrade is com.unity.burst 1.8.25 → 1.8.28.

Questions

  1. Any known issues with AIPath + CharacterController between Unity 6000.0.61 and 6000.0.70?
  2. Would upgrading to 5.4.6 help?

Thanks in advance!

I don’t see anything in 5.4.6 that I think would be related. What level of performance degradation are you seeing and with how many units? Does 20+ mean 100s or just maybe 30?

If you’re in a situation where you’re able to, I’d also try downgrading Burst unless 1.8.28 is a dependency for something in 6000.0.70f1

Thanks for the response!

To answer your questions:

  • We have approximately 20 NPCs in the scene
  • Performance dropped from 56 FPS down to 8 FPS after the upgrade — same scene, same agent count

We tried downgrading Burst back to 1.8.25 but the performance issue persists.

Since the only remaining change is the Unity editor itself (6000.0.61f1 → 6000.0.70f1), we suspect this may be a regression in CharacterController or Physics at the engine level between these two versions.

Yeah I’m not seeing this on my end at all- the only difference is that I’m on 5.4.6, but I don’t even see anything in the patch notes that would suggest this would’ve been different. That’s a rather extreme loss of performance though. Can you send a sample of this or a repro of it?

Thank you for the response! After further investigation, we found it wasn’t an A* issue — the regression was caused by a change in Unity’s physics processing after the upgrade. Adding a kinematic Rigidbody to our trigger colliders resolved it.

Ahhh gotcha. Thanks for the update :slight_smile: