Skip to main content
3 of 4
appended answer 63753 as supplemental
iKlsR
  • 43.7k
  • 12
  • 157
  • 190

How to inspect cyclic dependency errors

This is my first post here.

I'm a bit a newbie regarding rigging, and I have been modeling a number of mechanical devices for animating. I have been receiving different kind of errors due to cyclic dependencies and so on.

Although the rigs seem to work, they don't update properly when I try to render the animation; a sort of "manual refresh" is needed before rendering each frame, or objects won't get correctly placed. I guess this can be due to those cyclic errors, but it's difficult to trace them!

The System Console is the only tool for this? I can't copy-paste easily, search, not read the full text or getting old messages. Can't I inspect dependency errors directly within the app?

Many thanks in advance.

For those interested, I'm adding some images of the model:

Rigged model

The upper bone (red rectangle) controls the full scissor mechanism, with cylinders and security system moving around.

Render error

When rendering an animation, I get that result: cylinder orientation is not correctly updated, you can see both parts of the cylinder don't match. The same happens in the security system on the left.

The problem does not appear if I move and render still frames. Weird! 1: https://i.sstatic.net/Chn42.png 2: https://i.sstatic.net/fjpAo.png


I have uploaded the model, for those interested. The upper red rectangle-bone controls all (or it should...)

[Mechanical Rigging Issues][3] [3]: https://mega.nz/#!t8dRHTgB!TL0ZSd_9_fCptdUPivszF8PnBmmGH-o_zUMO1omH_jQ


I have switched those options and this is the result, which looks even worse: enter image description here

The approach I'm following for rigging all my mechanical models is building a bone armature which behaves as the real model and then parenting all the mechanical parts to different bones. Most armatures are quite simple, with some basic maths and simple constraints, but I'm getting these kind of problems all the time.

Manually switching frames seems to work, with a tiny delay/jump barely noticeable, although existent (which is weird...). No problem wen rendering frames. However, when rendering animations or different poses along different keyframes, update is not correctly done.

I first managed to do these riggings without bones, just with math, dummies, and constraints. All worked fine in that scenario, so I guess it's some sort of problem with bones configurations.

I have done a simple test with OpenGL rendering along four frames. First row shows the result I get when rendering the animation, while second row show the result rendering individual frames after switching them. The result is quite different, but you can see that bones seem to behave properly in both cases, with "bad parenting" of the components, much more noticeable when rendering the animation (you can see the cylinder is not correctly positioned in any case).

enter image description here

Any clues about why components are not properly tied to their parent bones???

Thanks for your interest, I will continue working on this...