[[TracNav(TracNav/CommunityTOC)]] = osgAnimation = osgAnimation is the a new effort to put generic animation is OpenSceneGraph. It is currently in 'beta' and in development phase but can do a various things yet. The way osgAnimation is made is to let the user the flexibility to change the behavior of predefined class. === The development branches are located === hg clone http://hg.plopbyte.net/osg-trunk/ === short description of class === * Sampler is the 'low level' type (use to interpolate in a keyframe container with an functor that define how to interpolate) * Channel is the association of a Sampler and a Target (it's the result of the sampler poll) * Animation is a container of Channels . Often you will have position,rotation and scale, but you can have what you want like color, animation of a stateAttribute. You can add what you want. * Bone is a new transform type to manage skeleton animation * Skeleton is the root of a tree that contains Bone * Timeline is a way to organize and play animation (like a scheduler) * Callback begin, end are implemented through the timeline scheduler (see the example osganimationtimeline) * [http://www.robertpenner.com/easing/easing_demo.html EaseMotion] , ease motion are predefined curve ready to use (follow the link, you will understand) === Features supported === * skeleton animation with rigged mesh [software and hardware implementation] * solid animation * it can link an animation channel of any type to another object, or state attribute. (e.g.: linking the x animation of an object to the alpha of a color.) * blender exporter [http://hg.plopbyte.net/osgexport/] * timeline scheduler * mixer with priority === Next Step === * Refactore timeline manager * Enhance AnimationManagerTimeline. let the user to clean old action finish, use a hierarchical data structure to accept a lot of action. * split component in keyframe, like splitting x, y, z on different channel... It's more a exporter function * Refactore Bone related update callback it means that the format will change soon and will be not backward compatible === Long term feature to implement === * add tool to filter animation data * improve performance * inverse kinematics * max exporter, maya exporter, ... (for now you can export in either the FBX or Collada (.dae) formats which will be imported as osgAnimation data in an OSG application) * compressed keyframe container = Blender Exporter = === Notes === To export rigged model from blender you have to name your VertexGroup with the bone name, because the association is done by name. If you have more than One bone in a vertex group, it will not work. It's something that has to be fixed. you can get the last version of blender exporter here http://hg.plopbyte.net/osgexport/ === Features === * Export Mesh, Light, Transform * Export Action (Rigged mesh) and IPOS * Support Group in blender, and create instance in the blender file * Export multi uvs, multi texture, multi materials === Todo === * Update gui * Add AnimationPath export