Search Issue Tracker

Active

Under Consideration for 2022.3.X, 6000.0.X, 6000.1.X, 6000.2.X

Votes

6

Found in

2022.3.63f1

6000.0.50f1

6000.1.6f1

6000.2.0b5

Issue ID

UUM-108780

Regression

Yes

[Android] "Adding null Transform to TransformAccessArray will result in degraded performance" warnings printed when loading and unloading scenes with 2D animated characters

-

Steps to reproduce:
1. Open the attached user's project "NullTransform2DAnimBug.zip"
2. Build and Run for Android
3. Press "[Swim]" to confirm that the first 2D animated fish will swim
4. Press the Toggle and then Scene buttons to load a second scene with a second animating character. You can tap the screen to set this fish's target point
5. After toggling the second character scene a couple times, you will notice warnings reported by the Jobs system about the 2D animation system code using the TransformAccessArray improperly

Expected Results: You should be able to load and unload scenes with 2D animated characters and not get this warning
Actual Results: The multiple warnings will now be output to Android logcat when either fish becomes visible in the scene

Reproducible with: 2022.3.63f1, 6000.0.50f1, 6000.1.6f1, 6000.2.0a4, 6000.2.0b5
Not reproducible with: 2021.3.52f1, 2022.3.62f1, 6000.0.46f1, 6000.1.0b14, 6000.2.0a3

Reproducible with these devices:
VLNQA00422 - Galaxy S21 Ultra 5G (SM-G998B), CPU: Exynos 2100, GPU: Mali-G78, OS: 11
VLNQA00381 - Xiaomi Redmi Note 8 Pro (Redmi Note 8 Pro), CPU: MediaTek Helios G90T MT6785T, GPU: Mali-G76 MC4, OS: 9
VLNQA00282 - Samsung Galaxy S10e USA (SM-G970U), CPU: Snapdragon 855 SM8150, GPU: Adreno 640, OS: 9
VLNQA00172 - Samsung Galaxy S8 (SM-G950F), CPU: Exynos 9 Octa 8895, GPU: Mali-G71, OS: 9

Environment tested: Windows 11 24H2

Notes:
-Issue does not reproduce in Editor
-The complete stack for the warning:
Adding null Transform to TransformAccessArray will result in degraded performance.
UnityEngine.U2D.Animation.TransformAccessJob:UpdateTransformIndex()
UnityEngine.U2D.Animation.TransformAccessJob:StartWorldToLocalJob()
UnityEngine.U2D.Animation.BaseDeformationSystem:PrepareDataForDeformation(JobHandle&, JobHandle&)
UnityEngine.U2D.Animation.CpuDeformationSystem:Update()
UnityEngine.U2D.Animation.DeformationManager:Update()

Comments (2)

  1. papercult

    Jun 16, 2025 14:47

    Additional info, this was introduced in 6000.0.47, specifically through this bug fix.

    https://issuetracker.unity3d.com/issues/transformaccessarray-dot-add-behaves-differently-when-the-argument-is-null-and-the-argument-is-an-int

    That was a big change for an LTS release. Makes anything after 0.46 unusable for us.

    Creates issues with some of unity's own tools, but also with a lot of 3rd party assets.

  2. pinestcw

    Jun 11, 2025 20:57

    I believe this warning was added without regard to how Unity's own 2D animation system uses null items in the TransformAccessArray. These null entries are left when the animation system is restarted after a scene unload.

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.