Search Issue Tracker

Won't Fix

Votes

0

Found in

2018.2.14f1

2018.3.0a1

2019.1.0a1

2019.2.0a1

Issue ID

1095537

Regression

No

AnimationCurve.Evaluate() makes glitchy animation when used with System.Threading.Tasks.Parallel.For()

Animation

-

How to reproduce:
1. Download, extract and open user's attached project (New Unity Project.zip)
2. Open 'Scene'
3. Select 'NoiseViewer' object in the Hierarchy and in the 'Noise (Script)' component, change Scale to 50 to see the issue more clearly
4. Enter Play mode
5. Move around the X coordinate in the same component to see the issue

Expected result: Animation displays normally
Actual result: Glitchy green lines are appearing over the animation

Reproduced with: 2018.3.3f1, 2019.1.0a14, 2019.2.0a1

  1. Response avatar

    Resolution Note (fix version ):

    AnimationCurve implementation is not thread safe. It uses a cache internally to speed up calculation and this will not behave properly when called concurrently. While you may evaluate a curve in a thread, you may not evaluate the same curve in multiple threads.

All about bugs

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