Search Issue Tracker

Won't Fix

Votes

0

Found in

2018.2.14f1

Issue ID

1095537

Regression

No

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

Animation

-

-

Priority: 7Not yet prioritized for a release

-

Severity: 3Secondary functionality broken

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

Response avatar

Resolution Note:

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.