Wednesday, June 18, 2008
Ragdoll physics approach?
Wednesday, June 18, 2008
Greetings community,
What do I really mean? A clip of a person that I can pick up by the head, move around & get some sway in the arms and legs (within normal human body ranges), and I can place back down without them falling down (they always land on their feet and stand @ attention). The "person" would not need to rotate in 3D space, and I don't think there would need to be velocity injected on a side to side drag.
I am looking for some source or ideas or validation for the following application feature:
By now you've all probably seen street view for Google maps. It's a great feature, and on the map is an icon of a person, which you can pick up and drop where you'd like to set your location. Cool enough. I am looking for something similar, but using a little ragdoll physics. Maybe, or maybe not.
What do I really mean? A clip of a person that I can pick up by the head, move around & get some sway in the arms and legs (within normal human body ranges), and I can place back down without them falling down (they always land on their feet and stand @ attention). The "person" would not need to rotate in 3D space, and I don't think there would need to be velocity injected on a side to side drag. My initial thoughts were that I could simply add a little random movement in the limbs, and the random ranges would be set by me to mimic IK. Since the "person" could only be manipulated by grabbing their head, this probably doesn't need to be true IK at all, or even ragdoll.
I could use a shadow to create the illusion of 3D space (grab the head and drag upwards = growing shadow beneath... but only a certain number of pixels allowed in the upwards grab).
Now, if there were items in the scene that we no-no's in regards to placement (tables, chairs, stairs, outside a defined space, etc.) then that movement could probably be detected with an offset of the head location during the grab.
Does this seem like the correct approach? This would be to drag a "person" around a top-view or 3/4 view inside rooms in a home.
Update:
I have the basics working pretty well already, but the one thing I need to do in regards to simulating IK is when the upper arms rotate (using TweenLite for AS3 and a method to produce a range of random values based on rules), the lower arm needs to remain pinned to the bottom of said upper arm segment (think elbow), while introducing some of its own rotation.
In a way this is pretty fake IK, but I think the effect will work.
I *could* use the onUpdate method and reposition the x,y of the lower arm segment while it does it's own rotation. This should probably suffice.
Update:
I have the basics working pretty well already, but the one thing I need to do in regards to simulating IK is when the upper arms rotate (using TweenLite for AS3 and a method to produce a range of random values based on rules), the lower arm needs to remain pinned to the bottom of said upper arm segment (think elbow), while introducing some of its own rotation.
In a way this is pretty fake IK, but I think the effect will work.
I *could* use the onUpdate method and reposition the x,y of the lower arm segment while it does it's own rotation. This should probably suffice.
Update 2:
I took a different approach, creating joints (Sprites) on the end of limbs and then attaching a limb to that which will rotate with the upper limb and be able to independently rotate on its own based on rules. This is working really well for me at the moment too.
Comments:
There are currently 0 Comments:

