Page MenuHome

moving keys on a rig, Crash
Closed, ResolvedPublic


System Information

Blender Version
Broken: blender-2.80.0-git.1a865b4ff01-windows64
Worked: none 2.8

Short description of error
Moving keyframes makes some rigs very unstable, with flickering and often resulting in a crash. Renders and baking of frames give out of sync results with unusual stretching of bones.

Exact steps for others to reproduce the error
simply move a key frame, only crashes when several bones are keyed.

Event Timeline

Philipp Oeser (lichtwerk) lowered the priority of this task from Needs Triage by Developer to Confirmed, Medium.

Cant get it to crash, but can confirm the flickering.
@Joshua Leung (aligorith) , @Sergey Sharybin (sergey) : have an idea?

@Philipp Oeser (lichtwerk), can not reproduce the crash, but maybe i'm doing something wrong. What are the exact steps to crash this file? Also, mind testing with -t 1 command line argument?

@Sergey Sharybin (sergey): -t 1 seems to solve the issue

What I did:

  • open file
  • deselect all bones
  • select a couple of bones in the spine
  • Timeline > Dope Sheet Summary > select right key
  • grab, move left and right --> flickering (might take some wiggeling, but should eventually show up...)

edit: got a crash, too

1  fcurve_eval_keyframes                                                                                                                                                 fcurve.c       2323 0x2733b2e      
2  evaluate_fcurve_ex                                                                                                                                                    fcurve.c       2777 0x2734c90      
3  evaluate_fcurve                                                                                                                                                       fcurve.c       2800 0x2734dae      
4  calculate_fcurve                                                                                                                                                      fcurve.c       2863 0x2734f9a      
5  animsys_evaluate_fcurves                                                                                                                                              anim_sys.c     1726 0x2684d71      
6  animsys_evaluate_action_ex                                                                                                                                            anim_sys.c     1851 0x2685133      
7  BKE_animsys_evaluate_animdata                                                                                                                                         anim_sys.c     2751 0x2686b9e      
8  BKE_animsys_eval_animdata                                                                                                                                             anim_sys.c     2934 0x2687b19      
9  std::__invoke_impl<void, void ( *&)(Depsgraph *, ID *), Depsgraph *, ID *&>                                                                                           invoke.h       60   0x2be6ad7      
10 std::__invoke<void ( *&)(Depsgraph *, ID *), Depsgraph *, ID *&>                                                                                                      invoke.h       95   0x2be5895      
11 std::_Bind<void ( *(std::_Placeholder<1>, ID *))(Depsgraph *, ID *)>::__call<void, Depsgraph *&&, 0ul, 1ul>(std::tuple<Depsgraph *&&>&&, std::_Index_tuple<0ul, 1ul>) functional     400  0x2be4465      
12 std::_Bind<void ( *(std::_Placeholder<1>, ID *))(Depsgraph *, ID *)>::operator()<Depsgraph *, void>(Depsgraph *&&)                                                    functional     484  0x2be2849      
13 std::_Function_handler<void (Depsgraph *), std::_Bind<void ( *(std::_Placeholder<1>, ID *))(Depsgraph *, ID *)>>::_M_invoke(std::_Any_data const&, Depsgraph *&&)     std_function.h 297  0x2bdff25      
14 std::function<void (Depsgraph *)>::operator()(Depsgraph *) const                                                                                                      std_function.h 687  0x2bf6b5d      
15 DEG::deg_task_run_func                                                                                                                                          94   0x2bf62f0      
16 handle_local_queue                                                                                                                                                    task.c         419  0x2bba3c5      
17 task_scheduler_thread_run                                                                                                                                             task.c         448  0x2bba3c5      
18 start_thread                                                                                                                                                                              0x7ffff633c58e 
19 clone                                                                                                                                                                                     0x7ffff6265513

something with the FCurve bezt pointer magic in fcurve_eval_keyframes()?