Hi, I've been looking into the implicit solver code since yesterday, and made one change which seems to help stability (will be committed soon). Instead of doing the implicit integration on all hairs at once, it is now done on individual hairs. I found that usually the conjugate gradient takes about 4-8 steps, but it sometimes takes 20 or even does not converge, and returns bogus velocities. I'm not entirely sure why that is, but it seems logical that a smaller system would be more numerically stable. What I suspect is that since there are many hairs, and it tests for the average error of those hairs, a few hairs may be able to hide their high error in this average. This is just a guess though, but I looked at all the values coming into the CG function, the forces, their derivatives, etc, on the frames that explode, and couldn't find anything out of the ordinary compared to other frames.
On Sat, May 15, 2010 at 1:12 AM, bjornmose <bjornm...@gmx.net> wrote: > first glance at the example: > same problems reported at ED Plumiferos .. > time ( on goal , colliders any thing 'outside' ) is too discontinuous > reads as: the 'outside' is too fast to keep physics in sync. > this is a intrinsic problem of the blender animation system .. : no > canonic way to ask for the 'inter frame' state of any object. > work around: > 1. isolate physical actors ( with layers, groups ... what ever ) > 2. run isolated system at 1/10 or less time scale > 3. join back in proper time scale > 4. yada yada > .. > ask the the physics wizards, invited to BC Thanks for the pointer, I will definitely look into the effects of this. It seems the cloth/hair solver is interpolating the goal positions between the previous and new frame. So that's not as smooth as it could be if we were interpolating the actual f-curves, but at least should not cause too sudden changes. It may actually be more reliable to do simple interpolation, since animations are tweaked to look good on frames, subframe there may be we weird motions, though that sounds a bit unlikely. I haven't started looking into collisions yet, but they seem to be problematic now, so this may be causing problems. I couldn't immediately find code that does a similar interpolation there, but I imagine a linear interpolation between the locations could be added without major changes. Also there's effectors, if those are animated that's not subframe accurate. I'm not sure how those would be solved without major changes, but with some luck these won't cause many problems. Thanks, Brecht. _______________________________________________ Bf-committers mailing list Bf-committers@blender.org http://lists.blender.org/mailman/listinfo/bf-committers