QUOTE(yoda64 @ Mar 27 2009, 05:59 PM)
Vern , I'm very impressed about Your progress .
I had never think , that this where possible with the actual provided plugin ....
I should be the ingenuity of the community is not underestimate
Sorry I missed this! It snuck in at the top of a new page while I was posting! Thanks for the encouragement.
Now onto some ideas regarding putting this into a rig and making it "easy" to use:
First off the proxy can't be a model. It will always have to be placed in a chor from an imported chor only. The newton links are not saved in actions... at all.. nada... no way. So a chor is the only way to store that information... uh... unless someone knows something about it I don't.
A pose however could be added to the squetch rig but... I don't think this is needed. An action would do the trick. The action could even have the correct user properties or poses set to make the rag doll physics work (turning off IK etc). The only part of the action that wouldn't work would be the Newton chains... which... hmm... I'm starting to wonder about that idea....
I have struggled with my idea to use "widgets" on the joints to constrain rotations in the newton chain proxy. So far I have come to the conclusion that newton chains don't recognize the "parent" when calculating collisions. When I created a joint set up with little "stops" to prevent movement they were ignored by both the parent and the child. Totally and completely ignored. The parts just passed right through each each other. I remember now that I encountered similar behavior with my stage crash scene. I had a portion of the stage linked to another part so it would pull the stage down. I noticed that the child object was passing through the parent object. At the time I didn't realize what caused it and i just fixed those frames of penetration by moving that object on about 20 frames. So now I am kind of... stuck... until I figure this one out.
I may have done something incorrectly setting up the physics models, like maybe there was some penetration of models before the simulation which throws it out of whack. so I need to do some very very very simple small scale tests to see if this is true. I kind of was doing that but... maybe small even simpler models.... just one linked chain of two models. Give the joints more space.
CRAZY IDEA NUMBER 2!
I am crazy. I am a nut. I have another solution which I know will work because... uh... well.... I'm pretty sure it will work. I am so close I must give it a shot.
Instead of using Newton chains in a chor I would build the proxy "connected". Actually build a connected body structure. Actually create a little "ragdoll physicis" doll model that is connected together like a real floppy doll. I already have the two models for the joints that "snap" together to create a constrained joint. I already know that newton physics is very accurate when doing small close simulations. This should in theory work like a charm. Just like the pegs on the letters in my sign board. THAT IDEA WOULD HAVE WORKED if Newton chains in a chor reacted to the parent of the chain. They don't seem to.
Imagine a "doll" or "GI Joe" model constructed in 3D "for real". it would have real joints, not "software joints". The joints would work because of the physics simulation not because you clicked a box in a property. I can get past some problem elements like "friction" by using Newton groups in the joint areas that have NO friction at all, reducing the "bounce" just for those parts that touch. If the parts inside the joint have no friction and don't "bounce" too much they would swing and move like a real joint. Like spraying some WD40 in there.
This is "more work" but vastly improves the concept. First off the whole proxy can now be built in an action object as I wanted to do previously. You would drop an action with the constraints for the rig and proxy objects already set up. Maybe the proxy could be built in one model as an explode/breakable object... but... I'm not making any promises. Breakable/explode objects don't behave "exactly" the same as dynamic objects... but it is worth some testing. Plus with some really really really extreme force the legs, arms and head could pop off..
(not really. I would set the force required to some huge value).
This is going to be a bit more... radical. A "real" physically "connected" construction. Instead of using numerical, plugin defined connections and pivot points I would be using the actual simulation within Newton physicis itself to create these chains and pivot points along with the angle limits. There would be actual modeled physical connections to keep the limbs together. My previous idea only needed "blocks" or "stops" to prevent rotation. The newton link property kept the parts together. In this new idea I would have to make the joints in such a way that they stay connected. It will probably slow down the simulation with all of those collisions but it shouldn't be too bad.
I don't know yet how well this will work. I have confidence but.... yikes. I plan to create a small single chain model and test it out this evening some time.
Wish me luck!