no, I couldnt keep it stable for more than maybe 20 minutes. It would slowly due to numerical inaccuracy start to behave strange. Or I would add a force that would act like a bowling ball on it and blow all the vertices out. I also found that forces would dampen out the pendulum motion.
it was rather frustrating
I moved to a verlet and it fixed majority of issues. I have found though new problems since last week. Mainly because I based my code on unit length of 1. Which isnt scaling well. I've had a problem with airfriction as I was using velocitysquared and computing air friction base on that.
btw I think I meant to say "I need to apply forces to the constriants", which is the barraf approach. Forces between the particles. I tried this on friday, and I tried the root translation too, problems are pretty bad.
I'm guessing here I need a more versatile constraint system that will rapidly itterate through. The problem with translation of root bone it doesnt handle rotations too well. My test is a handkerchief and its attached to a hand.. rotate and I get motion left and right quite large motion.
I can run the constraint solver 6 times and it removes a vast amount of this. I think that because I'm using pinning and not collision this too effects things, because the collision would effect much more of the mesh, effectively dragging it. Though even just pinching it ( like an 18th century french aristocrate ), I think in a 2nd order model ALL the particles would have acceleration to them, not just the pinned particle, because this data isnt getting added ... its stretching..
I also tried taking the energy in the pinned transform, and applying it to the rest of the mesh as acceleration added to the velocity derived in the verlet, this would dampen out using length^2 from the pin motion. I dont like this though because of itterating through multiple pins.
so its back to the constraint pairs. I believe the fix should be here. I do need to avoid mulitple itterations though. I am wondering if there is some midpoint that always comes out between large movement of a single pin that could be calculated to approximate, IE detect large pinn motion, then use an approximation solver, then run regular solver once.
most of this is still 'thinking out loud'
andi