Animadead

Free and open source skeletal animation library
Download

Animadead Ranking & Summary

Advertisement

  • Rating:
  • License:
  • Freeware
  • Price:
  • FREE
  • Publisher Name:
  • John Butterfield
  • Publisher web site:
  • Operating Systems:
  • Mac OS X
  • File Size:
  • 913 KB

Animadead Tags


Animadead Description

Free and open source skeletal animation library Animadead is a skeletal animation library designed to load and play skeletal animations. It supports models that are composed of several swappable meshes bound to a single skeleton that can be driven by multiple animations.Animadead provides an export plugin for Maya, and others are in development, including a plugin for Lightwave and 3D Studio Max.NOTE: Animadead is licensed and distributed under the terms of the GNU Library or Lesser General Public License (LGPL). Here are some key features of "Animadead": Exporting and file types: · Custom file types used for meshes and animations. · Meshes can be static, or deformable and bound to all or a subset of the skeleton. · Animations use a skeletal hierarchy and local transformations for every bone at every frame. Loading files: · The library loads and caches animations and meshes by filename. · Meshes are broken down into surfaces, which have a texture name, vertices, faces, and a pointer to user defined data. · A callback function can be set that can load textures when the mesh is loaded, and set the user data for that surface. · Models in animations can be moving, but when the model is loaded, the movement of the root bone is extracted and removed. This information is stored, and can be used to move the frame of the model at the speed the modeler intended or used to scale the speed of the animation. Setup (initialize): · A model is composed of several animations and swappable meshes, but can also contain blends and bone selection masks. · Blends are used to calculate a pose, usually from two other poses. · One type of blend is an animation player, which is used to keep track of the current time in the animation and can generate a skeletal pose at that time (between two frames). · Another type of blend is a blend between blends. When this blend is calculated, it first calculates the two blends it's blending, and then blends those together with a user-defined weight. Since this is a recursive definition, blends can in fact be setup in a hierarchy, and the user only needs to call the top level calculate function. · A bone selection mask is a selection of a subset of the entire skeleton. The hierarchy is used to make the selection process simpler. Essentially, all bones are the same selection state as their parent, unless set directly. · In addition to being able to calculate a pose from a complex system of blends, the calculate function can be given an optional bone selection mask, which limits the calculations done for that blend to only the subset of bones defined by the selection. This allows you to calculate different parts of a skeleton with different animations. Drawing: · The library doesn't actually draw the model, but provides all of the necessary information for your engine to draw the model. · Data is prepared and organized for use in vertex shaders. · A pose can be converted to a set of matrix world transformations. (Most shaders like the data like this) · Examples are shown that actually draw the model. What's New in This Release: · The library can now be compiled as a DLL. · Optimized the file formats and data structures to make it easier to pass the data to the vertex shader. · Added a 3D Studio MAX exporter · Added material properties to the exporters Common export library to write the file formats: · Interface similar to the OpenGL API · Specify geometry in a generic way · All of the converting and writing of the files is done by the library · Any changes to the format done in the library, such as the eventual conversion to a binary format, and compression, will automatically work for all exporters that use the library. · Added several functions to handle mesh swapping · Added a skeleton reference format to ensure compatability of skeletal hierarchies and improves efficiency of the library. · The library now builds deformation matrices to be applied to a model in bind pose, and world matrices from the origin for attaching objects to a bone. · Improved math functions and the interface including compatibility between row-major and column-major matrices. · Library file format loading functions can now load from a stream instead of a file, so custom compression can be used. A few new Demos for the library: · Player controlled bird flight. · An interactive model and animation viewer · There are also about a dozen tutorial demos that demonstrate how to use the library from the simplest features, all the way up to example shaders to deform and render the mesh.


Animadead Related Software