From Second Life Wiki
Revision as of 14:48, 9 August 2007 by Periapse Linden (Talk | contribs)

Jump to: navigation, search

See Also

Render Roadmap


  • Further the ability to communicate in Second Life by enabling residents to 'puppeteer' their avatars
  • Create a Physical Avatar code layer which enables the addition of ragdoll physics and inverse kinemtatics to second life avatars


Puppeteering is real-time, user-manipulated animation of avatar joints.

It refers to nascent avatar expression technology. As with a real puppet, people will be able to manipulate the joints of their avatar, and others will be able to see these changes. The initial release will be rather humble -- the ability to temporarily adjust the position of individual joints. Enabling this is the deeper infrastructure of the Physical Avatar which, in subsequent evolutions, will allow (besides Puppeteering) a variety of new tools for real-time gesturing, inverse kinematics, rag-doll physics, in-world animation building, and scripted animation.


First Release: Expressive Puppeteering

  • The first release is about laying the foundation for the future of avatar manipulation. Key is the development of the Physical Avatar, a code layer which models an avatar as physically-based joint balls connected by springs, and allows influence by external forces (from UI and from world). As this model is being manipulated, it continually converts back to the standard avatar representation so it can be rendered.
  • The visible component of this is a simple UI enabling the momentary manipulation of avatar body parts. Initially this will be triggered by holding the CTRL key down. Mouse cursor proximity will cause joints to highlight, and a click and drag allows the positioning of that joint. As long as the CTRL key is held down the pose will be fixed, allowing the adjustment of several joints. All these manipulations will be visible to other residents. Movement, or the ESC key, will end puppeteering and revert the avatar back to original animation.
  • A base set of normal joint constraints should be available to users that allow for realistic movement
  • You will be able to save a puppeteering pose as an animation asset, for later use as a pose or in a gesture.